/* Generated by igo2/tools/build_asset_bundles.php. Do not edit this file directly. */


/* Source: igo2/src/css/common/partner-media-area.css */
.igo-partner-card-shell {
  --igo-partner-card-width: 312px;
  --igo-partner-card-media-height: 132px;
  --igo-partner-card-image-max-width: 248px;
  --igo-partner-card-image-max-height: 96px;
  position: relative;
  display: grid;
  gap: 12px;
  inline-size: min(100%,var(--igo-partner-card-width));
  min-height: 232px;
  padding: 18px;
  border: 1px solid rgba(255,214,126,.26);
  border-radius: 24px;
  background: linear-gradient(rgba(28,28,34,.94),rgba(12,12,16,.98)),rgba(18,18,22,.94);
  box-shadow: 0 0 0 1px rgba(255,214,126,.1) inset,0 24px 38px rgba(0,0,0,.28);
  justify-self: center;
}
.igo-partner-card-shell::before {
  content: "";
  position: absolute;
  inset: 0;
  border-radius: inherit;
  background: radial-gradient(circle at 0 0,rgba(255,220,146,.24),rgba(255,214,126,0) 44%),linear-gradient(rgba(255,255,255,.06),rgba(255,255,255,0));
  pointer-events: none;
  opacity: .92;
}
.igo-partner-media-area__badge {
  display: inline-flex;
  padding: 7px 12px;
  border-radius: 999px;
  background: rgba(255,211,124,.12);
  color: rgba(250,236,204,.96);
  font-size: 11px;
  font-weight: 700;
  letter-spacing: .12em;
  line-height: 1;
  text-transform: uppercase;
}
.igo-partner-media-area__media {
  position: relative;
  display: grid;
  place-items: center;
  min-height: var(--igo-partner-card-media-height);
  padding: 16px;
  overflow: hidden;
  border: 1px solid rgba(255,214,126,.14);
  border-radius: 20px;
  background: radial-gradient(circle,rgba(255,220,146,.18),rgba(255,214,126,0) 58%),linear-gradient(rgba(255,255,255,.045),rgba(255,255,255,.015));
}
.igo-partner-media-area__media::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(135deg,rgba(255,255,255,.06),transparent 34%),linear-gradient(315deg,rgba(255,255,255,.04),transparent 28%);
  pointer-events: none;
}
.igo-partner-media-area__image {
  width: min(calc(var(--igo-partner-card-image-max-width) * var(--partner-scale,1)),100%);
  max-height: calc(var(--igo-partner-card-image-max-height) * var(--partner-scale,1));
  object-fit: contain;
  opacity: var(--partner-opacity,1);
  filter: grayscale(var(--partner-grayscale,0)) brightness(var(--partner-brightness,1)) contrast(var(--partner-contrast,1)) saturate(var(--partner-saturate,1)) drop-shadow(0 10px 24px rgba(0,0,0,.26));
}
.igo-partner-media-area__image[hidden],.igo-partner-media-area__empty[hidden] {
  display: none !important;
}
.igo-partner-media-area__empty {
  display: grid;
  place-items: center;
  min-height: 132px;
  padding: 14px;
  color: rgba(242,234,215,.62);
  text-align: center;
}
.igo-partner-media-area__title {
  margin: 0;
  color: #fbf1dc;
  font-size: clamp(17px,1.35vw,20px);
  line-height: 1.12;
}


/* Source: igo2/src/css/public/styles.base.css */
:root {
  --gold: #f2c36a;
  --gold-strong: #ffcc66;
  --gold-soft: #be8c39;
  --text: #f2ead7;
  --surface: rgba(9,9,12,.66);
  --surface-border: rgba(255,196,98,.55);
  --bg-image-mobile: url("./img/bg3-960.webp");
  --bg-image-tablet: url("./img/bg3-1440.webp");
  --bg-image-desktop: url("./img/bg3-1920.webp");
}
* {
  box-sizing: border-box;
}
html,body {
  margin: 0;
}
body {
  min-height: 100vh;
  color: var(--text);
  font-family: "Trebuchet MS","Segoe UI","Arial Narrow",sans-serif;
  background-color: #030406;
  background-image: var(--bg-image-tablet);
  background-repeat: no-repeat;
  background-position: 50% -200px;
  background-size: 100% auto;
  background-attachment: scroll;
}
.page {
  width: min(1024px,100%);
  margin: 0 auto;
  padding: 24px 18px 48px;
}
.section {
  position: relative;
  margin: 0 0 24px;
  padding: 10px 0 4px;
}
.section::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 0;
  border-radius: 14px;
  background: linear-gradient(rgba(8,8,10,.26),rgba(8,8,10,.14));
  backdrop-filter: blur(1.2px);
}
.section > * {
  position: relative;
  z-index: 1;
}


