:root {
  --bg:#050814;
  --panel:rgba(10,15,32,.82);
  --panel-2:rgba(14,20,42,.94);
  --line:rgba(255,255,255,.16);
  --line-2:rgba(255,214,134,.34);
  --text:#fff8ea;
  --muted:#c6d1ec;
  --brand-yellow:#ffd166;
  --brand-pink:#ff4fa3;
  --brand-cyan:#58d8ff;
  --brand-violet:#9448ff;
  --brand-orange:#ff8f4c;
  --green:#7bf2a1;
  --dark:#070b18;
  --shadow:0 24px 70px rgba(0,0,0,.38);
}

/* UX flow refinements */
.kids-price-hint{display:block;margin-top:10px;color:rgba(255,255,255,.72);font-size:14px;line-height:1.35}
.menu-scenario-panel{margin:18px 0 24px;padding:18px;border:1px solid rgba(255,255,255,.1);border-radius:22px;background:rgba(255,255,255,.045)}
.menu-scenario-panel h3{margin:0 0 14px;color:#fff;font-size:clamp(20px,5vw,28px)}
.menu-scenario-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.menu-scenario-card{min-height:118px;padding:16px;text-align:left;color:#fff;border:1px solid rgba(255,255,255,.12);border-radius:18px;background:rgba(11,16,32,.72);cursor:pointer}
.menu-scenario-card b,.menu-scenario-card small{display:block}.menu-scenario-card b{font-size:17px}.menu-scenario-card small{margin-top:8px;color:rgba(255,255,255,.65);line-height:1.35}
.menu-scenario-card.selected{border-color:#ff4fd8;box-shadow:0 0 26px rgba(255,79,216,.22);background:linear-gradient(135deg,rgba(255,79,216,.13),rgba(124,77,255,.12))}
.menu-scenario-result{padding:18px;border-radius:18px;background:rgba(124,77,255,.1);border:1px solid rgba(168,85,247,.3)}
.menu-scenario-result span,.menu-scenario-result b,.menu-scenario-result p{display:block}.menu-scenario-result b{margin-top:4px;color:#fff;font-size:20px}.menu-scenario-result p{color:rgba(255,255,255,.68)}
.menu-scenario-result button,.final-back-button{min-height:48px;padding:0 18px;color:#fff;font-weight:700;border:1px solid rgba(255,255,255,.16);border-radius:14px;background:rgba(255,255,255,.08)}
.compact-final-card{display:grid;gap:16px;max-width:720px;margin:0 auto}
.compact-final-total-card{padding:20px;border:1px solid rgba(255,255,255,.1);border-radius:22px;background:rgba(255,255,255,.055);box-shadow:0 16px 42px rgba(0,0,0,.25)}
.compact-final-total-card>span{display:block;color:rgba(255,255,255,.7);font-size:15px}.compact-final-total-card>strong{display:block;margin:4px 0 16px;color:#fff;font-size:clamp(36px,10vw,58px);line-height:1}
.compact-final-breakdown{display:grid;gap:0;border-top:1px solid rgba(255,255,255,.1)}
.compact-final-breakdown>div{display:flex;justify-content:space-between;gap:14px;padding:12px 0;border-bottom:1px solid rgba(255,255,255,.08);color:rgba(255,255,255,.72)}
.compact-final-breakdown b{color:#fff;text-align:right}.compact-final-breakdown .compact-final-total{font-weight:700}.compact-final-breakdown .compact-final-total span,.compact-final-breakdown .compact-final-total b{color:#fff}
.discounted-line-amount{display:inline-flex;align-items:baseline;justify-content:flex-end;gap:8px;flex-wrap:wrap;text-align:right}.discounted-line-amount del{color:rgba(255,255,255,.5);font-weight:850;text-decoration-color:rgba(255,126,154,.92);text-decoration-thickness:2px}.discounted-line-amount b{color:#fff}
.promo-collapse{padding:14px 16px;border:1px solid rgba(255,255,255,.1);border-radius:16px;background:rgba(255,255,255,.04)}
.promo-collapse summary{min-height:30px;color:rgba(255,255,255,.82);font-weight:700;cursor:pointer}.promo-collapse .promo-field{margin-top:12px}
.compact-phone-field{padding:18px;border:1px solid rgba(255,255,255,.1);border-radius:18px;background:rgba(255,255,255,.04)}
.final-success-state{text-align:center;padding:28px 20px;border:1px solid rgba(105,255,190,.24);border-radius:24px;background:rgba(42,180,125,.08)}
.final-success-icon{display:grid;place-items:center;width:64px;height:64px;margin:0 auto 14px;border-radius:50%;color:#08131c;background:#69ffbe;font-size:32px;font-weight:900}.final-success-state h2{margin:0;color:#fff}.final-success-state p{max-width:480px;margin:10px auto 20px;color:rgba(255,255,255,.72)}.final-success-state .submit-btn{display:flex;align-items:center;justify-content:center;text-decoration:none}.final-back-button{margin-top:10px;width:100%}
.sticky-summary-bar[data-stage="contacts"] .sticky-summary-button{background:linear-gradient(90deg,#ff8a00,#ff4fd8,#6c63ff)}
@media(max-width:720px){.menu-scenario-grid{grid-template-columns:1fr}.menu-scenario-card{min-height:96px}.sticky-summary-button{font-size:13px;line-height:1.15;padding-inline:12px}.compact-final-breakdown>div{align-items:flex-start;font-size:14px}}

* { box-sizing:border-box; }
html, body {
  margin:0;
  width:100%;
  max-width:100%;
  min-height:100%;
  overflow-x:hidden;
  scroll-behavior:smooth;
  font-family:Inter, Segoe UI, Arial, sans-serif;
  color:var(--text);
  background:var(--bg);
}
body {
  background:
    radial-gradient(circle at 10% 5%, rgba(255,79,163,.34), transparent 24%),
    radial-gradient(circle at 86% 4%, rgba(88,216,255,.28), transparent 24%),
    radial-gradient(circle at 75% 60%, rgba(148,72,255,.22), transparent 26%),
    linear-gradient(180deg, #07091a 0%, #101a32 44%, #060817 100%);
}
button, input, select, textarea { font:inherit; }
button { cursor:pointer; border:0; }
button:disabled { cursor:default; }
h1, h2, h3, p { margin-top:0; }
img, svg, video, canvas { max-width:100%; }

.guest-shell { min-height:100vh; position:relative; isolation:isolate; padding-bottom:132px; }
.guest-shell:before {
  content:""; position:fixed; inset:0; pointer-events:none; z-index:-3;
  background-image:
    radial-gradient(circle, rgba(255,255,255,.72) 0 1px, transparent 1.6px),
    radial-gradient(circle, rgba(255,255,255,.38) 0 1px, transparent 1.5px);
  background-size:96px 96px, 150px 150px;
  background-position:0 0, 28px 42px;
  opacity:.35;
}
.guest-shell:after {
  content:""; position:fixed; right:-150px; top:124px; width:330px; height:330px; border-radius:50%; z-index:-2;
  background:radial-gradient(circle at 34% 30%, #fff1b7, #ff9d48 34%, #d746d9 68%, #28135f 100%);
  box-shadow:0 0 86px rgba(255,143,76,.22), inset -46px -40px 72px rgba(35,8,76,.46);
  opacity:.86;
}

.guest-hero { padding:28px 32px 34px; max-width:1320px; margin:0 auto; position:relative; overflow:hidden; }
.guest-hero:before {
  content:""; position:absolute; inset:82px 0 26px; pointer-events:none; z-index:-1;
  border-radius:32px;
  background:
    radial-gradient(circle at 78% 22%, rgba(255,143,76,.22), transparent 34%),
    linear-gradient(90deg, rgba(18,14,32,.64), rgba(5,8,20,.34));
}
.guest-nav { display:flex; align-items:center; justify-content:space-between; gap:16px; margin-bottom:28px; }
.guest-brand { display:flex; align-items:center; gap:12px; color:var(--text); text-decoration:none; font-weight:950; letter-spacing:0; }
.brand-mark { width:56px; height:56px; border-radius:50%; position:relative; flex:0 0 auto; background:linear-gradient(145deg, #ffd166 0%, #ff6f91 48%, #5fdcff 100%); box-shadow:0 14px 42px rgba(255,79,163,.3); overflow:hidden; }
.brand-mark:before, .brand-mark:after { content:""; position:absolute; left:-12px; right:-12px; height:4px; border-radius:999px; background:rgba(255,255,255,.78); transform:rotate(-17deg); }
.brand-mark:before { top:24px; }
.brand-mark:after { top:33px; opacity:.9; }
.brand-mark i { position:absolute; inset:0; background:radial-gradient(circle at 30% 24%, rgba(255,255,255,.52), transparent 30%); }
.brand-text b { display:block; font-size:24px; line-height:1; }
.brand-text small { display:block; color:#d7e1ff; font-size:13px; font-weight:850; margin-top:5px; }
.header-actions { display:flex; align-items:center; justify-content:flex-end; gap:12px; flex:0 0 auto; }
.header-cta {
  min-height:44px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  color:#fff;
  text-decoration:none;
  border:1px solid rgba(255,255,255,.2);
  border-radius:18px;
  padding:0 18px;
  font-size:15px;
  font-weight:900;
  background:linear-gradient(135deg, #ffb36b 0%, #ff6fb1 55%, #9b5cff 100%);
  box-shadow:0 10px 28px rgba(255,111,177,.25);
  transition:transform .2s ease, box-shadow .2s ease, opacity .2s ease;
}
.header-cta:hover { transform:translateY(-1px); box-shadow:0 14px 34px rgba(255,111,177,.35); }
.header-cta:active { transform:translateY(0); }
.mobile-label { display:none; }
.employee-link {
  color:rgba(255,255,255,.66);
  text-decoration:none;
  font-size:14px;
  font-weight:750;
  border-radius:12px;
  padding:8px 10px;
  transition:color .18s ease, background .18s ease;
}
.employee-link:hover { color:#fff; background:rgba(255,255,255,.06); }

.hero-grid { display:grid; grid-template-columns:minmax(0,1fr); gap:28px; align-items:center; min-height:auto; max-width:920px; }
.hero-copy { padding:18px 0 18px; text-shadow:0 2px 18px rgba(0,0,0,.28); }
.eyebrow { display:inline-flex; align-items:center; gap:8px; padding:8px 13px; border:1px solid rgba(255,209,102,.42); border-radius:999px; color:#ffe29a; background:rgba(20,12,23,.42); font-weight:900; margin-bottom:18px; }
.hero-copy h1 { font-size:clamp(32px, 4.4vw, 60px); line-height:1.02; margin-bottom:16px; letter-spacing:0; max-width:800px; }
.hero-copy p { color:#edf3ff; font-size:clamp(18px, 1.65vw, 24px); line-height:1.45; max-width:790px; background:transparent; border-radius:0; padding:0; margin:0 0 14px; }
.hero-emotion { display:inline-flex; align-items:center; gap:10px; max-width:760px; color:#fff6c9; background:linear-gradient(135deg, rgba(255,209,102,.16), rgba(255,79,163,.14)); border:1px solid rgba(255,214,134,.26); border-radius:18px; padding:12px 15px; font-size:18px; font-weight:950; line-height:1.35; }
.hero-actions { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; margin-top:16px; max-width:760px; }
.hero-contact-actions { grid-column:1 / -1; display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; }
.hero-btn { min-height:54px; display:inline-flex; align-items:center; justify-content:center; gap:9px; border-radius:18px; padding:0 18px; text-decoration:none; font-weight:950; transition:transform .18s ease, box-shadow .18s ease, border-color .18s ease; }
.hero-btn:hover { transform:translateY(-2px); }
.hero-btn-icon { width:21px; height:21px; flex:0 0 auto; fill:none; stroke:currentColor; stroke-width:2; stroke-linecap:round; stroke-linejoin:round; }
.hero-btn-icon-brand { fill:currentColor; stroke:none; }
.hero-btn-icon-dot { fill:currentColor; stroke:none; }
.hero-btn-phone {
  color:#fff;
  border:1px solid rgba(255,255,255,.22);
  background:
    radial-gradient(circle at 14% 18%, rgba(255,255,255,.2), transparent 30%),
    linear-gradient(135deg,#4f8cff 0%,#5765e8 50%,#774fe2 100%);
  box-shadow:0 18px 42px rgba(79,140,255,.23);
}
.hero-btn-phone:hover { border-color:rgba(255,255,255,.34); box-shadow:0 22px 54px rgba(79,140,255,.31); }
.hero-btn-primary { color:#fff; background:linear-gradient(135deg,#ff8f4c,#ff4fa3); box-shadow:0 18px 42px rgba(255,79,163,.28); }
.hero-btn-primary:hover { box-shadow:0 22px 54px rgba(255,79,163,.36); }
.hero-btn-secondary { color:#edf4ff; border:1px solid rgba(255,255,255,.2); background:rgba(255,255,255,.055); }
.hero-btn-secondary:hover { border-color:rgba(255,209,102,.42); box-shadow:0 16px 34px rgba(88,216,255,.1); }
.hero-btn-instagram {
  color:#fff;
  border:1px solid rgba(255,255,255,.22);
  background:
    radial-gradient(circle at 15% 18%, rgba(255,255,255,.24), transparent 30%),
    linear-gradient(135deg,#ffb45c 0%,#ff4f9a 46%,#8d4dff 100%);
  box-shadow:0 18px 42px rgba(255,79,163,.25);
}
.hero-btn-instagram:hover {
  border-color:rgba(255,255,255,.34);
  box-shadow:0 22px 54px rgba(255,79,163,.34);
}
.hero-btn-whatsapp {
  color:#fff;
  border:1px solid rgba(255,255,255,.22);
  background:
    radial-gradient(circle at 14% 18%, rgba(255,255,255,.24), transparent 30%),
    linear-gradient(135deg,#19c36b 0%,#23d18b 45%,#128c7e 100%);
  box-shadow:0 18px 42px rgba(35,209,139,.24);
}
.hero-btn-whatsapp:hover {
  border-color:rgba(255,255,255,.34);
  box-shadow:0 22px 54px rgba(35,209,139,.32);
}
.hero-reviews-kicker {
  grid-column:1 / -1;
  min-height:72px;
  display:flex;
  align-items:center;
  justify-content:flex-start;
  gap:13px;
  padding:12px 14px;
  border:1px solid rgba(255,226,154,.28);
  border-radius:20px;
  color:#fff8d5;
  background:
    radial-gradient(circle at 92% 50%, rgba(255,111,177,.22), transparent 28%),
    radial-gradient(circle at 18% 20%, rgba(255,255,255,.16), transparent 28%),
    linear-gradient(135deg, rgba(255,209,102,.14), rgba(255,79,163,.13), rgba(8,12,27,.58));
  box-shadow:inset 0 1px 0 rgba(255,255,255,.1), 0 14px 32px rgba(255,111,177,.12);
}
.hero-reviews-icon {
  width:48px;
  height:48px;
  flex:0 0 auto;
  border-radius:50%;
  display:grid;
  place-items:center;
  color:#18203b;
  background:linear-gradient(135deg,#ffef8a,#ffd166);
  font-size:27px;
  line-height:1;
  box-shadow:0 12px 26px rgba(255,209,102,.18), inset 0 1px 0 rgba(255,255,255,.34);
}
.hero-reviews-copy {
  min-width:0;
  display:grid;
  gap:3px;
}
.hero-reviews-kicker b {
  display:block;
  color:#fff8d5;
  font-size:22px;
  line-height:1.08;
  font-weight:950;
}
.hero-reviews-kicker small {
  display:block;
  color:rgba(234,242,255,.82);
  font-size:15px;
  line-height:1.2;
  font-weight:800;
}
.hero-reviews-kicker i {
  margin-left:auto;
  flex:0 0 auto;
  color:#ff9dcc;
  font-style:normal;
  font-size:36px;
  line-height:1;
  text-shadow:0 0 18px rgba(255,111,177,.54);
}
.hero-btn-review {
  justify-content:flex-start;
  gap:12px;
  min-height:58px;
  color:#fff;
  border:1px solid rgba(255,255,255,.18);
  background:linear-gradient(135deg, rgba(255,255,255,.09), rgba(8,12,27,.54));
  box-shadow:0 16px 36px rgba(0,0,0,.22);
}
.hero-btn-review:hover {
  border-color:rgba(255,209,102,.38);
  box-shadow:0 20px 44px rgba(88,216,255,.13);
}
.hero-btn-review img {
  width:34px;
  height:34px;
  flex:0 0 auto;
  border-radius:10px;
  background:#fff;
  object-fit:cover;
  box-shadow:0 8px 18px rgba(0,0,0,.2);
}
.hero-btn-review span {
  min-width:0;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.hero-btn-review strong {
  margin-left:auto;
  flex:0 0 auto;
  color:#112015;
  background:linear-gradient(135deg,#7bf2a1,#ffd166);
  border-radius:999px;
  padding:6px 9px;
  font-size:12px;
  line-height:1;
  font-weight:950;
  white-space:nowrap;
  box-shadow:0 8px 18px rgba(123,242,161,.16);
}
.hero-callback {
  grid-column:1 / -1;
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(300px,.9fr);
  gap:18px;
  align-items:center;
  padding:20px;
  border:1px solid rgba(255,226,154,.26);
  border-radius:20px;
  background:linear-gradient(135deg, rgba(255,209,102,.13), rgba(255,111,177,.12), rgba(8,12,27,.6));
  box-shadow:inset 0 1px 0 rgba(255,255,255,.09), 0 16px 34px rgba(0,0,0,.18);
  text-shadow:none;
}
.hero-callback-copy h2 { margin:0 0 7px; color:#fff8d5; font-size:22px; line-height:1.15; letter-spacing:0; }
.hero-callback-copy p { margin:0; color:rgba(238,244,255,.82); font-size:15px; line-height:1.4; }
.hero-callback-form { display:grid; gap:7px; }
.hero-callback-form label { color:#fff; font-size:13px; font-weight:850; }
.hero-callback-controls { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:8px; }
.hero-callback-controls input {
  width:100%;
  min-width:0;
  min-height:50px;
  border:1px solid rgba(255,255,255,.18);
  border-radius:15px;
  padding:0 14px;
  color:#fff;
  background:rgba(4,8,24,.72);
  font:inherit;
  outline:0;
}
.hero-callback-controls input:focus { border-color:rgba(255,209,102,.68); box-shadow:0 0 0 3px rgba(255,209,102,.12); }
.hero-callback-controls button {
  min-height:50px;
  border:0;
  border-radius:15px;
  padding:0 16px;
  color:#fff;
  background:linear-gradient(135deg,#ff8f4c,#ff4fa3);
  font:inherit;
  font-weight:900;
  cursor:pointer;
  white-space:nowrap;
}
.hero-callback-controls button:disabled { opacity:.58; cursor:wait; }
.quick-callback-status { min-height:18px; margin:0 !important; color:rgba(238,244,255,.74) !important; font-size:12px !important; line-height:1.4 !important; }
.quick-callback-status.success { color:#aef5c5 !important; }
.quick-callback-status.error { color:#ffb0bd !important; }
.hero-copy .hero-note { margin:9px 0 0; color:rgba(234,242,255,.68); font-size:14px; line-height:1.4; max-width:620px; }
.hero-stats { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:10px; margin-top:18px; max-width:850px; }
.hero-stats div, .hero-stats button {
  min-width:0;
  width:100%;
  border:1px solid rgba(255,255,255,.12);
  background:
    radial-gradient(circle at 18% 12%, rgba(255,209,102,.12), transparent 34%),
    linear-gradient(145deg, rgba(255,255,255,.07), rgba(8,12,27,.58));
  color:var(--text);
  border-radius:18px;
  padding:12px;
  backdrop-filter:blur(12px);
  min-height:112px;
  text-align:left;
  transition:transform .18s ease, border-color .18s ease, box-shadow .18s ease;
}
.hero-stats div:hover, .hero-stats button:hover { transform:translateY(-2px); border-color:rgba(255,111,177,.34); box-shadow:0 14px 32px rgba(255,111,177,.16); }
.hero-stats button:active { transform:translateY(0); box-shadow:0 8px 20px rgba(255,111,177,.11); }
.hero-stats i { display:inline-grid; place-items:center; width:30px; height:30px; border-radius:50%; background:rgba(255,255,255,.1); font-style:normal; margin-bottom:8px; }
.hero-stats b { display:block; font-size:clamp(20px, 1.8vw, 27px); line-height:1.05; color:#fff; }
.hero-stats span { display:block; margin-top:5px; color:var(--muted); font-size:13px; font-weight:800; line-height:1.18; }
.hero-stats small { display:inline-flex; margin-top:8px; color:#ffe29a; font-size:12px; font-weight:900; }
.hero-benefit-link { cursor:pointer; }

.orbit-card { display:grid; place-items:center; min-height:560px; border:1px solid var(--line); border-radius:28px; background:linear-gradient(180deg, rgba(13,22,45,.72), rgba(4,7,19,.94)); box-shadow:var(--shadow); position:relative; overflow:visible; padding:18px; }
.orbit-card:before { content:""; position:absolute; inset:18px; border:1px solid rgba(255,255,255,.1); border-radius:28px; background:radial-gradient(circle at 78% 16%, rgba(255,111,177,.12), transparent 34%); pointer-events:none; }
.orbit-card:after { display:none; }
.orbit-dot { position:absolute; border-radius:50%; box-shadow:0 0 36px currentColor; z-index:1; }
.orbit-dot.one { width:36px; height:36px; color:var(--brand-cyan); background:var(--brand-cyan); left:17%; top:26%; }
.orbit-dot.two { width:24px; height:24px; color:var(--brand-pink); background:var(--brand-pink); right:20%; top:31%; }
.orbit-dot.three { width:46px; height:46px; color:var(--brand-violet); background:var(--brand-violet); right:25%; bottom:20%; }
.hero-orbit-gallery {
  position:absolute;
  inset:18px;
  z-index:2;
  width:auto;
  max-width:580px;
  min-height:500px;
  display:grid;
  place-items:center;
  isolation:isolate;
}
.hero-orbit-bg {
  position:absolute;
  inset:30px;
  border:1px solid rgba(255,255,255,.12);
  border-radius:999px;
  transform:rotate(-12deg);
  opacity:.82;
  pointer-events:none;
}
.hero-orbit-bg:before, .hero-orbit-bg:after {
  content:"";
  position:absolute;
  inset:34px;
  border:1px solid rgba(255,255,255,.08);
  border-radius:999px;
}
.hero-orbit-bg:after { inset:70px; border-color:rgba(255,111,177,.18); }
.hero-orbit-core {
  position:relative;
  z-index:2;
  width:min(360px, 82%);
  min-height:280px;
  border:1px solid rgba(255,255,255,.14);
  border-radius:32px;
  padding:26px;
  background:
    radial-gradient(circle at 75% 20%, rgba(255,179,107,.2), transparent 36%),
    radial-gradient(circle at 10% 85%, rgba(155,92,255,.22), transparent 42%),
    rgba(255,255,255,.055);
  box-shadow:0 28px 80px rgba(0,0,0,.36), 0 0 45px rgba(255,111,177,.12);
  backdrop-filter:blur(16px);
  overflow:hidden;
}
.hero-orbit-planet {
  position:absolute;
  right:-38px;
  top:-42px;
  width:155px;
  height:155px;
  border-radius:50%;
  background:linear-gradient(135deg,#ffb36b,#ff6fb1 55%,#9b5cff);
  opacity:.82;
  box-shadow:0 0 55px rgba(255,111,177,.34);
}
.hero-orbit-badge {
  position:relative;
  z-index:1;
  display:inline-flex;
  padding:7px 12px;
  border-radius:999px;
  background:rgba(255,255,255,.08);
  border:1px solid rgba(255,255,255,.12);
  color:rgba(255,255,255,.82);
  font-size:12px;
  font-weight:900;
}
.hero-orbit-core h3 { position:relative; z-index:1; margin:18px 0 10px; color:#fff; font-size:clamp(24px, 2.6vw, 34px); line-height:1.05; }
.hero-orbit-core p { position:relative; z-index:1; margin:0; color:rgba(255,255,255,.72); font-size:15px; line-height:1.45; }
.hero-orbit-cards {
  position:absolute;
  inset:0;
  z-index:3;
  pointer-events:none;
}
.hero-orbit-card {
  position:absolute;
  width:158px;
  aspect-ratio:4/3;
  margin:0;
  overflow:hidden;
  border:1px solid rgba(255,255,255,.18);
  border-radius:20px;
  background:rgba(255,255,255,.06);
  box-shadow:0 18px 45px rgba(0,0,0,.3);
  backdrop-filter:blur(12px);
  pointer-events:auto;
  animation:heroOrbitFloat 7s ease-in-out infinite;
  transition:transform .18s ease, border-color .18s ease, box-shadow .18s ease;
}
.hero-orbit-card:hover { transform:translateY(-3px) scale(1.03); border-color:rgba(255,255,255,.34); box-shadow:0 24px 60px rgba(0,0,0,.38), 0 0 28px rgba(255,111,177,.16); }
.hero-orbit-card img { width:100%; height:100%; object-fit:cover; display:block; }
.hero-orbit-card__overlay {
  position:absolute;
  left:0;
  right:0;
  bottom:0;
  z-index:2;
  padding:20px 10px 9px;
  color:#fff;
  font-size:12px;
  font-weight:950;
  line-height:1.1;
  background:linear-gradient(to top, rgba(0,0,0,.72), transparent);
}
.hero-orbit-card__fallback {
  display:none;
  width:100%;
  height:100%;
  place-items:center;
  color:#fff8d5;
  font-size:32px;
  background:
    radial-gradient(circle at 50% 28%, rgba(255,209,102,.18), transparent 38%),
    linear-gradient(145deg, rgba(255,79,163,.18), rgba(148,72,255,.14), rgba(8,12,27,.74));
}
.hero-orbit-card__fallback-icon { font-size:32px; }
.hero-orbit-card.is-fallback .hero-orbit-card__fallback { display:grid; }
.orbit-card--hall { top:7%; left:4%; }
.orbit-card--kids { top:2%; right:7%; animation-delay:-.8s; }
.orbit-card--vr { top:35%; left:-3%; animation-delay:-1.6s; }
.orbit-card--cinema { top:38%; right:-3%; animation-delay:-2.4s; }
.orbit-card--ps { bottom:9%; left:8%; animation-delay:-3.2s; }
.orbit-card--menu { bottom:4%; right:10%; animation-delay:-4s; }
.orbit-card--animators { bottom:17%; left:39%; animation-delay:-4.8s; }
.space-format-panel {
  position:relative;
  z-index:1;
  width:100%;
  display:grid;
  gap:16px;
}
.space-format-head {
  border:1px solid rgba(255,255,255,.13);
  border-radius:24px;
  padding:22px;
  background:
    radial-gradient(circle at 88% 0%, rgba(255,111,177,.18), transparent 34%),
    linear-gradient(145deg, rgba(255,255,255,.08), rgba(6,10,24,.42));
}
.space-format-head span {
  display:inline-flex;
  width:max-content;
  max-width:100%;
  padding:6px 12px;
  border-radius:999px;
  color:#ffe29a;
  border:1px solid rgba(255,226,154,.24);
  background:rgba(255,255,255,.08);
  font-size:12px;
  font-weight:950;
}
.space-format-head h3 {
  margin:14px 0 8px;
  color:#fff;
  font-size:clamp(28px, 3vw, 42px);
  line-height:1.05;
}
.space-format-head p {
  margin:0;
  color:rgba(255,255,255,.74);
  font-size:15px;
  line-height:1.42;
}
.space-format-grid {
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:14px;
}
.space-format-card {
  min-width:0;
  overflow:hidden;
  border:1px solid rgba(255,255,255,.14);
  border-radius:24px;
  background:linear-gradient(180deg, rgba(255,255,255,.08), rgba(6,10,24,.72));
  box-shadow:inset 0 1px 0 rgba(255,255,255,.07), 0 18px 42px rgba(0,0,0,.22);
}
.space-format-card img {
  width:100%;
  height:280px;
  display:block;
  object-fit:cover;
  filter:saturate(1.06);
}
.space-format-cover {
  position:relative;
  min-height:280px;
  margin-top:-280px;
  display:flex;
  flex-direction:column;
  justify-content:flex-end;
  gap:8px;
  padding:20px;
  background:
    linear-gradient(180deg, rgba(3,6,18,.08) 0%, rgba(3,6,18,.38) 42%, rgba(3,6,18,.84) 100%),
    radial-gradient(circle at 78% 12%, rgba(255,111,177,.22), transparent 32%);
}
.space-format-cover span {
  width:max-content;
  max-width:100%;
  padding:6px 11px;
  border-radius:999px;
  color:#16061d;
  background:linear-gradient(135deg,#ffd166,#ff80bf);
  font-size:13px;
  font-weight:950;
}
.space-format-cover b {
  color:#fff;
  font-size:clamp(25px, 2.6vw, 36px);
  line-height:1.02;
  text-shadow:0 4px 22px rgba(0,0,0,.45);
}
.space-format-card p {
  margin:12px;
  padding:12px 13px;
  border-radius:18px;
  color:#dbe5ff;
  background:rgba(255,255,255,.075);
  border:1px solid rgba(255,255,255,.1);
  font-size:13px;
  line-height:1.38;
}
.space-format-note {
  padding:12px 14px;
  border-radius:18px;
  color:#fff4b8;
  background:linear-gradient(135deg, rgba(255,209,102,.13), rgba(123,242,161,.1), rgba(255,79,163,.1));
  border:1px solid rgba(255,226,154,.18);
  font-size:14px;
  font-weight:850;
  line-height:1.35;
}
.space-format-cta {
  min-height:52px;
  border-radius:18px;
  display:flex;
  align-items:center;
  justify-content:center;
  color:#fff;
  text-decoration:none;
  font-weight:950;
  background:linear-gradient(135deg,#ff8f4c,#ff4fa3,#9448ff);
  box-shadow:0 18px 38px rgba(255,79,163,.2);
}
@media (max-width:860px) {
  .space-format-panel { gap:12px; }
  .space-format-head { padding:16px; border-radius:20px; }
  .space-format-head h3 { font-size:28px; }
  .space-format-head p { font-size:14px; }
  .space-format-grid { grid-template-columns:1fr; gap:12px; }
  .space-format-card { border-radius:20px; }
  .space-format-card img, .space-format-cover { height:230px; min-height:230px; }
  .space-format-cover { margin-top:-230px; padding:16px; }
  .space-format-cover b { font-size:28px; }
  .space-format-card p { margin:10px; font-size:12.8px; }
  .space-format-note { font-size:13px; }
}
@keyframes heroOrbitFloat {
  0%, 100% { translate:0 0; }
  50% { translate:0 -4px; }
}
.orbit-label { position:absolute; left:22px; right:22px; bottom:22px; border:1px solid var(--line); border-radius:22px; background:linear-gradient(145deg, rgba(4,7,19,.86), rgba(18,17,42,.76)); backdrop-filter:blur(16px); padding:18px; z-index:2; box-shadow:inset 0 1px 0 rgba(255,255,255,.08), 0 20px 48px rgba(0,0,0,.28); }
.orbit-label b { font-size:clamp(22px, 2vw, 30px); line-height:1.08; display:block; margin-bottom:8px; }
.orbit-label span { color:var(--muted); font-size:15px; line-height:1.45; }
.comfort-badge { display:inline-flex !important; width:max-content; align-items:center; gap:7px; margin:0 0 10px; padding:7px 10px; border:1px solid rgba(255,209,102,.36); border-radius:999px; color:#ffe29a !important; background:rgba(255,209,102,.09); font-size:12px !important; font-weight:950; }
.comfort-cards { display:grid; gap:9px; margin-top:13px; }
.comfort-cards div { display:grid; grid-template-columns:auto 1fr; gap:3px 10px; align-items:start; padding:12px; border:1px solid rgba(255,255,255,.12); border-radius:18px; background:linear-gradient(145deg, rgba(255,255,255,.07), rgba(8,12,27,.5)); transition:transform .18s ease, border-color .18s ease, box-shadow .18s ease; }
.comfort-cards div:hover { transform:translateY(-2px); border-color:rgba(255,111,177,.3); box-shadow:0 14px 30px rgba(255,111,177,.12); }
.comfort-cards i { grid-row:span 2; width:34px; height:34px; border-radius:50%; display:grid; place-items:center; background:linear-gradient(135deg, rgba(255,209,102,.18), rgba(255,79,163,.14)); box-shadow:inset 0 0 0 1px rgba(255,255,255,.08); font-style:normal; }
.comfort-cards strong { color:#fff8ea; font-size:15px; line-height:1.12; }
.comfort-cards small { color:#c6d1ec; font-size:12.5px; line-height:1.3; }
.floor-mini-map { display:grid; gap:8px; margin-top:12px; }
.floor-mini-map div { display:grid; grid-template-columns:auto 1fr; gap:2px 10px; align-items:center; padding:10px 12px; border:1px solid rgba(255,255,255,.12); border-radius:16px; background:rgba(255,255,255,.045); }
.floor-mini-map .highlighted { border-color:rgba(255,209,102,.28); background:linear-gradient(135deg, rgba(255,209,102,.09), rgba(255,79,163,.08)); }
.floor-mini-map em { grid-row:span 2; min-width:62px; color:#16061d; background:linear-gradient(135deg,#ffd166,#ff80bf); border-radius:999px; padding:6px 8px; font-size:12px; font-style:normal; font-weight:950; text-align:center; }
.floor-mini-map strong { color:#fff; font-size:14px; }
.floor-mini-map small { color:#b9c5df; font-size:12px; line-height:1.3; }

.reviews-band { max-width:1180px; margin:0 auto 18px; padding:0 18px; scroll-margin-top:90px; }
.reviews-trust-card {
  position:relative;
  overflow:hidden;
  display:grid;
  grid-template-columns:minmax(0, 1.1fr) minmax(300px, .9fr);
  gap:24px;
  align-items:center;
  border:1px solid rgba(255,255,255,.14);
  border-radius:28px;
  padding:26px;
  background:
    radial-gradient(circle at 88% 18%, rgba(255,209,102,.16), transparent 30%),
    radial-gradient(circle at 8% 100%, rgba(255,79,163,.13), transparent 30%),
    linear-gradient(145deg, rgba(10,15,32,.86), rgba(8,12,27,.72));
  box-shadow:var(--shadow);
  backdrop-filter:blur(18px);
}
.reviews-trust-card:after {
  content:"";
  position:absolute;
  right:-70px;
  top:-90px;
  width:210px;
  height:210px;
  border-radius:50%;
  background:radial-gradient(circle at 32% 28%, rgba(255,244,190,.85), rgba(255,143,76,.62) 35%, rgba(255,79,163,.38) 68%, transparent 70%);
  opacity:.45;
  pointer-events:none;
}
.reviews-copy, .reviews-proof { position:relative; z-index:1; }
.reviews-badge { display:inline-flex; width:max-content; margin-bottom:12px; padding:7px 11px; border:1px solid rgba(255,209,102,.34); border-radius:999px; color:#ffe29a; background:rgba(255,209,102,.09); font-size:13px; font-weight:950; }
.reviews-copy h2 { margin:0; max-width:620px; color:#fff2b0; font-size:clamp(28px, 3vw, 40px); line-height:1.08; }
.reviews-copy p { margin:12px 0 0; color:rgba(255,255,255,.86); font-size:17px; line-height:1.45; }
.reviews-copy small { display:block; margin-top:8px; color:rgba(230,238,255,.68); font-size:14px; line-height:1.45; }
.reviews-proof { display:grid; gap:12px; }
.reviews-counter { border:1px solid rgba(255,255,255,.13); border-radius:22px; padding:18px; background:linear-gradient(145deg, rgba(255,255,255,.08), rgba(8,12,27,.62)); box-shadow:inset 0 1px 0 rgba(255,255,255,.08); }
.reviews-counter b { display:block; color:#fff; font-size:42px; line-height:1; }
.reviews-counter span { display:block; margin-top:5px; color:#fff2b0; font-weight:900; }
.reviews-counter small { display:block; margin-top:5px; color:var(--muted); font-size:13px; }
.review-links { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; }
.review-card {
  min-width:0;
  color:var(--text);
  text-decoration:none;
  padding:14px;
  min-height:168px;
  border:1px solid rgba(255,79,163,.42);
  border-radius:22px;
  background:linear-gradient(145deg, rgba(255,79,163,.16), rgba(255,255,255,.055));
  display:grid;
  gap:12px;
  align-content:space-between;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.08);
  transition:transform .18s ease, border-color .18s ease, box-shadow .18s ease;
}
.review-card:nth-child(2) {
  border-color:rgba(41,125,255,.46);
  background:linear-gradient(145deg, rgba(41,125,255,.18), rgba(255,255,255,.055));
}
.review-card:hover { transform:translateY(-2px); border-color:var(--line-2); box-shadow:0 18px 38px rgba(255,111,177,.16); }
.review-card__top {
  display:grid;
  grid-template-columns:54px minmax(0, 1fr) 46px;
  align-items:center;
  gap:12px;
  min-width:0;
}
.review-card__icon {
  width:52px;
  height:52px;
  display:block;
  border-radius:15px;
  object-fit:cover;
  background:#fff;
  box-shadow:0 0 0 2px rgba(255,255,255,.95);
}
.review-card b {
  min-width:0;
  padding-right:4px;
  color:#fff;
  font-size:20px;
  line-height:1.1;
  overflow-wrap:anywhere;
}
.review-card__top i {
  width:46px;
  height:46px;
  display:grid;
  place-items:center;
  border-radius:50%;
  color:#ff4fa3;
  background:rgba(255,255,255,.94);
  font-size:32px;
  line-height:1;
  font-style:normal;
  font-weight:950;
}
.review-card:nth-child(2) .review-card__top i { color:#297dff; }
.review-card__text {
  color:#dbe4fb;
  font-size:14px;
  line-height:1.36;
}
.review-card__cta {
  min-height:34px;
  display:flex;
  align-items:center;
  justify-content:center;
  border:1px solid rgba(255,255,255,.18);
  border-radius:999px;
  color:#fff8d5;
  background:rgba(255,255,255,.1);
  font-size:14px;
  line-height:1.15;
  font-weight:950;
  text-align:center;
}

.how-party-works {
  position:relative;
  overflow:hidden;
  max-width:1180px;
  margin:0 auto 18px;
  padding:30px;
  border:1px solid rgba(255,255,255,.12);
  border-radius:30px;
  background:
    radial-gradient(circle at 92% 10%, rgba(255,111,177,.16), transparent 34%),
    radial-gradient(circle at 8% 100%, rgba(148,72,255,.14), transparent 38%),
    linear-gradient(145deg, rgba(255,255,255,.055), rgba(8,12,27,.68));
  box-shadow:var(--shadow);
  backdrop-filter:blur(18px);
}
.how-party-works:before {
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background-image:radial-gradient(circle, rgba(255,255,255,.4) 0 1px, transparent 1.5px);
  background-size:86px 86px;
  opacity:.12;
}
.how-party-works:after {
  content:"";
  position:absolute;
  right:-62px;
  bottom:-82px;
  width:210px;
  height:210px;
  border-radius:50%;
  border:1px solid rgba(255,255,255,.12);
  box-shadow:0 0 0 42px rgba(255,255,255,.025), 0 0 62px rgba(255,79,163,.16);
  pointer-events:none;
}
.how-party-works__header, .how-party-works__steps, .how-party-works__cta { position:relative; z-index:1; }
.section-badge {
  display:inline-flex;
  width:max-content;
  margin-bottom:12px;
  padding:7px 11px;
  border:1px solid rgba(255,209,102,.34);
  border-radius:999px;
  color:#ffe29a;
  background:rgba(255,209,102,.09);
  font-size:13px;
  font-weight:950;
}
.how-party-works__header { max-width:800px; margin-bottom:22px; }
.how-party-works__header h2 { margin:0; color:#fff8d5; font-size:clamp(28px, 3vw, 42px); line-height:1.07; }
.how-party-works__header p { margin:12px 0 0; color:rgba(255,255,255,.84); font-size:17px; line-height:1.48; }
.how-party-works__steps {
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:14px;
}
.how-step {
  min-width:0;
  min-height:230px;
  display:flex;
  flex-direction:column;
  gap:12px;
  border:1px solid rgba(255,255,255,.11);
  border-radius:22px;
  padding:18px;
  background:linear-gradient(145deg, rgba(255,255,255,.07), rgba(6,10,24,.58));
  box-shadow:inset 0 1px 0 rgba(255,255,255,.06);
  transition:transform .18s ease, border-color .18s ease, box-shadow .18s ease;
}
.how-step:hover { transform:translateY(-2px); border-color:rgba(255,209,102,.3); box-shadow:0 18px 42px rgba(255,111,177,.13); }
.how-step__top { display:flex; align-items:center; justify-content:space-between; gap:10px; }
.how-step__number { color:#fff2b0; font-size:30px; line-height:1; font-weight:950; }
.how-step__icon { width:42px; height:42px; border-radius:50%; display:grid; place-items:center; background:linear-gradient(135deg, rgba(255,209,102,.2), rgba(255,79,163,.15)); border:1px solid rgba(255,255,255,.1); font-style:normal; font-size:22px; }
.how-step h3 { margin:0; color:#fff; font-size:19px; line-height:1.14; }
.how-step p { margin:0; color:#cbd7f2; font-size:14px; line-height:1.45; }
.how-party-works__cta {
  margin-top:18px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  border:1px solid rgba(255,255,255,.11);
  border-radius:20px;
  padding:14px;
  background:linear-gradient(135deg, rgba(255,209,102,.12), rgba(255,79,163,.09), rgba(148,72,255,.1));
}
.how-party-works__cta p { margin:0; color:#edf3ff; line-height:1.4; font-weight:800; }
.how-cta-button {
  min-height:50px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  flex:0 0 auto;
  border-radius:18px;
  padding:0 20px;
  color:#fff;
  text-decoration:none;
  font-weight:950;
  background:linear-gradient(135deg,#ff8f4c,#ff4fa3,#9448ff);
  box-shadow:0 16px 36px rgba(255,79,163,.25);
  transition:transform .18s ease, box-shadow .18s ease;
}
.how-cta-button:hover { transform:translateY(-2px); box-shadow:0 22px 48px rgba(255,79,163,.34); }

.animator-week__list,
.animator-week__note {
  position:relative;
  z-index:1;
}
.animator-week__list {
  display:grid;
  grid-template-columns:repeat(auto-fit, minmax(230px, 1fr));
  gap:10px;
}
.animator-day {
  --day-rgb:255,79,163;
  min-width:0;
  min-height:92px;
  display:grid;
  grid-template-columns:82px 74px 1fr;
  align-items:center;
  gap:12px;
  padding:12px;
  border:1px solid rgba(var(--day-rgb), .42);
  border-radius:20px;
  background:
    linear-gradient(90deg, rgba(var(--day-rgb), .2), rgba(255,255,255,.045)),
    rgba(6,10,24,.48);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.07), 0 16px 34px rgba(0,0,0,.14);
}
.animator-day__date {
  min-height:68px;
  display:grid;
  place-items:center;
  align-content:center;
  gap:3px;
  border-radius:16px;
  color:#fff;
  background:linear-gradient(135deg, rgba(var(--day-rgb), .95), rgba(var(--day-rgb), .42));
  box-shadow:0 10px 24px rgba(var(--day-rgb), .22);
}
.animator-day__date strong {
  font-size:25px;
  line-height:1;
  font-weight:950;
}
.animator-day__date span {
  color:rgba(255,255,255,.88);
  font-size:12px;
  line-height:1.1;
  font-weight:900;
}
.animator-day time {
  color:#fff8d5;
  font-size:20px;
  line-height:1;
  font-weight:950;
  text-align:center;
}
.animator-day p {
  min-width:0;
  margin:0;
  color:#fff;
  font-size:16px;
  line-height:1.22;
  font-weight:950;
}
.animator-day--pink { --day-rgb:255,79,163; }
.animator-day--violet { --day-rgb:148,72,255; }
.animator-day--cyan { --day-rgb:48,167,255; }
.animator-day--mint { --day-rgb:34,213,187; }
.animator-day--green { --day-rgb:88,217,77; }
.animator-day--orange { --day-rgb:255,155,47; }
.animator-day--blue { --day-rgb:41,125,255; }
.animator-week__note {
  display:flex;
  gap:10px;
  align-items:flex-start;
  margin-top:14px;
  padding:13px 14px;
  border:1px solid rgba(255,209,102,.24);
  border-radius:18px;
  color:#dfe8ff;
  background:rgba(255,209,102,.075);
  line-height:1.38;
}
.animator-week__note b {
  flex:0 0 auto;
  color:#fff2b0;
}

.popular-formats {
  position:relative;
  overflow:hidden;
  max-width:1180px;
  margin:0 auto 18px;
  padding:30px;
  border:1px solid rgba(255,255,255,.12);
  border-radius:30px;
  background:
    radial-gradient(circle at 12% 0%, rgba(255,209,102,.14), transparent 32%),
    radial-gradient(circle at 95% 95%, rgba(255,79,163,.14), transparent 36%),
    linear-gradient(145deg, rgba(255,255,255,.05), rgba(8,12,27,.7));
  box-shadow:var(--shadow);
  backdrop-filter:blur(18px);
}
.popular-formats:before {
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background-image:radial-gradient(circle, rgba(255,255,255,.42) 0 1px, transparent 1.5px);
  background-size:90px 90px;
  opacity:.12;
}
.popular-formats__header, .format-grid, .custom-format-card, .preset-confirm { position:relative; z-index:1; }
.popular-formats__header { max-width:840px; margin-bottom:22px; }
.popular-formats__header h2 { margin:0; color:#fff8d5; font-size:clamp(28px, 3vw, 42px); line-height:1.07; }
.popular-formats__header p { margin:12px 0 0; color:rgba(255,255,255,.84); font-size:17px; line-height:1.48; }
.popular-formats__header small { display:block; margin-top:9px; color:#ffe29a; font-size:14px; font-weight:900; }
.format-grid { display:grid; grid-template-columns:repeat(auto-fit, minmax(245px, 1fr)); gap:14px; }
.format-card {
  min-width:0;
  min-height:340px;
  display:flex;
  flex-direction:column;
  gap:12px;
  border:1px solid rgba(255,255,255,.12);
  border-radius:24px;
  padding:18px;
  background:
    radial-gradient(circle at 12% 8%, rgba(255,209,102,.1), transparent 34%),
    linear-gradient(145deg, rgba(255,255,255,.065), rgba(6,10,24,.62));
  box-shadow:inset 0 1px 0 rgba(255,255,255,.06);
  transition:transform .18s ease, border-color .18s ease, box-shadow .18s ease;
}
.format-card:hover { transform:translateY(-2px); border-color:rgba(255,209,102,.32); box-shadow:0 18px 42px rgba(255,111,177,.14); }
.format-card.selected {
  border-color:rgba(255,128,191,.78);
  box-shadow:0 0 0 3px rgba(255,79,163,.11), 0 22px 48px rgba(255,79,163,.16);
  background:linear-gradient(145deg, rgba(255,209,102,.13), rgba(255,79,163,.13), rgba(148,72,255,.1));
}
.format-card__top { display:flex; align-items:center; justify-content:space-between; gap:8px; }
.format-badge, .format-selected {
  display:inline-flex;
  width:max-content;
  max-width:100%;
  border-radius:999px;
  padding:6px 9px;
  border:1px solid rgba(255,255,255,.12);
  background:rgba(255,255,255,.075);
  color:#ffe29a;
  font-size:12px;
  font-weight:950;
}
.format-selected { color:#130717; background:linear-gradient(135deg,#ffd166,#ff80bf); }
.format-card h3 { margin:0; color:#fff; font-size:clamp(19px, 2vw, 24px); line-height:1.12; }
.format-price { color:#fff8d5; font-size:18px; line-height:1.1; }
.format-card p { margin:0; color:#d9e4ff; font-size:14px; line-height:1.45; }
.format-chips { display:flex; flex-wrap:wrap; gap:7px; margin-top:2px; }
.format-chips span { border:1px solid rgba(255,255,255,.11); border-radius:999px; padding:6px 8px; color:#cbd7f2; background:rgba(255,255,255,.055); font-size:12px; font-weight:850; }
.format-button {
  min-height:48px;
  width:100%;
  margin-top:auto;
  border-radius:16px;
  color:#fff;
  background:linear-gradient(135deg,#ff8f4c,#ff4fa3,#9448ff);
  font-weight:950;
  box-shadow:0 14px 32px rgba(255,79,163,.22);
  transition:transform .18s ease, box-shadow .18s ease;
}
.format-button:hover { transform:translateY(-1px); box-shadow:0 18px 40px rgba(255,79,163,.3); }
.format-card small { color:#b9c5df; font-size:12.5px; line-height:1.35; }
.custom-format-card {
  margin-top:16px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  border:1px solid rgba(255,255,255,.11);
  border-radius:22px;
  padding:16px;
  background:linear-gradient(135deg, rgba(255,255,255,.065), rgba(148,72,255,.1));
}
.custom-format-card h3 { margin:0; color:#fff8d5; font-size:20px; }
.custom-format-card p { margin:5px 0 0; color:#cbd7f2; line-height:1.4; }
.custom-format-card button, .preset-confirm button {
  min-height:46px;
  border-radius:16px;
  padding:0 16px;
  color:#fff;
  background:rgba(255,255,255,.08);
  border:1px solid rgba(255,255,255,.14);
  font-weight:900;
  transition:transform .18s ease, border-color .18s ease, box-shadow .18s ease;
}
.custom-format-card button:hover, .preset-confirm button:hover { transform:translateY(-1px); border-color:rgba(255,209,102,.35); box-shadow:0 14px 28px rgba(255,111,177,.12); }
.preset-confirm {
  margin-top:14px;
  display:flex;
  align-items:center;
  gap:10px;
  flex-wrap:wrap;
  border:1px solid rgba(255,209,102,.25);
  border-radius:18px;
  padding:13px;
  background:rgba(255,209,102,.08);
}
.preset-confirm p { margin:0; flex:1 1 280px; color:#fff8d5; font-weight:850; }
.selected-preset-note {
  display:grid;
  gap:5px;
  border:1px solid rgba(255,209,102,.28);
  border-radius:20px;
  padding:14px 16px;
  background:linear-gradient(135deg, rgba(255,209,102,.12), rgba(255,79,163,.1));
  box-shadow:0 14px 32px rgba(255,111,177,.11);
}
.selected-preset-note b { color:#fff8d5; line-height:1.35; }
.selected-preset-note span { color:#cbd7f2; font-size:13px; line-height:1.35; }

.constructor { max-width:1180px; margin:0 auto; padding:0 18px 70px; display:grid; gap:18px; }
.galaxy-route-intro {
  position:relative;
  overflow:hidden;
  border:1px solid rgba(255,255,255,.13);
  border-radius:28px;
  padding:24px;
  background:
    radial-gradient(circle at 92% 12%, rgba(255,209,102,.18), transparent 28%),
    linear-gradient(145deg, rgba(10,15,32,.86), rgba(35,18,44,.68));
  box-shadow:var(--shadow);
  backdrop-filter:blur(18px);
}
.galaxy-route-intro:after { content:""; position:absolute; right:22px; bottom:-54px; width:190px; height:190px; border:1px solid rgba(255,255,255,.12); border-radius:50%; box-shadow:0 0 0 42px rgba(255,255,255,.025), 0 0 60px rgba(255,79,163,.14); pointer-events:none; }
.galaxy-route-badge { display:inline-flex; margin-bottom:12px; padding:7px 11px; border:1px solid rgba(255,209,102,.34); border-radius:999px; color:#ffe29a; background:rgba(255,209,102,.09); font-size:13px; font-weight:950; }
.galaxy-route-intro h2 { position:relative; z-index:1; margin:0; font-size:clamp(28px, 3vw, 40px); line-height:1.05; }
.galaxy-route-intro p { position:relative; z-index:1; max-width:820px; margin:10px 0 0; color:#edf3ff; font-size:17px; line-height:1.45; }
.galaxy-route-intro small { position:relative; z-index:1; display:block; margin-top:9px; color:#b9c5df; font-size:14px; }
.galaxy-route-nav {
  display:grid;
  grid-template-columns:repeat(6,minmax(0,1fr));
  gap:10px;
  padding:10px;
  border:1px solid rgba(255,255,255,.11);
  border-radius:24px;
  background:rgba(8,12,27,.72);
  backdrop-filter:blur(16px);
  box-shadow:0 16px 46px rgba(0,0,0,.25);
}
.galaxy-route-item {
  min-width:0;
  color:var(--text);
  text-decoration:none;
  border:1px solid rgba(255,255,255,.12);
  border-radius:18px;
  padding:12px;
  background:linear-gradient(145deg, rgba(255,255,255,.055), rgba(8,12,27,.48));
  transition:transform .18s ease, border-color .18s ease, box-shadow .18s ease, background .18s ease;
}
.galaxy-route-item:hover, .galaxy-route-item:focus-visible { transform:translateY(-2px); border-color:rgba(255,209,102,.34); box-shadow:0 14px 30px rgba(255,111,177,.12); outline:0; }
.galaxy-route-item.active { border-color:rgba(255,128,191,.72); background:linear-gradient(145deg, rgba(255,209,102,.16), rgba(255,79,163,.15), rgba(148,72,255,.12)); box-shadow:0 0 0 3px rgba(255,79,163,.1), 0 18px 38px rgba(255,79,163,.16); }
.galaxy-route-item.complete { border-color:rgba(123,242,161,.22); background:linear-gradient(145deg, rgba(123,242,161,.08), rgba(255,255,255,.045)); }
.galaxy-route-item span { width:34px; height:34px; display:grid; place-items:center; border-radius:50%; color:#16061d; background:linear-gradient(135deg,#ffd166,#ff80bf); font-weight:950; margin-bottom:8px; }
.galaxy-route-item.complete span { color:#07140d; background:linear-gradient(135deg,#7bf2a1,#ffd166); }
.galaxy-route-item.active span { color:#16061d; background:linear-gradient(135deg,#ffd166,#ff80bf,#9448ff); box-shadow:0 0 24px rgba(255,111,177,.34); }
.galaxy-route-item b { display:block; font-size:15px; line-height:1.1; }
.galaxy-route-item b i { display:none; font-style:normal; }
.galaxy-route-item b em { font-style:normal; }
.galaxy-route-item small { display:block; margin-top:5px; color:#b9c5df; font-size:12px; line-height:1.28; }
.step-card { min-width:0; border:1px solid var(--line); border-radius:22px; background:var(--panel); box-shadow:var(--shadow); backdrop-filter:blur(18px); padding:18px; }
.galaxy-station {
  position:relative;
  overflow:hidden;
  border-radius:28px;
  padding:22px;
  background:
    radial-gradient(circle at 96% 8%, rgba(255,209,102,.1), transparent 26%),
    radial-gradient(circle at 0% 100%, rgba(148,72,255,.11), transparent 28%),
    linear-gradient(180deg, rgba(13,19,39,.9), rgba(8,12,27,.82));
}
.galaxy-station:before { content:""; position:absolute; inset:0; pointer-events:none; background-image:radial-gradient(circle, rgba(255,255,255,.42) 0 1px, transparent 1.5px); background-size:92px 92px; opacity:.15; }
.galaxy-station > * { position:relative; z-index:1; }
#event-form-start { scroll-margin-top:96px; }
.scroll-anchor { display:block; position:relative; top:-96px; height:0; overflow:hidden; }
#station-format, #station-menu, #station-program, #station-contacts, #menu-catalog-start { scroll-margin-top:96px; }
.station-header { position:relative; z-index:1; display:flex; align-items:flex-start; gap:14px; margin-bottom:18px; }
.station-header > div { min-width:0; }
.station-orb { width:54px; height:54px; border-radius:50%; display:grid; place-items:center; flex:0 0 auto; color:#fff; background:linear-gradient(135deg,var(--brand-orange),var(--brand-pink),var(--brand-violet)); box-shadow:0 14px 34px rgba(255,79,163,.28); font-size:22px; font-weight:950; }
.station-kicker { display:block; color:#ffe29a; font-size:13px; font-weight:950; margin-bottom:5px; }
.station-header h2 { margin:0; font-size:clamp(26px, 2.4vw, 34px); line-height:1.08; }
.station-header p { margin:7px 0 0; color:var(--muted); line-height:1.45; max-width:780px; }
.station-subhead { position:relative; z-index:1; margin:20px 0 12px; padding-top:16px; border-top:1px solid rgba(255,255,255,.09); }
.station-subhead h3 { margin:0; font-size:22px; }
.station-subhead p { margin:5px 0 0; color:var(--muted); line-height:1.4; }
.crew-note { border:1px solid rgba(255,255,255,.1); border-radius:18px; padding:14px; background:rgba(255,255,255,.045); }
.crew-note p { margin:0; color:var(--muted); line-height:1.45; }
.guest-count-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; }
.guest-count-grid .crew-note { grid-column:1 / -1; }
.guest-count-card {
  min-width:0;
  display:grid;
  gap:11px;
  border:1px solid rgba(255,255,255,.12);
  border-radius:20px;
  padding:14px;
  background:
    radial-gradient(circle at 90% 12%, rgba(255,111,177,.12), transparent 32%),
    linear-gradient(145deg, rgba(255,255,255,.06), rgba(8,12,27,.62));
}
.guest-count-head { display:flex; align-items:center; justify-content:space-between; gap:10px; }
.guest-count-head span { color:#eef3ff; font-size:15px; font-weight:900; }
.guest-count-head b { color:#fff4b8; font-size:24px; line-height:1; }
.guest-count-strip { display:flex; gap:8px; overflow-x:auto; overflow-y:hidden; padding-bottom:2px; scrollbar-width:none; overscroll-behavior-x:contain; -webkit-overflow-scrolling:touch; }
.guest-count-strip::-webkit-scrollbar { display:none; }
.guest-count-chip {
  flex:0 0 auto;
  min-width:44px;
  min-height:42px;
  padding:0 13px;
  border:1px solid rgba(255,255,255,.13);
  border-radius:999px;
  color:#edf4ff;
  background:rgba(255,255,255,.065);
  font-weight:950;
}
.guest-count-chip.selected {
  color:#18071d;
  border-color:rgba(255,255,255,.22);
  background:linear-gradient(135deg,#ffd166,#ff80bf,#9448ff);
  box-shadow:0 10px 26px rgba(255,79,163,.22);
}
.guest-count-control {
  display:grid;
  grid-template-columns:44px 1fr 44px;
  gap:8px;
  align-items:center;
}
.guest-count-control button, .guest-count-control span {
  min-height:44px;
  border-radius:15px;
  display:grid;
  place-items:center;
}
.guest-count-control button {
  color:#fff;
  border:1px solid rgba(255,255,255,.16);
  background:rgba(255,255,255,.09);
  font-size:22px;
  font-weight:950;
}
.guest-count-control span {
  color:#fff;
  border:1px solid rgba(255,255,255,.14);
  background:#060a18;
  font-size:15px;
  font-weight:950;
  text-align:center;
  padding:0 8px;
}
.step-head { display:flex; justify-content:space-between; gap:12px; align-items:center; margin-bottom:14px; }
.step-head h2 { margin:0; font-size:26px; }
.event-head { align-items:flex-start; }
.event-head p { margin:7px 0 0; color:var(--muted); line-height:1.45; max-width:760px; }
.step-num { width:38px; height:38px; border-radius:50%; display:grid; place-items:center; background:linear-gradient(135deg,var(--brand-violet),var(--brand-pink)); font-weight:950; flex:0 0 auto; }
.occasion-block { margin:4px 0 16px; }
.occasion-title { display:block; color:#eef3ff; font-size:15px; font-weight:900; margin-bottom:10px; }
.occasion-grid { display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:10px; }
.occasion-chip {
  position:relative;
  min-height:62px;
  display:flex;
  align-items:center;
  gap:10px;
  padding:11px 12px;
  border:1px solid rgba(255,255,255,.16);
  border-radius:20px;
  color:var(--text);
  background:linear-gradient(145deg, rgba(255,255,255,.07), rgba(8,12,27,.68));
  box-shadow:inset 0 1px 0 rgba(255,255,255,.07);
  transition:transform .18s ease, border-color .18s ease, box-shadow .18s ease, background .18s ease;
}
.occasion-chip:hover { transform:translateY(-2px); border-color:rgba(255,209,102,.42); box-shadow:0 14px 30px rgba(255,79,163,.12); }
.occasion-chip.selected {
  border-color:rgba(255,128,191,.78);
  background:linear-gradient(145deg, rgba(255,209,102,.18), rgba(255,79,163,.18), rgba(148,72,255,.12));
  box-shadow:0 0 0 3px rgba(255,79,163,.12), 0 18px 38px rgba(255,79,163,.18);
}
.occasion-icon { width:36px; height:36px; border-radius:50%; display:grid; place-items:center; flex:0 0 auto; background:rgba(255,255,255,.1); box-shadow:inset 0 0 0 1px rgba(255,255,255,.08); font-size:19px; }
.occasion-label { font-size:15px; font-weight:900; line-height:1.14; text-align:left; }
.occasion-badge { position:absolute; right:9px; top:7px; color:#130717; background:linear-gradient(135deg,#ffd166,#ff80bf); border-radius:999px; padding:3px 7px; font-size:10px; font-weight:950; }
.occasion-other { margin-top:12px; max-width:560px; }
.occasion-hint { margin:10px 0 0; color:#b9c5df; font-size:13px; line-height:1.4; }
.form-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; }
.field { display:flex; flex-direction:column; gap:7px; }
.field.full { grid-column:1 / -1; }
.field span { color:#eef3ff; font-size:15px; font-weight:850; }
.field-hint { color:#b9c5df; font-size:12px; line-height:1.35; margin-top:-2px; }
.field input, .field select, .field textarea {
  width:100%; border:1px solid var(--line); border-radius:14px; background:rgba(6,10,24,.82); color:var(--text); padding:13px 14px; outline:none;
}
.field textarea { min-height:108px; resize:vertical; }
.field input:focus, .field select:focus, .field textarea:focus { border-color:rgba(88,216,255,.72); box-shadow:0 0 0 4px rgba(88,216,255,.12); }

.menu-card { overflow:hidden; }
.menu-head { align-items:flex-start; }
.station-header.menu-head { align-items:center; }
.station-header.menu-head .menu-total { margin-left:auto; flex:0 0 auto; }
.menu-head p { margin:6px 0 0; color:var(--muted); }
.menu-total { padding:10px 14px; border-radius:999px; background:linear-gradient(135deg, rgba(255,209,102,.22), rgba(255,79,163,.2)); border:1px solid var(--line-2); color:#fff2b0; font-size:20px; font-weight:950; white-space:nowrap; }
.menu-search { margin-bottom:12px; }
.category-tabs-wrap { position:relative; margin:2px 0 2px; }
.category-tabs-wrap:after {
  content:"";
  position:absolute;
  top:28px;
  right:-1px;
  bottom:8px;
  width:42px;
  pointer-events:none;
  background:linear-gradient(90deg, rgba(27,45,80,0), rgba(27,45,80,.96));
  border-radius:0 18px 18px 0;
}
.category-tabs-hint {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  margin:0 0 8px;
  color:rgba(255,255,255,.62);
  font-size:13px;
  font-weight:750;
}
.category-tabs-hint span { color:#fff; }
.category-tabs-hint b { color:#ffe8a8; font-size:12px; font-weight:850; white-space:nowrap; }
.category-tabs { display:flex; width:100%; max-width:100%; min-width:0; gap:10px; overflow-x:auto; overflow-y:hidden; padding:0 34px 14px 0; scrollbar-width:none; }
.category-tabs::-webkit-scrollbar { display:none; }
.category-tabs button {
  flex:0 0 auto;
  min-height:48px;
  color:#f1f5ff;
  background:linear-gradient(135deg, rgba(255,255,255,.08), rgba(255,255,255,.035));
  border:1px solid rgba(255,255,255,.16);
  border-radius:999px;
  padding:0 18px;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.06);
  font-size:17px;
  font-weight:650;
}
.category-tabs button.active {
  color:#fff;
  border-color:rgba(255,209,102,.6);
  background:linear-gradient(135deg, rgba(255,209,102,.20), rgba(255,79,163,.15), rgba(124,77,255,.13));
  box-shadow:0 0 0 1px rgba(255,209,102,.16), 0 10px 28px rgba(255,79,216,.12);
  font-weight:900;
}
.menu-builder-head { margin-bottom:14px; }
.menu-builder-head h3 { margin-bottom:6px; }
.menu-table-switch {
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:8px;
  border:1px solid rgba(255,255,255,.12);
  border-radius:22px;
  padding:6px;
  background:rgba(255,255,255,.055);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.06);
  margin-bottom:12px;
}
.menu-table-switch button {
  min-height:48px;
  border-radius:17px;
  color:#dce5f9;
  background:transparent;
  font-weight:950;
  transition:transform .18s ease, box-shadow .18s ease, background .18s ease, color .18s ease;
}
.menu-table-switch button.active {
  color:#fff;
  background:linear-gradient(135deg,#ff8f4c,#ff4fa3,#9448ff);
  box-shadow:0 14px 34px rgba(255,79,163,.24);
}
.menu-table-summaries {
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:10px;
  margin-bottom:10px;
}
.menu-table-summary {
  min-width:0;
  text-align:left;
  border:1px solid rgba(255,255,255,.12);
  border-radius:18px;
  padding:13px;
  color:var(--text);
  background:linear-gradient(145deg, rgba(255,255,255,.07), rgba(255,255,255,.035));
}
.menu-table-summary.active {
  border-color:rgba(255,111,177,.55);
  background:linear-gradient(145deg, rgba(255,79,163,.18), rgba(148,72,255,.11));
  box-shadow:0 0 0 3px rgba(255,79,163,.1);
}
.menu-table-summary span { display:block; color:#fff; font-size:16px; font-weight:950; }
.menu-table-summary small { display:block; margin-top:4px; color:#cbd8f6; font-size:12px; line-height:1.25; }
.menu-table-summary b { display:block; margin-top:7px; color:#fff4b8; font-size:15px; line-height:1.2; }
.menu-active-hint {
  margin:0 0 13px;
  border:1px solid rgba(255,209,102,.22);
  border-radius:16px;
  padding:10px 12px;
  color:#ffe8ad;
  background:rgba(255,209,102,.07);
  font-weight:850;
}
.selected-menu-panel {
  border:1px solid rgba(255,255,255,.12);
  border-radius:22px;
  padding:14px;
  margin:16px 0 0;
  background:
    radial-gradient(circle at 92% 0%, rgba(255,79,163,.12), transparent 34%),
    linear-gradient(145deg, rgba(255,255,255,.06), rgba(8,12,27,.56));
}
.selected-menu-head {
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:12px;
  margin-bottom:12px;
}
.selected-menu-head h3 { margin:4px 0 0; color:#fff; font-size:21px; }
.selected-menu-head b { color:#fff4b8; white-space:nowrap; font-size:16px; }
.selected-menu-tables { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; }
.selected-menu-table {
  border:1px solid rgba(255,255,255,.11);
  border-radius:17px;
  padding:12px;
  background:rgba(255,255,255,.04);
}
.selected-menu-table.active { border-color:rgba(255,111,177,.36); background:rgba(255,79,163,.08); }
.selected-menu-table h4 { margin:0 0 8px; color:#fff; font-size:16px; }
.selected-menu-table p { margin:0; color:#aeb9d2; font-size:13px; line-height:1.35; }
.selected-menu-list { display:grid; gap:7px; }
.selected-menu-list div {
  display:flex;
  justify-content:space-between;
  gap:10px;
  border-bottom:1px solid rgba(255,255,255,.08);
  padding-bottom:7px;
}
.selected-menu-list span { color:#dce5f9; font-size:13px; line-height:1.25; }
.selected-menu-list b { color:#fff; font-size:13px; white-space:nowrap; }
.selected-menu-table strong { display:block; margin-top:9px; color:#fff4b8; font-size:13px; }
.selected-menu-empty { margin:12px 0 0; color:#cbd8f6; font-size:13px; }
.menu-sticky-total {
  position:sticky;
  top:10px;
  z-index:5;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  margin:0 0 16px;
  padding:12px 14px;
  border:1px solid rgba(255,255,255,.18);
  border-radius:18px;
  background:linear-gradient(135deg, rgba(9,13,28,.94), rgba(35,18,44,.94));
  box-shadow:0 16px 42px rgba(0,0,0,.34);
  backdrop-filter:blur(16px);
}
.menu-sticky-total span { display:block; color:var(--muted); font-size:13px; font-weight:800; }
.menu-sticky-total b { display:block; margin-top:2px; font-size:19px; color:#fff4b8; }
.menu-sticky-total a { flex:0 0 auto; color:#15081e; text-decoration:none; background:linear-gradient(135deg,#ffd166,#ff80bf); border-radius:999px; padding:10px 12px; font-size:14px; font-weight:950; }
.sticky-summary-bar {
  position:fixed;
  left:0;
  right:0;
  bottom:0;
  z-index:80;
  padding:12px 16px calc(12px + env(safe-area-inset-bottom));
  border-top:1px solid rgba(255,255,255,.13);
  background:linear-gradient(180deg, rgba(10,14,28,.76), rgba(7,10,24,.92));
  box-shadow:0 -18px 45px rgba(0,0,0,.35);
  backdrop-filter:blur(18px);
  transition:transform .22s ease, opacity .22s ease;
}
.sticky-summary-bar[hidden] { display:block; opacity:0; pointer-events:none; transform:translateY(110%); }
.sticky-summary-inner { width:min(1180px, 100%); margin:0 auto; display:flex; align-items:center; justify-content:space-between; gap:14px; }
.sticky-summary-copy { min-width:0; display:grid; gap:2px; }
.sticky-summary-copy span { color:rgba(255,255,255,.65); font-size:13px; font-weight:850; }
.sticky-summary-copy b { color:#fff; font-size:15px; line-height:1.2; }
.sticky-summary-copy strong { color:#fff4b8; font-size:20px; line-height:1.12; }
.sticky-summary-copy [data-sticky-menu] { display:none; }
.sticky-summary-bar.menu-mode .sticky-summary-copy [data-sticky-default] { display:none; }
.sticky-summary-bar.menu-mode .sticky-summary-copy [data-sticky-menu] { display:block; }
.sticky-summary-button [data-sticky-menu] { display:none; }
.sticky-summary-bar.menu-mode .sticky-summary-button [data-sticky-default] { display:none; }
.sticky-summary-bar.menu-mode .sticky-summary-button [data-sticky-menu] { display:inline; }
.sticky-summary-button {
  flex:0 0 auto;
  min-height:50px;
  min-width:160px;
  padding:0 18px;
  border-radius:18px;
  color:#fff;
  background:linear-gradient(135deg,#ff8f4c,#ff4fa3,#9448ff);
  box-shadow:0 14px 34px rgba(255,79,163,.28);
  font-size:15px;
  font-weight:950;
  transition:transform .18s ease, box-shadow .18s ease;
}
.sticky-summary-button:hover { transform:translateY(-2px); box-shadow:0 18px 42px rgba(255,79,163,.36); }
.sticky-summary-button:active { transform:translateY(0); }
.sticky-summary-button:focus-visible { outline:0; box-shadow:0 0 0 4px rgba(88,216,255,.18), 0 18px 42px rgba(255,79,163,.36); }
.catalog-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:16px; min-width:0; }
.dish-card { color:var(--text); min-width:0; overflow:hidden; }
.dish-photo {
  position:relative;
  aspect-ratio:1 / .86;
  border-radius:22px;
  overflow:hidden;
  background:#fff;
  margin-bottom:10px;
}
.dish-photo img {
  --dish-photo-scale:1;
  --dish-photo-y:0%;
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center center;
  display:block;
  background:#fff;
  transform:translateY(var(--dish-photo-y)) scale(var(--dish-photo-scale));
  transform-origin:center center;
}
.dish-photo--clean img {
  object-fit:contain;
  object-position:center center;
  padding:0;
  box-sizing:border-box;
  --dish-photo-scale:1.28;
}
.dish-photo--contain {
  padding:0;
}
.dish-photo--contain img {
  object-fit:contain;
  object-position:center center;
  padding:0;
  --dish-photo-scale:1.52;
}
.dish-photo--lemonade img {
  object-fit:contain;
  object-position:center center;
  padding:0;
  --dish-photo-scale:.96;
}
.dish-photo--wide img {
  object-fit:contain;
  object-position:center center;
  padding:0;
  --dish-photo-scale:1.14;
}
.dish-photo--mangal img {
  object-fit:cover;
  object-position:center center;
  padding:0;
  --dish-photo-scale:1;
}
.dish-photo--dagestan {
  background:#f3eeee;
}
.dish-photo--dagestan img {
  object-fit:cover;
  object-position:center center;
  padding:0;
  --dish-photo-scale:1;
  --dish-photo-y:0%;
}
.dish-photo--pistolety img {
  object-position:center 68%;
}
.dish-placeholder { width:100%; height:100%; display:grid; place-items:center; background:radial-gradient(circle at 34% 24%, #fff4bd, #ff8f4c 46%, #a33cff 100%); }
.dish-placeholder span { font-size:54px; color:#fff; font-weight:950; text-shadow:0 6px 22px rgba(0,0,0,.24); }
.dish-add { position:absolute; right:10px; bottom:10px; width:46px; height:46px; border-radius:50%; color:#111; background:#fff; font-size:30px; line-height:1; box-shadow:0 10px 28px rgba(0,0,0,.24); }
.dish-counter { position:absolute; left:10px; right:10px; bottom:10px; display:grid; grid-template-columns:42px 1fr 42px; gap:8px; align-items:center; }
.dish-counter button, .dish-counter span { height:42px; border-radius:16px; display:grid; place-items:center; color:#fff; background:rgba(5,8,20,.88); border:1px solid rgba(255,255,255,.18); font-weight:950; }
.dish-counter button { font-size:22px; }
.dish-card strong { display:block; color:#fff; font-size:19px; margin-bottom:4px; }
.dish-card b {
  display:-webkit-box;
  min-height:2.36em;
  overflow:hidden;
  color:#fff;
  font-size:16px;
  line-height:1.18;
  -webkit-box-orient:vertical;
  -webkit-line-clamp:2;
}
.dish-description {
  display:block;
  position:relative;
  width:100%;
  margin:3px 0 0;
  padding:0 16px 0 0;
  border:0;
  background:transparent;
  overflow:hidden;
  color:#b8c0d4;
  text-align:left;
  font-size:10.5px;
  line-height:1.2;
  max-height:2.4em;
}
.dish-description::after {
  content:"›";
  position:absolute;
  right:4px;
  bottom:0;
  color:#dce4ff;
  font-size:11px;
  font-weight:900;
  line-height:1.2;
}
.dish-description.expanded {
  display:block;
  overflow:visible;
  max-height:none;
  padding-right:0;
}
.dish-description.expanded::after {
  content:"";
}
.dish-card > span { display:block; color:#9da4b5; margin-top:3px; font-size:14px; }
.dish-table-note {
  display:inline-flex;
  width:max-content;
  max-width:100%;
  margin-top:7px;
  border:1px solid rgba(255,209,102,.22);
  border-radius:999px;
  padding:4px 8px;
  color:#ffe8ad;
  background:rgba(255,209,102,.075);
  font-size:11px;
  font-style:normal;
  font-weight:900;
}
.dish-table-note.muted { color:#cbd8f6; border-color:rgba(255,255,255,.12); background:rgba(255,255,255,.045); }
.dish-card.selected .dish-photo { outline:2px solid var(--green); box-shadow:0 0 0 4px rgba(123,242,161,.12); }
.dish-card.selected .dish-add { display:none; }

.program-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; }
.program-card {
  min-height:168px;
  text-align:left;
  border:1px solid var(--line);
  border-radius:18px;
  padding:16px;
  color:var(--text);
  background:linear-gradient(145deg, rgba(255,255,255,.08), rgba(255,255,255,.03));
}
.program-card span { display:inline-flex; color:#fff4b8; font-weight:900; font-size:14px; margin-bottom:10px; }
.program-card b { display:block; font-size:22px; line-height:1.05; margin-bottom:10px; }
.program-card small { display:block; color:var(--muted); font-size:14px; line-height:1.35; }
.program-card.selected { border-color:#7bf2a1; box-shadow:0 0 0 3px rgba(123,242,161,.12); background:linear-gradient(145deg, rgba(24,90,66,.42), rgba(255,79,163,.1)); }
.program-team-panel {
  margin-top:14px;
  border:1px solid rgba(255,255,255,.13);
  border-radius:24px;
  padding:18px;
  background:
    radial-gradient(circle at 94% 6%, rgba(255,79,163,.17), transparent 34%),
    radial-gradient(circle at 8% 18%, rgba(88,216,255,.13), transparent 30%),
    linear-gradient(145deg, rgba(255,255,255,.075), rgba(8,12,27,.7));
  box-shadow:inset 0 1px 0 rgba(255,255,255,.07), 0 18px 42px rgba(0,0,0,.16);
}
.program-team-panel--empty { display:grid; gap:14px; }
.program-team-intro h3 { margin:5px 0 6px; color:#fff; font-size:24px; line-height:1.1; }
.program-team-intro p { margin:0; color:#cbd8f6; line-height:1.45; }
.program-placeholder {
  min-height:86px;
  display:grid;
  place-items:center;
  border:1px dashed rgba(255,255,255,.2);
  border-radius:18px;
  color:rgba(255,255,255,.58);
  background:rgba(255,255,255,.045);
  font-weight:900;
}
.program-team-summary {
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:10px;
  margin-top:14px;
}
.program-team-summary div {
  min-width:0;
  border:1px solid rgba(255,255,255,.12);
  border-radius:16px;
  padding:11px 12px;
  background:rgba(255,255,255,.055);
}
.program-team-summary span { display:block; color:#fff4b8; font-size:12px; font-weight:950; margin-bottom:4px; }
.program-team-summary b { display:block; color:#fff; font-size:14px; line-height:1.25; }
.program-role-block { margin-top:18px; }
.program-role-head {
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:12px;
  margin-bottom:10px;
}
.program-role-head h4 { margin:0; color:#fff; font-size:20px; line-height:1.15; }
.program-role-head p { margin:4px 0 0; color:#cbd8f6; font-size:13px; line-height:1.35; }
.program-role-head > span {
  flex:0 0 auto;
  max-width:42%;
  border:1px solid rgba(255,209,102,.24);
  border-radius:999px;
  padding:7px 10px;
  color:#ffe8ad;
  background:rgba(255,209,102,.075);
  font-size:12px;
  font-weight:950;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.program-profile-row {
  display:grid;
  grid-auto-flow:column;
  grid-auto-columns:minmax(210px, 1fr);
  gap:12px;
  overflow-x:auto;
  overscroll-behavior-x:contain;
  scroll-snap-type:x proximity;
  padding:2px 2px 10px;
}
.program-profile-row::-webkit-scrollbar { height:6px; }
.program-profile-row::-webkit-scrollbar-thumb { background:rgba(255,255,255,.18); border-radius:999px; }
.program-profile-card {
  min-width:0;
  scroll-snap-align:start;
  border:1px solid rgba(255,255,255,.13);
  border-radius:20px;
  padding:10px;
  color:#fff;
  background:linear-gradient(145deg, rgba(255,255,255,.08), rgba(255,255,255,.035));
  box-shadow:0 16px 32px rgba(0,0,0,.16);
  transition:transform .18s ease, border-color .18s ease, box-shadow .18s ease, background .18s ease;
}
.program-profile-card.selected {
  border-color:rgba(255,111,177,.72);
  background:linear-gradient(145deg, rgba(255,79,163,.22), rgba(148,72,255,.12));
  box-shadow:0 0 0 3px rgba(255,79,163,.16), 0 20px 44px rgba(255,79,163,.18);
  transform:translateY(-2px) scale(1.01);
}
.program-profile-image {
  width:100%;
  aspect-ratio:4 / 5;
  border-radius:16px;
  overflow:hidden;
  display:block;
  position:relative;
  background:#111827;
  box-shadow:inset 0 0 0 1px rgba(5,8,20,.04);
}
.program-profile-image::before {
  content:"";
  position:absolute;
  inset:-18px;
  background-image:var(--profile-photo);
  background-size:cover;
  background-position:center;
  filter:blur(18px);
  transform:scale(1.06);
  opacity:.82;
}
.program-profile-image::after {
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(180deg, rgba(255,255,255,.2), rgba(255,255,255,.04));
}
.program-profile-image img {
  position:relative;
  z-index:1;
  width:100%;
  height:100%;
  object-fit:contain;
  object-position:center center;
  display:block;
}
.program-profile-body { padding:10px 2px 8px; }
.program-profile-body span {
  display:inline-flex;
  color:#fff4b8;
  font-size:12px;
  font-weight:950;
  margin-bottom:6px;
}
.program-profile-body h5 { margin:0; color:#fff; font-size:18px; line-height:1.15; }
.program-profile-body p { margin:7px 0 0; color:#cbd8f6; font-size:13px; line-height:1.35; }
.program-profile-body b { display:block; margin-top:8px; color:#ffe8ad; font-size:13px; line-height:1.25; }
.program-profile-select {
  width:100%;
  min-height:48px;
  border-radius:16px;
  color:#fff;
  font-weight:950;
  background:linear-gradient(135deg,#ff8f4c,#ff4fa3,#9448ff);
  box-shadow:0 14px 28px rgba(255,79,163,.2);
}
.program-profile-card.selected .program-profile-select {
  color:#16101d;
  background:linear-gradient(135deg,#ffd166,#ff93c7);
}
.program-profile-modal {
  position:fixed;
  inset:0;
  z-index:60;
  display:grid;
  place-items:center;
  padding:20px;
  background:rgba(3,5,14,.72);
  backdrop-filter:blur(14px);
}
.program-profile-modal-card {
  position:relative;
  width:min(420px, 100%);
  border:1px solid rgba(255,255,255,.16);
  border-radius:26px;
  padding:16px;
  color:#fff;
  background:linear-gradient(145deg, rgba(16,20,42,.98), rgba(8,12,27,.96));
  box-shadow:0 30px 90px rgba(0,0,0,.5);
}
.program-profile-modal-card img {
  width:100%;
  aspect-ratio:4 / 5;
  object-fit:contain;
  object-position:center center;
  border-radius:20px;
  background:#fff;
  display:block;
}
.program-profile-modal-card span { display:block; margin-top:12px; color:#fff4b8; font-weight:950; }
.program-profile-modal-card h3 { margin:5px 0 8px; color:#fff; }
.program-profile-modal-card p { color:#cbd8f6; line-height:1.45; }
.program-profile-modal-card b { display:block; margin-bottom:12px; color:#ffe8ad; }
.program-profile-close {
  position:absolute;
  right:10px;
  top:10px;
  width:42px;
  height:42px;
  border-radius:50%;
  color:#fff;
  background:rgba(5,8,20,.72);
  font-size:26px;
  line-height:1;
  z-index:1;
}
.program-time { margin-top:14px; }
.program-time-card {
  margin-top:14px;
  border:1px solid rgba(255,255,255,.13);
  border-radius:24px;
  padding:18px;
  background:
    radial-gradient(circle at 92% 10%, rgba(255,128,191,.16), transparent 34%),
    radial-gradient(circle at 4% 8%, rgba(88,216,255,.12), transparent 28%),
    linear-gradient(145deg, rgba(255,255,255,.075), rgba(8,12,27,.68));
  box-shadow:inset 0 1px 0 rgba(255,255,255,.07), 0 18px 42px rgba(0,0,0,.16);
}
.program-time-card.disabled { opacity:.68; }
.program-time-head { display:flex; align-items:flex-start; gap:12px; }
.program-time-icon {
  width:44px;
  height:44px;
  border-radius:50%;
  display:grid;
  place-items:center;
  flex:0 0 auto;
  background:linear-gradient(135deg, rgba(255,209,102,.2), rgba(255,79,163,.18), rgba(148,72,255,.16));
  border:1px solid rgba(255,255,255,.12);
  box-shadow:0 10px 24px rgba(255,79,163,.13);
  font-size:20px;
}
.program-time-head h4 { margin:0; color:#fff; font-size:21px; line-height:1.15; }
.program-time-head p { margin:5px 0 0; color:#cbd8f6; line-height:1.45; font-size:14px; }
.program-time-meta { display:flex; flex-wrap:wrap; gap:9px; margin-top:14px; color:#cbd8f6; font-size:13px; }
.program-time-meta span {
  display:inline-flex;
  align-items:center;
  gap:5px;
  border:1px solid rgba(255,255,255,.11);
  border-radius:999px;
  padding:7px 10px;
  background:rgba(255,255,255,.055);
}
.program-time-meta b { color:#fff; }
.program-time-recommend { color:#ffe8ad !important; border-color:rgba(255,209,102,.24) !important; background:rgba(255,209,102,.075) !important; }
.program-time-chips { display:flex; flex-wrap:wrap; gap:10px; margin-top:14px; }
.program-time-chip {
  min-height:48px;
  border:1px solid rgba(255,255,255,.13);
  border-radius:17px;
  padding:9px 13px;
  color:#fff;
  background:rgba(255,255,255,.065);
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  font-weight:950;
  transition:transform .18s ease, border-color .18s ease, box-shadow .18s ease, background .18s ease;
}
.program-time-chip:hover { transform:translateY(-1px); border-color:rgba(255,209,102,.34); box-shadow:0 12px 28px rgba(255,111,177,.14); }
.program-time-chip small {
  padding:3px 7px;
  border-radius:999px;
  background:rgba(255,255,255,.1);
  color:#ffe7ad;
  font-size:10px;
  text-transform:lowercase;
}
.program-time-chip.recommended { border-color:rgba(255,209,102,.3); }
.program-time-chip.selected {
  border-color:rgba(255,255,255,.24);
  background:linear-gradient(135deg, rgba(255,143,76,.34), rgba(255,79,163,.28), rgba(148,72,255,.24));
  box-shadow:0 0 0 3px rgba(255,111,177,.12), 0 15px 34px rgba(255,79,163,.18);
}
.program-time-chip.custom { color:#eaf2ff; }
.program-time-custom {
  margin-top:12px;
  display:grid;
  grid-template-columns:minmax(160px, 240px) auto;
  gap:10px;
  align-items:end;
}
.program-time-custom button {
  min-height:48px;
  border-radius:16px;
  padding:0 16px;
  color:#fff;
  font-weight:950;
  background:linear-gradient(135deg,#ff8f4c,#ff4fa3,#9448ff);
  box-shadow:0 14px 30px rgba(255,79,163,.2);
}
.program-time-selected, .program-time-sync, .program-time-warning {
  margin-top:12px;
  border-radius:16px;
  padding:10px 12px;
  line-height:1.35;
}
.program-time-selected {
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  align-items:center;
  border:1px solid rgba(123,242,161,.24);
  background:rgba(123,242,161,.075);
}
.program-time-selected span {
  color:#102015;
  background:linear-gradient(135deg,#7bf2a1,#ffd166);
  border-radius:999px;
  padding:4px 8px;
  font-size:11px;
  font-weight:950;
}
.program-time-selected b { color:#dfffea; }
.program-time-sync { border:1px solid rgba(255,209,102,.24); background:rgba(255,209,102,.07); color:#ffe8b7; font-size:13px; }
.program-time-sync button { margin-left:6px; color:#fff; font-weight:950; text-decoration:underline; background:transparent; }
.program-time-warning { border:1px solid rgba(255,128,128,.28); background:rgba(255,79,100,.09); color:#ffdce3; font-size:13px; }
.program-time-footnote { margin:12px 0 0; color:rgba(255,255,255,.62); font-size:12.5px; line-height:1.4; }
.muted-field { opacity:.54; }

.partners-panel {
  display:grid;
  grid-template-columns:minmax(0,.9fr) minmax(320px,1.1fr);
  gap:16px;
  align-items:stretch;
  border:1px solid rgba(255,255,255,.12);
  border-radius:24px;
  padding:16px;
  background:
    radial-gradient(circle at 92% 12%, rgba(123,242,161,.13), transparent 30%),
    linear-gradient(145deg, rgba(255,255,255,.07), rgba(8,12,27,.62));
  box-shadow:inset 0 1px 0 rgba(255,255,255,.07);
}
.partners-copy {
  min-width:0;
  display:flex;
  flex-direction:column;
  justify-content:center;
}
.partners-copy .section-kicker,
.compact-extras-head .section-kicker {
  display:inline-flex;
  width:max-content;
  max-width:100%;
  margin-bottom:8px;
  color:#102015;
  background:linear-gradient(135deg,#7bf2a1,#ffd166);
  border-radius:999px;
  padding:6px 10px;
  font-size:11px;
  font-weight:950;
}
.partners-copy h3,
.compact-extras-head h3 {
  margin:0;
  color:#fff;
  font-size:26px;
  line-height:1.12;
}
.partners-copy p {
  margin:10px 0 0;
  color:#dbe5ff;
  line-height:1.45;
}
.partner-actions {
  display:grid;
  gap:10px;
}
.partner-whatsapp {
  min-height:58px;
  display:flex;
  align-items:center;
  gap:12px;
  border:1px solid rgba(255,255,255,.18);
  border-radius:18px;
  padding:10px 13px;
  color:#fff;
  text-decoration:none;
  background:
    radial-gradient(circle at 14% 18%, rgba(255,255,255,.22), transparent 30%),
    linear-gradient(135deg,#19c36b 0%,#23d18b 45%,#128c7e 100%);
  box-shadow:0 16px 34px rgba(35,209,139,.2);
  transition:transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}
.partner-whatsapp:hover {
  transform:translateY(-1px);
  border-color:rgba(255,255,255,.32);
  box-shadow:0 20px 44px rgba(35,209,139,.28);
}
.partner-whatsapp span {
  width:38px;
  height:38px;
  border-radius:50%;
  display:grid;
  place-items:center;
  flex:0 0 auto;
  background:rgba(255,255,255,.18);
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.14);
}
.partner-whatsapp b {
  min-width:0;
  font-size:18px;
  line-height:1.15;
}
.compact-extras-panel {
  margin-top:16px;
  border:1px solid rgba(255,255,255,.12);
  border-radius:24px;
  padding:16px;
  background:linear-gradient(145deg, rgba(255,255,255,.06), rgba(8,12,27,.58));
  box-shadow:inset 0 1px 0 rgba(255,255,255,.06);
}
.compact-extras-head {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  margin-bottom:12px;
}
.compact-extra-list {
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:10px;
}
.compact-extra {
  min-width:0;
  min-height:84px;
  display:grid;
  grid-template-columns:1fr auto;
  gap:10px;
  align-items:center;
  border:1px solid rgba(255,255,255,.12);
  border-radius:18px;
  padding:12px;
  background:rgba(255,255,255,.055);
}
.compact-extra.selected {
  border-color:rgba(123,242,161,.42);
  background:linear-gradient(135deg, rgba(123,242,161,.12), rgba(255,255,255,.055));
}
.compact-extra-main {
  min-width:0;
  display:flex;
  align-items:center;
  gap:10px;
}
.compact-extra-icon {
  width:38px;
  height:38px;
  border-radius:50%;
  display:grid;
  place-items:center;
  flex:0 0 auto;
  background:linear-gradient(135deg, rgba(255,209,102,.18), rgba(255,79,163,.14));
  border:1px solid rgba(255,255,255,.1);
}
.compact-extra b {
  display:block;
  color:#fff;
  font-size:15px;
  line-height:1.15;
}
.compact-extra small {
  display:block;
  margin-top:4px;
  color:#b9c5df;
  font-size:12px;
  line-height:1.25;
}
.compact-extra-add,
.compact-extra-controls button,
.compact-extra-controls span {
  min-height:38px;
  border-radius:14px;
  display:grid;
  place-items:center;
  font-weight:950;
}
.compact-extra-add {
  color:#fff;
  padding:0 12px;
  background:linear-gradient(135deg,#ff8f4c,#ff4fa3);
}
.compact-extra-controls {
  display:grid;
  grid-template-columns:34px 38px 34px;
  gap:6px;
}
.compact-extra-controls button {
  color:#fff;
  background:rgba(255,255,255,.1);
  border:1px solid rgba(255,255,255,.14);
  font-size:18px;
}
.compact-extra-controls span {
  color:#fff8d5;
  background:#060a18;
  border:1px solid rgba(255,255,255,.14);
}

.entertainment-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(230px,1fr)); gap:14px; }
.entertainment-card {
  min-width:0;
  min-height:100%;
  display:flex;
  flex-direction:column;
  gap:12px;
  border:1px solid rgba(255,255,255,.12);
  border-radius:24px;
  padding:16px;
  background:
    radial-gradient(circle at 88% 10%, rgba(255,209,102,.11), transparent 32%),
    linear-gradient(145deg, rgba(255,255,255,.07), rgba(8,12,27,.62));
  box-shadow:inset 0 1px 0 rgba(255,255,255,.07);
  transition:transform .18s ease, border-color .18s ease, box-shadow .18s ease;
}
.entertainment-card:hover { transform:translateY(-2px); border-color:rgba(255,209,102,.28); box-shadow:0 16px 34px rgba(255,111,177,.12); }
.entertainment-card.selected { border-color:rgba(123,242,161,.52); background:linear-gradient(145deg, rgba(123,242,161,.1), rgba(255,79,163,.09), rgba(8,12,27,.66)); box-shadow:0 0 0 3px rgba(123,242,161,.09), inset 0 1px 0 rgba(255,255,255,.08); }
.entertainment-card-head { display:flex; align-items:flex-start; gap:11px; }
.entertainment-icon { width:42px; height:42px; border-radius:50%; display:grid; place-items:center; flex:0 0 auto; background:linear-gradient(135deg, rgba(255,209,102,.18), rgba(255,79,163,.14)); box-shadow:inset 0 0 0 1px rgba(255,255,255,.08); font-size:21px; }
.entertainment-badge { display:inline-flex; width:max-content; max-width:100%; margin-bottom:6px; padding:4px 8px; border:1px solid rgba(255,255,255,.12); border-radius:999px; color:#ffe29a; background:rgba(255,255,255,.075); font-size:11px; font-weight:950; }
.entertainment-card.selected .entertainment-badge { color:#112015; background:linear-gradient(135deg,#7bf2a1,#ffd166); }
.entertainment-card h4 { margin:0; color:#fff; font-size:20px; line-height:1.12; }
.entertainment-card p { margin:0; color:#dbe5ff; line-height:1.4; font-size:14px; }
.entertainment-card strong { display:block; margin-top:auto; color:#fff4b8; font-size:20px; line-height:1.1; }
.entertainment-card small { display:block; color:#b9c5df; font-size:12.5px; line-height:1.35; }
.entertainment-selected-line { border:1px solid rgba(255,255,255,.1); border-radius:15px; padding:10px 11px; color:#dfffea; background:rgba(123,242,161,.075); font-size:13px; font-weight:850; line-height:1.35; }
.entertainment-sync { border:1px solid rgba(255,209,102,.22); border-radius:15px; padding:9px 10px; color:#ffe8b7; background:rgba(255,209,102,.07); font-size:12.5px; line-height:1.35; }
.entertainment-sync button { margin-left:5px; color:#fff; font-weight:950; text-decoration:underline; background:transparent; }
.entertainment-actions { display:grid; gap:9px; margin-top:2px; }
.entertainment-add, .entertainment-quick, .entertainment-remove {
  min-height:46px;
  border-radius:16px;
  font-weight:950;
  transition:transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}
.entertainment-add { color:#fff; background:linear-gradient(135deg,#ff8f4c,#ff4fa3,#9448ff); box-shadow:0 14px 32px rgba(255,79,163,.22); }
.entertainment-quick, .entertainment-remove { color:#edf4ff; border:1px solid rgba(255,255,255,.14); background:rgba(255,255,255,.07); }
.entertainment-add:hover, .entertainment-quick:hover, .entertainment-remove:hover { transform:translateY(-1px); }
.entertainment-qty { display:grid; grid-template-columns:44px 1fr 44px; gap:8px; }
.entertainment-qty button, .entertainment-qty span { min-height:44px; border-radius:15px; display:grid; place-items:center; }
.entertainment-qty button { color:#fff; background:rgba(255,255,255,.1); border:1px solid rgba(255,255,255,.16); font-size:22px; font-weight:950; }
.entertainment-qty span { color:#fff; background:#060a18; border:1px solid rgba(255,255,255,.16); font-size:15px; font-weight:950; text-align:center; padding:0 8px; }
.extras-heading .section-kicker { display:inline-flex; margin-bottom:7px; color:#16061d; background:linear-gradient(135deg,#ffd166,#ff80bf); border-radius:999px; padding:5px 9px; font-size:11px; font-weight:950; }
.extra-groups { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:14px; align-items:start; }
.extra-flat-list { grid-template-columns:repeat(auto-fit,minmax(230px,1fr)); }
.extra-group {
  border:1px solid rgba(255,255,255,.12);
  border-radius:24px;
  padding:14px;
  background:
    radial-gradient(circle at 92% 8%, rgba(255,209,102,.11), transparent 32%),
    linear-gradient(145deg, rgba(255,255,255,.06), rgba(8,12,27,.58));
  box-shadow:inset 0 1px 0 rgba(255,255,255,.06);
}
.extra-group summary { list-style:none; cursor:pointer; display:grid; gap:5px; margin-bottom:12px; }
.extra-group summary::-webkit-details-marker { display:none; }
.extra-group summary span { color:#fff; font-size:21px; font-weight:950; }
.extra-group summary small { color:#b9c5df; line-height:1.35; font-size:13px; }
.extra-group-list { display:grid; gap:10px; }
.extra-card {
  min-width:0;
  border:1px solid rgba(255,255,255,.12);
  border-radius:20px;
  background:linear-gradient(145deg, rgba(255,255,255,.07), rgba(6,10,24,.62));
  padding:14px;
  display:flex;
  flex-direction:column;
  gap:10px;
  color:var(--text);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.06);
  transition:transform .18s ease, border-color .18s ease, box-shadow .18s ease;
}
.extra-card:hover { transform:translateY(-2px); border-color:rgba(255,209,102,.28); box-shadow:0 14px 30px rgba(255,111,177,.12); }
.extra-card.selected { border-color:rgba(123,242,161,.5); background:linear-gradient(145deg, rgba(123,242,161,.1), rgba(255,79,163,.08), rgba(6,10,24,.66)); box-shadow:0 0 0 3px rgba(123,242,161,.09), inset 0 1px 0 rgba(255,255,255,.08); }
.extra-card.whatsapp-extra { border-color:rgba(123,242,161,.18); background:radial-gradient(circle at 92% 10%, rgba(123,242,161,.1), transparent 30%), linear-gradient(145deg, rgba(255,255,255,.07), rgba(6,10,24,.62)); }
.extra-card-head { display:flex; align-items:flex-start; gap:10px; }
.extra-icon { width:40px; height:40px; border-radius:50%; flex:0 0 auto; display:grid; place-items:center; background:linear-gradient(135deg, rgba(255,209,102,.18), rgba(255,79,163,.14)); border:1px solid rgba(255,255,255,.1); font-size:20px; }
.extra-badge { display:inline-flex; width:max-content; max-width:100%; margin-bottom:5px; padding:4px 8px; border-radius:999px; border:1px solid rgba(255,255,255,.12); background:rgba(255,255,255,.075); color:#ffe29a; font-size:10.5px; font-weight:950; line-height:1.2; }
.extra-card.selected .extra-badge { color:#102015; background:linear-gradient(135deg,#7bf2a1,#ffd166); border-color:transparent; }
.extra-card h4 { margin:0; color:#fff; font-size:18px; line-height:1.14; }
.extra-card p { margin:0; color:#dbe5ff; font-size:13.5px; line-height:1.38; }
.extra-card strong { color:#fff4b8; font-size:18px; line-height:1.1; }
.extra-card small { color:#b9c5df; font-size:12.5px; line-height:1.35; }
.extra-add, .extra-remove {
  width:100%;
  min-height:44px;
  border-radius:16px;
  font-weight:950;
  display:flex;
  align-items:center;
  justify-content:center;
  text-align:center;
  transition:transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}
.extra-add { color:#fff; background:linear-gradient(135deg,#ff8f4c,#ff4fa3,#9448ff); box-shadow:0 14px 30px rgba(255,79,163,.2); }
.extra-add.whatsapp-action {
  color:#fff;
  text-decoration:none;
  border:1px solid rgba(255,255,255,.18);
  background:
    radial-gradient(circle at 12% 18%, rgba(255,255,255,.22), transparent 30%),
    linear-gradient(135deg,#19c36b 0%,#23d18b 38%,#ff8f4c 100%);
  box-shadow:0 16px 34px rgba(35,209,139,.2), 0 0 28px rgba(255,143,76,.14);
  text-shadow:0 1px 10px rgba(0,0,0,.24);
}
.extra-add.whatsapp-action:hover {
  border-color:rgba(255,255,255,.3);
  box-shadow:0 20px 44px rgba(35,209,139,.26), 0 0 34px rgba(255,143,76,.18);
}
.extra-remove { color:#edf4ff; border:1px solid rgba(255,255,255,.14); background:rgba(255,255,255,.07); }
.extra-add:hover, .extra-remove:hover { transform:translateY(-1px); }
.extra-whatsapp-state { border:1px solid rgba(123,242,161,.18); border-radius:14px; padding:9px 10px; background:rgba(123,242,161,.08); color:#dfffea !important; font-size:13px !important; }
.cake-examples-preview {
  padding:8px;
  border:1px solid rgba(255,255,255,.12);
  border-radius:16px;
  background:rgba(255,255,255,.06);
}
.cake-examples-preview-row {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
}
.cake-preview-stack { display:flex; align-items:center; min-width:92px; height:42px; }
.cake-preview-stack span {
  width:42px;
  height:42px;
  margin-left:calc(var(--i) * -12px);
  border-radius:13px;
  overflow:hidden;
  border:2px solid rgba(255,255,255,.72);
  box-shadow:0 10px 22px rgba(0,0,0,.2);
  background:#fff;
}
.cake-preview-stack span:first-child { margin-left:0; }
.cake-preview-stack img { width:100%; height:100%; object-fit:cover; display:block; }
.cake-examples-button {
  min-height:42px;
  padding:0 15px;
  border-radius:999px;
  color:#fff4b8;
  border:1px solid rgba(255,226,154,.28);
  background:linear-gradient(135deg, rgba(255,209,102,.14), rgba(255,79,163,.13));
  font-size:13px;
  font-weight:950;
  white-space:nowrap;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.12);
}
.cake-examples-button:hover { transform:translateY(-1px); border-color:rgba(255,226,154,.42); }
.cake-examples-strip {
  margin-top:10px;
  display:grid;
  grid-auto-flow:column;
  grid-auto-columns:minmax(96px,34%);
  gap:8px;
  overflow-x:auto;
  overscroll-behavior-inline:contain;
  scroll-snap-type:x proximity;
  padding:2px 2px 8px;
}
.cake-examples-strip::-webkit-scrollbar { height:6px; }
.cake-examples-strip::-webkit-scrollbar-thumb { background:rgba(255,255,255,.22); border-radius:999px; }
.cake-example-chip {
  aspect-ratio:1 / 1.18;
  overflow:hidden;
  border-radius:14px;
  border:1px solid rgba(255,255,255,.14);
  background:#fff;
  box-shadow:0 12px 24px rgba(0,0,0,.18);
  scroll-snap-align:start;
}
.cake-example-chip img { width:100%; height:100%; object-fit:cover; display:block; }
.extra-qty { display:grid; grid-template-columns:44px 1fr 44px; gap:8px; }
.extra-qty button, .extra-qty span { min-height:42px; border-radius:15px; display:grid; place-items:center; }
.extra-qty button { color:#fff; background:rgba(255,255,255,.1); border:1px solid rgba(255,255,255,.16); font-size:22px; font-weight:950; }
.extra-qty span { color:#fff; background:#060a18; border:1px solid rgba(255,255,255,.16); font-size:15px; font-weight:950; }
.transfer-details { display:grid; gap:10px; padding:10px; border:1px solid rgba(255,255,255,.1); border-radius:16px; background:rgba(0,0,0,.16); }
.qty-control { display:flex; align-items:center; gap:8px; flex:0 0 auto; }
.qty-control button { width:38px; height:38px; border-radius:12px; color:#fff; background:rgba(255,255,255,.1); border:1px solid var(--line); font-weight:950; }
.qty-control input { width:58px; text-align:center; border:1px solid var(--line); border-radius:12px; background:#060a18; color:#fff; padding:8px; }

.contact-confirmation-card {
  margin-top:14px;
  border:1px solid rgba(255,255,255,.12);
  border-radius:26px;
  padding:18px;
  background:
    radial-gradient(circle at 90% 8%, rgba(255,128,191,.14), transparent 34%),
    radial-gradient(circle at 6% 8%, rgba(88,216,255,.1), transparent 30%),
    linear-gradient(145deg, rgba(255,255,255,.07), rgba(8,12,27,.64));
  box-shadow:inset 0 1px 0 rgba(255,255,255,.07);
}
.final-card {
  display:grid;
  gap:16px;
}
.final-booking-panel,
.banquet-info-panel {
  border:1px solid rgba(255,255,255,.13);
  border-radius:24px;
  padding:16px;
  background:
    radial-gradient(circle at 90% 0%, rgba(255,128,191,.12), transparent 34%),
    linear-gradient(145deg, rgba(255,255,255,.06), rgba(8,12,27,.54));
  box-shadow:inset 0 1px 0 rgba(255,255,255,.07);
}
.final-booking-panel {
  display:grid;
  gap:14px;
}
.final-total-strip {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  min-height:64px;
  padding:14px 16px;
  border:1px solid rgba(255,226,154,.28);
  border-radius:18px;
  background:
    radial-gradient(circle at 12% 20%, rgba(255,226,154,.18), transparent 30%),
    linear-gradient(135deg, rgba(143,95,54,.48), rgba(75,48,38,.58), rgba(255,111,177,.14));
  box-shadow:inset 0 1px 0 rgba(255,255,255,.12), 0 12px 26px rgba(0,0,0,.18);
}
.final-total-strip > span:first-child {
  min-width:0;
  color:#ffe9bd;
  font-weight:950;
  line-height:1.2;
}
.final-total-amount {
  margin-left:auto;
  display:flex;
  align-items:baseline;
  justify-content:flex-end;
  gap:10px;
  min-width:0;
  color:#fff8d5;
  line-height:1.08;
}
.final-total-amount b {
  color:#fff8d5;
  font-size:clamp(20px,3vw,28px);
  line-height:1.08;
  text-align:right;
  white-space:normal;
}
.final-total-amount del {
  color:rgba(255,255,255,.58);
  font-size:clamp(16px,2.2vw,21px);
  font-weight:950;
  text-decoration-color:rgba(255,126,154,.9);
  text-decoration-thickness:2px;
  white-space:nowrap;
}
.final-total-amount--empty {
  display:block;
  color:rgba(255,248,213,.82);
  font-weight:950;
  text-align:right;
}
.final-cost-breakdown {
  display:grid;
  gap:8px;
  margin:12px 0 16px;
  padding:14px 16px;
  border:1px solid rgba(255,255,255,.1);
  border-radius:16px;
  background:rgba(5,9,25,.32);
}
.final-cost-breakdown h3 { margin:0 0 2px; color:#fff4c7; font-size:15px; line-height:1.3; letter-spacing:0; }
.final-cost-breakdown > div { display:flex; align-items:center; justify-content:space-between; gap:12px; color:rgba(238,244,255,.8); font-size:14px; }
.final-cost-breakdown > div > span { min-width:0; }
.final-cost-breakdown > div > b,
.final-cost-breakdown > div > strong,
.final-cost-breakdown > div > .discounted-line-amount { flex:0 0 auto; color:#fff; font-size:14px; }
.final-ticket-row { display:grid !important; grid-template-columns:minmax(0,1fr) auto auto; }
.final-ticket-row span small { display:block; margin-top:2px; color:rgba(238,244,255,.58); font-size:11px; }
.final-ticket-total { display:flex; justify-content:flex-end; color:#fff; font-size:14px; }
.final-ticket-adjust { display:grid; grid-template-columns:30px 34px 30px; align-items:center; overflow:hidden; border:1px solid rgba(255,255,255,.14); border-radius:11px; background:rgba(4,8,24,.55); }
.final-ticket-adjust button { width:30px; height:32px; border:0; color:#fff; background:rgba(255,255,255,.08); font-size:19px; line-height:1; cursor:pointer; }
.final-ticket-adjust b { text-align:center; color:#fff; font-size:14px; }
.final-discount-note {
  margin-top:-4px;
  padding:10px 12px;
  border-radius:15px;
  color:#d9ffe8;
  border:1px solid rgba(123,242,161,.24);
  background:rgba(35,209,139,.1);
  font-size:13px;
  line-height:1.35;
  font-weight:850;
}
.final-contact-fields {
  margin-top:0;
}
.final-launch-panel {
  margin-top:0;
}
.final-launch-head p {
  max-width:740px;
}
.banquet-info-head {
  display:grid;
  gap:6px;
  margin-bottom:12px;
}
.banquet-info-head span {
  width:max-content;
  max-width:100%;
  color:#16061d;
  background:linear-gradient(135deg,#ffd166,#ff80bf);
  border-radius:999px;
  padding:5px 9px;
  font-size:11px;
  font-weight:950;
}
.banquet-info-head h3 {
  margin:0;
  color:#fff;
  font-size:clamp(24px,4vw,34px);
  line-height:1.08;
}
.contact-header span { display:inline-flex; margin-bottom:8px; color:#16061d; background:linear-gradient(135deg,#ffd166,#ff80bf); border-radius:999px; padding:5px 9px; font-size:11px; font-weight:950; }
.contact-header h2 { margin:0; color:#fff; font-size:28px; line-height:1.12; }
.contact-header p { margin:7px 0 0; color:#cbd8f6; line-height:1.45; }
.contact-fields { margin-top:14px; }
.phone-trust { display:flex; gap:6px; margin-top:7px; color:rgba(255,255,255,.68); font-size:12.5px; line-height:1.35; }
.contact-method-block { margin-top:16px; }
.contact-method-block h3 { margin:0 0 10px; color:#fff; font-size:20px; }
.contact-method-options { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:10px; }
.contact-method {
  min-height:56px;
  border:1px solid rgba(255,255,255,.12);
  border-radius:18px;
  padding:10px;
  color:#fff;
  background:rgba(255,255,255,.06);
  display:flex;
  align-items:center;
  gap:9px;
  text-align:left;
  font-weight:900;
  transition:transform .18s ease, border-color .18s ease, box-shadow .18s ease, background .18s ease;
}
.contact-method:hover { transform:translateY(-1px); border-color:rgba(255,209,102,.3); box-shadow:0 12px 28px rgba(255,111,177,.13); }
.contact-method i { width:32px; height:32px; border-radius:50%; display:grid; place-items:center; flex:0 0 auto; font-style:normal; background:linear-gradient(135deg, rgba(255,209,102,.18), rgba(255,79,163,.14)); border:1px solid rgba(255,255,255,.1); }
.contact-method span { min-width:0; }
.contact-method b { margin-left:auto; color:#15061d; background:linear-gradient(135deg,#7bf2a1,#ffd166); border-radius:999px; padding:3px 7px; font-size:10px; white-space:nowrap; }
.contact-method.selected { border-color:rgba(255,255,255,.24); background:linear-gradient(135deg, rgba(255,143,76,.28), rgba(255,79,163,.24), rgba(148,72,255,.2)); box-shadow:0 0 0 3px rgba(255,111,177,.1), 0 16px 34px rgba(255,79,163,.16); }
.contact-method-hint { margin:10px 0 0; color:#ffe8b7; font-size:13px; line-height:1.35; }
.contact-note, .notice, .submit-hint, .launch-confirm-note { color:#cfe0ff; font-size:14px; line-height:1.45; }
.contact-note { margin:12px 0 0; }
.summary-card { background:linear-gradient(180deg, rgba(13,19,39,.9), rgba(8,12,27,.86)); }
.summary-card h2 { font-size:30px; }
.launch-panel { margin-top:18px; border:1px solid rgba(255,255,255,.12); border-radius:24px; padding:18px; background:linear-gradient(145deg, rgba(255,255,255,.07), rgba(8,12,27,.62)); box-shadow:inset 0 1px 0 rgba(255,255,255,.06); }
.launch-panel-head span { display:inline-flex; margin-bottom:8px; color:#16061d; background:linear-gradient(135deg,#ffd166,#ff80bf); border-radius:999px; padding:6px 10px; font-size:12px; font-weight:950; }
.launch-panel-head h2 { margin:0; font-size:28px; }
.launch-panel-head p { margin:7px 0 0; color:var(--muted); line-height:1.45; }
.launch-checklist { display:grid; grid-template-columns:repeat(auto-fit,minmax(150px,1fr)); gap:10px; margin:16px 0; }
.launch-check { display:flex; align-items:center; gap:9px; min-height:44px; border:1px solid rgba(255,255,255,.1); border-radius:16px; padding:9px 11px; background:rgba(255,255,255,.045); color:rgba(255,255,255,.72); font-weight:850; }
.launch-check i { width:22px; height:22px; border-radius:50%; flex:0 0 auto; display:grid; place-items:center; border:1px solid rgba(255,255,255,.18); color:#0b1024; font-style:normal; font-size:13px; font-weight:950; }
.launch-check.ready { color:#f6fff7; border-color:rgba(123,242,161,.26); background:linear-gradient(135deg, rgba(123,242,161,.14), rgba(255,255,255,.045)); }
.launch-check.ready i { background:linear-gradient(135deg,#7bf2a1,#ffd166); border-color:transparent; }
.launch-check.optional b { margin-left:auto; border:1px solid rgba(255,255,255,.12); border-radius:999px; padding:2px 7px; color:#ffe8b7; font-size:11px; white-space:nowrap; }
.summary-list { display:grid; gap:10px; margin:14px 0; }
.summary-line { display:flex; justify-content:space-between; gap:12px; border-bottom:1px solid rgba(255,255,255,.08); padding-bottom:9px; color:var(--muted); }
.summary-line b { color:#fff; text-align:right; }
.summary-total-line {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  margin-top:4px;
  padding:14px;
  border:1px solid rgba(255,226,154,.28);
  border-radius:18px;
  background:
    radial-gradient(circle at 12% 20%, rgba(255,226,154,.16), transparent 30%),
    linear-gradient(135deg, rgba(143,95,54,.32), rgba(255,79,163,.1), rgba(8,12,27,.36));
}
.summary-total-line > span {
  color:#ffe9bd;
  font-weight:950;
  line-height:1.2;
}
.summary-total-line .final-total-amount b {
  font-size:clamp(21px,3.4vw,30px);
}
.chosen-menu { display:grid; gap:8px; margin-top:12px; }
.chosen-menu div { display:flex; justify-content:space-between; gap:12px; border:1px solid var(--line); border-radius:14px; padding:10px; background:rgba(0,0,0,.18); }
.chosen-menu span { color:var(--muted); font-size:14px; }
.chosen-menu small { display:block; margin-top:4px; color:#d6e2ff; font-size:12px; line-height:1.35; }
.chosen-kids-club div {
  border-color:rgba(123,242,161,.28);
  background:linear-gradient(135deg, rgba(35,209,139,.14), rgba(255,255,255,.045));
}
.chosen-kids-club span { color:#eef8ff; font-weight:850; }
.chosen-kids-club b { color:#fff8d5; white-space:nowrap; }
.chosen-menu-tables section {
  display:grid;
  gap:8px;
  border:1px solid rgba(255,255,255,.12);
  border-radius:16px;
  padding:10px;
  background:rgba(0,0,0,.14);
}
.chosen-menu-tables h4 { margin:0; color:#fff4b8; font-size:15px; }
.chosen-menu-tables section > strong { color:#fff4b8; font-size:14px; }
.menu-grand-total { margin:4px 0 0; color:#fff; font-weight:950; }
.extra-summary-note { margin:4px 0 0; color:rgba(255,255,255,.66); font-size:12.5px; line-height:1.4; }
.total { display:flex; justify-content:space-between; gap:12px; align-items:center; padding:18px; border-radius:18px; background:linear-gradient(135deg, rgba(255,209,102,.28), rgba(255,79,163,.2)); border:1px solid rgba(255,255,255,.16); margin:14px 0; }
.total span { color:#ffe5a6; font-weight:900; }
.total b { font-size:34px; }
.launch-total-card { display:grid; gap:6px; padding:18px; border-radius:20px; margin:16px 0; border:1px solid rgba(255,255,255,.16); background:radial-gradient(circle at 16% 10%, rgba(255,209,102,.24), transparent 34%), linear-gradient(135deg, rgba(255,79,163,.2), rgba(148,72,255,.16)); box-shadow:inset 0 1px 0 rgba(255,255,255,.08); }
.launch-total-card span { color:#ffe5a6; font-weight:950; }
.launch-total-card b { color:#fff8d5; font-size:clamp(24px, 4vw, 36px); line-height:1.08; }
.launch-total-card small { color:rgba(255,255,255,.68); line-height:1.4; }
.promo-field { margin:14px 0 16px; }
.promo-field input { text-transform:uppercase; letter-spacing:.04em; }
.promo-field small { margin-top:6px; }
.promo-success { color:#adffd0 !important; }
.promo-error { color:#ffb6c4 !important; }
.promo-discount-line { color:#adffd0 !important; font-weight:900; }
.empty-launch { margin-top:12px; padding:18px; border:1px solid rgba(255,255,255,.12); border-radius:20px; background:linear-gradient(145deg, rgba(255,255,255,.06), rgba(255,79,163,.08)); }
.empty-launch p { margin:0 0 14px; color:#dce6ff; line-height:1.45; }
.start-build-btn { min-height:52px; border-radius:18px; padding:0 18px; color:#16061d; background:linear-gradient(135deg,#ffd166,#ff8fbd); font-weight:950; box-shadow:0 14px 32px rgba(255,111,177,.22); transition:transform .18s ease, box-shadow .18s ease; }
.start-build-btn:hover { transform:translateY(-1px); box-shadow:0 18px 38px rgba(255,111,177,.3); }
.empty-launch-submit {
  margin-top:14px;
  display:grid;
  gap:10px;
}
.submit-btn { width:100%; min-height:60px; border-radius:20px; border:1px solid rgba(255,255,255,.18); color:#fff; background:linear-gradient(135deg,#ffb36b 0%,#ff6fb1 55%,#9b5cff 100%); font-weight:950; font-size:18px; box-shadow:0 18px 42px rgba(255,79,163,.28); transition:transform .18s ease, box-shadow .18s ease, opacity .18s ease; }
.submit-btn:hover:not(:disabled) { transform:translateY(-2px); box-shadow:0 24px 56px rgba(255,79,163,.36); }
.submit-btn:active:not(:disabled) { transform:translateY(0); }
.submit-btn:focus-visible { outline:0; box-shadow:0 0 0 3px rgba(255,255,255,.18), 0 0 0 6px rgba(255,111,177,.22), 0 24px 56px rgba(255,79,163,.36); }
.submit-btn:disabled { opacity:.45; filter:saturate(.45); }
.submit-hint { text-align:center; margin:10px 0 0; }
.launch-confirm-note { text-align:center; margin:10px 0 0; color:#ffe8b7; }
.success { border:1px solid rgba(121,242,154,.6); background:rgba(35,91,61,.28); color:#dfffea; padding:14px; border-radius:16px; margin-top:12px; }
.error { border:1px solid rgba(255,79,100,.55); background:rgba(95,24,40,.34); color:#ffe2e8; padding:14px; border-radius:16px; margin-top:12px; }

@media (max-width: 980px) {
  .guest-hero { padding-left:24px; padding-right:24px; }
  .hero-grid { grid-template-columns:1fr; gap:18px; min-height:auto; }
  .orbit-card { min-height:auto; padding:16px; }
  .orbit-card:before, .orbit-card:after, .orbit-dot { opacity:.2; }
  .hero-orbit-gallery { position:relative; inset:auto; max-width:100%; min-height:auto; display:block; }
  .hero-orbit-bg { display:none; }
  .hero-orbit-core { width:100%; min-height:auto; padding:20px; border-radius:26px; }
  .hero-orbit-cards { position:static; display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; margin-top:12px; }
  .hero-orbit-card { position:relative; width:100%; aspect-ratio:1.25 / 1; inset:auto; animation:none; transform:none !important; }
  .hero-orbit-card:nth-child(n + 5) { display:none; }
  .orbit-label { position:relative; left:auto; right:auto; bottom:auto; }
  .hero-stats { grid-template-columns:repeat(3,minmax(0,1fr)); max-width:850px; }
  .hero-stats div, .hero-stats button { min-height:auto; display:grid; grid-template-columns:auto 1fr; column-gap:10px; align-items:center; padding:12px; }
  .hero-stats i { grid-row:span 2; margin-bottom:0; }
  .hero-stats span { margin-top:2px; }
  .hero-stats small { grid-column:2; margin-top:4px; }
  .how-party-works__steps { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .how-step { min-height:190px; }
  .format-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .catalog-grid { grid-template-columns:repeat(3,minmax(0,1fr)); }
  .occasion-grid { grid-template-columns:repeat(3,minmax(0,1fr)); }
}

@media (max-width: 860px) {
  .guest-shell:after { right:-118px; top:154px; width:265px; height:265px; opacity:.76; }
  .guest-hero { padding:12px 14px 18px; }
  .guest-hero:before {
    inset:0;
    border-radius:0 0 28px 28px;
    background:
      radial-gradient(circle at 88% 22%, rgba(255,143,76,.24), transparent 36%),
      linear-gradient(180deg, rgba(46,31,66,.74), rgba(8,12,27,.42));
    backdrop-filter:blur(1px);
  }
  .guest-nav { margin-bottom:10px; align-items:center; gap:10px; min-height:58px; }
  .header-actions { flex-direction:row; align-items:center; gap:8px; max-width:none; flex:0 0 auto; }
  .header-cta { min-height:42px; padding:0 12px; border-radius:15px; font-size:13px; white-space:nowrap; max-width:100%; }
  .desktop-label { display:none; }
  .mobile-label { display:inline; }
  .employee-link { display:none; }
  .brand-mark { width:46px; height:46px; }
  .brand-mark:before { top:20px; }
  .brand-mark:after { top:28px; }
  .brand-text b { font-size:22px; }
  .brand-text small { display:none; }
  .hero-grid { grid-template-columns:1fr; gap:14px; min-height:auto; }
  .hero-copy { padding:2px 0 0; }
  .eyebrow { margin-bottom:10px; padding:7px 10px; font-size:13px; line-height:1.25; border-radius:16px; }
  .hero-copy h1 { font-size:clamp(29px, 8.4vw, 36px); line-height:1.04; margin-bottom:10px; }
  .hero-copy p { font-size:15px; line-height:1.42; margin:0 0 10px; padding:0; background:transparent; }
  .hero-emotion { display:flex; font-size:15px; border-radius:15px; padding:10px 11px; }
  .hero-actions { display:grid; grid-template-columns:1fr; gap:9px; margin-top:12px; }
  .hero-contact-actions { grid-template-columns:1fr; gap:9px; }
  .hero-btn { width:100%; min-height:50px; border-radius:16px; }
  .hero-reviews-kicker { min-height:66px; border-radius:16px; padding:10px 12px; gap:10px; }
  .hero-reviews-icon { width:42px; height:42px; font-size:23px; }
  .hero-reviews-kicker b { font-size:19px; }
  .hero-reviews-kicker small { font-size:14px; }
  .hero-reviews-kicker i { font-size:30px; }
  .hero-btn-review { min-height:52px; }
  .hero-btn-review img { width:30px; height:30px; border-radius:9px; }
  .hero-btn-review strong { font-size:11px; padding:6px 8px; }
  .hero-callback { grid-template-columns:1fr; gap:14px; padding:16px; border-radius:16px; }
  .hero-callback-copy h2 { font-size:20px; }
  .hero-callback-copy p { font-size:14px; }
  .hero-callback-controls { grid-template-columns:1fr; }
  .hero-callback-controls input,
  .hero-callback-controls button { min-height:50px; width:100%; }
  .hero-copy .hero-note { display:none; }
  .hero-stats { grid-template-columns:1fr; gap:10px; margin-top:16px; }
  .hero-stats div { min-height:auto; }
  .orbit-card { display:block; min-height:auto; padding:10px; border-radius:22px; margin-top:4px; }
  .orbit-card:before, .orbit-card:after, .orbit-dot { display:none; }
  .hero-orbit-core { border-radius:20px; padding:14px; }
  .hero-orbit-core h3 { font-size:22px; margin:12px 0 7px; }
  .hero-orbit-core p { font-size:13.5px; }
  .hero-orbit-card { border-radius:16px; }
  .hero-orbit-card__overlay { font-size:12px; padding:22px 8px 8px; }
  .hero-orbit-card__fallback { min-height:96px; }
  .hero-orbit-card__fallback-icon { font-size:28px; }
  .orbit-label { position:relative; left:auto; right:auto; bottom:auto; padding:15px; border-radius:19px; }
  .orbit-label b { font-size:24px; }
  .orbit-label span { font-size:14px; }
  .comfort-cards { gap:8px; margin-top:11px; }
  .comfort-cards div { padding:11px; border-radius:16px; }
  .comfort-cards i { width:32px; height:32px; }
  .comfort-cards strong { font-size:14px; }
  .comfort-cards small { font-size:12px; }
  .floor-mini-map div { grid-template-columns:1fr; gap:4px; padding:10px; }
  .floor-mini-map em { grid-row:auto; width:max-content; min-width:0; }
  .reviews-band { padding:0 14px; }
  #reviews { scroll-margin-top:76px; }
  .reviews-trust-card { grid-template-columns:1fr; gap:16px; border-radius:22px; padding:18px; }
  .reviews-trust-card:after { width:150px; height:150px; right:-70px; top:-70px; opacity:.34; }
  .reviews-copy h2 { font-size:26px; }
  .reviews-copy p { font-size:15px; }
  .reviews-copy small { font-size:13px; }
  .reviews-counter { border-radius:18px; padding:15px; }
  .reviews-counter b { font-size:36px; }
  .review-links { grid-template-columns:1fr; gap:10px; }
  .review-card { min-height:168px; border-radius:20px; padding:14px; }
  .review-card__top { grid-template-columns:54px minmax(0, 1fr) 46px; gap:10px; }
  .review-card b { font-size:20px; }
  .review-card__text { font-size:14px; }
  .review-card__cta { font-size:13.5px; }
  .how-party-works { margin:0 14px 18px; padding:16px; border-radius:22px; }
  .how-party-works:after { width:145px; height:145px; right:-74px; bottom:-74px; opacity:.55; }
  .how-party-works__header { margin-bottom:16px; }
  .how-party-works__header h2 { font-size:26px; }
  .how-party-works__header p { font-size:15px; line-height:1.45; }
  .how-party-works__steps { grid-template-columns:1fr; gap:10px; }
  .how-step { min-height:auto; border-radius:18px; padding:15px; gap:9px; }
  .how-step__number { font-size:26px; }
  .how-step__icon { width:38px; height:38px; font-size:20px; }
  .how-step h3 { font-size:18px; }
  .how-step p { font-size:13.5px; }
  .how-party-works__cta { display:grid; gap:12px; padding:13px; border-radius:18px; }
  .how-party-works__cta p { font-size:14px; }
  .how-cta-button { width:100%; min-height:50px; border-radius:16px; }
  .animator-week__list { grid-template-columns:1fr; gap:9px; }
  .animator-day {
    min-height:76px;
    grid-template-columns:70px 66px 1fr;
    gap:8px;
    padding:9px;
    border-radius:18px;
  }
  .animator-day__date { min-height:58px; border-radius:14px; }
  .animator-day__date strong { font-size:22px; }
  .animator-day__date span { font-size:11px; }
  .animator-day time { font-size:17px; }
  .animator-day p { font-size:14px; line-height:1.18; }
  .animator-week__note { display:grid; gap:4px; margin-top:11px; padding:11px 12px; border-radius:16px; font-size:13px; }
  .popular-formats { margin:0 14px 18px; padding:16px; border-radius:22px; }
  .popular-formats__header { margin-bottom:16px; }
  .popular-formats__header h2 { font-size:26px; }
  .popular-formats__header p { font-size:15px; line-height:1.45; }
  .popular-formats__header small { font-size:13px; }
  .format-grid { grid-template-columns:1fr; gap:10px; }
  .format-card { min-height:0; border-radius:18px; padding:14px; gap:9px; }
  .format-card h3 { font-size:20px; }
  .format-button { min-height:50px; border-radius:16px; }
  .custom-format-card { display:grid; gap:12px; border-radius:18px; padding:14px; }
  .custom-format-card button { width:100%; min-height:50px; }
  .preset-confirm { display:grid; gap:10px; }
  .preset-confirm button { width:100%; min-height:48px; }
  .selected-preset-note { border-radius:18px; padding:13px; }
  .guest-shell { padding-bottom:calc(128px + env(safe-area-inset-bottom)); }
  .constructor { padding:0 14px calc(104px + env(safe-area-inset-bottom)); gap:14px; }
  .galaxy-route-intro { border-radius:22px; padding:18px; }
  .galaxy-route-intro h2 { font-size:28px; }
  .galaxy-route-intro p { font-size:15px; }
  .galaxy-route-intro small { font-size:13px; }
  .galaxy-route-nav { display:flex; gap:10px; overflow-x:auto; overflow-y:hidden; padding:9px; border-radius:20px; scrollbar-width:none; }
  .galaxy-route-nav::-webkit-scrollbar { display:none; }
  .galaxy-route-item { flex:0 0 154px; min-height:78px; padding:10px; border-radius:16px; }
  .galaxy-route-item span { width:30px; height:30px; margin-bottom:6px; }
  .galaxy-route-item b { font-size:14px; }
  .galaxy-route-item b i { display:inline; }
  .galaxy-route-item b em { display:none; }
  .galaxy-route-item small { font-size:11px; }
  .galaxy-station { border-radius:22px; padding:16px; }
  .station-header { gap:11px; margin-bottom:15px; }
  .station-orb { width:44px; height:44px; font-size:18px; }
  .station-kicker { font-size:12px; }
  .station-header h2 { font-size:25px; }
  .station-header p { font-size:14px; }
  .station-subhead { margin:17px 0 10px; padding-top:13px; }
  .station-subhead h3 { font-size:20px; }
  .station-subhead p { font-size:13px; }
  #event-form-start, #station-format, #station-menu, #station-program, #station-contacts, #menu-catalog-start { scroll-margin-top:76px; }
  .scroll-anchor { top:-76px; }
  .form-grid, .guest-count-grid, .extra-groups, .entertainment-grid { grid-template-columns:1fr; }
  .partners-panel { grid-template-columns:1fr; border-radius:20px; padding:13px; gap:12px; }
  .partners-copy h3, .compact-extras-head h3 { font-size:21px; }
  .partners-copy p { font-size:13.5px; }
  .partner-actions { gap:9px; }
  .partner-whatsapp { min-height:52px; border-radius:16px; }
  .partner-whatsapp span { width:34px; height:34px; }
  .partner-whatsapp b { font-size:16px; }
  .compact-extras-panel { border-radius:20px; padding:13px; }
  .compact-extras-head { display:block; margin-bottom:10px; }
  .compact-extra-list { grid-template-columns:1fr; gap:8px; }
  .compact-extra { min-height:72px; border-radius:16px; padding:10px; }
  .guest-count-card { border-radius:18px; padding:13px; gap:10px; }
  .guest-count-head b { font-size:22px; }
  .guest-count-chip { min-height:42px; min-width:42px; }
  .guest-count-control { grid-template-columns:42px 1fr 42px; }
  .guest-count-control button, .guest-count-control span { min-height:42px; }
  .field input, .field select, .field textarea { min-height:48px; font-size:16px; border-radius:16px; }
  .event-head p { font-size:14px; }
  .occasion-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:9px; }
  .occasion-chip { min-height:58px; border-radius:17px; padding:10px; }
  .occasion-icon { width:32px; height:32px; font-size:17px; }
  .occasion-label { font-size:14px; }
  .occasion-badge { position:static; margin-left:auto; padding:2px 6px; font-size:9px; }
  .occasion-other { max-width:none; }
  .step-card { border-radius:18px; padding:14px; }
  .step-head h2 { font-size:25px; }
  .station-header.menu-head { display:grid; grid-template-columns:auto 1fr; }
  .station-header.menu-head .menu-total { grid-column:1 / -1; width:100%; text-align:center; margin-left:0; }
  .menu-card { padding-left:12px; padding-right:12px; }
  .menu-head { margin-bottom:10px; }
  .menu-head p { font-size:14px; }
  .menu-total { font-size:17px; padding:9px 11px; }
  .category-tabs { gap:9px; margin-left:0; padding:0 34px 10px 0; overscroll-behavior-x:contain; -webkit-overflow-scrolling:touch; }
  .category-tabs button { min-height:46px; padding:0 15px; font-size:14px; white-space:nowrap; }
  .menu-builder-head h3 { font-size:20px; }
  .menu-table-switch { border-radius:20px; padding:5px; gap:6px; }
  .menu-table-switch button { min-height:48px; border-radius:16px; font-size:14px; }
  .menu-table-summaries { gap:8px; }
  .menu-table-summary { border-radius:16px; padding:11px; }
  .menu-table-summary span { font-size:14px; }
  .menu-table-summary b { font-size:13px; }
  .menu-active-hint { font-size:13px; }
  .selected-menu-panel { border-radius:18px; padding:12px; }
  .selected-menu-head { align-items:flex-start; flex-direction:column; gap:6px; }
  .selected-menu-head h3 { font-size:18px; }
  .selected-menu-head b { white-space:normal; }
  .selected-menu-tables { grid-template-columns:1fr; gap:8px; }
  .menu-sticky-total { display:none; }
  .sticky-summary-bar { padding:10px 14px calc(10px + env(safe-area-inset-bottom)); }
  .sticky-summary-inner { gap:10px; }
  .sticky-summary-copy span { font-size:12px; }
  .sticky-summary-copy b { font-size:13px; }
  .sticky-summary-copy strong { font-size:18px; }
  .sticky-summary-button { min-width:112px; min-height:48px; padding:0 12px; border-radius:16px; font-size:14px; }
  .catalog-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px 12px; width:100%; }
  .dish-photo { height:132px; aspect-ratio:auto; border-radius:16px; margin-bottom:8px; }
  .dish-photo img { --dish-photo-scale:1; --dish-photo-y:0%; }
  .dish-photo--clean img { object-position:center center; padding:0; --dish-photo-scale:1.28; }
  .dish-photo--contain img { object-position:center center; --dish-photo-scale:1.52; }
  .dish-photo--lemonade img { object-position:center center; padding:0; --dish-photo-scale:.96; }
  .dish-photo--wide img { object-position:center center; padding:0; --dish-photo-scale:1.14; }
  .dish-photo--mangal { height:142px; }
  .dish-photo--mangal img { object-fit:cover; object-position:center center; padding:0; --dish-photo-scale:1; }
  .dish-photo--dagestan img { object-fit:cover; object-position:center center; padding:0; --dish-photo-scale:1; --dish-photo-y:0%; }
  .dish-photo--pistolety { height:150px; }
  .dish-photo--pistolety img { object-position:center 70%; }
  .dish-card strong { font-size:16px; margin-bottom:3px; }
  .dish-card b { font-size:14px; line-height:1.16; }
  .dish-card > span { font-size:12px; }
  .dish-table-note { font-size:10px; padding:3px 7px; }
  .dish-add { width:44px; height:44px; right:8px; bottom:8px; font-size:28px; }
  .dish-counter { left:6px; right:6px; bottom:6px; grid-template-columns:40px 1fr 40px; gap:6px; }
  .dish-counter button, .dish-counter span { height:40px; border-radius:13px; }
  .program-grid { grid-template-columns:1fr; gap:10px; }
  .program-card { min-height:auto; padding:14px; }
  .program-card b { font-size:20px; }
  .program-card small { font-size:13px; }
  .program-team-panel { border-radius:20px; padding:14px; }
  .program-team-intro h3 { font-size:20px; }
  .program-team-intro p { font-size:13px; }
  .program-team-summary { grid-template-columns:1fr; gap:8px; }
  .program-role-head { align-items:flex-start; flex-direction:column; gap:8px; }
  .program-role-head > span { max-width:100%; }
  .program-profile-row {
    grid-auto-columns:minmax(236px, 82vw);
    gap:10px;
    margin-left:-2px;
    margin-right:-2px;
  }
  .program-profile-card { border-radius:18px; padding:9px; }
  .program-profile-body h5 { font-size:17px; }
  .program-profile-select { min-height:50px; }
  .program-profile-modal { padding:14px; }
  .program-profile-modal-card { border-radius:22px; }
  .program-time-card { border-radius:20px; padding:15px; }
  .program-time-head h4 { font-size:19px; }
  .program-time-head p { font-size:13px; }
  .program-time-chips { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px; }
  .program-time-chip { min-height:46px; padding:8px 9px; flex-direction:column; gap:3px; }
  .program-time-chip small { font-size:9px; padding:2px 6px; }
  .program-time-custom { grid-template-columns:1fr; }
  .program-time-custom button { width:100%; min-height:48px; }
  .extra-group { border-radius:20px; padding:12px; }
  .extra-group summary span { font-size:19px; }
  .extra-card { padding:13px; border-radius:18px; gap:9px; }
  .extra-card h4 { font-size:18px; }
  .extra-card p { font-size:13px; }
  .extra-add, .extra-remove { min-height:48px; }
  .qty-control { gap:7px; }
  .qty-control button { width:44px; height:44px; border-radius:14px; }
  .qty-control input { width:58px; height:44px; min-height:44px; padding:7px; font-size:16px; border-radius:14px; }
  .entertainment-card { border-radius:20px; padding:15px; gap:10px; }
  .entertainment-icon { width:40px; height:40px; }
  .entertainment-card h4 { font-size:19px; }
  .entertainment-card p { font-size:14px; }
  .entertainment-card strong { font-size:19px; }
  .entertainment-add, .entertainment-quick, .entertainment-remove { min-height:48px; }
  .entertainment-qty { grid-template-columns:42px 1fr 42px; }
  .contact-confirmation-card { border-radius:20px; padding:15px; }
  .final-booking-panel,
  .banquet-info-panel { border-radius:19px; padding:13px; }
  .final-total-strip { align-items:flex-start; flex-direction:column; gap:7px; min-height:auto; padding:12px 13px; border-radius:16px; }
  .final-total-amount { margin-left:0; justify-content:flex-start; flex-wrap:wrap; gap:8px; }
  .final-total-amount b { text-align:left; font-size:22px; }
  .final-total-amount del { font-size:17px; }
  .final-cost-breakdown { padding:12px; }
  .final-cost-breakdown > div { font-size:13px; }
  .final-ticket-row { grid-template-columns:minmax(0,1fr) auto; row-gap:7px; }
  .final-ticket-row > strong,
  .final-ticket-row > .final-ticket-total { grid-column:1 / -1; text-align:right; }
  .summary-total-line { align-items:flex-start; flex-direction:column; gap:8px; padding:12px; border-radius:16px; }
  .summary-total-line .final-total-amount b { font-size:23px; }
  .banquet-info-head h3 { font-size:25px; }
  .contact-header h2 { font-size:24px; }
  .contact-header p { font-size:14px; }
  .contact-method-options { grid-template-columns:1fr; gap:8px; }
  .contact-method { min-height:50px; border-radius:16px; }
  .contact-method b { font-size:9px; }
  .total b { font-size:30px; }
  .launch-panel { border-radius:20px; padding:14px; }
  .launch-panel-head h2 { font-size:24px; }
  .summary-line { display:grid; gap:4px; }
  .summary-line b { text-align:left; }
  .submit-btn { min-height:54px; font-size:16px; line-height:1.18; padding:10px 12px; }
}

@media (max-width: 380px) {
  .hero-copy h1 { font-size:34px; }
  .brand-text small { font-size:12px; }
  .galaxy-route-item { flex-basis:142px; }
  .sticky-summary-button { min-width:104px; font-size:13px; }
  .sticky-summary-copy b { font-size:12px; }
  .sticky-summary-copy strong { font-size:17px; }
  .occasion-grid { grid-template-columns:1fr; }
  .occasion-chip { min-height:54px; }
  .catalog-grid { gap:15px 10px; }
  .catalog-grid { grid-template-columns:1fr; }
  .dish-photo { height:124px; }
  .dish-photo img { --dish-photo-scale:1; --dish-photo-y:0%; }
  .dish-photo--clean img { object-position:center center; padding:0; --dish-photo-scale:1.28; }
  .dish-photo--contain img { object-position:center center; --dish-photo-scale:1.52; }
  .dish-photo--lemonade img { object-position:center center; padding:0; --dish-photo-scale:.96; }
  .dish-photo--wide img { object-position:center center; padding:0; --dish-photo-scale:1.14; }
  .dish-photo--mangal { height:150px; }
  .dish-photo--mangal img { object-fit:cover; object-position:center center; padding:0; --dish-photo-scale:1; }
  .dish-photo--dagestan img { object-fit:cover; object-position:center center; padding:0; --dish-photo-scale:1; --dish-photo-y:0%; }
  .dish-photo--pistolety { height:158px; }
  .dish-photo--pistolety img { object-position:center 70%; }
  .dish-card b { font-size:13px; }
}

@media (min-width: 861px) {
  .guest-hero {
    max-width:min(1600px, calc(100vw - 72px));
    padding:34px 48px 44px;
  }
  .guest-hero:before {
    inset:88px 0 24px;
    border-radius:38px;
    background:
      radial-gradient(circle at 80% 26%, rgba(255,143,76,.22), transparent 32%),
      linear-gradient(90deg, rgba(18,14,32,.72), rgba(5,8,20,.44));
  }
  .guest-nav {
    max-width:1280px;
    margin:0 auto 28px;
  }
  .hero-grid {
    max-width:1280px;
    margin:0 auto;
  }
  .hero-copy {
    max-width:1080px;
    margin:0 auto;
    padding:46px 0 40px;
    text-align:center;
  }
  .eyebrow,
  .hero-emotion {
    margin-left:auto;
    margin-right:auto;
  }
  .hero-copy h1 {
    max-width:1040px;
    margin-left:auto;
    margin-right:auto;
    font-size:64px;
  }
  .hero-copy p {
    max-width:920px;
    margin-left:auto;
    margin-right:auto;
    font-size:23px;
  }
  .hero-emotion {
    justify-content:center;
    font-size:20px;
    padding:13px 18px;
  }
  .hero-actions {
    max-width:980px;
    margin:24px auto 0;
    gap:14px;
  }
  .hero-btn {
    min-height:64px;
    font-size:18px;
  }
  .hero-reviews-kicker {
    min-height:84px;
    padding:15px 18px;
  }
  .hero-reviews-icon {
    width:56px;
    height:56px;
    font-size:31px;
  }
  .hero-reviews-kicker b { font-size:26px; }
  .hero-reviews-kicker small { font-size:16px; }
  .hero-btn-review {
    min-height:66px;
    padding-left:18px;
    padding-right:18px;
  }
  .hero-btn-review img {
    width:42px;
    height:42px;
    border-radius:12px;
  }
  .hero-btn-review span { font-size:18px; }
  .hero-btn-review strong {
    font-size:13px;
    padding:8px 11px;
  }
  .hero-copy .hero-note {
    margin:15px auto 0;
    text-align:center;
    max-width:760px;
    font-size:15px;
  }

  .how-party-works.animator-week,
  .constructor,
  .popular-formats {
    max-width:min(1500px, calc(100vw - 112px));
  }
  .how-party-works.animator-week {
    margin-top:24px;
    margin-bottom:26px;
    padding:38px;
    border-radius:34px;
  }
  .how-party-works__header {
    max-width:1100px;
    margin:0 auto 28px;
    text-align:center;
  }
  .how-party-works__header h2 { font-size:48px; }
  .how-party-works__header p {
    max-width:980px;
    margin-left:auto;
    margin-right:auto;
    font-size:20px;
  }
  .animator-week__list {
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:16px;
  }
  .animator-day {
    min-height:112px;
    grid-template-columns:88px 94px minmax(0,1fr);
    gap:16px;
    padding:16px;
    border-radius:22px;
  }
  .animator-day__date {
    min-height:78px;
    border-radius:18px;
  }
  .animator-day__date strong { font-size:31px; }
  .animator-day__date span { font-size:13px; }
  .animator-day time { font-size:24px; }
  .animator-day p {
    font-size:20px;
    line-height:1.18;
  }

  .constructor {
    padding-left:0;
    padding-right:0;
    gap:26px;
  }
  .galaxy-route-intro {
    padding:34px 38px;
    border-radius:34px;
  }
  .galaxy-route-intro h2 { font-size:48px; }
  .galaxy-route-intro p {
    max-width:980px;
    font-size:20px;
  }
  .galaxy-route-intro small { font-size:16px; }
  .galaxy-route-nav {
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:14px;
    padding:14px;
    border-radius:28px;
  }
  .galaxy-route-item {
    min-height:112px;
    padding:18px;
    border-radius:22px;
  }
  .galaxy-route-item span {
    width:42px;
    height:42px;
    margin-bottom:10px;
    font-size:18px;
  }
  .galaxy-route-item b { font-size:20px; }
  .galaxy-route-item small { font-size:14px; }
  .galaxy-station {
    padding:34px 38px;
    border-radius:34px;
  }
  .station-header {
    gap:18px;
    margin-bottom:26px;
  }
  .station-orb {
    width:66px;
    height:66px;
    font-size:26px;
  }
  .station-kicker { font-size:15px; }
  .station-header h2 { font-size:46px; }
  .station-header p {
    max-width:960px;
    font-size:18px;
  }
  .station-subhead h3,
  .menu-builder-head h3 { font-size:28px; }
  .station-subhead p,
  .menu-builder-head p,
  .event-head p,
  .crew-note p { font-size:17px; }

  .form-grid,
  .guest-count-grid { gap:18px; }
  .field { gap:9px; }
  .field span,
  .guest-count-head span { font-size:17px; }
  .field input,
  .field select,
  .field textarea {
    min-height:60px;
    border-radius:18px;
    padding:17px 18px;
    font-size:18px;
  }
  .guest-count-card {
    padding:18px;
    border-radius:24px;
  }
  .guest-count-head b { font-size:30px; }
  .guest-count-chip {
    min-width:50px;
    min-height:50px;
    font-size:17px;
  }
  .guest-count-control {
    grid-template-columns:52px 1fr 52px;
  }
  .guest-count-control button,
  .guest-count-control span {
    min-height:52px;
    border-radius:16px;
    font-size:18px;
  }

  .menu-total {
    font-size:24px;
    padding:13px 18px;
  }
  .menu-table-switch {
    border-radius:26px;
    padding:8px;
    gap:10px;
  }
  .menu-table-switch button {
    min-height:60px;
    border-radius:20px;
    font-size:18px;
  }
  .menu-table-summaries { gap:14px; }
  .menu-table-summary {
    padding:18px;
    border-radius:22px;
  }
  .menu-table-summary span { font-size:19px; }
  .menu-table-summary small { font-size:14px; }
  .menu-table-summary b { font-size:18px; }
  .selected-menu-panel {
    padding:20px;
    border-radius:26px;
  }
  .selected-menu-head h3 { font-size:27px; }
  .selected-menu-head b { font-size:19px; }
  .selected-menu-tables { gap:14px; }
  .selected-menu-table {
    padding:16px;
    border-radius:21px;
  }
  .selected-menu-table h4 { font-size:19px; }
  .selected-menu-list span,
  .selected-menu-list b,
  .selected-menu-table strong { font-size:15px; }

  .catalog-grid { gap:26px 22px; }
  .dish-photo {
    border-radius:24px;
    margin-bottom:14px;
  }
  .dish-add {
    width:54px;
    height:54px;
    font-size:34px;
  }
  .dish-counter { grid-template-columns:50px 1fr 50px; }
  .dish-counter button,
  .dish-counter span {
    height:50px;
    border-radius:17px;
  }
  .dish-card strong { font-size:23px; }
  .dish-card b { font-size:19px; }
  .dish-card > span { font-size:16px; }

  .partners-panel {
    grid-template-columns:minmax(0,.9fr) minmax(360px,1.1fr);
    gap:22px;
    padding:22px;
    border-radius:28px;
  }
  .partners-copy h3,
  .compact-extras-head h3 { font-size:34px; }
  .partners-copy p { font-size:18px; }
  .partner-actions { gap:14px; }
  .partner-whatsapp {
    min-height:74px;
    padding:14px 18px;
    border-radius:22px;
  }
  .partner-whatsapp span {
    width:48px;
    height:48px;
  }
  .partner-whatsapp b { font-size:22px; }
  .compact-extras-panel {
    padding:22px;
    border-radius:28px;
  }
  .compact-extra-list { gap:14px; }
  .compact-extra {
    min-height:96px;
    padding:16px;
    border-radius:22px;
  }
  .compact-extra b { font-size:18px; }
  .compact-extra small { font-size:14px; }
  .compact-extra-add {
    min-height:48px;
    padding:0 18px;
    font-size:16px;
  }

  .final-booking-panel,
  .banquet-info-panel {
    padding:24px;
    border-radius:28px;
  }
  .final-total-strip {
    min-height:78px;
    padding:18px 22px;
    border-radius:22px;
  }
  .final-total-strip > span:first-child,
  .summary-total-line > span { font-size:18px; }
  .final-total-amount b { font-size:36px; }
  .final-total-amount del { font-size:24px; }
  .summary-line { font-size:17px; }
  .banquet-info-head h3 { font-size:42px; }
  .summary-total-line {
    padding:18px;
    border-radius:22px;
  }
}

@media (min-width: 861px) and (max-width: 1199px) {
  .guest-hero,
  .constructor,
  .how-party-works.animator-week,
  .popular-formats {
    max-width:calc(100vw - 44px);
  }
  .guest-hero {
    padding-left:26px;
    padding-right:26px;
  }
  .hero-copy h1 { font-size:52px; }
  .hero-copy p { font-size:20px; }
  .hero-actions { max-width:900px; }
  .how-party-works__header h2 { font-size:40px; }
  .animator-week__list { grid-template-columns:1fr; }
  .galaxy-route-intro h2 { font-size:40px; }
  .galaxy-route-nav { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .station-header h2 { font-size:38px; }
  .catalog-grid { grid-template-columns:repeat(3,minmax(0,1fr)); }
  .compact-extra-list { grid-template-columns:1fr; }
}

@media (prefers-reduced-motion: reduce) {
  .sticky-summary-bar { transition:none; }
  .hero-orbit-card { animation:none; transition:none; }
}

.dish-photo--zoom-plate img,
.dish-photo--zoom-main img,
.dish-photo--zoom-pizza img,
.dish-photo--zoom-rolls img,
.dish-photo--zoom-fast img,
.dish-photo--zoom-soup img,
.dish-photo--zoom-sauce img,
.dish-photo--zoom-dessert img,
.dish-photo--zoom-drink img {
  object-fit:cover;
  object-position:center center;
  padding:0;
}

.dish-photo--zoom-plate img { --dish-photo-scale:1.10; }
.dish-photo--zoom-main img { --dish-photo-scale:1.08; }
.dish-photo--zoom-pizza img { --dish-photo-scale:1.04; }
.dish-photo--zoom-rolls img { --dish-photo-scale:1.06; }
.dish-photo--zoom-fast img { --dish-photo-scale:1.08; }
.dish-photo--zoom-soup img { --dish-photo-scale:1.06; }
.dish-photo--zoom-sauce img { --dish-photo-scale:1.10; }
.dish-photo--zoom-dessert img { --dish-photo-scale:1.08; }
.dish-photo--zoom-drink img { --dish-photo-scale:1.02; }

.dish-photo--zoom-rolls img { object-position:center 54%; }
.dish-photo--zoom-fast img { object-position:center 53%; }
.dish-photo--zoom-soup img { object-position:center 52%; }

.dish-photo--popular.dish-photo--zoom-main img { --dish-photo-scale:1.18; }
.dish-photo--popular.dish-photo--zoom-pizza img { --dish-photo-scale:1.22; }
.dish-photo--popular.dish-photo--zoom-rolls img { --dish-photo-scale:1.16; }
.dish-photo--popular.dish-photo--zoom-fast img { --dish-photo-scale:1.20; }
.dish-photo--popular.dish-photo--zoom-sauce img { --dish-photo-scale:1.22; }
.dish-photo--popular.dish-photo--zoom-main img,
.dish-photo--popular.dish-photo--zoom-pizza img,
.dish-photo--popular.dish-photo--zoom-rolls img,
.dish-photo--popular.dish-photo--zoom-fast img,
.dish-photo--popular.dish-photo--zoom-sauce img {
  object-fit:cover;
  padding:0;
}

.dish-photo--contain img {
  object-fit:contain;
  object-position:center center;
  --dish-photo-scale:1.58;
}

@media (max-width: 860px) {
  .dish-photo--zoom-plate img { --dish-photo-scale:1.06; }
  .dish-photo--zoom-main img { --dish-photo-scale:1.04; }
  .dish-photo--zoom-pizza img { --dish-photo-scale:1.02; }
  .dish-photo--zoom-rolls img { --dish-photo-scale:1.02; }
  .dish-photo--zoom-fast img { --dish-photo-scale:1.04; }
  .dish-photo--zoom-soup img { --dish-photo-scale:1.03; }
  .dish-photo--zoom-sauce img { --dish-photo-scale:1.06; }
  .dish-photo--zoom-dessert img { --dish-photo-scale:1.04; }
  .dish-photo--zoom-drink img { --dish-photo-scale:1; }
  .dish-photo--contain img { --dish-photo-scale:1.50; }
}

@media (max-width: 380px) {
  .dish-photo--zoom-plate img { --dish-photo-scale:1.04; }
  .dish-photo--zoom-main img { --dish-photo-scale:1.03; }
  .dish-photo--zoom-pizza img { --dish-photo-scale:1.01; }
  .dish-photo--zoom-rolls img { --dish-photo-scale:1.01; }
  .dish-photo--zoom-fast img { --dish-photo-scale:1.03; }
  .dish-photo--zoom-soup img { --dish-photo-scale:1.02; }
  .dish-photo--zoom-sauce img { --dish-photo-scale:1.04; }
  .dish-photo--zoom-dessert img { --dish-photo-scale:1.03; }
  .dish-photo--zoom-drink img { --dish-photo-scale:1; }
  .dish-photo--contain img { --dish-photo-scale:1.44; }
}

.dish-photo--tune-up-sm img { --dish-photo-y:-3%; }
.dish-photo--tune-down-xs img { --dish-photo-y:2%; }
.dish-photo--tune-down-sm img { --dish-photo-y:4%; }
.dish-photo--tune-down-md img { --dish-photo-y:6%; }
.dish-photo--tune-down-lg img { --dish-photo-y:8%; }

.dish-photo--tune-out-plate-down img {
  --dish-photo-scale:1.04;
  --dish-photo-y:6%;
}
.dish-photo--tune-out-plate-soft img {
  --dish-photo-scale:1;
  --dish-photo-y:6%;
}
.dish-photo--tune-in-plate img {
  --dish-photo-scale:1.16;
  --dish-photo-y:6%;
}

.dish-photo--tune-out-pizza-down img {
  --dish-photo-scale:1;
  --dish-photo-y:5%;
}

.dish-photo--tune-out-roll img {
  --dish-photo-scale:1;
  --dish-photo-y:1%;
}

.dish-photo--tune-lemonade-fit img {
  object-fit:contain;
  object-position:center center;
  --dish-photo-scale:.86;
}

.dish-photo--tune-juice-fit img {
  object-fit:contain;
  object-position:center center;
  --dish-photo-scale:.78;
}

.dish-photo--popular.dish-photo--contain img {
  object-fit:cover;
  object-position:center center;
  padding:0;
  --dish-photo-scale:1.18;
}
.dish-photo--popular.dish-photo--contain.dish-photo--zoom-pizza img { --dish-photo-scale:1.22; }
.dish-photo--popular.dish-photo--contain.dish-photo--zoom-fast img { --dish-photo-scale:1.20; }
.dish-photo--popular.dish-photo--contain.dish-photo--zoom-main img { --dish-photo-scale:1.18; }
.dish-photo--popular-drink img,
.dish-photo--popular-drink.dish-photo--contain img,
.dish-photo--popular-drink.dish-photo--zoom-drink img {
  object-fit:contain;
  object-position:center center;
  padding:0;
}
.dish-photo--popular-drink.dish-photo--lemonade img { --dish-photo-scale:.86; }
.dish-photo--popular-drink.dish-photo--tune-juice-fit img { --dish-photo-scale:.78; }
.dish-photo--popular-drink:not(.dish-photo--lemonade):not(.dish-photo--tune-juice-fit) img { --dish-photo-scale:1; }

/* Compact booking controls for the first constructor step. */
.event-booking-panel {
  display:grid;
  gap:14px;
  max-width:1020px;
  margin:0 auto;
}
.event-booking-head {
  display:grid;
  gap:6px;
  text-align:center;
}
.event-step-pill {
  justify-self:center;
  padding:5px 10px;
  border:1px solid rgba(255,209,102,.28);
  border-radius:999px;
  color:#ffe7a3;
  background:rgba(255,209,102,.08);
  font-size:12px;
  font-weight:900;
}
.event-booking-head h2 {
  margin:0;
  color:#fff;
  font-size:32px;
  line-height:1.08;
}
.event-booking-head p {
  max-width:690px;
  margin:0 auto;
  color:#bdc9e2;
  font-size:14px;
  line-height:1.4;
}
.event-date-card,
.event-time-card {
  position:relative;
  min-width:0;
  cursor:pointer;
  border:1px solid rgba(255,255,255,.12);
  background:linear-gradient(135deg, rgba(255,255,255,.075), rgba(5,10,25,.62));
  box-shadow:inset 0 1px 0 rgba(255,255,255,.06);
  transition:transform .18s ease, border-color .18s ease, box-shadow .18s ease;
}
.event-date-card:hover,
.event-time-card:hover {
  transform:translateY(-1px);
  border-color:rgba(77,224,210,.36);
  box-shadow:0 12px 28px rgba(0,0,0,.16), inset 0 1px 0 rgba(255,255,255,.08);
}
.event-date-card:focus-visible,
.event-time-card:focus-visible {
  outline:0;
  border-color:rgba(255,227,154,.62);
  box-shadow:0 0 0 3px rgba(255,227,154,.14), 0 12px 28px rgba(0,0,0,.18), inset 0 1px 0 rgba(255,255,255,.08);
}
.event-date-card {
  min-height:70px;
  display:grid;
  grid-template-columns:42px minmax(0,1fr) auto;
  align-items:center;
  gap:11px;
  padding:11px 14px;
  border-radius:19px;
}
.event-date-card input,
.event-time-card input {
  position:absolute;
  z-index:3;
  inset:0;
  width:100%;
  height:100%;
  margin:0;
  opacity:0;
  cursor:pointer;
}
.event-choice-icon {
  width:40px;
  height:40px;
  display:grid;
  place-items:center;
  flex:0 0 auto;
  border:1px solid rgba(77,224,210,.24);
  border-radius:13px;
  color:#aefcf1;
  background:linear-gradient(135deg, rgba(54,208,195,.18), rgba(255,209,102,.09));
  font-size:19px;
  font-weight:900;
}
.event-date-copy,
.event-time-card > span:last-of-type {
  min-width:0;
  display:grid;
  gap:3px;
}
.event-date-copy small,
.event-time-card small {
  color:#9faccc;
  font-size:11px;
  font-weight:800;
}
.event-date-copy b {
  overflow:hidden;
  color:#fff;
  font-size:17px;
  line-height:1.2;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.event-change-label {
  color:#ffe39a;
  font-size:12px;
  font-weight:900;
}
.event-time-grid {
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:10px;
}
.event-time-card {
  min-height:74px;
  display:grid;
  grid-template-columns:40px minmax(0,1fr);
  align-items:center;
  gap:10px;
  padding:10px 12px;
  border-radius:18px;
}
.event-time-card b {
  color:#fff;
  font-size:22px;
  line-height:1;
}
.event-time-hint {
  margin:-7px 2px 0;
  color:#9eabc5;
  font-size:11.5px;
  line-height:1.35;
  text-align:center;
}
.event-choice-section {
  min-width:0;
  display:grid;
  gap:9px;
}
.event-choice-section h3 {
  margin:0;
  color:#f7f9ff;
  font-size:17px;
  line-height:1.15;
}
.event-space-grid {
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:9px;
}
.event-space-card {
  position:relative;
  min-width:0;
  min-height:112px;
  display:grid;
  grid-template-rows:auto auto 1fr;
  align-content:start;
  gap:6px;
  padding:10px;
  overflow:hidden;
  border:1px solid rgba(255,255,255,.11);
  border-radius:18px;
  color:#fff;
  background:rgba(255,255,255,.045);
  text-align:left;
  cursor:pointer;
  transition:transform .18s ease, border-color .18s ease, box-shadow .18s ease, background .18s ease;
}
.event-space-card:hover { transform:translateY(-2px); border-color:rgba(255,255,255,.22); }
.event-space-card > i {
  width:29px;
  height:29px;
  display:grid;
  place-items:center;
  border-radius:10px;
  color:#d9fffa;
  background:rgba(77,224,210,.12);
  font-size:15px;
  font-style:normal;
  font-weight:900;
}
.event-space-card > span { min-width:0; display:grid; gap:1px; }
.event-space-card b { font-size:14px; line-height:1.12; }
.event-space-card em { color:#ffe39a; font-size:11px; font-style:normal; font-weight:850; }
.event-space-card small { color:#aebbd4; font-size:10.5px; line-height:1.25; }
.event-space-card.selected {
  border-color:rgba(88,231,211,.72);
  background:linear-gradient(145deg, rgba(38,204,188,.2), rgba(255,209,102,.09), rgba(255,255,255,.045));
  box-shadow:0 0 0 2px rgba(88,231,211,.09), 0 14px 30px rgba(19,154,144,.12);
}
.event-space-card.selected::after {
  content:"✓";
  position:absolute;
  top:8px;
  right:8px;
  width:20px;
  height:20px;
  display:grid;
  place-items:center;
  border-radius:50%;
  color:#0b1720;
  background:linear-gradient(135deg,#65ead9,#ffd166);
  font-size:12px;
  font-weight:950;
}
.event-space-hint {
  min-height:34px;
  display:flex;
  align-items:center;
  gap:7px;
  margin:0;
  padding:8px 10px;
  border-radius:13px;
  color:#dbe8f8;
  background:rgba(77,224,210,.07);
  font-size:11.5px;
  line-height:1.3;
}
.event-space-hint span { color:#ffd166; }
.event-layout-chips {
  display:flex;
  gap:8px;
  overflow-x:auto;
  padding:1px 1px 4px;
  scrollbar-width:none;
  overscroll-behavior-x:contain;
  -webkit-overflow-scrolling:touch;
}
.event-layout-chips::-webkit-scrollbar { display:none; }
.event-layout-chip {
  flex:0 0 auto;
  min-height:40px;
  display:inline-flex;
  align-items:center;
  gap:7px;
  padding:0 12px;
  border:1px solid rgba(255,255,255,.11);
  border-radius:14px;
  color:#dfe7f8;
  background:rgba(255,255,255,.045);
  font-size:12px;
  font-weight:850;
  white-space:nowrap;
  cursor:pointer;
  transition:border-color .18s ease, background .18s ease, color .18s ease, transform .18s ease;
}
.event-layout-chip:hover { transform:translateY(-1px); border-color:rgba(255,255,255,.22); }
.event-layout-chip i {
  color:#9ceee4;
  font-size:15px;
  font-style:normal;
}
.event-layout-chip.selected {
  border-color:rgba(255,209,102,.56);
  color:#fff;
  background:linear-gradient(135deg, rgba(53,210,194,.18), rgba(255,209,102,.13));
  box-shadow:0 8px 22px rgba(0,0,0,.12);
}
.event-step-next {
  width:100%;
  min-height:50px;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:10px;
  border:1px solid rgba(255,255,255,.16);
  border-radius:17px;
  color:#0c1721;
  background:linear-gradient(135deg,#6ee7d8,#ffd166);
  box-shadow:0 13px 30px rgba(31,196,180,.17);
  font-size:14px;
  font-weight:950;
  cursor:pointer;
  transition:transform .18s ease, box-shadow .18s ease;
}
.event-step-next:hover { transform:translateY(-1px); box-shadow:0 17px 36px rgba(31,196,180,.24); }
.event-step-next span { font-size:20px; line-height:1; }
#guest-count-start { scroll-margin-top:84px; }

@media (max-width: 600px) {
  .event-booking-step { padding:12px; }
  .event-booking-panel { gap:11px; }
  .event-booking-head { gap:5px; }
  .event-step-pill { padding:4px 9px; font-size:10.5px; }
  .event-booking-head h2 { font-size:25px; }
  .event-booking-head p { font-size:12.5px; line-height:1.34; }
  .event-date-card { min-height:66px; grid-template-columns:38px minmax(0,1fr) auto; gap:9px; padding:9px 11px; border-radius:17px; }
  .event-choice-icon { width:36px; height:36px; border-radius:12px; font-size:17px; }
  .event-date-copy b { font-size:15px; }
  .event-change-label { font-size:10.5px; }
  .event-time-grid { gap:8px; }
  .event-time-card { min-height:67px; grid-template-columns:34px minmax(0,1fr); gap:8px; padding:8px 10px; border-radius:16px; }
  .event-time-card .event-choice-icon { width:32px; height:32px; border-radius:10px; font-size:16px; }
  .event-time-card small { font-size:10px; }
  .event-time-card b { font-size:19px; }
  .event-time-hint { font-size:10.5px; }
  .event-choice-section { gap:7px; }
  .event-choice-section h3 { font-size:15px; }
  .event-space-grid { gap:6px; }
  .event-space-card { min-height:106px; gap:5px; padding:8px; border-radius:15px; }
  .event-space-card > i { width:26px; height:26px; border-radius:8px; font-size:13px; }
  .event-space-card b { font-size:12px; }
  .event-space-card em { font-size:10px; }
  .event-space-card small { font-size:9px; line-height:1.2; }
  .event-space-card.selected::after { top:6px; right:6px; width:18px; height:18px; font-size:11px; }
  .event-space-hint { min-height:31px; padding:7px 9px; font-size:10.5px; }
  .event-layout-chips { gap:6px; margin-right:-12px; padding-right:12px; }
  .event-layout-chip { min-height:37px; padding:0 10px; border-radius:13px; font-size:11px; }
  .event-step-next { min-height:47px; border-radius:15px; font-size:13px; }
  #guest-count-start { scroll-margin-top:72px; }
}

@media (max-width: 360px) {
  .event-booking-head h2 { font-size:23px; }
  .event-date-copy b { font-size:14px; }
  .event-space-card { min-height:112px; padding:7px; }
  .event-space-card b { font-size:11px; }
  .event-space-card small { font-size:8.5px; }
}

/* Brighter Planeta space theme and simplified booking choices. */
:root {
  --bg:#1b3557;
  --panel:rgba(34,58,91,.88);
  --panel-2:rgba(39,63,99,.94);
  --shadow:0 24px 62px rgba(16,30,58,.24);
}
body {
  background:
    radial-gradient(circle at 8% 6%, rgba(255,132,181,.28), transparent 25%),
    radial-gradient(circle at 88% 9%, rgba(87,224,212,.3), transparent 28%),
    radial-gradient(circle at 72% 58%, rgba(162,116,255,.22), transparent 31%),
    radial-gradient(circle at 15% 78%, rgba(255,209,102,.13), transparent 26%),
    linear-gradient(180deg,#24486e 0%,#315b7b 42%,#243e68 76%,#2a4068 100%);
  background-attachment:fixed;
}
.guest-shell:before { opacity:.22; }
.galaxy-station {
  background:
    radial-gradient(circle at 100% 0%, rgba(103,232,218,.13), transparent 31%),
    radial-gradient(circle at 0% 100%, rgba(255,209,102,.1), transparent 28%),
    linear-gradient(145deg, rgba(47,78,116,.96), rgba(62,62,111,.92) 55%, rgba(38,82,99,.92));
  border-color:rgba(220,241,255,.2);
  box-shadow:0 22px 56px rgba(20,37,68,.22), inset 0 1px 0 rgba(255,255,255,.08);
}
.event-date-card,
.event-time-card {
  background:linear-gradient(135deg, rgba(71,105,139,.8), rgba(50,69,112,.78));
  border-color:rgba(220,241,255,.19);
}
.event-space-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
.event-space-card {
  min-height:104px;
  background:linear-gradient(145deg, rgba(73,105,137,.74), rgba(49,72,112,.76));
  border-color:rgba(220,241,255,.18);
}
.event-layout-chips {
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  overflow:visible;
  padding:0;
}
.event-layout-chip {
  width:100%;
  justify-content:center;
  white-space:normal;
}
.menu-common-mode {
  min-height:58px;
  display:flex;
  align-items:center;
  gap:11px;
  margin-bottom:10px;
  padding:10px 13px;
  border:1px solid rgba(101,234,217,.42);
  border-radius:18px;
  color:#fff;
  background:linear-gradient(135deg, rgba(62,204,188,.2), rgba(255,209,102,.1), rgba(73,95,137,.42));
  box-shadow:0 12px 28px rgba(22,75,92,.12);
}
.menu-common-mode > span {
  width:32px;
  height:32px;
  display:grid;
  place-items:center;
  flex:0 0 auto;
  border-radius:50%;
  color:#102b31;
  background:linear-gradient(135deg,#65ead9,#ffd166);
  font-weight:950;
}
.menu-common-mode > div { min-width:0; display:grid; gap:2px; }
.menu-common-mode b { font-size:15px; }
.menu-common-mode small { color:#d7e6f5; font-size:12px; }

@media (max-width: 600px) {
  .event-space-card { min-height:98px; }
  .event-layout-chips { margin-right:0; padding-right:0; }
}

/* Unified cosmic palette: readable navy layers, cyan actions, violet menu tabs. */
:root {
  --bg:#0b1630;
  --panel:rgba(11,22,48,.86);
  --panel-2:rgba(19,32,68,.94);
  --brand-cyan:#4de3ff;
  --brand-violet:#7c5cff;
  --brand-yellow:#ffd36a;
  --muted:#a9b4c7;
  --shadow:0 22px 54px rgba(3,8,24,.28);
}
body {
  background:
    radial-gradient(circle at 18% 0%, rgba(77,227,255,.2), transparent 31%),
    radial-gradient(circle at 88% 18%, rgba(124,92,255,.22), transparent 30%),
    radial-gradient(circle at 14% 78%, rgba(255,211,106,.08), transparent 25%),
    linear-gradient(180deg,#182c5a 0%,#0f2145 42%,#0b1630 76%,#101a36 100%);
  background-attachment:fixed;
}
.galaxy-station {
  background:
    radial-gradient(circle at 100% 0%, rgba(77,227,255,.1), transparent 32%),
    linear-gradient(145deg, rgba(19,42,82,.94), rgba(15,29,62,.92) 58%, rgba(17,36,68,.92));
  border-color:rgba(77,227,255,.16);
  box-shadow:0 22px 54px rgba(3,8,24,.24), inset 0 1px 0 rgba(255,255,255,.07);
}
.event-date-card,
.event-time-card,
.event-space-card {
  background:linear-gradient(145deg, rgba(24,51,93,.82), rgba(14,29,62,.82));
  border-color:rgba(77,227,255,.16);
}
.menu-card .menu-head { margin-bottom:12px; }
.menu-table-tabs { margin-bottom:12px; }
.menu-table-summary {
  border-color:rgba(124,92,255,.38);
  background:linear-gradient(145deg, rgba(124,92,255,.09), rgba(15,29,62,.68));
  transition:transform .18s ease, border-color .18s ease, background .18s ease, box-shadow .18s ease;
}
.menu-table-summary:hover {
  transform:translateY(-1px);
  border-color:rgba(164,145,255,.72);
}
.menu-table-summary.active {
  border-color:#9178ff;
  background:linear-gradient(145deg, rgba(124,92,255,.34), rgba(77,227,255,.11));
  box-shadow:0 0 0 2px rgba(124,92,255,.12), 0 14px 30px rgba(20,12,74,.2);
}
.menu-table-summary small { color:#c3cce0; }
.menu-table-summary b { color:#ffd36a; }
.partner-whatsapp,
.extra-add.whatsapp-action {
  color:#effcff;
  border:1px solid rgba(77,227,255,.58);
  background:linear-gradient(145deg, rgba(77,227,255,.14), rgba(15,29,62,.68));
  box-shadow:0 13px 30px rgba(10,88,112,.14), inset 0 1px 0 rgba(255,255,255,.06);
}
.partner-whatsapp:hover,
.extra-add.whatsapp-action:hover {
  border-color:#4de3ff;
  background:linear-gradient(145deg, rgba(77,227,255,.22), rgba(124,92,255,.12));
  box-shadow:0 17px 36px rgba(10,110,140,.2);
}
.partner-whatsapp span { background:rgba(77,227,255,.14); }

@media (max-width: 600px) {
  .menu-card .menu-head { margin-bottom:10px; }
  .menu-table-summaries { gap:8px; }
  .menu-table-summary { min-height:104px; padding:11px; border-radius:16px; }
  .menu-table-summary span { font-size:15px; }
  .menu-table-summary small { font-size:11px; }
  .menu-table-summary b { font-size:13px; }
}

/* Native weekly animator schedule. */
.animator-week {
  position:relative;
  overflow:hidden;
  padding:28px 18px;
  border:1px solid rgba(255,255,255,.1);
  border-radius:28px;
  background:
    radial-gradient(circle at 20% 0%, rgba(77,227,255,.16), transparent 36%),
    radial-gradient(circle at 100% 20%, rgba(124,92,255,.22), transparent 38%),
    linear-gradient(180deg, rgba(11,22,48,.92), rgba(7,11,26,.96));
  box-shadow:0 22px 80px rgba(0,0,0,.35);
}
.animator-week__poster { display:none; }
.animator-week__header {
  max-width:760px;
  margin:0 auto 22px;
  text-align:center;
}
.animator-week__header h2 {
  max-width:none;
  margin:12px 0 10px;
  color:#fff;
  font-size:44px;
  line-height:1.05;
  font-weight:900;
  letter-spacing:0;
}
.animator-week__header p {
  max-width:none;
  margin:0;
  color:rgba(226,232,255,.76);
  font-size:16px;
  line-height:1.45;
}
.animator-week .section-badge {
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:8px 14px;
  border:1px solid rgba(255,211,106,.28);
  border-radius:999px;
  color:#ffd36a;
  background:rgba(255,211,106,.1);
  font-size:13px;
  font-weight:800;
}
.animator-schedule-grid {
  width:min(100%, 980px);
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:14px;
  margin:0 auto;
}
.animator-schedule-card {
  --card-glow:rgba(77,227,255,.3);
  --card-border:rgba(77,227,255,.45);
  --card-shadow:rgba(77,227,255,.22);
  position:relative;
  min-width:0;
  min-height:210px;
  overflow:hidden;
  padding:18px;
  border:1px solid var(--card-border);
  border-radius:24px;
  background:
    radial-gradient(circle at 12% 12%, var(--card-glow), transparent 42%),
    linear-gradient(180deg, rgba(255,255,255,.09), rgba(255,255,255,.035));
  box-shadow:0 18px 45px rgba(0,0,0,.32), 0 0 26px var(--card-shadow);
  backdrop-filter:blur(18px);
}
.animator-schedule-card::before {
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background:
    radial-gradient(circle at 88% 15%, rgba(255,255,255,.18), transparent 14%),
    radial-gradient(circle at 12% 85%, var(--card-glow), transparent 20%);
  opacity:.65;
}
.animator-schedule-card--blue { --card-glow:rgba(124,92,255,.3); --card-border:rgba(124,92,255,.48); --card-shadow:rgba(124,92,255,.22); }
.animator-schedule-card--pink { --card-glow:rgba(255,77,210,.27); --card-border:rgba(255,77,210,.42); --card-shadow:rgba(255,77,210,.2); }
.animator-schedule-card--gold { --card-glow:rgba(255,211,106,.25); --card-border:rgba(255,211,106,.45); --card-shadow:rgba(255,211,106,.2); }
.animator-schedule-day,
.animator-schedule-info { position:relative; z-index:1; min-width:0; }
.animator-schedule-day {
  display:flex;
  align-items:baseline;
  justify-content:space-between;
  gap:10px;
  margin-bottom:18px;
}
.animator-schedule-day strong {
  color:#fff;
  font-size:52px;
  line-height:.9;
  font-weight:950;
  letter-spacing:0;
  text-shadow:0 0 18px rgba(255,255,255,.18);
}
.animator-schedule-day span {
  color:#ffd36a;
  font-size:15px;
  font-weight:850;
  white-space:nowrap;
}
.animator-schedule-time {
  display:inline-flex;
  align-items:center;
  gap:6px;
  margin-bottom:14px;
  color:#4de3ff;
  font-size:28px;
  line-height:1;
  font-weight:950;
}
.animator-schedule-time::before { content:"◷"; color:currentColor; font-size:22px; }
.animator-schedule-info h3 {
  margin:0;
  overflow-wrap:anywhere;
  color:#fff;
  font-size:32px;
  line-height:1.02;
  font-weight:950;
  letter-spacing:0;
}
.animator-schedule-info small {
  display:block;
  margin-top:6px;
  color:rgba(255,255,255,.72);
  font-size:16px;
  font-weight:800;
}
.animator-schedule-footer {
  width:min(100%, 980px);
  margin:16px auto 0;
  padding:16px 18px;
  border-radius:20px;
  color:#0b0f1a;
  background:linear-gradient(135deg,#ffd36a,#ffefb0);
  box-shadow:0 0 34px rgba(255,211,106,.22);
  font-size:16px;
  font-weight:950;
  line-height:1.25;
  text-align:center;
}

@media (max-width: 600px) {
  .animator-week { padding:12px 10px; border-radius:20px; }
  .animator-week__header { margin-bottom:9px; }
  .animator-week__header h2 { margin:7px 0 5px; font-size:21px; line-height:1.08; }
  .animator-week__header p { font-size:11.5px; line-height:1.3; }
  .animator-week .section-badge { padding:4px 9px; font-size:9.5px; }
  .animator-schedule-grid { gap:7px; }
  .animator-schedule-card { min-height:122px; padding:8px; border-radius:15px; }
  .animator-schedule-day { align-items:baseline; gap:5px; margin-bottom:4px; }
  .animator-schedule-day strong { font-size:29px; }
  .animator-schedule-day span { font-size:9.5px; }
  .animator-schedule-time { margin-bottom:5px; font-size:17px; }
  .animator-schedule-time::before { font-size:14px; }
  .animator-schedule-info h3 { font-size:15px; line-height:1.04; }
  .animator-schedule-info small { margin-top:2px; font-size:9.5px; }
  .animator-schedule-footer { margin-top:7px; padding:8px 10px; border-radius:13px; font-size:10.5px; line-height:1.2; }
}

@media (max-width: 360px) {
  .animator-schedule-grid { grid-template-columns:1fr; }
  .animator-schedule-card { min-height:166px; }
}

/* Landing page 2026 — mobile-first cosmic glass UI. Constructor styles below stay intact. */
body {
  background:
    radial-gradient(circle at 82% 12%, rgba(77,163,255,.18), transparent 22%),
    radial-gradient(circle at 10% 28%, rgba(255,79,216,.13), transparent 24%),
    radial-gradient(circle at 75% 62%, rgba(168,85,247,.16), transparent 28%),
    linear-gradient(150deg, #0b1020 0%, #1a1440 42%, #2b1b4a 66%, #0b1020 100%);
}
.guest-shell:after { display:none; }
.guest-hero {
  width:min(100%, 1180px);
  margin:0 auto;
  padding:18px 16px 24px;
  overflow:visible;
  position:relative;
}
.guest-hero:before {
  inset:0;
  border-radius:0 0 30px 30px;
  background:
    radial-gradient(circle at 80% 24%, rgba(77,163,255,.18), transparent 19%),
    radial-gradient(circle at 16% 18%, rgba(255,79,216,.12), transparent 22%),
    linear-gradient(165deg, rgba(11,16,32,.94), rgba(17,21,52,.82));
  border:1px solid rgba(255,255,255,.05);
  box-shadow:0 28px 90px rgba(0,0,0,.38);
}
.guest-nav {
  min-height:58px;
  margin:0 0 18px;
  gap:12px;
}
.guest-brand { gap:10px; min-width:0; }
.brand-mark {
  width:48px;
  height:48px;
  box-shadow:0 12px 34px rgba(255,79,216,.3), 0 0 28px rgba(77,163,255,.14);
}
.brand-mark:before { top:21px; }
.brand-mark:after { top:29px; }
.brand-text { min-width:0; }
.brand-text b { font-size:25px; }
.brand-text small { margin-top:4px; color:rgba(255,255,255,.62); font-size:12px; font-weight:600; white-space:nowrap; }
.header-actions { gap:8px; }
.header-icon-button {
  width:50px;
  height:50px;
  display:grid;
  place-items:center;
  color:#fff;
  border:1px solid rgba(255,255,255,.16);
  border-radius:16px;
  background:rgba(255,255,255,.045);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.05), 0 10px 28px rgba(0,0,0,.2);
  backdrop-filter:blur(20px);
  -webkit-backdrop-filter:blur(20px);
}
.header-icon-button svg { width:24px; height:24px; fill:none; stroke:currentColor; stroke-width:2; stroke-linecap:round; stroke-linejoin:round; }
.landing-chips {
  display:grid;
  grid-template-columns:1.58fr 1.02fr .9fr;
  gap:6px;
  margin:0 -2px 34px;
  padding:2px;
  overflow:visible;
  scrollbar-width:none;
  scroll-snap-type:x proximity;
  overscroll-behavior-x:contain;
  -webkit-overflow-scrolling:touch;
}
.landing-chips::-webkit-scrollbar { display:none; }
.landing-chip {
  min-width:0;
  min-height:50px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:5px;
  padding:0 6px;
  color:rgba(255,255,255,.82);
  text-decoration:none;
  border:1px solid rgba(255,255,255,.14);
  border-radius:18px;
  background:rgba(255,255,255,.045);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.035);
  backdrop-filter:blur(20px);
  -webkit-backdrop-filter:blur(20px);
  font-size:12.5px;
  font-weight:650;
  scroll-snap-align:start;
}
.landing-chip span { color:#57c9ff; font-size:18px; line-height:1; }
.landing-chip.active span { color:#ffd05c; text-shadow:0 0 18px rgba(255,208,92,.5); }
.landing-chip--location span { color:#d84dff; }
.hero-grid { display:block; max-width:none; min-height:0; }
.hero-copy {
  position:relative;
  padding:0;
  text-align:left;
  text-shadow:none;
}
.hero-copy h1 {
  position:relative;
  z-index:2;
  max-width:720px;
  margin:0 0 16px;
  color:#fff;
  font-size:clamp(32px, 7.8vw, 52px);
  line-height:1.08;
  font-weight:800;
  letter-spacing:-.035em;
  text-wrap:balance;
}
.hero-copy > p {
  position:relative;
  z-index:2;
  max-width:650px;
  margin:0 0 26px;
  color:rgba(255,255,255,.72);
  font-size:17px;
  line-height:1.55;
  font-weight:430;
}
.hero-party-planet {
  position:absolute;
  z-index:1;
  right:-28px;
  top:128px;
  width:142px;
  height:142px;
  border-radius:50%;
  background:
    radial-gradient(circle at 35% 30%, rgba(255,255,255,.58), transparent 13%),
    linear-gradient(145deg,#ffb34c 5%,#ff5a98 50%,#7c4dff 94%);
  box-shadow:0 0 30px rgba(255,79,216,.35), 0 0 60px rgba(77,163,255,.22), inset -22px -22px 36px rgba(64,17,115,.35);
  transform:rotate(-9deg);
  opacity:.9;
}
.hero-party-planet:before,
.hero-party-planet:after {
  content:"";
  position:absolute;
  left:-36px;
  right:-36px;
  top:58px;
  height:22px;
  border:5px solid #ff884e;
  border-left-color:#ff4fd8;
  border-right-color:#6c63ff;
  border-radius:50%;
  transform:rotate(-10deg);
  box-shadow:0 0 16px rgba(255,79,216,.34);
}
.hero-party-planet:after { top:65px; height:8px; border-width:2px; opacity:.64; }
.hero-party-planet span { position:absolute; z-index:2; inset:0; border-radius:50%; background:linear-gradient(180deg, transparent 52%, rgba(73,20,128,.2)); }
.hero-party-planet i { position:absolute; z-index:3; left:58px; top:57px; color:#441044; font-size:19px; font-style:normal; letter-spacing:7px; }
.landing-primary-cta {
  position:relative;
  z-index:3;
  width:100%;
  min-height:58px;
  display:grid;
  grid-template-columns:28px minmax(0,1fr) 24px;
  align-items:center;
  gap:6px;
  padding:0 12px;
  color:#fff;
  text-decoration:none;
  border:1px solid rgba(255,255,255,.18);
  border-radius:18px;
  background:linear-gradient(90deg,#ff8a00 0%,#ff4fd8 55%,#6c63ff 100%);
  box-shadow:0 12px 34px rgba(255,79,216,.34), 0 0 42px rgba(124,77,255,.2), inset 0 1px 0 rgba(255,255,255,.22);
  font-size:16px;
  font-weight:700;
  text-align:center;
}
.landing-primary-cta b { white-space:nowrap; }
.landing-primary-cta__icon { font-size:20px; }
.landing-primary-cta__arrow { font-size:24px; font-weight:400; }
.landing-proof {
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:8px;
  margin-top:22px;
}
.landing-proof__stats,
.landing-proof__review-link {
  min-width:0;
  min-height:88px;
  display:flex;
  align-items:center;
  gap:10px;
  padding:12px 14px;
  color:#fff;
  text-decoration:none;
  border:1px solid rgba(255,255,255,.12);
  border-radius:18px;
  background:rgba(255,255,255,.055);
  box-shadow:0 10px 40px rgba(0,0,0,.2), inset 0 1px 0 rgba(255,255,255,.035);
  backdrop-filter:blur(20px);
  -webkit-backdrop-filter:blur(20px);
}
.landing-proof__stats { justify-content:flex-start; }
.landing-proof__stats > span { color:#ffb000; font-size:38px; filter:drop-shadow(0 0 12px rgba(255,176,0,.36)); }
.landing-proof__stats div { min-width:0; display:grid; gap:5px; }
.landing-proof__stats b { font-size:18px; white-space:nowrap; }
.landing-proof__stats b small { font-size:14px; font-weight:550; }
.landing-proof__stats em { color:rgba(255,255,255,.68); font-size:14px; font-style:normal; white-space:nowrap; }
.landing-proof__review-link { justify-content:space-between; text-decoration:none; }
.landing-proof__review-link > span { min-width:0; display:grid; gap:7px; }
.landing-proof__review-link b { font-size:12px; letter-spacing:-.01em; white-space:nowrap; }
.landing-proof__review-link small { color:rgba(255,255,255,.7); font-size:13px; white-space:nowrap; }
.landing-proof__review-link i { flex:0 0 auto; color:#fff; font-size:27px; font-style:normal; font-weight:400; }
.landing-rating-links { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px; margin-top:8px; scroll-margin-top:16px; }
.landing-rating-link {
  min-width:0;
  min-height:70px;
  display:grid;
  grid-template-columns:36px minmax(0,1fr) auto;
  align-items:center;
  gap:4px;
  padding:6px;
  color:#fff;
  text-decoration:none;
  border:1px solid rgba(183,87,255,.92);
  border-radius:18px;
  background:rgba(13,18,43,.88);
  box-shadow:0 0 0 1px rgba(255,79,216,.18), 0 0 20px rgba(124,77,255,.36), inset 0 1px 0 rgba(255,255,255,.08);
}
.landing-rating-link img { width:36px; height:36px; border-radius:10px; background:#fff; object-fit:cover; box-shadow:0 7px 18px rgba(0,0,0,.25); }
.landing-rating-link b { min-width:0; overflow:hidden; font-size:14px; text-overflow:ellipsis; white-space:nowrap; }
.landing-rating-link--yandex b { font-size:12px; letter-spacing:-.02em; }
.landing-rating-link span { min-height:34px; display:inline-flex; align-items:center; justify-content:center; padding:0 7px; color:#efff58; border:1px solid #baff00; border-radius:999px; box-shadow:0 0 14px rgba(186,255,0,.32); font-size:12px; font-weight:750; white-space:nowrap; }
.landing-social-links {
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:8px;
  margin-top:8px;
}
.landing-social-link {
  min-width:0;
  min-height:70px;
  display:grid;
  grid-template-columns:38px minmax(0,1fr);
  align-items:center;
  gap:10px;
  padding:8px 12px;
  color:#fff;
  text-decoration:none;
  border:1px solid rgba(255,255,255,.14);
  border-radius:18px;
  background:rgba(13,18,43,.88);
  box-shadow:0 12px 34px rgba(0,0,0,.2), inset 0 1px 0 rgba(255,255,255,.08);
  transition:transform .18s ease, border-color .18s ease, box-shadow .18s ease;
}
.landing-social-link:hover { transform:translateY(-1px); }
.landing-social-link span {
  width:38px;
  height:38px;
  display:grid;
  place-items:center;
  border-radius:13px;
  color:#fff;
  line-height:1;
}
.landing-social-link svg {
  width:23px;
  height:23px;
  display:block;
  fill:currentColor;
}
.landing-social-link b { min-width:0; overflow:hidden; font-size:16px; font-weight:850; text-overflow:ellipsis; white-space:nowrap; }
.landing-social-link--whatsapp { border-color:rgba(73,224,108,.36); box-shadow:0 12px 34px rgba(0,0,0,.2), 0 0 18px rgba(73,224,108,.12), inset 0 1px 0 rgba(255,255,255,.08); }
.landing-social-link--whatsapp span { background:linear-gradient(135deg,#6be87a,#19c36b); box-shadow:0 10px 22px rgba(25,195,107,.24); }
.landing-social-link--instagram { border-color:rgba(255,79,216,.36); box-shadow:0 12px 34px rgba(0,0,0,.2), 0 0 18px rgba(255,79,216,.13), inset 0 1px 0 rgba(255,255,255,.08); }
.landing-social-link--instagram span { background:linear-gradient(135deg,#7c4dff,#ff4fd8,#ff8a50); box-shadow:0 10px 22px rgba(255,79,216,.22); }
.landing-social-link--album {
  grid-column:1 / -1;
  min-height:58px;
  grid-template-columns:42px minmax(0,1fr) auto;
  border-color:rgba(255,209,102,.5);
  background:linear-gradient(135deg,rgba(255,148,54,.18),rgba(255,79,216,.16),rgba(100,116,255,.2));
  box-shadow:0 14px 36px rgba(0,0,0,.22),0 0 24px rgba(255,209,102,.16),inset 0 1px 0 rgba(255,255,255,.1);
}
.landing-social-link--album span {
  position:relative;
  background:radial-gradient(circle at 34% 28%,#fff7b0 0 12%,transparent 13%),linear-gradient(135deg,#ffd166,#ff7a50,#ff4fd8,#7c4dff);
  box-shadow:0 10px 24px rgba(255,122,80,.3),0 0 20px rgba(255,209,102,.22);
}
.landing-social-link--album span:after {
  content:"";
  position:absolute;
  inset:-4px;
  border:1px solid rgba(255,209,102,.42);
  border-radius:16px;
}
.landing-social-link--album em {
  min-width:74px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:7px 9px;
  border:1px solid rgba(255,255,255,.16);
  border-radius:999px;
  color:#fff7cf;
  background:rgba(255,255,255,.08);
  font-size:12px;
  font-style:normal;
  font-weight:850;
  font-variant-numeric:tabular-nums;
  letter-spacing:.02em;
  white-space:nowrap;
}
.landing-entertainments {
  position:relative;
  z-index:2;
  margin:34px 0 0;
  padding:0;
}
.landing-entertainments__head { display:flex; align-items:flex-end; justify-content:space-between; gap:16px; margin-bottom:14px; }
.landing-entertainments__head h2 { margin:0; color:#fff; font-size:21px; line-height:1.2; font-weight:750; }
.landing-entertainments__head span { flex:0 0 auto; color:rgba(255,255,255,.54); font-size:12px; white-space:nowrap; }
.landing-entertainments__carousel {
  display:flex;
  gap:12px;
  margin:0 -16px;
  padding:0 16px 8px;
  overflow-x:auto;
  overflow-y:hidden;
  scrollbar-width:none;
  scroll-snap-type:x mandatory;
  scroll-padding-inline:16px;
  overscroll-behavior-x:contain;
  -webkit-overflow-scrolling:touch;
}
.landing-entertainments__carousel::-webkit-scrollbar { display:none; }
.landing-entertainment-card {
  position:relative;
  flex:0 0 clamp(96px, 24vw, 110px);
  width:clamp(96px, 24vw, 110px);
  max-width:110px;
  height:220px;
  overflow:hidden;
  border:1px solid rgba(255,255,255,.14);
  border-radius:22px;
  background:rgba(255,255,255,.06);
  box-shadow:0 10px 40px rgba(0,0,0,.4);
  scroll-snap-align:start;
  scroll-snap-stop:always;
  isolation:isolate;
}
.landing-entertainment-card--kids-complex { border-color:rgba(255,105,177,.52); box-shadow:0 12px 34px rgba(255,79,216,.12), 0 10px 40px rgba(0,0,0,.4); }
.landing-entertainment-card--cinema-7d { border-color:rgba(77,163,255,.52); box-shadow:0 12px 34px rgba(77,163,255,.12), 0 10px 40px rgba(0,0,0,.4); }
.landing-entertainment-card--vr-arena { border-color:rgba(168,85,247,.56); box-shadow:0 12px 34px rgba(168,85,247,.13), 0 10px 40px rgba(0,0,0,.4); }
.landing-entertainment-card--ps5 { border-color:rgba(124,77,255,.56); box-shadow:0 12px 34px rgba(124,77,255,.13), 0 10px 40px rgba(0,0,0,.4); }
.landing-entertainment-card--interactive-boards { border-color:rgba(255,138,0,.52); box-shadow:0 12px 34px rgba(255,138,0,.12), 0 10px 40px rgba(0,0,0,.4); }
.landing-entertainment-card--air-hockey { border-color:rgba(77,255,216,.5); box-shadow:0 12px 34px rgba(77,255,216,.11), 0 10px 40px rgba(0,0,0,.4); }
.landing-entertainment-card img { position:absolute; inset:0; z-index:-2; width:100%; height:100%; object-fit:cover; }
.landing-entertainment-card--kids-complex img { object-position:center 58%; }
.landing-entertainment-card--interactive-boards img { object-position:center 54%; }
.landing-entertainment-card:after { content:""; position:absolute; inset:0; z-index:-1; background:linear-gradient(180deg,rgba(5,8,22,.05) 18%,rgba(5,8,22,.5) 58%,rgba(5,8,22,.98) 100%); }
.landing-entertainment-card__badge {
  position:absolute;
  top:12px;
  left:12px;
  min-width:38px;
  min-height:34px;
  display:grid;
  place-items:center;
  padding:0 8px;
  color:#fff;
  border:1px solid rgba(255,255,255,.5);
  border-radius:13px;
  background:rgba(4,8,24,.52);
  backdrop-filter:blur(16px);
  -webkit-backdrop-filter:blur(16px);
  font-size:13px;
  font-weight:800;
}
.landing-entertainment-card > div { position:absolute; left:0; right:0; bottom:0; padding:10px; }
.landing-entertainment-card h3 { margin:0 0 6px; color:#fff; font-size:14px; line-height:1.08; font-weight:800; }
.landing-entertainment-card p { margin:0; color:rgba(255,255,255,.72); font-size:10.5px; line-height:1.35; }
.landing-entertainment-card--kids-complex h3 { font-size:13px; }
.landing-entertainment-card--interactive-boards h3 { font-size:11px; line-height:1.08; }
.landing-entertainment-card--interactive-boards p { font-size:9.5px; line-height:1.25; }
.landing-entertainments__dots { min-height:24px; display:flex; align-items:center; justify-content:center; gap:7px; margin-top:5px; }
.landing-entertainments__dots button { width:8px; height:8px; min-width:8px; padding:0; border-radius:50%; background:rgba(255,255,255,.2); transition:width .2s ease, background .2s ease; }
.landing-entertainments__dots button.active { width:23px; border-radius:99px; background:#fff; box-shadow:0 0 14px rgba(255,255,255,.4); }
.landing-next-card {
  min-height:90px;
  display:grid;
  grid-template-columns:56px minmax(0,1fr) 36px;
  align-items:center;
  gap:12px;
  margin-top:14px;
  padding:12px;
  color:#fff;
  text-decoration:none;
  border:1px solid rgba(124,77,255,.3);
  border-radius:22px;
  background:rgba(255,255,255,.05);
  box-shadow:0 10px 40px rgba(0,0,0,.26);
  backdrop-filter:blur(20px);
  -webkit-backdrop-filter:blur(20px);
}
.landing-next-card__icon { width:54px; height:54px; display:grid; place-items:center; border-radius:18px; background:linear-gradient(145deg,#ff8a50,#ff4fd8,#7c4dff); font-size:27px; box-shadow:0 10px 28px rgba(255,79,216,.23); }
.landing-next-card > span:nth-child(2) { min-width:0; display:grid; gap:3px; }
.landing-next-card small { color:#b989ff; font-size:12px; }
.landing-next-card b { font-size:16px; }
.landing-next-card em { overflow:hidden; color:rgba(255,255,255,.58); font-size:11px; font-style:normal; text-overflow:ellipsis; white-space:nowrap; }
.landing-next-card > i { width:32px; height:32px; display:grid; place-items:center; border-radius:50%; background:rgba(255,255,255,.07); font-size:19px; font-style:normal; }
.landing-start-dock {
  position:sticky;
  z-index:15;
  bottom:10px;
  min-height:74px;
  display:grid;
  grid-template-columns:42px minmax(0,1fr) auto;
  align-items:center;
  gap:10px;
  margin:14px -8px 0;
  padding:9px;
  color:#fff;
  text-decoration:none;
  border:1px solid rgba(255,255,255,.14);
  border-radius:22px;
  background:rgba(31,25,52,.9);
  box-shadow:0 16px 48px rgba(0,0,0,.46);
  backdrop-filter:blur(24px);
  -webkit-backdrop-filter:blur(24px);
}
.landing-start-dock .brand-mark { width:42px; height:42px; }
.landing-start-dock .brand-mark:before { top:18px; }
.landing-start-dock .brand-mark:after { top:25px; }
.landing-start-dock > span:nth-child(2) { min-width:0; display:grid; gap:2px; }
.landing-start-dock b { overflow:hidden; font-size:12px; text-overflow:ellipsis; white-space:nowrap; }
.landing-start-dock small { color:rgba(255,255,255,.58); font-size:10px; }
.landing-start-dock strong { min-height:50px; display:flex; align-items:center; justify-content:center; padding:0 17px; border-radius:16px; background:linear-gradient(90deg,#ff8a65,#ff4fd8,#7c4dff); box-shadow:0 10px 26px rgba(255,79,216,.26); font-size:14px; }
.landing-contacts {
  width:min(calc(100% - 32px), 1140px);
  margin:18px auto 24px;
  padding:18px;
  border:1px solid rgba(255,255,255,.08);
  border-radius:24px;
  background:rgba(255,255,255,.06);
  box-shadow:0 10px 40px rgba(0,0,0,.4);
  backdrop-filter:blur(20px);
  -webkit-backdrop-filter:blur(20px);
  scroll-margin-top:20px;
}
.landing-contacts__head > span { color:#d99aff; font-size:12px; font-weight:750; text-transform:uppercase; letter-spacing:.1em; }
.landing-contacts__head h2 { margin:7px 0 7px; color:#fff; font-size:27px; line-height:1.12; }
.landing-contacts__head p { margin:0; color:rgba(255,255,255,.62); font-size:14px; line-height:1.48; }
.landing-contact-links { display:grid; grid-template-columns:1fr; gap:9px; margin-top:16px; }
.landing-contact-links a {
  min-height:52px;
  display:grid;
  grid-template-columns:32px minmax(0,1fr) 24px;
  align-items:center;
  gap:10px;
  padding:0 13px;
  color:#fff;
  text-decoration:none;
  border:1px solid rgba(255,255,255,.1);
  border-radius:16px;
  background:rgba(255,255,255,.05);
}
.landing-contact-links a > span { font-size:21px; text-align:center; }
.landing-contact-links img { width:28px; height:28px; border-radius:8px; background:#fff; object-fit:cover; }
.landing-contact-links b { font-size:14px; }
.landing-contact-links i { color:rgba(255,255,255,.58); font-size:20px; font-style:normal; }
.landing-contacts .hero-callback { margin-top:14px; grid-template-columns:1fr; border-radius:18px; }
.landing-contacts .hero-callback-copy h2 { font-size:20px; }
.landing-contacts .hero-callback-controls { grid-template-columns:1fr; }
.landing-contacts .hero-callback-controls input,
.landing-contacts .hero-callback-controls button { min-height:52px; }

.final-contact-section {
  width:100%;
  margin:18px 0 110px;
  padding:24px 18px 20px;
  border:1px solid rgba(255,255,255,.08);
  border-radius:26px;
  background:
    radial-gradient(circle at 18% 10%, rgba(124,77,255,.18), transparent 34%),
    radial-gradient(circle at 88% 100%, rgba(77,163,255,.12), transparent 34%),
    rgba(255,255,255,.055);
  box-shadow:0 14px 44px rgba(0,0,0,.42);
  backdrop-filter:blur(22px);
  -webkit-backdrop-filter:blur(22px);
}
.final-contact-head { text-align:center; margin-bottom:18px; }
.final-contact-head h2 { margin:0; color:#fff; font-size:31px; line-height:1.1; font-weight:850; letter-spacing:-.03em; }
.final-contact-head p { margin:9px 0 0; color:rgba(255,255,255,.68); font-size:16px; font-weight:650; }
.final-contact-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; }
.final-contact-link {
  min-height:104px;
  display:grid;
  grid-template-columns:42px minmax(0,1fr);
  grid-template-rows:auto auto;
  align-content:center;
  column-gap:12px;
  row-gap:3px;
  padding:17px 13px;
  color:#fff;
  text-decoration:none;
  border:1px solid rgba(255,255,255,.08);
  border-radius:18px;
  background:rgba(16,28,54,.7);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.05), 0 10px 28px rgba(0,0,0,.18);
}
.final-contact-link span {
  grid-row:1 / 3;
  width:42px;
  height:42px;
  display:grid;
  place-items:center;
  border-radius:15px;
  font-size:25px;
  background:rgba(255,255,255,.08);
}
.final-contact-link b { align-self:end; min-width:0; overflow:hidden; color:#fff; font-size:17px; line-height:1.1; font-weight:850; white-space:nowrap; text-overflow:ellipsis; }
.final-contact-link small { min-width:0; overflow:hidden; color:rgba(255,255,255,.58); font-size:12px; line-height:1.25; white-space:nowrap; text-overflow:ellipsis; }
.final-contact-link--phone span { color:#786cff; background:rgba(124,77,255,.14); }
.final-contact-link--whatsapp span { color:#49e06c; background:rgba(73,224,108,.13); }
.final-contact-link--telegram span { color:#4da3ff; background:rgba(77,163,255,.13); }
.final-contact-link--instagram span { color:#ff4fd8; background:rgba(255,79,216,.12); }
.final-contact-link:focus-visible { outline:3px solid rgba(77,163,255,.72); outline-offset:3px; }

.header-icon-button:focus-visible,
.landing-chip:focus-visible,
.landing-primary-cta:focus-visible,
.landing-map-button:focus-visible,
.landing-entertainments__dots button:focus-visible,
.landing-next-card:focus-visible,
.landing-start-dock:focus-visible,
.landing-contact-links a:focus-visible { outline:3px solid rgba(77,163,255,.72); outline-offset:3px; }

@media (max-width: 370px) {
  .guest-hero { padding-left:13px; padding-right:13px; }
  .brand-text b { font-size:22px; }
  .brand-text small { font-size:10.5px; }
  .header-icon-button { width:46px; height:46px; }
  .landing-chip { min-height:46px; padding:0 4px; font-size:10.5px; }
  .landing-chip span { font-size:16px; }
  .hero-copy h1 { font-size:32px; }
  .hero-copy > p { font-size:16px; }
  .landing-primary-cta { padding-left:9px; padding-right:9px; font-size:12.5px; }
  .landing-primary-cta b { white-space:normal; }
  .landing-proof__stats,
  .landing-proof__review-link { padding:9px; }
  .landing-proof__stats > span { font-size:31px; }
  .landing-proof__stats b { font-size:15px; }
  .landing-proof__stats b small { font-size:11px; }
  .landing-proof__stats em { font-size:11px; }
  .landing-proof__review-link b { font-size:12px; }
  .landing-proof__review-link small { font-size:10.5px; }
  .landing-rating-link { grid-template-columns:35px minmax(0,1fr); padding:8px; }
  .landing-rating-link img { width:35px; height:35px; }
  .landing-rating-link span { display:none; }
  .landing-social-link { min-height:64px; grid-template-columns:35px minmax(0,1fr); gap:8px; padding:8px; }
  .landing-social-link--album { grid-template-columns:35px minmax(0,1fr) auto; }
  .landing-social-link span { width:35px; height:35px; border-radius:12px; }
  .landing-social-link svg { width:21px; height:21px; }
  .landing-social-link b { font-size:14px; }
  .landing-social-link--album em { min-width:64px; padding:6px 7px; font-size:10.5px; }
  .landing-start-dock strong { padding:0 12px; }
}

@media (min-width: 700px) {
  .guest-hero { padding:28px 32px 30px; }
  .guest-nav { margin-bottom:22px; }
  .landing-chips { display:flex; gap:10px; margin-bottom:48px; overflow:visible; justify-content:center; }
  .landing-chip { min-height:50px; gap:9px; padding:0 16px; font-size:15px; }
  .landing-chip span { font-size:23px; }
  .hero-copy { max-width:900px; margin:0 auto; }
  .hero-copy h1 { font-size:58px; }
  .hero-copy > p { font-size:20px; }
  .hero-party-planet { right:10px; top:92px; width:190px; height:190px; }
  .hero-party-planet:before,
  .hero-party-planet:after { top:80px; }
  .hero-party-planet:after { top:89px; }
  .hero-party-planet i { left:79px; top:77px; }
  .landing-primary-cta { max-width:760px; min-height:64px; padding:0 22px; font-size:19px; }
  .landing-proof { max-width:900px; grid-template-columns:1.05fr 1fr 1.2fr; gap:12px; }
  .landing-proof__stats,
  .landing-proof__review-link { min-height:96px; padding:15px; }
  .landing-proof__review-link { grid-column:span 2; }
  .landing-proof__stats > span { font-size:38px; }
  .landing-proof__stats b { font-size:21px; }
  .landing-proof__stats b small { font-size:16px; }
  .landing-proof__stats em { font-size:14px; }
  .landing-proof__review-link b { font-size:18px; }
  .landing-proof__review-link small { font-size:15px; }
  .landing-rating-links { max-width:900px; gap:14px; }
  .landing-rating-link { min-height:96px; grid-template-columns:52px minmax(0,1fr) auto; padding:12px 16px; }
  .landing-rating-link img { width:52px; height:52px; }
  .landing-rating-link b { font-size:20px; }
  .landing-rating-link span { min-height:44px; padding:0 13px; font-size:17px; }
  .landing-social-links { max-width:900px; gap:14px; }
  .landing-social-link { min-height:86px; grid-template-columns:52px minmax(0,1fr); gap:14px; padding:12px 16px; }
  .landing-social-link--album { grid-template-columns:52px minmax(0,1fr) auto; }
  .landing-social-link span { width:52px; height:52px; border-radius:16px; }
  .landing-social-link svg { width:28px; height:28px; }
  .landing-social-link b { font-size:20px; }
  .landing-social-link--album em { min-width:86px; font-size:14px; }
  .landing-entertainments { max-width:1040px; margin:44px auto 0; }
  .landing-entertainments__head h2 { font-size:27px; }
  .landing-entertainments__head span { font-size:14px; }
  .landing-entertainments__carousel { margin:0; padding:0 0 10px; scroll-padding-inline:0; }
  .landing-entertainment-card {
    flex:0 0 clamp(150px, calc((100% - 48px) / 5), 195px);
    width:clamp(150px, calc((100% - 48px) / 5), 195px);
    max-width:195px;
    height:350px;
  }
  .landing-next-card { max-width:900px; min-height:100px; margin:18px auto 0; }
  .landing-start-dock { display:grid; max-width:900px; margin-left:auto; margin-right:auto; }
  .landing-contacts { padding:28px; }
  .landing-contacts__head { max-width:700px; }
  .landing-contacts__head h2 { font-size:36px; }
  .landing-contact-links { grid-template-columns:repeat(5,minmax(0,1fr)); }
  .landing-contact-links a { grid-template-columns:30px minmax(0,1fr) 20px; padding:0 10px; }
  .landing-contacts .hero-callback { grid-template-columns:minmax(0,1fr) minmax(300px,.9fr); padding:20px; }
  .landing-contacts .hero-callback-controls { grid-template-columns:minmax(0,1fr) auto; }
}

@media (min-width: 1000px) {
  .guest-hero { width:min(calc(100% - 48px), 1180px); margin-top:24px; padding:34px 48px 38px; }
  .guest-hero:before { border-radius:34px; }
  .guest-nav { max-width:none; }
  .hero-copy { max-width:1020px; padding:30px 0 0; text-align:left; }
  .hero-copy h1 { max-width:820px; margin-left:0; margin-right:0; font-size:68px; }
  .hero-copy > p { max-width:700px; margin-left:0; margin-right:0; font-size:21px; }
  .hero-party-planet { right:12px; top:38px; width:230px; height:230px; }
  .hero-party-planet:before,
  .hero-party-planet:after { top:98px; }
  .hero-party-planet:after { top:108px; }
  .hero-party-planet i { left:96px; top:93px; }
  .landing-primary-cta { margin-left:0; }
  .landing-proof { margin-top:26px; }
  .landing-start-dock { display:none; }
}

@media (prefers-reduced-motion: reduce) {
  .landing-entertainments__carousel { scroll-behavior:auto; }
  .landing-entertainments__dots button { transition:none; }
}

.compact-final-empty{display:grid;gap:7px;margin-top:12px;padding:14px 0 2px;border-top:1px solid rgba(255,255,255,.1)}
.compact-final-empty b{color:#fff;font-size:20px}.compact-final-empty small{color:rgba(255,255,255,.66);line-height:1.45}.compact-final-empty em{color:#d7b7ff;font-style:normal;font-weight:700}
.attention-pulse{animation:guestAttention .8s ease}
@keyframes guestAttention{0%,100%{filter:none}45%{filter:drop-shadow(0 0 18px rgba(255,79,216,.65))}}
@media(prefers-reduced-motion:reduce){.attention-pulse{animation:none}}

.weekly-animators{margin:0 0 22px;padding:20px;border:1px solid rgba(150,120,255,.28);border-radius:24px;background:linear-gradient(135deg,rgba(23,27,63,.92),rgba(8,14,39,.96));box-shadow:0 14px 38px rgba(0,0,0,.25),inset 0 0 34px rgba(82,57,190,.06)}
.weekly-animators-head{display:grid;grid-template-columns:64px minmax(0,1fr);gap:16px;align-items:center}
.weekly-animators-icon{display:grid;place-items:center;width:64px;height:64px;border:1px solid rgba(124,77,255,.38);border-radius:18px;background:rgba(81,38,185,.24);box-shadow:inset 0 0 20px rgba(124,77,255,.12)}
.weekly-animators-icon svg{width:34px;height:34px;fill:none;stroke:#7c4dff;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}
.weekly-animators h2{margin:0;color:#fff;font-size:clamp(19px,4vw,28px);line-height:1.12}
.weekly-animators-head p{margin:7px 0 0;color:rgba(255,255,255,.68);font-size:15px;line-height:1.35}
.weekly-animators-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:18px}
.weekly-animators-grid article{min-width:0;min-height:132px;padding:16px;border:1px solid rgba(124,77,255,.62);border-radius:19px;background:rgba(8,13,39,.55)}
.weekly-animators-grid article>b{display:block;color:#fff;font-size:27px;line-height:1}
.weekly-animators-grid article>span{display:flex;gap:7px;align-items:center;margin-top:12px;color:#fff;font-size:17px;font-weight:700}.weekly-animators-grid article>span i{font-size:20px;font-style:normal;color:rgba(255,255,255,.82)}
.weekly-animators-grid article>p{margin:11px 0 0;color:rgba(255,255,255,.88);font-size:14px;font-weight:700;line-height:1.25}
.weekly-animators>small{display:block;margin-top:14px;color:rgba(255,255,255,.58);font-size:13px;line-height:1.35}.weekly-animators>small i{font-style:normal}
@media(max-width:520px){.weekly-animators{padding:16px 14px;border-radius:22px}.weekly-animators-head{grid-template-columns:52px minmax(0,1fr);gap:12px}.weekly-animators-icon{width:52px;height:52px;border-radius:15px}.weekly-animators-icon svg{width:28px;height:28px}.weekly-animators h2{font-size:18px}.weekly-animators-head p{font-size:13px}.weekly-animators-grid{gap:8px}.weekly-animators-grid article{min-height:126px;padding:13px 10px;border-radius:16px}.weekly-animators-grid article>b{font-size:23px}.weekly-animators-grid article>span{font-size:14px}.weekly-animators-grid article>p{font-size:11px;overflow-wrap:anywhere}}

.weekly-animators-grid article{min-height:104px;padding:13px 14px}
.weekly-animators-grid article:nth-child(1){border-color:rgba(255,196,80,.82);box-shadow:inset 0 0 18px rgba(255,174,55,.06)}
.weekly-animators-grid article:nth-child(2){border-color:rgba(255,79,216,.78);box-shadow:inset 0 0 18px rgba(255,79,216,.06)}
.weekly-animators-grid article:nth-child(3){border-color:rgba(77,163,255,.82);box-shadow:inset 0 0 18px rgba(77,163,255,.06)}
.weekly-animators-grid article>span{margin-top:7px}
.weekly-animators-grid article>p{margin-top:6px}
@media(max-width:520px){.weekly-animators-grid article{min-height:102px;padding:11px 9px}.weekly-animators-grid article>span{margin-top:5px}.weekly-animators-grid article>p{margin-top:5px}}

.parents-reviews{position:relative;margin:0 0 22px;padding:22px 18px 16px;overflow:hidden;border:1px solid rgba(255,255,255,.09);border-radius:26px;background:linear-gradient(145deg,rgba(20,37,70,.94),rgba(7,19,44,.97));box-shadow:0 16px 42px rgba(0,0,0,.3)}
.parents-reviews-head{text-align:center}.parents-reviews-head>span{display:inline-flex;padding:6px 13px;border:1px solid rgba(244,203,87,.34);border-radius:999px;color:#f4cb57;font-size:12px;font-weight:800}.parents-reviews-head h2{margin:12px 0 4px;color:#fff;font-size:clamp(26px,6vw,42px);line-height:1.08}.parents-reviews-head p{margin:0;color:rgba(255,255,255,.6);font-size:15px}
.parents-reviews-carousel{display:flex;width:100%;margin-top:18px;overflow-x:auto;scroll-snap-type:x mandatory;scroll-behavior:smooth;scrollbar-width:none}.parents-reviews-carousel::-webkit-scrollbar{display:none}
.parents-review-slide{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));flex:0 0 100%;gap:12px;padding:1px;scroll-snap-align:start}
.parent-review-card{min-width:0;padding:15px;border:1px solid rgba(255,255,255,.1);border-radius:20px;background:rgba(255,255,255,.055);box-shadow:inset 0 0 24px rgba(255,255,255,.018)}
.parent-review-top{display:grid;grid-template-columns:42px minmax(0,1fr);gap:10px;align-items:center}.parent-review-top>i{display:grid;place-items:center;width:42px;height:42px;border-radius:50%;color:#fff;background:linear-gradient(145deg,#5869cb,#a855f7);font-size:19px;font-style:normal;font-weight:800}.parent-review-top b,.parent-review-top small{display:block}.parent-review-top b{overflow:hidden;color:#fff;font-size:14px;text-overflow:ellipsis;white-space:nowrap}.parent-review-top small{margin-top:3px;color:rgba(255,255,255,.5);font-size:10px}
.parent-review-rating{display:flex;flex-wrap:wrap;gap:6px;align-items:center;margin-top:12px;padding-bottom:10px;border-bottom:1px solid rgba(255,255,255,.08)}.parent-review-rating>span{color:#ffc42d;font-size:15px;letter-spacing:1px}.parent-review-rating>b{color:#fff;font-size:13px}.parent-review-rating>small{margin-left:auto;color:rgba(255,255,255,.55);font-size:10px}
.parent-review-card>p{margin:12px 0 0;color:rgba(255,255,255,.73);font-size:12px;line-height:1.5}
.parents-reviews-controls{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;margin-top:14px}.parents-reviews-dots{grid-column:2;display:flex;gap:7px;justify-content:center}.parents-reviews-dots button{width:8px;height:8px;padding:0;border:0;border-radius:50%;background:rgba(255,255,255,.2)}.parents-reviews-dots button.active{width:23px;border-radius:999px;background:#fff}.parents-reviews-next{grid-column:3;justify-self:end;display:grid;place-items:center;width:42px;height:42px;border:1px solid rgba(77,163,255,.46);border-radius:50%;color:#fff;background:linear-gradient(135deg,rgba(77,163,255,.28),rgba(168,85,247,.25));font-size:25px;box-shadow:0 0 22px rgba(77,163,255,.18);cursor:pointer}
@media(max-width:520px){.parents-reviews{padding:18px 12px 13px;border-radius:23px}.parents-reviews-head h2{font-size:28px}.parents-reviews-head p{font-size:13px}.parents-review-slide{gap:8px}.parent-review-card{padding:11px 9px;border-radius:17px}.parent-review-top{grid-template-columns:32px minmax(0,1fr);gap:7px}.parent-review-top>i{width:32px;height:32px;font-size:15px}.parent-review-top b{font-size:11px}.parent-review-top small{font-size:8px}.parent-review-rating{gap:3px;margin-top:9px;padding-bottom:8px}.parent-review-rating>span{font-size:11px;letter-spacing:0}.parent-review-rating>b{font-size:10px}.parent-review-rating>small{width:100%;margin-left:0;font-size:8px}.parent-review-card>p{margin-top:9px;font-size:10px;line-height:1.45}.parents-reviews-next{width:38px;height:38px}}
