/* main.css — homepage source */
.container{
  margin: 0 auto;
  width: 1240px;
  padding: 0 20px;
}
.mobile__wrap .buy-ticket{
    margin-bottom: 20px;
}
.buy-ticket{
    display: block;
    text-align: center;
    padding-top: 12px;
  border-radius: 100px;
  color: #4F006A;
  height: 51px;
  font-size: 20px;
  font-weight: 700;
  line-height: 24px;
}
.buy-ticket{
  width: 197px;
  background: #00F800;
  border: none;
}
.buy-ticket:hover{
    background: #4F006A;
    color: #00F800;
}
.info-bottom .buy-ticket{
  margin: 0 auto;
  display: block;
  transform: translateX(-31%);
}
.services-benefit__buy .buy-ticket{
    position: relative;
    z-index: 2;
}
.goods-slider__item .buy-ticket{
    margin: 0 auto;
}
.mobile .buy-ticket{
  margin-top: 20px;
}
.master-class-item .buy-ticket{
  margin-top: 30px;
  display: block;
}
.olympiad .buy-ticket{
  width: 224px;
}
.news-content .buy-ticket{
  margin-left: 31px;
}

/* madia.css — homepage source */

@media  screen and (max-width: 1241px) {.container{
	  width: 1064px;
	}}

@media  screen and (max-width: 1064px) {.container{
	  width: 807px;
	}
.buy-ticket{
	  height: 45px;
	  font-size: 17px;
	  font-weight: 700;
	  line-height: 24px;
	}
.buy-ticket{
	  width: 180px;
	}
.goods-slider__item .buy-ticket{
	  width: 155px;
	  height: 45px;
	}
.olympiad .buy-ticket{
    width: 200px;
  }
.news-content .buy-ticket{
    margin-left: 24px;
  }}

@media  screen and (max-width: 807px) {.container{
	  width: 616px;
	}
.news-content .buy-ticket{
    margin-left: 15px;
  }}

@media  screen and (max-width: 616px) {.container{
	  width: 360px;
	}
.buy-ticket{
	  font-size: 16px;
	  line-height: 15px;
	  width: 134px;
	  height: 40px;
	}
.buy-ticket{
	  width: 158px;
	}
.master-class-item .buy-ticket{
    margin-top: 16px;
  }
.olympiad .buy-ticket{
    width: 183px;
  }
.cost .buy-ticket{
    width: 153px;
    margin-left: auto;
  }
.combo .buy-ticket{
    margin-left: auto;

  }
.news-content .buy-ticket{
    margin-left: 0;
  }}

@media  screen and (max-width: 360px) {.container{
	  width: 320px;
	  padding: 0 10px;
	}}