/* Source: igo2/src/css/public/styles.hero.css */
.hero {
  --hero-bg-width: 960px;
  --hero-bg-top: -120px;
  position: relative;
  min-height: 390px;
  padding: 12px 8px 6px;
}
.hero::before {
  background: linear-gradient(rgba(8,8,10,.08),rgba(8,8,10,.04));
  backdrop-filter: none;
}
.hero::after {
  content: "";
  position: absolute;
  left: 50%;
  top: var(--hero-bg-top);
  z-index: 0;
  width: min(var(--hero-bg-width),100vw);
  aspect-ratio: 3 / 2;
  transform: translateX(-50%);
  pointer-events: none;
  background: image-set(url("./img/hero-center-640.webp") 1x,url("./img/hero-center-1024.webp") 2x) center / contain no-repeat;
}
.hero-grid {
  display: grid;
  grid-template-columns: minmax(180px,1fr) minmax(260px,340px) minmax(180px,1fr);
  grid-template-rows: auto auto;
  gap: 14px 16px;
  align-items: center;
  perspective: 1400px;
}
.hero-grid::before {
  content: "";
  grid-column: 2;
  grid-row: 1 / span 2;
  align-self: center;
  justify-self: center;
  width: 100%;
  max-width: 340px;
  height: clamp(140px,19vw,216px);
}
.hero-actions {
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 14px;
  width: min(448px,100%);
  margin: 14px auto 0;
  padding: 4px 8px;
  border: 1px solid rgba(255,200,103,.58);
  border-radius: 11px;
  background: linear-gradient(rgba(16,15,19,.9),rgba(5,5,8,.96));
  box-shadow: 0 0 0 1px rgba(255,210,129,.18) inset,0 8px 26px rgba(0,0,0,.45),0 0 24px rgba(255,184,83,.22);
  overflow: hidden;
  backdrop-filter: blur(2px);
}
.hero-actions::before {
  content: "";
  position: absolute;
  top: -52%;
  left: 50%;
  width: 3px;
  height: 208%;
  background: linear-gradient(rgba(255,230,172,0),rgba(255,206,116,.95),rgba(255,230,172,0));
  transform: translateX(-50%) rotate(34deg);
  box-shadow: 0 0 18px rgba(255,195,93,.58);
  pointer-events: none;
  z-index: 3;
}
.hero-actions::after {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  border-radius: 11px;
  background: linear-gradient(rgba(255,234,182,.16),rgba(255,234,182,0) 34%);
  z-index: 1;
}
.hero .hero-cta {
  flex: 1 1 50%;
  position: relative;
  z-index: 2;
  margin: 0;
  border: 0;
  border-radius: 8px;
  padding: 10px;
  font-size: clamp(14px,1.45vw,26px);
  font-weight: 700;
  letter-spacing: .15px;
  background: radial-gradient(140% 130% at 15% -25%,rgba(255,221,148,.25),rgba(255,221,148,0) 54%),linear-gradient(rgba(17,18,24,.88),rgba(5,6,10,.96));
  box-shadow: 0 1px 0 rgba(255,235,197,.2) inset,0 -14px 18px rgba(0,0,0,.24) inset;
  text-shadow: 0 0 12px rgba(255,206,122,.2);
  transition: transform .28s ease,color .28s ease,box-shadow .32s ease,background-position .32s ease,filter .28s ease;
}
.hero .hero-cta:last-child {
  color: #efbe69;
}
.hero .hero-cta:hover,.hero .hero-cta:focus-visible {
  transform: translateY(-1px) scale(1.012);
  color: #ffe2a4;
  box-shadow: 0 1px 0 rgba(255,239,205,.28) inset,0 -12px 20px rgba(0,0,0,.28) inset,0 0 18px rgba(255,191,93,.24);
  filter: saturate(1.12);
}
.hero-card {
  --panel-rot: 0;
  --panel-hover-tilt-y: 0;
  width: min(228px,100%);
  min-height: 98px;
  padding: 10px 11px 9px;
}
.hero-card h3 {
  font-size: clamp(14px,1.2vw,18px);
  margin-bottom: 2px;
}
.hero-card p {
  margin-bottom: 6px;
  font-size: clamp(12px,1.05vw,14px);
}
.hero-card .btn {
  max-width: 108px;
  margin-top: 4px;
  padding: 5px 8px;
  font-size: 12px;
}
.hero-card-hookah {
  width: min(260px,100%);
}
.hero-card-hookah h3 {
  white-space: nowrap;
  font-size: clamp(14px,1.16vw,17px);
}
.hero-card-lt {
  --panel-rot: -4deg;
  --panel-hover-tilt-y: -10deg;
  grid-column: 1;
  grid-row: 1;
  justify-self: end;
}
.hero-card-lb {
  --panel-rot: -1deg;
  --panel-hover-tilt-y: -3deg;
  margin-top: 50px;
  margin-right: -20%;
  grid-column: 1;
  grid-row: 2;
  justify-self: end;
}
.hero-card-rt {
  --panel-rot: 4deg;
  --panel-hover-tilt-y: 10deg;
  grid-column: 3;
  grid-row: 1;
  justify-self: start;
}
.hero-card-rb {
  --panel-rot: 1deg;
  --panel-hover-tilt-y: 3deg;
  margin-top: 50px;
  margin-left: -20%;
  grid-column: 3;
  grid-row: 2;
  justify-self: start;
}
.hero-card-lt,.hero-card-lb,.cards-two > .panel:nth-child(odd),.cards-three > .panel:nth-child(1),.cards-three > .panel:nth-child(2) {
  --panel-frame-image: url("./img/panel-glow-left.webp");
  --panel-frame-size: 124% 142%;
  --panel-frame-position: calc(44% + 1px) calc(45% + 1px);
}
.hero-card-rt,.hero-card-rb,.cards-two > .panel:nth-child(even),.cards-three > .panel:nth-child(3) {
  --panel-frame-image: url("./img/panel-glow-right.webp");
  --panel-frame-size: 124% 143%;
  --panel-frame-position: calc(33% - 1px) 42%;
}
.cards {
  display: grid;
  gap: 12px;
  perspective: 1400px;
}
.cards-two {
  grid-template-columns: repeat(2,minmax(250px,1fr));
}
.cards-three {
  grid-template-columns: repeat(3,minmax(180px,1fr));
}
.section-title {
  margin: 0 0 12px;
  text-align: center;
  font-size: clamp(19px,2.45vw,34px);
  line-height: 1.2;
  font-weight: 700;
  color: #f2f0ea;
  text-shadow: 0 0 14px rgba(255,186,86,.32);
}
.section-title::first-letter {
  color: var(--gold);
}


