
html.tg-age-lock,html.tg-age-lock body{overflow:hidden!important}
.tg-age{position:fixed;inset:0;z-index:2147483000;overflow:hidden;font-family:Georgia,serif;color:#2b1713}
.tg-age[hidden]{display:none!important}
.tg-age__backdrop{position:absolute;inset:0;background:radial-gradient(circle at 50% 45%,rgba(116,64,36,.25),transparent 35%),linear-gradient(rgba(5,4,6,.93),rgba(13,7,10,.98));backdrop-filter:blur(8px)}
.tg-curtain{position:absolute;top:0;bottom:0;width:54%;z-index:2;background:repeating-linear-gradient(90deg,#26080e 0 7%,#3b1018 7% 14%,#21070c 14% 21%);box-shadow:inset 0 0 90px #000b;transition:transform 1.25s cubic-bezier(.2,.78,.18,1)}
.tg-curtain--left{left:0}.tg-curtain--right{right:0}
.tg-horse{position:absolute;z-index:4;bottom:-2vh;max-height:82vh;width:auto;pointer-events:none;filter:drop-shadow(0 18px 30px #000a);transition:transform 1.15s cubic-bezier(.18,.82,.18,1),opacity .9s}
.tg-horse--buran{left:1vw;animation:breathe1 4.8s ease-in-out infinite}
.tg-horse--vikhr{right:1vw;animation:breathe2 4.2s ease-in-out infinite}
@keyframes breathe1{50%{transform:translateY(-4px) rotate(-.2deg)}}@keyframes breathe2{50%{transform:translateY(-5px) rotate(.2deg)}}

.tg-scroll-wrap{position:absolute;z-index:6;left:50%;top:50%;width:min(620px,42vw);transform:translate(-50%,-50%)}
.tg-scroll{position:relative;padding:48px 54px 40px;text-align:center;border:1px solid #70431c73;border-radius:16px;background:linear-gradient(90deg,#dec79e,#f7e9cc 12%,#ead7b5 50%,#f4e5c5 88%,#d8bd8f);box-shadow:0 28px 80px #0009,inset 0 0 34px #6f3f1a1f}
.tg-scroll:before,.tg-scroll:after{content:"";position:absolute;left:-20px;right:-20px;height:24px;border:1px solid #70431c70;border-radius:50%;background:linear-gradient(#cba972,#f4e3c0 48%,#c1965d)}
.tg-scroll:before{top:-12px}.tg-scroll:after{bottom:-12px}
.tg-scroll__eyebrow{margin:0 0 8px;color:#8a5926;font:600 11px system-ui;letter-spacing:.2em;text-transform:uppercase}
.tg-scroll h2{margin:0 0 20px;font-size:clamp(34px,3vw,48px);line-height:1;color:#2c1713}
.tg-scroll p{max-width:470px;margin:0 auto 10px;color:#4c3527;font-size:16px;line-height:1.55}
.tg-scroll__actions{display:flex;justify-content:center;gap:10px;margin:24px 0 18px}
.tg-scroll__actions button,.tg-scroll__actions a{min-height:46px;padding:0 20px;display:inline-flex;align-items:center;justify-content:center;border-radius:10px;font:700 13px system-ui;text-decoration:none}
.tg-scroll__actions button{border:1px solid #764719;background:linear-gradient(#c88d38,#a86520);color:#1d100a}
.tg-scroll__actions a{border:1px solid #5b391c5c;background:#fff8;color:#5b3b25}
.tg-scroll small{display:block;color:#806142;font-size:12px;font-style:italic}

.tg-cat{position:absolute;z-index:10;left:50%;transform:translateX(-50%);pointer-events:none;opacity:0;object-fit:contain;filter:drop-shadow(0 12px 14px #0004)}
.tg-cat.is-active{opacity:1}
.tg-cat--idle{bottom:-118px;width:135px}
.tg-cat--ready{bottom:-103px;width:145px}
.tg-cat--jump{bottom:40px;width:138px}
.tg-cat--scroll{top:-112px;width:135px}
.tg-cat--look{top:-124px;width:145px}

.tg-age.is-land .tg-scroll{animation:land .5s ease}
@keyframes land{35%{transform:translateY(7px) rotate(-.6deg)}68%{transform:translateY(-2px) rotate(.25deg)}}
.tg-age.is-opening .tg-curtain--left{transform:translateX(-104%)}
.tg-age.is-opening .tg-curtain--right{transform:translateX(104%)}
.tg-age.is-opening .tg-horse--buran{transform:translateX(-120%)!important;opacity:.2}
.tg-age.is-opening .tg-horse--vikhr{transform:translateX(120%)!important;opacity:.2}
.tg-age.is-opening .tg-scroll-wrap{animation:exit .75s .15s ease forwards}
@keyframes exit{to{opacity:0;transform:translate(-50%,-46%) scale(.94)}}

@media(max-width:1000px){
  .tg-scroll-wrap{width:min(600px,60vw)}
  .tg-horse{max-height:68vh}
  .tg-horse--buran{left:-10vw}
  .tg-horse--vikhr{right:-10vw}
}
@media(max-width:700px){
  .tg-curtain{width:58%}
  .tg-horse{max-height:44vh;bottom:-2vh;opacity:.92}
  .tg-horse--buran{left:-22vw}
  .tg-horse--vikhr{right:-22vw}
  .tg-scroll-wrap{width:calc(100vw - 30px);top:46%}
  .tg-scroll{padding:42px 20px 30px}
  .tg-scroll h2{font-size:34px}
  .tg-scroll p{font-size:14px}
  .tg-scroll__actions{flex-direction:column}
  .tg-scroll__actions>*{width:100%}
  .tg-cat--idle{bottom:-94px;width:112px}
  .tg-cat--ready{bottom:-86px;width:118px}
  .tg-cat--jump{bottom:28px;width:112px}
  .tg-cat--scroll{top:-92px;width:110px}
  .tg-cat--look{top:-100px;width:116px}
}
@media(prefers-reduced-motion:reduce){
  .tg-horse{animation:none!important}
  .tg-curtain,.tg-horse,.tg-scroll-wrap{transition:none!important;animation:none!important}
}


/* ================= AGE GATE v2 ================= */
.tg-cat-line{display:block!important;margin-top:8px!important;opacity:0;transition:opacity .25s ease}
.tg-age.is-cat-look .tg-cat-line{opacity:1}

.tg-horse-wrap{position:absolute;z-index:4;bottom:-2vh;pointer-events:none;transition:transform 1.15s cubic-bezier(.18,.82,.18,1),opacity .9s}
.tg-horse-wrap .tg-horse{position:static!important;display:block;max-height:82vh}
.tg-horse-wrap--buran{left:1vw;animation:breathe1 4.8s ease-in-out infinite}
.tg-horse-wrap--vikhr{right:1vw;animation:breathe2 4.2s ease-in-out infinite}
.tg-horse-wrap span{position:absolute;left:50%;bottom:4vh;transform:translateX(-50%);color:#efc978b8;font:600 10px system-ui;letter-spacing:.18em;text-transform:uppercase;text-shadow:0 2px 8px #000}
.tg-age.is-opening .tg-horse-wrap--buran{transform:translateX(-125%)!important;opacity:.2}
.tg-age.is-opening .tg-horse-wrap--vikhr{transform:translateX(125%)!important;opacity:.2}

/* kitten lower so it doesn't cover copy */
.tg-cat--idle{bottom:-138px!important;width:138px!important}
.tg-cat--ready{bottom:-126px!important;width:146px!important}
.tg-cat--jump{bottom:-4px!important;width:140px!important}
.tg-cat--scroll{top:-84px!important;width:132px!important}
.tg-cat--look{top:-92px!important;width:142px!important}

/* phone is a separate composition */
@media(max-width:700px){
  .tg-age{min-height:100dvh}
  .tg-curtain{width:60%!important}
  .tg-scroll-wrap{top:42%!important;width:calc(100vw - 28px)!important;max-width:520px}
  .tg-scroll{padding:40px 18px 26px!important}
  .tg-scroll h2{font-size:30px!important;line-height:1.03!important;margin-bottom:16px!important}
  .tg-scroll p{font-size:13px!important;line-height:1.47!important}
  .tg-scroll__actions{flex-direction:column!important;gap:8px!important;margin:19px 0 6px!important}
  .tg-scroll__actions>*{width:100%!important}

  .tg-horse{display:none!important}
  .tg-horse-wrap .tg-horse{display:block!important;max-height:35dvh!important}
  .tg-horse-wrap{bottom:max(-1vh,env(safe-area-inset-bottom))!important}
  .tg-horse-wrap--buran{left:-18vw!important}
  .tg-horse-wrap--vikhr{right:-18vw!important}
  .tg-horse-wrap span{bottom:2.5vh;font-size:8px}

  .tg-cat--idle{bottom:-106px!important;width:105px!important}
  .tg-cat--ready{bottom:-96px!important;width:112px!important}
  .tg-cat--jump{bottom:-2px!important;width:104px!important}
  .tg-cat--scroll{top:-65px!important;width:98px!important}
  .tg-cat--look{top:-70px!important;width:104px!important}
  .tg-cat-line{font-size:10px!important;line-height:1.35!important}
}
@media(max-width:430px){
  .tg-scroll-wrap{top:41%!important;width:calc(100vw - 20px)!important}
  .tg-scroll{padding:35px 15px 22px!important}
  .tg-scroll h2{font-size:26px!important}
  .tg-scroll p{font-size:12px!important;line-height:1.42!important}
  .tg-horse-wrap .tg-horse{max-height:31dvh!important}
  .tg-horse-wrap--buran{left:-22vw!important}
  .tg-horse-wrap--vikhr{right:-22vw!important}
  .tg-cat--idle{bottom:-96px!important;width:96px!important}
  .tg-cat--ready{bottom:-88px!important;width:102px!important}
  .tg-cat--jump{bottom:-1px!important;width:96px!important}
  .tg-cat--scroll{top:-60px!important;width:91px!important}
  .tg-cat--look{top:-64px!important;width:96px!important}
}
@media(max-height:520px) and (orientation:landscape){
  .tg-scroll-wrap{top:50%!important;width:min(560px,58vw)!important}
  .tg-scroll{padding:28px 18px 20px!important}
  .tg-scroll h2{font-size:26px!important}
  .tg-scroll p{font-size:12px!important;line-height:1.35!important}
  .tg-scroll__actions{flex-direction:row!important}
  .tg-horse-wrap .tg-horse{max-height:72vh!important}
}

/* ================= AGE GATE v2.2 ================= */
.tg-cat{transition:opacity .16s ease,transform .22s ease!important}
.tg-cat--ready.is-active{transform:translateX(-50%) translateY(-5px) scale(1.035)!important}
#tgAgeConfirm{cursor:pointer}
#tgAgeConfirm:disabled{cursor:wait}