/* edits.css — homepage source */
:root{--purple:#4f006a;--lime:#00f800;--pink:#ed258c;--cream:#fff7fc;--line:rgba(79,0,106,.22)}
.container{position:relative}
.buy-ticket{height:auto;min-height:51px;padding:13px 23px;font-size:17px;line-height:24px;display:inline-flex;align-items:center;justify-content:center;gap:15px}
.buy-ticket{box-shadow:0 4px 0 rgba(79,0,106,.12)}
.buy-ticket:hover{transform:translateY(-3px);box-shadow:0 7px 0 rgba(79,0,106,.12)}
.buy-ticket span{font-size:25px;font-weight:400}
.hero-actions .buy-ticket{width:auto;min-width:188px}
.edit-format-grid .buy-ticket{display:inline-flex;width:auto;min-width:185px;margin:0}

@keyframes drift{0%,100%{transform:translateY(0) rotate(-9deg)}50%{transform:translateY(-14px) rotate(-1deg)}}

@keyframes headphones-float{0%,100%{transform:translateY(0) rotate(10deg)}50%{transform:translateY(-12px) rotate(5deg)}}

@keyframes wave{0%,100%{transform:scaleY(.82)}50%{transform:scaleY(1.05)}}

@keyframes slide-enter{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}

@media (max-width:1199px){.edit-format-grid .buy-ticket{min-width:160px;font-size:15px}}

@media (max-width:991px){.edit-scenario .buy-ticket{font-size:14px;min-width:140px;width:auto}}

@media (max-width:767px){.container{width:100%;max-width:540px;padding:0 22px}
.hero-actions .buy-ticket{font-size:14px;min-width:160px;min-height:45px;padding:10px 17px}
.edit-intro-actions .buy-ticket{font-size:14px;min-width:0;width:auto;min-height:45px;padding:10px 17px}
.edit-format-grid .buy-ticket{font-size:15px;min-height:45px;padding:10px 17px}
.edit-scenario .buy-ticket{font-size:14px;min-width:140px;width:auto;min-height:45px;padding:10px 17px}}

@media (max-width:380px){.container{padding-inline:18px}}
.edit-format-grid .format-actions .buy-ticket{width:195px;margin:0;flex:0 0 195px}

@media (max-width:1199px){.edit-format-grid .format-actions .buy-ticket{width:175px;flex-basis:175px}}

@media (max-width:767px){.edit-format-grid .format-actions .buy-ticket{width:180px;flex-basis:180px}}

/* refinement.css — homepage source */
:root{--ink:#42065a;--purple:#4f006a;--pink:#ed258c;--line:rgba(79,0,106,.17)}
.container{max-width:1248px;width:100%;padding-left:24px;padding-right:24px;margin-inline:auto;box-sizing:border-box}
.location-object{width:49px;height:59px;object-fit:contain;flex:0 0 49px;filter:drop-shadow(0 5px 4px #95376920);animation:pin-hover 5.5s ease-in-out infinite}
.buy-ticket{transition:transform .25s ease,box-shadow .25s ease,background .25s ease}
.buy-ticket{box-shadow:0 4px 0 #12be04,0 8px 16px #36672716;color:var(--purple)}
.buy-ticket:hover{box-shadow:0 6px 0 #12be04,0 14px 20px #36672720}
.hero-actions .buy-ticket{font-size:15px;min-width:190px;min-height:49px;padding:12px 20px}

@keyframes banner-enter{from{opacity:.7;transform:translateX(12px)}to{opacity:1;transform:translateX(0)}}

@keyframes photo-breathe{from{transform:scale(1)}to{transform:scale(1.035)}}

@keyframes object-float{0%,100%{transform:translateY(0) rotate(-5deg)}50%{transform:translateY(-11px) rotate(4deg)}}

@keyframes portrait-breathe{0%,100%{transform:translateY(0)}50%{transform:translateY(-5px)}}

@keyframes pin-hover{0%,100%{transform:translateY(0) rotate(-4deg)}50%{transform:translateY(-7px) rotate(3deg)}}

@keyframes eye-look{0%,100%{transform:rotate(-5deg) translateY(0)}50%{transform:rotate(4deg) translateY(-5px)}}

@keyframes hand-sway{0%,100%{transform:rotate(-4deg) translateY(0)}50%{transform:rotate(5deg) translateY(-4px)}}

@keyframes badge-sway{0%,100%{transform:rotate(-7deg)}50%{transform:rotate(-2deg) translateY(-3px)}}

@keyframes gift-float{0%,100%{transform:translateY(0) rotate(0)}50%{transform:translateY(-8px) rotate(2deg)}}

@keyframes copy-arrive{from{transform:translateY(14px)}to{transform:translateY(0)}}

@media (max-width:767px){.container{max-width:540px;padding-inline:22px}
.hero-actions .buy-ticket{font-size:12px;min-width:155px;min-height:42px;padding:9px 14px}
.edit-intro-actions .buy-ticket{font-size:12px;padding:10px 16px;min-height:44px}}

@media (max-width:380px){.container{padding-inline:18px}}
.hero-actions .buy-ticket{white-space:nowrap;flex-shrink:0}

@media (max-width:767px){.hero-actions .buy-ticket{width:auto;min-width:165px}}

/* review-oct20.css — homepage source */
.container{max-width:1328px;padding-inline:32px}
.hero-actions .buy-ticket{font-size:16px;min-height:52px}
.video-intro .buy-ticket{width:auto;display:inline-flex;font-size:16px;gap:24px;padding:16px 24px}
.edit-format-grid .format-actions .buy-ticket{font-size:15px}

@media (max-width:1199px){.container{padding-inline:28px}}

@media (max-width:991px) and (min-width:768px){.location-object{width:34px;flex-basis:34px}}

@media (max-width:767px){.container{padding-inline:22px}
.hero-actions .buy-ticket{font-size:14px;min-height:47px;padding:13px 20px}
.video-intro .buy-ticket{font-size:13px;gap:12px;padding:14px 18px}
.edit-format-grid .format-actions .buy-ticket{font-size:14px;width:auto;flex-basis:auto;min-width:165px}}
.video-intro .buy-ticket{width:auto;min-width:250px}

@media (max-width:767px){.video-intro .buy-ticket{min-width:0}}
.video-intro .buy-ticket{width:290px;max-width:100%;min-width:0}

@media (max-width:767px){.video-intro .buy-ticket{width:238px}}

/* polish-oct20.css — homepage source */
.scene-decor{position:absolute;display:block;object-fit:contain;pointer-events:none;z-index:-1;animation:sculpture-drift 11s ease-in-out infinite}

@keyframes sculpture-drift{0%,100%{translate:0 0;rotate:-2deg}50%{translate:0 -10px;rotate:3deg}}

@keyframes gift-hover{0%,100%{transform:translateY(0) rotate(12deg)}50%{transform:translateY(-9px) rotate(8deg)}}

@media (max-width:767px){.scene-decor{animation-duration:13s}}

@media (prefers-reduced-motion:reduce){.scene-decor{animation:none!important}}
body.motion-paused .scene-decor{animation-play-state:paused!important}
.scene-layer{position:absolute;inset:0;pointer-events:none;z-index:-1;width:100%;height:100%;overflow:visible}
.occasion>.scene-layer{z-index:1}
.occasion>.scene-layer .decor-gift{z-index:-1}
body.motion-off .scene-decor{animation-play-state:paused!important}

/* refine-oct21.css — homepage source */
.guest-voices>.scene-layer{display:none}
.visit-museum>.scene-layer{z-index:-1}
.scene-decor{animation:decor-float 9s ease-in-out infinite;will-change:transform;--drift-x:5px;--drift-y:-14px;--turn:6deg}

@keyframes menu-reveal{from{opacity:0;transform:translateY(-7px) scale(.98)}to{opacity:1;transform:none}}

@keyframes decor-float{0%,100%{translate:0 0;rotate:-2deg}50%{translate:var(--drift-x,5px) var(--drift-y,-14px);rotate:var(--turn,6deg)}}

@keyframes ambient-drift{0%,100%{translate:0 0;rotate:0deg}50%{translate:14px -24px;rotate:3deg}}

@keyframes sensory-float{0%,100%{translate:0 0;rotate:-3deg}50%{translate:0 -10px;rotate:4deg}}

@keyframes hand-hello{0%,100%{rotate:-7deg;translate:0 0}40%{rotate:6deg;translate:0 -8px}55%{rotate:-2deg;translate:0 -8px}70%{rotate:5deg;translate:0 -5px}}

@keyframes sound-pulse{0%,100%{scale:1;translate:0 0}50%{scale:1.055;translate:0 -7px}}

@keyframes pin-bob{0%,100%{translate:0 0;rotate:-4deg}50%{translate:0 -9px;rotate:4deg}}

@keyframes letter-sway{0%,100%{translate:0 0;rotate:-2deg}50%{translate:0 -7px;rotate:3deg}}

@media (prefers-reduced-motion:reduce){.scene-decor{animation:none!important}}

/* finish-oct21.css — homepage source */
.buy-ticket{box-shadow:none;filter:none;text-shadow:none}
.buy-ticket,.edit-format-grid .buy-ticket,.services__btns .buy-ticket{box-shadow:0 3px 10px rgb(41 104 34 / 7%);transition:background .2s,transform .2s,box-shadow .2s}
.buy-ticket:hover,.edit-format-grid .buy-ticket:hover,.services__btns .buy-ticket:hover{box-shadow:0 6px 16px rgb(41 104 34 / 11%);transform:translateY(-2px)}
.buy-ticket:active{transform:translateY(0);box-shadow:none}
.buy-ticket:focus-visible{outline:2px solid #8b1a78;outline-offset:5px}

@media (prefers-reduced-motion:reduce){.buy-ticket{transition:none}}

/* art-direction.css — homepage source */
.campaign-slide .hero-actions .buy-ticket{min-height:54px;font-size:16px;padding:15px 24px;min-width:180px;box-shadow:none}

@keyframes campaign-drift{0%,100%{translate:0 0;rotate:-3deg}50%{translate:-10px -12px;rotate:5deg}}

@media (max-width:767px){.campaign-slide .hero-actions .buy-ticket{min-height:48px;font-size:14px;padding:12px 19px;min-width:0}}

/* balance.css — homepage source */
.occasion>.scene-layer{position:relative;inset:auto;grid-column:1/-1;grid-row:3;height:185px;width:100%;margin-top:25px;z-index:1;pointer-events:none;align-self:start}
.occasion .scene-layer .scene-decor{top:0;bottom:auto;--drift-x:5px;--drift-y:-7px;--turn:3deg}
.occasion-gift>.scene-layer{height:205px;margin-top:45px}

@media (max-width:767px){.occasion>.scene-layer{flex:none;position:relative;height:145px;margin-top:30px}
.occasion-gift>.scene-layer{height:150px;margin-top:35px}}
.occasion-birthday>.scene-layer{height:230px}

@media (max-width:767px){.occasion>.scene-layer{order:3;height:200px}
.occasion-birthday>.scene-layer{height:200px}
.occasion-gift>.scene-layer{height:180px}}
.occasion .scene-layer .scene-decor{transform:none}

/* rhythm.css — homepage source */
.occasion .occasion-visual>.scene-decor{z-index:0;transform:none;--drift-x:3px;--drift-y:-5px;--turn:2deg;pointer-events:none}

/* revision-oct23.css — homepage source */

@media (max-width:767px){.edit-intro-actions>.buy-ticket{min-height:56px;width:min(100%,290px);font-size:17px;padding:17px 25px}}

/* mobile-rework.css — homepage source */
:root{--lime:#b4e66a}
.museum-refined .buy-ticket{background:#b4e66a!important;color:#302542!important;box-shadow:none!important}
.museum-refined .buy-ticket:hover{background:#a4db57!important;box-shadow:0 4px 14px #64883c16!important}
.mobile-booking-bar{display:none}

@media (max-width:767px){.mobile-booking-bar{display:block;position:fixed;left:0;right:0;bottom:0;z-index:990;padding:10px 18px calc(10px + env(safe-area-inset-bottom,0px));background:#f8e6f0ed;backdrop-filter:blur(16px);box-shadow:0 -2px 16px #5a1c6409}
.museum-refined .mobile-booking-bar .buy-ticket{height:52px;min-height:52px;max-width:504px;width:100%;margin:0 auto;font-size:16px;border-radius:16px;display:flex;justify-content:center;align-items:center}
.museum-refined .buy-ticket{display:flex;align-items:center;justify-content:center;min-height:52px;height:auto;width:100%;max-width:none;min-width:0;margin:0;padding:13px 16px;font:650 15px/1.35 Montserrat;text-align:center;white-space:normal;border-radius:16px;box-sizing:border-box;flex:none}
.museum-refined .video-intro>.buy-ticket{width:100%;min-height:50px;font-size:14px;padding:12px 14px}
.museum-refined .campaign-slide .hero-actions .buy-ticket{width:100%;min-height:50px;font-size:14px;flex:none}}

/* revision-oct24.css — homepage source */
:root{--lime:#00f800}
.museum-refined .buy-ticket{background:var(--lime)!important}
.museum-refined .buy-ticket:hover{background:#00e600!important}
.phone-icon{display:inline-block;width:20px;height:20px;flex:0 0 20px;vertical-align:middle}

@media (max-width:767px){.mobile-booking-bar{background:#f3b8e8ed}
.museum-refined .buy-ticket,.museum-refined .mobile-booking-bar .buy-ticket{border-radius:50px}}

/* revision-oct27.css — homepage source */

@media (max-width:767px){.birthday-call .phone-icon{width:17px;height:17px;flex-basis:17px}}