/* Source: igo2/src/css/public/styles.controls.css */
.panel {
  --panel-lift: 0;
  --panel-tilt-x: 0;
  --panel-tilt-y: 0;
  --panel-frame-image: none;
  --panel-frame-size: 124% 141%;
  --panel-frame-position: calc(53% + 7px) calc(63% + 9px);
  --panel-frame-inset: 1px;
  position: relative;
  border: 1px solid var(--surface-border);
  border-radius: 12px;
  padding: 14px 14px 12px;
  background: linear-gradient(rgba(11,11,13,.66),rgba(4,4,7,.84));
  isolation: isolate;
  overflow: hidden;
  transform-style: preserve-3d;
  transform: translateY(var(--panel-lift)) rotate(var(--panel-rot,0)) rotateX(var(--panel-tilt-x)) rotateY(var(--panel-tilt-y));
  will-change: transform,box-shadow;
  transition: transform .58s cubic-bezier(.22,.61,.36,1),box-shadow .58s cubic-bezier(.22,.61,.36,1),border-color .32s ease,filter .32s ease;
  box-shadow: 0 0 0 1px rgba(255,197,101,.22) inset,0 20px 28px rgba(0,0,0,.38),0 0 34px rgba(231,165,54,.22);
}
.panel > * {
  position: relative;
  z-index: 2;
}
.panel::before {
  content: "";
  position: absolute;
  inset: var(--panel-frame-inset);
  z-index: 1;
  border-radius: 11px;
  pointer-events: none;
  background: var(--panel-frame-image),linear-gradient(116deg,rgba(255,255,255,.34) 2%,rgba(255,255,255,.1) 13%,rgba(255,255,255,.02) 26%,rgba(255,255,255,0) 40%),radial-gradient(140% 95% at 12% -16%,rgba(255,232,177,.5),rgba(255,232,177,0) 45%),linear-gradient(155deg,rgba(255,205,109,.3),rgba(255,205,109,0) 38%,rgba(0,0,0,.42));
  background-repeat: no-repeat;
  background-size: var(--panel-frame-size),230% 230%,auto,auto;
  background-position: var(--panel-frame-position),0 0,center,center;
  opacity: .9;
  transition: opacity .4s ease,background-position .7s ease;
}
.cards-two > .panel.panel-lounge-vodny {
  --panel-frame-image: image-set(url("./img/lounge-vodny-900.webp") 1x,url("./img/lounge-vodny-1400.webp") 2x);
  --panel-frame-size: cover;
  --panel-frame-position: center;
}
.cards-two > .panel.panel-lounge-smolnaya {
  --panel-frame-image: image-set(url("./img/lounge-smolnaya-900.webp") 1x,url("./img/lounge-smolnaya-1400.webp") 2x);
  --panel-frame-size: cover;
  --panel-frame-position: center;
}
.panel::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 3;
  border-radius: 12px;
  pointer-events: none;
  opacity: .78;
  background: linear-gradient(150deg,rgba(255,205,109,.17),rgba(255,205,109,0) 24%,rgba(255,205,109,0) 76%,rgba(255,205,109,.11));
  background-size: 180% 180%;
  transition: opacity .4s ease,transform .45s cubic-bezier(.22,.61,.36,1),background-position .55s ease;
}
.panel:not(.hero-card):hover,.panel:not(.hero-card):focus-within {
  --panel-lift: -13px;
  border-color: rgba(255,220,150,.9);
  filter: saturate(1.2) brightness(1.08);
  box-shadow: 0 0 0 1px rgba(255,220,150,.48) inset,0 32px 44px rgba(0,0,0,.52),0 0 44px rgba(255,188,86,.34);
}
.hero-card:hover,.hero-card:focus-within {
  --panel-lift: -11px;
  border-color: rgba(255,220,150,.88);
  filter: saturate(1.18) brightness(1.08);
  box-shadow: 0 0 0 1px rgba(255,220,150,.4) inset,0 26px 36px rgba(0,0,0,.5),0 0 38px rgba(255,188,86,.3);
}
.hero-card-hookah::before {
  opacity: .92;
  background: var(--panel-frame-image),linear-gradient(118deg,rgba(255,255,255,.62),rgba(255,255,255,.3) 12%,rgba(255,255,255,.1) 28%,rgba(255,255,255,0) 46%),radial-gradient(125% 95% at 16% -12%,rgba(255,245,214,.74),rgba(255,245,214,0) 46%),linear-gradient(154deg,rgba(255,211,124,.4),rgba(255,211,124,0) 38%,rgba(0,0,0,.3));
  background-repeat: no-repeat;
  background-size: var(--panel-frame-size),250% 250%,auto,auto;
  background-position: var(--panel-frame-position),0 0,center,center;
}
.hero-card-hookah:hover,.hero-card-hookah:focus-within {
  --panel-lift: -7px;
}
.hero-card-hookah:hover::before,.hero-card-hookah:focus-within::before {
  opacity: 1;
  background-position: var(--panel-frame-position),100% 54%,center,center;
}
.panel:hover::before,.panel:focus-within::before {
  opacity: .98;
  background-position: var(--panel-frame-position),100% 60%,center,center;
}
.panel:hover::after,.panel:focus-within::after {
  opacity: 1;
  transform: translateZ(24px);
  background-position: 100% 70%;
}
.panel h3 {
  margin: 0 0 4px;
  font-size: clamp(16px,1.9vw,27px);
  line-height: 1.17;
  font-weight: 700;
  color: #f4e8cf;
}
.panel p {
  margin: 0 0 8px;
  font-size: clamp(13px,1.45vw,18px);
  line-height: 1.35;
  color: #f2f2f2;
}
.panel ul {
  margin: 0 0 10px 16px;
  padding: 0;
}
.panel li {
  margin: 4px 0;
  font-size: clamp(12px,1.35vw,17px);
}
.panel-small {
  text-align: center;
}
.panel-medium {
  min-height: 182px;
}
.panel-large {
  min-height: 268px;
}
.panel-shop {
  min-height: 166px;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 4px;
  text-align: center;
}
.shop-logo-wrap {
  display: grid;
  place-items: center;
  min-height: 68px;
  width: 100%;
  margin: 0 auto 4px;
}
.shop-logo {
  display: block;
  max-width: 94%;
  max-height: 64px;
  object-fit: contain;
  margin: 0 auto;
  filter: drop-shadow(0 0 14px rgba(255,191,92,.42));
}
.shop-logo-ozon {
  width: min(208px,92%);
}
.shop-logo-wb {
  width: min(232px,95%);
}
.shop-logo-cart {
  width: min(98px,62%);
  max-height: 66px;
}
.panel-shop p {
  margin: 0 0 12px;
}
.btn {
  appearance: none;
  cursor: pointer;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  width: 100%;
  max-width: 194px;
  min-height: 42px;
  margin: 6px auto 0;
  padding: 9px 13px;
  border: 1px solid rgba(255,197,99,.58);
  border-radius: 7px;
  font-size: clamp(12px,1.15vw,15px);
  font-weight: 600;
  line-height: 1.15;
  text-align: center;
  text-decoration: none;
  color: #f7f5ec;
  background: linear-gradient(rgba(19,18,20,.9),rgba(8,8,10,.95));
  box-shadow: 0 2px 12px rgba(0,0,0,.35);
  transition: transform .18s ease,box-shadow .18s ease,border-color .18s ease;
}
.btn:hover {
  transform: translateY(-1px);
  border-color: var(--gold-strong);
  box-shadow: 0 6px 18px rgba(247,169,58,.22);
}
.btn-wide {
  max-width: 220px;
}
.brand {
  font-size: clamp(24px,2.5vw,32px);
  letter-spacing: .3px;
}
.brand-ozon {
  color: #17a0ff;
}
.brand-wb {
  color: #d142ff;
}
.brand-igo {
  color: #f1d39a;
}


/* Source: igo2/src/css/public/home/rules.css */
.rules-spotlight {
  position: relative;
  padding: clamp(24px,4.2vw,42px);
  overflow: hidden;
  background: radial-gradient(circle at 0 0,rgba(255,209,119,.18),rgba(255,209,119,0) 32%),radial-gradient(circle at right,rgba(255,170,80,.12),rgba(255,170,80,0) 28%),linear-gradient(rgba(18,17,20,.96),rgba(6,6,9,.99));
  box-shadow: 0 0 0 1px rgba(255,207,121,.1) inset,0 28px 56px rgba(0,0,0,.34);
}
.rules-spotlight__content {
  display: flex;
  flex-direction: column;
}
.rules-spotlight__eyebrow {
  margin: 0 0 10px;
  color: var(--gold);
  font-size: 12px;
  font-weight: 700;
  letter-spacing: .2em;
  text-transform: uppercase;
}
.rules-spotlight__lead {
  margin: 0;
  color: rgba(242,234,215,.92);
  font-size: clamp(16px,1.55vw,20px);
  line-height: 1.72;
}
.rules-links {
  display: grid;
  grid-template-columns: repeat(3,minmax(0,1fr));
  gap: 16px;
  margin-top: clamp(22px,3vw,30px);
}
.rules-link-card {
  position: relative;
  display: flex;
  flex-direction: column;
  min-height: 100%;
  padding: 22px 20px 20px;
  border: 1px solid rgba(255,197,101,.18);
  border-radius: 20px;
  background: radial-gradient(circle at 0 0,rgba(255,215,129,.18),rgba(255,215,129,0) 40%),linear-gradient(rgba(19,18,22,.95),rgba(8,8,11,.98));
  box-shadow: 0 0 0 1px rgba(255,197,101,.08) inset,0 24px 40px rgba(0,0,0,.28);
}
.rules-link-card--accent {
  background: radial-gradient(circle at 0 0,rgba(255,214,126,.3),rgba(255,214,126,0) 44%),linear-gradient(rgba(27,20,11,.95),rgba(9,8,11,.98));
}
.rules-link-card h3 {
  margin: 0 0 10px;
  color: #f6e4bd;
  font-size: clamp(18px,1.5vw,23px);
  line-height: 1.2;
}
.rules-link-card p {
  margin: 0;
  color: rgba(242,234,215,.78);
  font-size: 15px;
  line-height: 1.65;
}
.rules-link-card .btn {
  width: fit-content;
  margin: 18px 0 0;
}


/* Source: igo2/src/css/public/home/partners.css */
.igo-carousel {
  padding: 20px;
}
.igo-carousel__controls {
  display: flex;
  gap: 10px;
  margin-bottom: 14px;
}
.igo-carousel__nav {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 46px;
  height: 46px;
  border: 1px solid rgba(255,201,108,.38);
  border-radius: var(--igo-shopfront-radius-pill);
  background: linear-gradient(rgba(21,21,25,.92),rgba(8,8,10,.98));
  color: #f2ead7;
  cursor: pointer;
  transition: transform .2s ease,border-color .2s ease,box-shadow .2s ease;
}
.igo-carousel__nav:hover,.igo-carousel__nav:focus-visible {
  transform: translateY(-1px);
  border-color: rgba(255,214,132,.9);
  box-shadow: 0 12px 24px rgba(255,187,74,.22);
}
.igo-carousel__nav svg {
  width: 16px;
  height: 16px;
  fill: currentColor;
}
.igo-carousel__viewport {
  position: relative;
  overflow: hidden;
}
.igo-carousel__track {
  display: flex;
  transition: transform .55s cubic-bezier(.22,.61,.36,1);
  will-change: transform;
}
.igo-carousel__slide {
  flex: 0 0 100%;
}
.igo-carousel__dots {
  display: flex;
  justify-content: center;
  gap: 8px;
  margin-top: 18px;
}
.igo-carousel__dot {
  width: 44px;
  height: 44px;
  padding: 0;
  border: 1px solid rgba(255,204,116,.52);
  border-radius: var(--igo-shopfront-radius-pill);
  background: radial-gradient(circle,rgba(255,204,116,.72) 0 5px,rgba(255,255,255,.08) 6px);
  cursor: pointer;
  transition: transform .2s ease,box-shadow .2s ease;
}
.igo-carousel__dot.is-active {
  background: radial-gradient(circle,var(--gold) 0 6px,rgba(255,204,116,.14) 7px);
  box-shadow: 0 0 14px rgba(255,200,103,.35);
}
.igo-carousel--partners {
  position: relative;
  padding: clamp(26px,4vw,38px);
  overflow: hidden;
  background: radial-gradient(circle at 0 0,rgba(255,215,131,.18),rgba(255,215,131,0) 26%),radial-gradient(circle at 100% 100%,rgba(255,162,79,.14),rgba(255,162,79,0) 30%),linear-gradient(rgba(15,14,18,.96),rgba(5,5,8,.99));
}
.igo-carousel--partners::before {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(120deg,rgba(255,255,255,.06),transparent 26%),radial-gradient(circle at 18% 22%,rgba(255,214,126,.12),transparent 34%);
  pointer-events: none;
}
.igo-carousel--partners .igo-carousel__viewport {
  border-radius: 24px;
}
.igo-carousel--partners .igo-carousel__viewport::before,.igo-carousel--partners .igo-carousel__viewport::after {
  content: "";
  position: absolute;
  top: 0;
  z-index: 2;
  width: clamp(24px,5vw,72px);
  height: 100%;
  pointer-events: none;
}
.igo-carousel--partners .igo-carousel__viewport::before {
  left: 0;
  background: linear-gradient(90deg,rgba(8,8,11,.92),rgba(8,8,11,0));
}
.igo-carousel--partners .igo-carousel__viewport::after {
  right: 0;
  background: linear-gradient(270deg,rgba(8,8,11,.92),rgba(8,8,11,0));
}
.igo-carousel--partners .igo-carousel__dot {
  background: radial-gradient(circle,rgba(246,230,195,.5) 0 5px,rgba(246,230,195,.1) 6px);
}
.igo-carousel--partners .igo-carousel__dot.is-active {
  background: radial-gradient(circle,#ffe2a4 0 6px,rgba(241,192,108,.14) 7px);
}
.partners-showcase__header {
  display: grid;
  grid-template-columns: minmax(0,1fr) auto;
  gap: 22px;
  align-items: end;
  margin-bottom: 20px;
}
.partners-showcase__intro {
  max-width: 920px;
}
.partners-showcase__eyebrow {
  margin: 0 0 10px;
  color: rgba(255,206,120,.84);
  font-size: 12px;
  font-weight: 700;
  letter-spacing: .18em;
  text-transform: uppercase;
}
.partners-showcase__intro h3 {
  margin: 0 0 12px;
  color: #f6e6c3;
  font-size: clamp(28px,2.7vw,42px);
  line-height: 1.02;
}
.partners-showcase__intro p {
  margin: 0;
  color: rgba(242,234,215,.8);
  font-size: 16px;
  line-height: 1.8;
}
.partners-showcase__grid {
  display: grid;
  grid-template-columns: repeat(3,minmax(0,1fr));
  gap: 18px;
}
.partner-card {
  transition: transform .24s ease,border-color .24s ease,box-shadow .24s ease,background .24s ease;
}
@media (hover: hover) and (pointer: fine) {
  .partner-card:hover {
    transform: translateY(-4px);
    border-color: rgba(255,223,154,.42);
    background: linear-gradient(rgba(33,33,39,.96),rgba(14,14,18,.98)),rgba(20,20,24,.96);
    box-shadow: 0 0 0 1px rgba(255,223,154,.16) inset,0 30px 48px rgba(0,0,0,.34);
  }
  .partner-card:hover .partner-card__media {
    border-color: rgba(255,223,154,.18);
    background: radial-gradient(circle,rgba(255,220,146,.2),rgba(255,214,126,0) 62%),linear-gradient(rgba(255,255,255,.05),rgba(255,255,255,.015));
  }
  .partner-card:hover .igo-partner-media-area__image {
    transform: scale(calc(var(--partner-scale,1) * 1.035));
    filter: grayscale(var(--partner-grayscale,0)) brightness(var(--partner-brightness,1)) contrast(var(--partner-contrast,1)) saturate(var(--partner-saturate,1.04)) drop-shadow(0 12px 28px rgba(0,0,0,.3));
  }
}
.partner-card__media {
  transition: border-color .24s ease,background .24s ease;
}
.partner-card .igo-partner-media-area__image {
  transition: transform .24s ease,filter .24s ease;
}
.partner-card__empty {
  min-height: 320px;
  border: 1px dashed rgba(255,205,110,.22);
  border-radius: 24px;
}


/* Source: igo2/src/css/public/home/footer.css */
.site-footer {
  padding: 8px 18px 42px;
}
.site-footer__inner {
  width: min(1200px,100%);
  margin: 0 auto;
  display: grid;
  grid-template-columns: minmax(0,1fr) minmax(280px,.82fr);
  gap: 24px;
  align-items: end;
  padding: 26px 28px;
  border: 1px solid rgba(255,201,108,.18);
  border-radius: 24px;
  background: radial-gradient(circle at 0 0,rgba(255,206,118,.16),rgba(255,206,118,0) 30%),linear-gradient(rgba(14,14,18,.94),rgba(6,6,9,.99));
  box-shadow: 0 0 0 1px rgba(255,201,108,.08) inset,0 24px 46px rgba(0,0,0,.24);
}
.site-footer__brand,.site-footer__meta {
  display: grid;
  gap: 8px;
}
.site-footer__eyebrow {
  margin: 0;
  color: rgba(255,206,120,.82);
  font-size: 11px;
  font-weight: 700;
  letter-spacing: .18em;
  text-transform: uppercase;
}
.site-footer__title {
  margin: 0;
  color: #f7ecd5;
  font-size: clamp(28px,2.7vw,42px);
  line-height: .96;
}
.site-footer__copy,.site-footer__legal,.site-footer__dev {
  margin: 0;
  color: rgba(242,234,215,.72);
  line-height: 1.6;
}
.site-footer__meta {
  justify-items: end;
  text-align: right;
}
.site-footer__dev strong {
  color: #f6dfaf;
}
.site-footer__link {
  display: inline-flex;
  align-items: center;
  min-height: 44px;
  color: #f1d39a;
  font-weight: 600;
  text-decoration: none;
}
.site-footer__link:hover,.site-footer__link:focus-visible {
  color: #ffe2a4;
}


/* Source: igo2/src/css/public/home/callback.css */
.callback-widget {
  position: fixed;
  right: 18px;
  bottom: 18px;
  z-index: 70;
  display: grid;
  justify-items: end;
  gap: 12px;
}
.callback-widget__panel {
  width: min(360px,calc(100vw - 24px));
  padding: 18px 16px 16px;
  transform: translateY(10px) scale(.98);
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transition: transform .26s ease,opacity .26s ease,visibility .26s ease;
}
.callback-widget.is-open .callback-widget__panel {
  transform: none;
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
}
.callback-widget__eyebrow {
  margin: 0 0 6px;
  color: var(--gold);
  font-size: 12px;
  font-weight: 700;
  letter-spacing: .14em;
  text-transform: uppercase;
}
.callback-widget__title {
  margin: 0 0 8px;
  color: #f6e4bd;
  font-size: clamp(18px,1.4vw,22px);
  line-height: 1.2;
}
.callback-widget__lead {
  margin: 0 0 14px;
  color: rgba(242,234,215,.74);
  font-size: 14px;
  line-height: 1.55;
}
.callback-widget__form {
  display: grid;
  gap: 12px;
}
.callback-widget__field {
  display: grid;
  gap: 6px;
}
.callback-widget__field span {
  color: rgba(242,234,215,.8);
  font-size: 13px;
}
.callback-widget__field input {
  width: 100%;
  padding: 12px 14px;
  border: 1px solid rgba(255,200,103,.32);
  border-radius: 10px;
  color: #f7f5ec;
  font: inherit;
  background: rgba(7,7,10,.9);
  box-shadow: 0 0 0 1px rgba(255,200,103,.06) inset;
}
.callback-widget__field input:focus {
  border-color: rgba(255,212,129,.85);
  box-shadow: 0 0 0 1px rgba(255,212,129,.16),0 0 18px rgba(255,187,74,.12);
}
.callback-widget__actions {
  display: flex;
  gap: 10px;
}
.callback-widget__actions > .btn {
  flex: 1 1 0;
}
.callback-widget__actions > .callback-widget__dismiss {
  color: rgba(242,234,215,.82);
}
.callback-widget__status {
  margin: 0;
  padding: 10px 12px;
  border-radius: 10px;
  font-size: 14px;
  line-height: 1.5;
}
.callback-widget__status.is-success {
  color: #dff7d5;
  background: rgba(65,123,59,.22);
  border: 1px solid rgba(117,184,112,.36);
}
.callback-widget__status.is-error {
  color: #ffd4cf;
  background: rgba(135,42,32,.22);
  border: 1px solid rgba(197,90,78,.36);
}
.callback-widget__honeypot {
  position: absolute;
  left: -9999px;
  width: 1px;
  height: 1px;
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
}
.callback-widget__trigger {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  min-height: 58px;
  padding: 8px 16px 8px 10px;
  border: 1px solid rgba(255,199,101,.46);
  border-radius: var(--igo-shopfront-radius-pill);
  color: #f8f4eb;
  background: radial-gradient(circle at 0 0,rgba(255,216,137,.24),rgba(255,216,137,0) 46%),linear-gradient(rgba(17,17,20,.96),rgba(7,7,10,.98));
  box-shadow: 0 0 0 1px rgba(255,205,110,.12) inset,0 16px 26px rgba(0,0,0,.34),0 0 22px rgba(255,187,74,.18);
  cursor: pointer;
  transition: transform .2s ease,border-color .2s ease,box-shadow .2s ease;
}
.callback-widget__trigger:hover,.callback-widget__trigger:focus-visible {
  transform: translateY(-1px);
  border-color: rgba(255,214,132,.86);
  box-shadow: 0 0 0 1px rgba(255,214,132,.14) inset,0 20px 30px rgba(0,0,0,.38),0 0 28px rgba(255,187,74,.26);
}
.callback-widget__trigger-icon {
  display: grid;
  place-items: center;
  width: 38px;
  height: 38px;
  border-radius: var(--igo-shopfront-radius-pill);
  color: #070708;
  background: linear-gradient(#ffd489,#e0a85b);
  box-shadow: 0 6px 16px rgba(255,186,75,.28);
}
.callback-widget__trigger-icon svg {
  width: 18px;
  height: 18px;
  fill: currentColor;
}
.callback-widget__trigger-label {
  display: flex;
  flex-direction: column;
  gap: 2px;
}
.callback-widget__trigger-label strong {
  font-size: 14px;
}
.callback-widget__trigger-label span {
  color: rgba(242,234,215,.68);
  font-size: 11px;
  letter-spacing: .08em;
  text-transform: uppercase;
}


/* Source: igo2/src/css/public/home/management-feedback.css */
.igo-modal__dialog--management-feedback {
  width: min(760px,100%);
}
.igo-management-feedback__hero {
  margin-bottom: 18px;
}
.igo-management-feedback__lead {
  margin: 0;
  color: rgba(242,234,215,.78);
  line-height: 1.7;
}
.igo-management-feedback__helper {
  color: rgba(242,234,215,.68);
  font-size: 13px;
  line-height: 1.55;
}
@media (max-width: 640px) {
  .igo-management-feedback__lead {
    font-size: 14px;
    line-height: 1.6;
  }
}


/* Source: igo2/src/css/public/home/responsive.css */
@media (max-width: 900px) {
  .rules-links,.partners-showcase__header,.site-footer__inner {
    grid-template-columns: 1fr;
  }
  .partners-showcase__grid {
    grid-template-columns: repeat(2,minmax(0,1fr));
  }
  .site-footer__meta {
    justify-items: start;
    text-align: left;
  }
}
@media (max-width: 640px) {
  .igo-carousel,.rules-spotlight {
    padding: 14px;
  }
  .partners-showcase__intro h3 {
    font-size: 24px;
  }
  .partners-showcase__grid {
    grid-template-columns: 1fr;
  }
  .partner-card {
    min-height: 0;
    padding: 14px;
  }
  .partner-card__media {
    min-height: 112px;
    padding: 14px;
  }
  .site-footer {
    padding: 0 12px 84px;
  }
  .site-footer__inner {
    padding: 22px 18px;
  }
  .callback-widget {
    right: 10px;
    bottom: 10px;
  }
  .callback-widget.is-open {
    left: 10px;
    justify-items: stretch;
  }
  .callback-widget__panel {
    width: 100%;
  }
  .callback-widget__trigger {
    justify-content: center;
  }
  .callback-widget:not(.is-open) .callback-widget__trigger {
    width: 58px;
    padding: 8px;
  }
  .callback-widget:not(.is-open) .callback-widget__trigger-label {
    display: none;
  }
  .callback-widget__actions {
    flex-direction: column;
  }
}


/* Source: igo2/src/css/public/styles.hero-responsive.css */
@media (min-width: 1400px) {
  body {
    background-image: var(--bg-image-desktop);
  }
}
@media (max-width: 860px) {
  .hero {
    --hero-bg-width: 720px;
    --hero-bg-top: -170px;
  }
  .cards-three,.cards-two {
    grid-template-columns: 1fr;
  }
  .hero-grid {
    grid-template-columns: repeat(2,minmax(150px,1fr));
    grid-template-rows: auto auto auto;
    gap: 10px;
  }
  .hero-grid::before {
    grid-column: 1 / -1;
    grid-row: 1;
    max-width: 330px;
    height: clamp(110px,24vw,170px);
  }
  .hero-card {
    width: 100%;
    --panel-rot: 0;
    --panel-hover-tilt-y: 0;
  }
  .hero-card-lt {
    grid-row: 2;
    justify-self: stretch;
  }
  .hero-card-rt {
    grid-column: 2;
    justify-self: stretch;
  }
  .hero-card-lb {
    grid-row: 3;
    justify-self: stretch;
  }
  .hero-card-rb {
    grid-column: 2;
    grid-row: 3;
    justify-self: stretch;
  }
  .hero-card-lb,.hero-card-rb {
    margin-top: 0;
    margin-left: 0;
    margin-right: 0;
  }
  .hero-actions {
    margin-top: 12px;
  }
}
@media (max-width: 640px) {
  body {
    background-image: var(--bg-image-mobile);
  }
  .hero {
    --hero-bg-width: 560px;
    --hero-bg-top: -92px;
    padding-top: 82px;
  }
  .hero-grid::before,.hero-actions::before {
    display: none;
  }
  .hero-grid {
    grid-template-rows: auto auto;
  }
  .hero-card-rb {
    grid-row: 2;
  }
  .hero-actions {
    flex-direction: column;
    width: min(330px,100%);
    gap: 6px;
    padding: 6px;
  }
  .hero .hero-cta {
    width: 100%;
    border-radius: 10px;
  }
}
@media (max-width: 480px) {
  .hero {
    --hero-bg-width: 430px;
    --hero-bg-top: -74px;
    padding-top: 86px;
  }
  .page {
    padding: 14px 10px 22px;
  }
  .section {
    margin-bottom: 16px;
  }
  .hero-grid {
    grid-template-columns: 1fr;
    grid-template-rows: auto;
  }
  .hero-card-rt,.hero-card-rb {
    grid-column: 1;
  }
  .hero-card-rt {
    grid-row: 2;
  }
  .hero-card-rb {
    grid-row: 4;
  }
  .hero-card {
    min-height: 92px;
  }
  .panel-medium,.panel-large,.panel-shop {
    min-height: unset;
  }
}


/* Source: igo2/src/css/public/booking/modal-shell.css */
body.modal-open {
  overflow: hidden;
}
.igo-modal {
  position: fixed;
  inset: 0;
  z-index: 1000;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 18px 10px;
  overflow: hidden;
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transition: opacity .2s ease,visibility .2s ease;
}
.igo-modal.is-open {
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
}
.igo-modal__overlay {
  position: absolute;
  inset: 0;
  background: rgba(0,0,0,.74);
  backdrop-filter: blur(2px);
}
.igo-modal__dialog {
  position: relative;
  z-index: 2;
  width: min(580px,100%);
  max-height: min(88vh,760px);
  overflow-y: auto;
  padding: 18px 16px 16px;
  border: 1px solid rgba(255,202,112,.62);
  border-radius: 12px;
  background: linear-gradient(rgba(15,14,17,.96),rgba(5,5,8,.98));
  box-shadow: 0 0 0 1px rgba(255,208,124,.22) inset,0 20px 42px rgba(0,0,0,.56);
}
.igo-modal__dialog--menu {
  width: min(1080px,100%);
  height: calc(100vh - 24px);
  display: flex;
  flex-direction: column;
  overflow: hidden;
}
.igo-modal__dialog--booking,.igo-modal__dialog--privacy,.igo-modal__dialog--booking-result,.igo-modal__dialog--management-feedback {
  max-height: calc(100vh - 24px);
}
.igo-modal__dialog--booking {
  width: min(780px,100%);
}
.igo-modal__dialog--privacy {
  width: min(860px,100%);
}
.igo-modal__dialog--booking-result {
  width: min(700px,100%);
}
.igo-modal__close {
  position: absolute;
  top: 8px;
  right: 10px;
  z-index: 3;
  display: grid;
  place-items: center;
  width: 34px;
  height: 34px;
  border: 1px solid rgba(255,205,120,.64);
  border-radius: 50%;
  background: rgba(20,18,16,.95);
  color: #f5e4bf;
  font-size: 22px;
  line-height: 1;
  cursor: pointer;
}
.igo-modal__title {
  margin: 0 44px 6px 0;
  font-size: clamp(23px,2.6vw,34px);
  color: #f4e8cf;
}
.igo-modal__subtitle {
  margin: 0 0 12px;
  color: #f0ddbe;
}


/* Source: igo2/src/css/public/booking/booking-layout.css */
.igo-booking__hero {
  margin-bottom: 16px;
  padding: 16px;
  border: 1px solid rgba(255,205,118,.18);
  border-radius: 14px;
  background: linear-gradient(rgba(17,16,20,.96),rgba(9,8,11,.98)),rgba(15,14,18,.8);
}
.igo-booking__lead {
  margin: 0;
  color: rgba(244,232,207,.88);
  line-height: 1.7;
}
.igo-booking__meta {
  display: grid;
  gap: 10px;
  margin-top: 14px;
}
.igo-booking__meta-item {
  display: grid;
  gap: 2px;
}
.igo-booking__meta-label {
  color: #f1c775;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: .08em;
  text-transform: uppercase;
}
.igo-booking__meta-item a {
  color: #f4e8cf;
  text-decoration: none;
}
.igo-booking__form,.igo-booking-page__form {
  display: grid;
  gap: 12px;
}
.igo-booking__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}
.igo-booking__actions > .btn {
  flex: 1 1 220px;
}
.igo-booking__secondary-btn {
  background: linear-gradient(rgba(17,18,24,.88),rgba(5,6,10,.96));
  color: #f1d39a;
}
.igo-booking-result__lead {
  margin-bottom: 12px;
  line-height: 1.65;
}
.igo-booking-result__card {
  display: grid;
  gap: 8px;
  padding: 14px;
  border: 1px solid rgba(255,205,118,.24);
  border-radius: 12px;
  background: rgba(11,11,15,.86);
}
.igo-booking-result__line {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 8px 0;
  border-bottom: 1px solid rgba(255,205,118,.16);
}
.igo-booking-result__line:last-child {
  border-bottom: 0;
}
.igo-booking-result__line > span {
  color: rgba(244,232,207,.72);
}
.igo-booking-result__line > strong {
  color: #f4e8cf;
  text-align: right;
}
.igo-booking-page__status {
  padding: 12px 14px;
  border: 1px solid rgba(255,204,114,.3);
  border-radius: 10px;
  background: rgba(14,13,17,.82);
  color: #f4e8cf;
}
.igo-booking-page__status.is-success {
  border-color: rgba(137,216,145,.45);
  background: rgba(10,34,17,.88);
}
.igo-booking-page__status.is-error {
  border-color: rgba(255,125,115,.44);
  background: rgba(45,12,12,.88);
}
.igo-booking-page__helper {
  margin: 0;
  color: rgba(242,234,215,.72);
  font-size: 14px;
  line-height: 1.6;
}
.igo-booking-page__trap {
  position: absolute;
  left: -9999px;
  width: 1px;
  height: 1px;
  overflow: hidden;
  visibility: hidden;
}


/* Source: igo2/src/css/public/booking/booking-form.css */
.igo-form-grid {
  display: grid;
  grid-template-columns: repeat(2,minmax(0,1fr));
  gap: 12px;
}
.igo-form-field--wide {
  grid-column: 1 / -1;
}
.igo-form-field span {
  display: block;
  margin-bottom: 6px;
  color: #f0ddbe;
  font-weight: 700;
}
.igo-form-field input,.igo-form-field select,.igo-form-field textarea {
  width: 100%;
  min-height: 44px;
  padding: 11px 12px;
  border: 1px solid rgba(255,204,114,.44);
  border-radius: 10px;
  background: rgba(14,13,17,.9);
  color: #f4e8cf;
  resize: vertical;
}
.igo-form-field__input-wrap {
  position: relative;
}
.igo-form-field--with-control input[type="date"],.igo-form-field--with-control input[type="time"] {
  padding-right: 50px;
}
.igo-form-field__picker {
  position: absolute;
  top: 50%;
  right: 8px;
  width: 32px;
  height: 32px;
  border: 1px solid rgba(255,204,114,.44);
  border-radius: 8px;
  background: rgba(12,11,15,.94);
  color: #f4d08e;
  font-size: 16px;
  line-height: 1;
  transform: translateY(-50%);
  cursor: pointer;
}
.igo-form-field__picker:hover,.igo-form-field__picker:focus-visible {
  border-color: rgba(255,222,154,.84);
  color: #ffe7b4;
  box-shadow: 0 0 14px rgba(255,192,84,.28);
}
.igo-form-field select {
  appearance: none;
}
.igo-form-field input:disabled,.igo-form-field select:disabled,.igo-form-field textarea:disabled,.igo-booking__actions > .btn:disabled {
  opacity: .72;
  cursor: wait;
}


/* Source: igo2/src/css/public/booking/doc-modals.css */
.igo-policy-modal__body {
  margin-top: 6px;
  max-height: min(56vh,480px);
  overflow-y: auto;
  padding: 12px;
  border: 1px solid rgba(255,205,118,.24);
  border-radius: 12px;
  background: rgba(11,11,15,.86);
}
.igo-policy-modal__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: 12px;
}
.igo-policy-modal__actions > .btn {
  flex: 1 1 220px;
}
.igo-doc-modal__body {
  display: grid;
  gap: 18px;
}
.igo-doc-modal__meta {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}
.igo-doc-modal__meta span {
  display: inline-flex;
  align-items: center;
  min-height: 30px;
  padding: 0 12px;
  border: 1px solid rgba(255,205,118,.22);
  border-radius: 999px;
  color: rgba(244,232,207,.82);
  font-size: 12px;
  letter-spacing: .08em;
  text-transform: uppercase;
}
.igo-doc-modal__grid {
  display: grid;
  grid-template-columns: repeat(3,minmax(0,1fr));
  gap: 12px;
}
.igo-doc-modal__section {
  padding: 14px;
  border: 1px solid rgba(255,205,118,.18);
  border-radius: 14px;
  background: rgba(15,14,18,.74);
}
.igo-doc-modal__section h3,.igo-doc-modal__prose h3 {
  margin: 0 0 10px;
  color: #f4e8cf;
  font-size: 18px;
  line-height: 1.25;
}
.igo-doc-modal__section p,.igo-doc-modal__prose p,.igo-doc-modal__prose li {
  margin: 0;
  color: rgba(242,234,215,.86);
  line-height: 1.68;
}
.igo-doc-modal__prose {
  display: grid;
  gap: 16px;
}
.igo-doc-modal__prose ul,.igo-doc-modal__prose ol {
  margin: 0;
  padding-left: 20px;
}
.igo-doc-modal__prose a {
  color: #f1d39a;
}


/* Source: igo2/src/css/public/styles.menu-browser.css */
.igo-menu-modal-body,.igo-menu-browser {
  display: flex;
  flex-direction: column;
  flex: 1 1 auto;
  height: 100%;
  min-height: 0;
}
.igo-menu-page-browser {
  height: clamp(720px,78vh,960px);
}
.igo-menu-browser__shell {
  display: flex;
  flex-direction: column;
  gap: 12px;
  height: 100%;
  min-height: 0;
}
.igo-menu-browser__tabs-wrap {
  padding: 8px;
  border: 1px solid rgba(255,205,118,.24);
  border-radius: 16px;
  background: linear-gradient(rgba(18,16,21,.98),rgba(9,8,11,.98)),rgba(15,14,18,.8);
  box-shadow: 0 0 0 1px rgba(255,214,136,.08) inset;
}
.igo-menu-browser__tabs {
  display: flex;
  gap: 8px;
  overflow-x: auto;
  scrollbar-width: thin;
}
.igo-menu-browser__tab {
  flex: 0 0 auto;
  min-height: 46px;
  padding: 0 18px;
  border: 1px solid rgba(255,205,118,.2);
  border-radius: 12px;
  background: radial-gradient(120% 150% at 12% -10%,rgba(255,222,156,.14),rgba(255,222,156,0) 52%),rgba(255,255,255,.02);
  color: rgba(244,232,207,.82);
  cursor: pointer;
  font-weight: 700;
  white-space: nowrap;
  transition: transform .2s ease,border-color .2s ease,color .2s ease,box-shadow .2s ease;
}
.igo-menu-browser__tab:hover,.igo-menu-browser__tab:focus-visible {
  color: #fff4d7;
  transform: translateY(-1px);
  background: rgba(255,209,125,.1);
  border-color: rgba(255,220,150,.36);
  box-shadow: 0 10px 18px rgba(255,188,82,.1);
}
.igo-menu-browser__tab.is-active {
  color: #120d05;
  background: radial-gradient(140% 160% at 16% -22%,rgba(255,242,201,.6),rgba(255,242,201,0) 54%),linear-gradient(#ffd47f,#e6a648);
  border-color: rgba(255,231,183,.9);
  box-shadow: 0 0 0 1px rgba(255,235,194,.26) inset,0 14px 26px rgba(255,186,72,.16);
}
.igo-menu-browser__panel {
  flex: 1 1 auto;
  min-height: 0;
}
.igo-menu-browser__frame {
  display: grid;
  grid-template-columns: minmax(260px,320px) minmax(0,1fr);
  gap: 14px;
  height: 100%;
  min-height: 0;
}
.igo-menu-browser__sidebar,.igo-menu-browser__detail {
  display: flex;
  flex-direction: column;
  overflow: hidden;
  min-height: 0;
  border: 1px solid rgba(255,205,118,.32);
  border-radius: 14px;
  background: linear-gradient(rgba(18,16,21,.96),rgba(9,8,11,.98)),rgba(15,14,18,.8);
  box-shadow: 0 0 0 1px rgba(255,214,136,.08) inset;
}
.igo-menu-browser__sidebar-body {
  min-height: 0;
  overflow-y: auto;
  padding: 14px;
}
.igo-menu-tree {
  list-style: none;
  margin: 0;
  padding: 0;
}
.igo-menu-tree--nested,.igo-menu-tree--items {
  list-style: none;
  margin-top: 6px;
  padding-left: 14px;
  border-left: 1px solid rgba(255,205,118,.14);
}
.igo-menu-tree--root-items {
  margin-top: 10px;
}
.igo-menu-tree__node + .igo-menu-tree__node {
  margin-top: 4px;
}
.igo-menu-tree__button {
  width: 100%;
  padding: 11px 13px;
  border: 1px solid transparent;
  border-radius: 12px;
  background: radial-gradient(120% 140% at 12% -10%,rgba(255,222,156,.12),rgba(255,222,156,0) 54%),rgba(255,255,255,.02);
  color: rgba(244,232,207,.78);
  text-align: left;
  cursor: pointer;
  transition: transform .2s ease,border-color .2s ease,color .2s ease,box-shadow .2s ease;
}
.igo-menu-tree__button--section {
  color: #f7d9a1;
  font-weight: 700;
}
.igo-menu-tree__button--overview {
  background: radial-gradient(120% 140% at 12% -10%,rgba(255,222,156,.16),rgba(255,222,156,0) 56%),rgba(255,209,125,.08);
}
.igo-menu-tree__button--item {
  font-size: 14px;
}
.igo-menu-tree__button:hover,.igo-menu-tree__button:focus-visible {
  color: #fff4d7;
  transform: translateY(-1px);
  background: rgba(255,209,125,.1);
  border-color: rgba(255,220,150,.24);
  box-shadow: 0 12px 20px rgba(255,190,82,.08);
}
.igo-menu-tree__button.is-active {
  color: #0f0c07;
  background: radial-gradient(140% 160% at 16% -22%,rgba(255,242,201,.6),rgba(255,242,201,0) 54%),linear-gradient(#ffd47f,#e8aa4b);
  border-color: rgba(255,227,173,.88);
  box-shadow: 0 12px 20px rgba(255,190,82,.16);
}
.igo-menu-detail__header {
  padding: 18px 18px 0;
}
.igo-menu-detail__title {
  margin: 0;
  color: #f7eddb;
  font-size: clamp(24px,2.4vw,34px);
}
.igo-menu-detail__meta {
  margin: 10px 0 0;
  color: #f1c775;
  font-size: 15px;
  font-weight: 700;
}
.igo-menu-detail__body {
  display: grid;
  grid-template-columns: minmax(240px,360px) minmax(0,1fr);
  gap: 16px;
  min-height: 0;
  overflow-y: auto;
  padding: 18px;
}
.igo-menu-detail__body--text {
  grid-template-columns: 1fr;
}
.igo-menu-detail__figure {
  margin: 0;
  overflow: hidden;
  border-radius: 14px;
  background: rgba(7,7,10,.7);
  border: 1px solid rgba(255,209,125,.18);
}
.igo-menu-detail__image {
  display: block;
  width: 100%;
  height: 100%;
  min-height: 280px;
  object-fit: cover;
  transform: scale(var(--menu-media-scale,1));
  opacity: var(--menu-media-opacity,1);
  filter: brightness(var(--menu-media-brightness,1)) contrast(var(--menu-media-contrast,1)) saturate(var(--menu-media-saturate,1)) grayscale(var(--menu-media-grayscale,0));
}
.igo-menu-detail__description {
  color: rgba(244,232,207,.92);
  line-height: 1.7;
}
.igo-menu-detail__description p {
  margin: 0 0 14px;
}
.igo-menu-detail__description p:last-child {
  margin-bottom: 0;
}
.igo-menu-browser__empty {
  display: grid;
  place-items: center;
  min-height: 260px;
  padding: 20px;
  border: 1px dashed rgba(255,205,118,.26);
  border-radius: 14px;
  color: rgba(244,232,207,.82);
  text-align: center;
}
@supports (height: 100dvh) {
  .igo-modal__dialog--menu {
    height: calc(100dvh - 24px);
  }
}


/* Source: igo2/src/css/public/styles.ui-responsive.css */
@media (max-width: 640px) {
  .igo-modal__dialog {
    padding: 14px 12px;
  }
  .igo-modal__dialog--menu {
    height: calc(100vh - 12px);
  }
  .igo-menu-browser__tabs {
    padding-bottom: 2px;
  }
  .igo-menu-browser__frame,.igo-form-grid,.igo-menu-detail__body,.igo-doc-modal__grid {
    grid-template-columns: 1fr;
  }
  .igo-menu-browser__sidebar {
    max-height: 34vh;
  }
  .igo-booking__actions > .btn,.igo-policy-modal__actions > .btn {
    flex-basis: 100%;
  }
  .igo-policy-modal__body {
    max-height: min(48vh,420px);
  }
  .igo-booking-result__line {
    flex-direction: column;
    align-items: flex-start;
    gap: 4px;
  }
  .igo-booking-result__line > strong {
    text-align: left;
  }
  .igo-menu-detail__header {
    padding: 14px 14px 0;
  }
  .igo-menu-detail__body {
    padding: 14px;
    gap: 12px;
  }
  .igo-menu-detail__image {
    min-height: 220px;
  }
}
