:root{
  --pink:#FF2E7E; --cobalt:#1F3FD6; --saffron:#FFB400; --orange:#FF4B1F; --ink:#1B1033; --paper:#FFF4E0;
  --display:'Seymour One','Arial Black',sans-serif; --text:'Manrope',system-ui,sans-serif;
  --line:4px solid var(--ink); --shadow:8px 8px 0 var(--ink);
  --pad:clamp(1.2rem,6vw,6rem);
}
*{box-sizing:border-box;margin:0}
html{scroll-behavior:smooth;scroll-padding-top:70px}
body{font-family:var(--text);font-size:1.05rem;line-height:1.55;color:var(--ink);background:var(--paper);overflow-x:hidden}
img,svg{display:block}
a{color:inherit}
:focus-visible{outline:4px solid var(--cobalt);outline-offset:3px}
h1,h2,h3{font-family:var(--display);font-weight:400;line-height:1.02}

/* кнопки */
.btn{display:inline-block;font:800 1rem var(--text);text-decoration:none;color:var(--ink);padding:.85em 1.6em;border:var(--line);border-radius:999px;box-shadow:5px 5px 0 var(--ink);transition:transform .12s,box-shadow .12s;cursor:pointer}
.btn:hover{transform:translate(-2px,-2px);box-shadow:8px 8px 0 var(--ink)}
.btn:active{transform:translate(4px,4px);box-shadow:1px 1px 0 var(--ink)}
.btn-pink{background:var(--pink);color:#fff}.btn-saffron{background:var(--saffron)}.btn-ink{background:var(--ink);color:var(--paper);box-shadow:4px 4px 0 var(--pink);border-color:var(--ink)}
.btn-ink:hover{box-shadow:6px 6px 0 var(--pink)}
.btn-line{background:var(--paper)}
.btn-xl{font-size:1.25rem;padding:1em 2.2em}

/* навигация */
.nav{position:fixed;inset:0 0 auto 0;z-index:50;display:flex;align-items:center;gap:2rem;padding:.65rem var(--pad);background:var(--paper);border-bottom:var(--line)}
.logo{font:400 1.6rem var(--display);text-decoration:none;color:var(--ink);transform:rotate(-2deg)}
.menu{display:flex;gap:1.8rem;margin-left:auto;font-weight:800}
.menu a{text-decoration:none;padding:.2em 0;border-bottom:3px solid transparent}
.menu a:hover{border-bottom-color:var(--pink)}
.nav-cta{padding:.55em 1.2em}
.burger{display:none;background:none;border:0;margin-left:auto;padding:8px;cursor:pointer}
.burger i{display:block;width:28px;height:4px;background:var(--ink);margin:5px 0}

/* HERO */
.hero{position:relative;display:grid;grid-template-columns:1.05fr 1fr;gap:clamp(1rem,4vw,4rem);align-items:center;padding:8rem var(--pad) 5.5rem;
  background:radial-gradient(circle,rgba(255,46,126,.28) 2.6px,transparent 3px) 0 0/22px 22px,var(--paper);
  -webkit-mask:none}
.hero-text{position:relative;z-index:2}
h1{font-size:clamp(3rem,6.6vw,6.6rem);letter-spacing:-.01em;color:var(--ink)}
h1 span{display:block;white-space:nowrap;text-shadow:.045em .045em 0 var(--pink)}
h1 .l2{transform:rotate(-3deg) translateX(.6em);transform-origin:left;margin-top:.08em}
.lead{font:800 clamp(1.15rem,1.8vw,1.5rem)/1.3 var(--text);max-width:24ch;margin:2rem 0 2rem}
.hero-cta{display:flex;gap:1rem;flex-wrap:wrap}

.hero-art{position:relative;justify-self:center;width:min(100%,560px)}
.prints{display:grid;grid-template-columns:1fr 1fr;gap:0;padding:0;border:var(--line);background:var(--ink);box-shadow:12px 12px 0 var(--ink);cursor:pointer;transform:rotate(2deg);transition:transform .2s}
.prints:hover{transform:rotate(.5deg)}
.prints img{width:100%;height:auto;border:2px solid var(--ink)}
.prints-note{font:700 .85rem var(--text);margin-top:1.6rem;transform:rotate(2deg);text-align:left}
.burst{position:absolute;left:-14%;top:-8%;width:34%;aspect-ratio:1;display:grid;place-items:center;transform:rotate(-12deg);z-index:3}
.burst svg{position:absolute;inset:0;width:100%;height:100%;fill:var(--saffron);stroke:var(--ink);stroke-width:4;stroke-linejoin:round;filter:drop-shadow(5px 5px 0 var(--ink))}
.burst span{position:relative;font:400 clamp(1.05rem,2.2vw,1.8rem)/1 var(--display);text-align:center;color:var(--ink)}
.orange-deco{position:absolute;right:-9%;bottom:-8%;width:30%;aspect-ratio:1;z-index:3;filter:drop-shadow(5px 5px 0 var(--ink));transform:rotate(14deg)}

/* азулехо */
.tiles{height:56px;border-block:var(--line);background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='56' height='56'%3E%3Crect width='56' height='56' fill='%23FFF4E0'/%3E%3Crect x='2' y='2' width='52' height='52' fill='none' stroke='%231F3FD6' stroke-width='3'/%3E%3Cg fill='%231F3FD6'%3E%3Ccircle cx='28' cy='14' r='8'/%3E%3Ccircle cx='28' cy='42' r='8'/%3E%3Ccircle cx='14' cy='28' r='8'/%3E%3Ccircle cx='42' cy='28' r='8'/%3E%3C/g%3E%3Ccircle cx='28' cy='28' r='6' fill='%23FFB400'/%3E%3C/svg%3E") 0 0/56px 56px}

/* заголовки секций */
.sec-title{font-size:clamp(2.2rem,5vw,4.4rem);padding:0 var(--pad);margin-bottom:2.5rem;text-align:center;transform:rotate(-1.5deg);text-shadow:.05em .05em 0 var(--saffron)}

/* КУРСЫ: багажные бирки на верёвке */
.courses{padding:5rem 0 6rem;background:var(--paper);position:relative}
.rope{position:relative;height:0;margin:0 0 70px;border-top:6px solid var(--ink)}
.rope::before,.rope::after{content:"";position:absolute;top:-14px;width:22px;height:22px;border-radius:50%;background:var(--pink);border:var(--line)}
.rope::before{left:var(--pad)}.rope::after{right:var(--pad)}
.tags{list-style:none;padding:0 var(--pad);display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:2.2rem}
.tag{position:relative;display:flex;flex-direction:column;gap:.9rem;text-align:center;padding:3.2rem 1.4rem 1.4rem;border:var(--line);border-radius:26px 26px 12px 12px;box-shadow:var(--shadow);transform-origin:50% -70px;transition:transform .3s}
.tag::before{content:"";position:absolute;top:16px;left:50%;width:24px;height:24px;margin-left:-12px;border-radius:50%;background:var(--paper);border:var(--line)}
.string{position:absolute;left:50%;top:-70px;width:5px;height:96px;margin-left:-2.5px;background:var(--ink);z-index:2}
.tag:nth-child(1){transform:rotate(-2.5deg)}.tag:nth-child(2){transform:rotate(1.8deg);margin-top:1.4rem}.tag:nth-child(3){transform:rotate(-1.2deg)}.tag:nth-child(4){transform:rotate(2.2deg);margin-top:1.4rem}
.tag:hover{animation:swing .9s ease-out}
@keyframes swing{15%{transform:rotate(7deg)}35%{transform:rotate(-5deg)}55%{transform:rotate(3deg)}75%{transform:rotate(-1.5deg)}}
.code{font:400 clamp(2.4rem,4.4vw,3.6rem)/1 var(--display);letter-spacing:.02em;display:flex;flex-direction:column;align-items:center;gap:.3rem;-webkit-text-stroke:3px var(--ink);paint-order:stroke fill;color:var(--paper)}
.code small{font:800 .9rem var(--text);-webkit-text-stroke:0;color:inherit}
.word-row{display:flex;align-items:center;justify-content:center;gap:.6rem;padding:.55rem .8rem;background:var(--paper);color:var(--ink);border:var(--line);border-radius:10px}
.es{font:400 clamp(.95rem,1.35vw,1.2rem)/1.1 var(--display);white-space:nowrap}
.say{flex:none;width:38px;height:38px;border-radius:50%;border:3px solid var(--ink);background:var(--pink);cursor:pointer;display:grid;place-items:center;transition:transform .12s}
.say svg{width:16px;fill:var(--ink)}.say:hover{transform:scale(1.12)}.say.on{background:var(--saffron);transform:scale(.92)}
.tag h3{font:800 1.3rem/1.2 var(--text)}
.tag p{font-size:.98rem;flex:1}
.barcode{height:34px;margin-top:.4rem;background:repeating-linear-gradient(90deg,var(--ink) 0 3px,transparent 3px 5px,var(--ink) 5px 6px,transparent 6px 10px,var(--ink) 10px 14px,transparent 14px 16px)}
.t-cobalt{background:var(--cobalt);color:var(--paper)}.t-cobalt .code{color:var(--saffron)}.t-cobalt .barcode{background-color:transparent;filter:invert(1) sepia(1) saturate(0) brightness(2)}
.t-pink{background:var(--pink)}.t-saffron{background:var(--saffron)}.t-saffron .code{color:var(--pink)}.t-orange{background:var(--orange)}
.tag-plane{position:absolute;right:1rem;top:4.4rem;width:46px;height:46px;color:var(--ink);transform:rotate(60deg)}

/* самолётик-прогресс: летит вниз вместе с прокруткой */
.flight{position:fixed;right:10px;top:84px;bottom:24px;width:30px;z-index:40;pointer-events:none;border-left:3px dashed rgba(27,16,51,.55);margin-right:12px}
.flight-plane{position:absolute;left:-19px;top:0;width:36px;height:36px;color:var(--ink);transform:rotate(180deg);filter:drop-shadow(2px 0 0 #fff) drop-shadow(-2px 0 0 #fff) drop-shadow(0 2px 0 #fff) drop-shadow(0 -2px 0 #fff)}
/* ОБО МНЕ */
.about{position:relative;display:grid;grid-template-columns:minmax(260px,.9fr) minmax(0,1.1fr);gap:3rem var(--pad);padding:6rem var(--pad) 7rem;background:var(--cobalt);border-bottom:var(--line);align-items:center}
.about-print img{width:100%;height:auto;filter:drop-shadow(8px 8px 0 var(--ink))}
.about-text{background:var(--paper);border:var(--line);box-shadow:var(--shadow);padding:2.2rem 2.4rem;transform:rotate(1deg)}
.about-text h2{font-size:clamp(2rem,4vw,3.2rem);margin-bottom:1.1rem}
.about-text p{margin-bottom:1rem;max-width:56ch}
.about-text p:last-child{margin-bottom:0}

/* посадочный талон = слово дня */
.pass{grid-column:1 / -1;justify-self:center;display:grid;grid-template-columns:1fr auto;width:min(100%,640px);background:var(--saffron);border:var(--line);box-shadow:10px 10px 0 var(--ink);transform:rotate(-2deg);margin-top:1rem}
.pass-main{padding:1.4rem 1.8rem;text-align:center}
.pass-head{font:800 .95rem var(--text);padding-bottom:.5rem;border-bottom:3px dashed var(--ink);margin-bottom:.8rem}
.w-es{font:400 clamp(2.6rem,7vw,4.4rem)/1.05 var(--display);color:var(--pink);text-shadow:.04em .04em 0 var(--ink)}
.w-tr{font-weight:800;margin-top:.4rem}
.pass-stub{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1rem;padding:1rem 1.6rem;border-left:4px dashed var(--ink);background:var(--paper)}
.pass-plane{width:46px;height:46px;color:var(--cobalt);transform:rotate(90deg)}
.play{width:68px;height:68px;border-radius:50%;border:var(--line);background:var(--pink);cursor:pointer;display:grid;place-items:center;box-shadow:4px 4px 0 var(--ink);transition:transform .12s,box-shadow .12s}
.play svg{width:28px;fill:var(--ink)}.play:hover{transform:translate(-2px,-2px);box-shadow:6px 6px 0 var(--ink)}
.play:active,.play.on{transform:translate(3px,3px);box-shadow:1px 1px 0 var(--ink)}

/* КАК ПРОХОДЯТ */
.how{padding:5.5rem 0 6.5rem;background:var(--saffron);border-bottom:var(--line)}
.steps{list-style:none;padding:0 var(--pad);display:grid;grid-template-columns:repeat(3,1fr);gap:2rem;align-items:start}
.steps li{text-align:center;background:var(--paper);border:var(--line);box-shadow:var(--shadow);padding:4.2rem 1.6rem 1.6rem;position:relative}
.s1{transform:rotate(-1.5deg)}.s2{margin-top:2.6rem;transform:rotate(1deg)}.s3{margin-top:5.2rem;transform:rotate(-.8deg)}
.steps .n{position:absolute;top:-2.4rem;left:50%;margin-left:-1.6rem;font:400 5.5rem/1 var(--display);color:var(--pink);-webkit-text-stroke:4px var(--ink);paint-order:stroke fill}
.steps h3{font:800 1.35rem/1.2 var(--text);margin-bottom:.5rem}

/* ОТЗЫВЫ — комикс */
.reviews{padding:5.5rem 0 7rem;background:radial-gradient(circle,var(--paper) 3.2px,transparent 3.6px) 0 0/26px 26px,var(--pink);border-bottom:var(--line)}
.reviews .sec-title{text-shadow:.05em .05em 0 var(--ink);color:var(--paper)}
.bubbles{display:grid;grid-template-columns:repeat(3,1fr);gap:3rem 2.4rem;padding:0 var(--pad)}
.bub{position:relative;background:#fff;border:var(--line);border-radius:30px;padding:1.6rem 1.5rem 1.2rem;box-shadow:var(--shadow);margin-bottom:3.6rem}
.bub blockquote{text-align:center;font:700 1.15rem/1.4 var(--text)}
.bub figcaption{position:absolute;bottom:-3.9rem;white-space:nowrap;font:800 1rem var(--text);background:var(--saffron);border:3px solid var(--ink);padding:.15em .8em;border-radius:999px}
.bub figcaption em{font-weight:600;opacity:.7;font-size:.85em}
.bub::after{content:"";position:absolute;bottom:-23px;width:36px;height:36px;background:#fff;border-right:var(--line);border-bottom:var(--line);transform:rotate(45deg) skew(12deg,12deg)}
.b1{transform:rotate(-1.5deg)}.b1::after{left:18%}.b1 figcaption{left:calc(18% + 18px);transform:translateX(-50%)}
.b2{transform:rotate(1.2deg);margin-top:2rem}.b2::after{right:18%}.b2 figcaption{right:calc(18% + 18px);transform:translateX(50%)}
.b3{transform:rotate(-.6deg)}.b3::after{right:16%}.b3 figcaption{right:calc(16% + 18px);transform:translateX(50%)}

/* ЗАПИСЬ */
.cta{position:relative;text-align:center;padding:11rem var(--pad) 18rem;background:var(--ink);color:var(--paper);overflow:hidden}
.garland{position:absolute;inset:0 0 auto 0;height:96px;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='240' height='96'%3E%3Cpath d='M0 8Q120 48 240 8' fill='none' stroke='%23FFF4E0' stroke-width='3'/%3E%3Cg stroke='%231B1033' stroke-width='3'%3E%3Cpath d='M8 12L52 12L52 62L30 50L8 62Z' fill='%23FF2E7E' transform='translate(0 4)'/%3E%3Cpath d='M68 22L112 22L112 72L90 60L68 72Z' fill='%23FFB400' transform='translate(0 4)'/%3E%3Cpath d='M128 22L172 22L172 72L150 60L128 72Z' fill='%231F3FD6' transform='translate(0 4)'/%3E%3Cpath d='M188 12L232 12L232 62L210 50L188 62Z' fill='%23FF4B1F' transform='translate(0 4)'/%3E%3C/g%3E%3Cg fill='%231B1033'%3E%3Ccircle cx='30' cy='30' r='5'/%3E%3Ccircle cx='90' cy='40' r='5'/%3E%3Ccircle cx='150' cy='40' r='5'/%3E%3Ccircle cx='210' cy='30' r='5'/%3E%3Cpath d='M30 42l4 4-4 4-4-4zM90 52l4 4-4 4-4-4zM150 52l4 4-4 4-4-4zM210 42l4 4-4 4-4-4z'/%3E%3C/g%3E%3C/svg%3E") 0 0/240px 96px repeat-x}
.sun{position:absolute;left:50%;margin-left:calc(min(86vw,860px) / -2);bottom:calc(min(86vw,860px) / -1 + 230px);width:min(86vw,860px);aspect-ratio:1;border-radius:50%;background:repeating-conic-gradient(var(--saffron) 0 7deg,var(--orange) 7deg 14deg);opacity:.95;-webkit-mask:radial-gradient(circle,#000 0 99%,transparent 100%)}
.sun::after{content:"";position:absolute;inset:20%;border-radius:50%;background:var(--pink);border:var(--line);box-shadow:0 0 0 12px var(--ink)}
.trail{position:absolute;left:62%;top:44%;width:26%;height:auto;opacity:.9}
.cta-plane{position:absolute;left:88%;margin-left:-48px;top:calc(44% - 44px);width:96px;height:96px;color:var(--paper);transform:rotate(38deg);filter:drop-shadow(5px 5px 0 var(--pink))}
.cta-inner{position:relative;z-index:2;max-width:820px;margin-inline:auto}
.cta h2{font-size:clamp(2.8rem,6.6vw,6rem);color:var(--saffron);text-shadow:.05em .05em 0 var(--pink);transform:rotate(-3deg);margin-bottom:2.2rem}
.cta p{font:800 1.3rem/1.35 var(--text);max-width:30ch;margin:0 auto 2rem}

/* футер */
.foot{background:var(--paper)}.foot .tiles{border-top:0;border-bottom:var(--line);margin-top:0}
.foot-in{display:flex;align-items:center;justify-content:center;gap:2rem;flex-wrap:wrap;padding:1.6rem var(--pad)}
.soc{display:flex;gap:1.2rem}.soc a{cursor:pointer;transition:transform .15s,color .15s}.soc a:hover{transform:translateY(-3px) rotate(-6deg);color:var(--pink)}
.soc svg{width:32px;height:32px;fill:currentColor}
.motto{font:400 1.3rem var(--display)}

/* анимация загрузки: один момент — портреты «отпечатываются» */
@keyframes stamp{0%{opacity:0;transform:scale(1.35) rotate(var(--r,0deg))}60%{opacity:1}100%{opacity:1;transform:none}}
.prints img{animation:stamp .5s cubic-bezier(.2,.8,.3,1) both}
.prints img:nth-child(1){animation-delay:.15s;--r:-4deg}.prints img:nth-child(2){animation-delay:.4s;--r:3deg}
.prints img:nth-child(3){animation-delay:.65s;--r:3deg}.prints img:nth-child(4){animation-delay:.9s;--r:-4deg}
.burst{animation:pop .5s cubic-bezier(.2,1.6,.4,1) 1.35s both}
@keyframes pop{from{opacity:0;scale:.2}to{opacity:1;scale:1}}
.prints.recolor img{animation:flip .35s ease both}
.prints.recolor img:nth-child(2){animation-delay:.07s}.prints.recolor img:nth-child(3){animation-delay:.14s}.prints.recolor img:nth-child(4){animation-delay:.21s}
@keyframes flip{from{transform:scale(.9) rotate(-3deg);opacity:.3}to{transform:none;opacity:1}}

/* ТРЕНАЖЁРЫ */
.trainer{padding:5.5rem var(--pad) 6.5rem;background:var(--cobalt);border-bottom:var(--line);text-align:center}
.trainer .sec-title{padding:0;color:var(--paper);text-shadow:.05em .05em 0 var(--ink)}
.console{max-width:860px;margin:0 auto}
.tabs{display:flex;gap:.6rem;flex-wrap:wrap;justify-content:center;align-items:flex-end;position:relative;z-index:1}
.tabs [role=tab]{font:800 1rem var(--text);padding:.8em 1.4em;border:var(--line);border-bottom:0;border-radius:16px 16px 0 0;background:var(--saffron);color:var(--ink);cursor:pointer}
.tabs [role=tab]:hover{background:var(--pink);color:#fff}
.tabs [aria-selected=true]{background:var(--paper);color:var(--ink);margin-bottom:-4px;padding-bottom:calc(.8em + 4px)}
.panel{background:var(--paper);border:var(--line);box-shadow:var(--shadow);padding:2rem clamp(1rem,4vw,2.6rem) 2.4rem;min-height:400px}
.panel[hidden]{display:none}
.hint{font:800 1rem var(--text);margin-bottom:1rem;opacity:.8}
.dots{display:flex;gap:8px;justify-content:center;margin-bottom:1.2rem}
.dots i{width:14px;height:14px;border-radius:50%;border:3px solid var(--ink);background:var(--paper)}
.dots .done{background:var(--pink)}.dots .now{background:var(--saffron);transform:scale(1.3)}
.q-word{display:flex;align-items:center;justify-content:center;gap:1rem;margin-bottom:1.6rem}
.big-es{font:400 clamp(2.4rem,7vw,4rem)/1.05 var(--display);color:var(--pink);text-shadow:.04em .04em 0 var(--ink)}
.sentence{font-size:clamp(1.5rem,4.2vw,2.5rem);margin-bottom:1.6rem}
.say.big{width:62px;height:62px;border:var(--line);box-shadow:4px 4px 0 var(--ink)}.say.big svg{width:24px}
.opts{display:grid;grid-template-columns:1fr 1fr;gap:.9rem;margin:0 auto 1rem;max-width:640px}
.opts.three{grid-template-columns:repeat(3,1fr)}
.opt{font:800 1.15rem var(--text);padding:1rem .8rem;background:#fff;color:var(--ink);border:var(--line);border-radius:14px;box-shadow:4px 4px 0 var(--ink);cursor:pointer;transition:transform .12s,box-shadow .12s}
.opt:hover:not(:disabled){transform:translate(-2px,-2px);box-shadow:6px 6px 0 var(--ink)}
.opt:disabled{cursor:default}.opt.good{background:var(--saffron)}.opt.bad{background:var(--ink);color:var(--paper);text-decoration:line-through}
.feedback{font-weight:800;min-height:1.6em;margin-bottom:1rem}
.score{font:400 clamp(3.4rem,10vw,6rem)/1 var(--display);color:var(--pink);text-shadow:.04em .04em 0 var(--ink);margin-bottom:.8rem}
.verdict{font:800 1.25rem/1.4 var(--text);max-width:34ch;margin:0 auto 1rem}
.small{font-size:.9rem;opacity:.75;max-width:44ch;margin:0 auto 1.4rem}
.acts{display:flex;gap:1rem;justify-content:center;flex-wrap:wrap}
.chips{display:flex;gap:.6rem;justify-content:center;flex-wrap:wrap;margin-bottom:1.4rem}
.chip{font:800 .95rem var(--text);padding:.5em 1.2em;border:3px solid var(--ink);border-radius:999px;background:#fff;cursor:pointer}
.chip[aria-pressed=true]{background:var(--pink);color:#fff}
.phrases{display:grid;gap:1.1rem;text-align:left}
.phrase{display:grid;grid-template-columns:1fr auto;align-items:center;gap:1rem;padding:1rem 1.2rem;border:var(--line);background:#fff;box-shadow:5px 5px 0 var(--ink);border-radius:12px}
.p-es{font:800 1.2rem/1.3 var(--text)}.p-ru{opacity:.8}
/* МОБИЛЬНАЯ ВЕРСИЯ */
@media (max-width:900px){
  .menu{position:fixed;inset:60px 0 auto 0;flex-direction:column;gap:1rem;padding:1.4rem var(--pad);background:var(--paper);border-bottom:var(--line);transform:translateY(-140%);transition:transform .3s;z-index:-1;font-size:1.2rem}
  .menu.open{transform:none}
  .burger{display:block}.nav-cta{display:none}
  .hero{grid-template-columns:1fr;padding-top:6.5rem;padding-bottom:5rem;min-height:0}
  .hero-art{width:min(88%,420px);margin-top:1rem}
  .burst{left:-8%;width:36%}.orange-deco{right:-6%}
  .tags{grid-template-columns:repeat(2,minmax(0,1fr));gap:6rem 1.2rem}.tag:nth-child(n){margin-top:0}.tag:nth-child(even){margin-top:1.2rem}.flight{top:calc(var(--nav-h,73px) + 9px);bottom:auto;left:0;right:0;width:auto;height:0;margin:0;border-left:0;border-top:3px dashed var(--ink)}.flight-plane{left:0;top:-19.5px}
  .about{grid-template-columns:1fr}.about-print{max-width:380px;margin-inline:auto}
  .pass{grid-template-columns:1fr}.pass-stub{flex-direction:row;border-left:0;border-top:4px dashed var(--ink);justify-content:space-between}
  .steps{grid-template-columns:1fr;gap:3.2rem}.s2,.s3{margin-top:0}
  .bubbles{grid-template-columns:1fr}.b2{margin-top:0}
  .cta{padding-top:9rem}.cta-plane{left:auto;right:6%;margin-left:0;top:auto;bottom:17rem;width:60px;height:60px}.sun{opacity:1}
  .trail{display:none}
}
@media (max-width:560px){.tags{grid-template-columns:1fr}.tag:nth-child(even){margin-top:0}}
@media (max-width:560px){.opts,.opts.three{grid-template-columns:1fr}.tabs [role=tab]{font-size:.9rem;padding:.7em 1em}}
/* ДВИЖЕНИЕ ОТ ПРОКРУТКИ И КАСАНИЙ (работает и на телефоне; включается из main.js) */
.js .bub,.js .pass,.js .steps li,.js .cta-plane{opacity:0}
.js .bub.in{animation:bubPop .55s cubic-bezier(.2,1.5,.4,1) both}
@keyframes bubPop{from{opacity:0;transform:scale(.55) translateY(26px)}to{opacity:1}}
.js .pass.in{animation:ticket .75s cubic-bezier(.2,.9,.3,1) both}
@keyframes ticket{from{opacity:0;transform:translateX(-70px) rotate(-9deg)}to{opacity:1}}
.js .steps li.in{animation:stepIn .5s ease-out both}
@keyframes stepIn{from{opacity:0;transform:translateY(40px) scale(.92)}to{opacity:1}}
.steps li.in .n{animation:numStamp .45s cubic-bezier(.2,1.6,.4,1) .25s both}
@keyframes numStamp{from{transform:scale(2.3) rotate(-14deg);opacity:0}to{transform:none;opacity:1}}
.tag.in,.tag:active{animation:swing 1s ease-out}
.js .cta-plane.in{animation:takeoff 1.5s cubic-bezier(.3,.7,.3,1) .2s both}
@keyframes takeoff{from{opacity:0;transform:translate(-170px,100px) rotate(38deg) scale(.5)}to{opacity:1}}
/* ТЕЛЕФОНЫ: без горизонтального сдвига, воздух по краям, меньше наклона и теней */
html{overflow-x:clip}
@media (max-width:640px){
  :root{--shadow:5px 5px 0 var(--ink);--pad:1.5rem}
  body{overflow-x:clip}
  h1{font-size:2.6rem}
  h1 .l2{transform:rotate(-3deg) translateX(.2em)}
  .lead{margin:1.4rem 0 1.4rem}
  .hero-cta .btn{padding:.75em 1.3em}
  .hero-art{width:min(84%,380px);margin-inline:auto}
  .prints{box-shadow:7px 7px 0 var(--ink)}
  .prints-note{max-width:62%;margin-top:1.3rem;transform:none;font-size:.8rem}
  .burst{left:-10%;top:-9%;width:38%}
  .orange-deco{right:-9%;bottom:-6%;width:26%}
  .sec-title{font-size:2rem;transform:rotate(-1deg);margin-bottom:2rem}
  .tags{gap:6rem 1rem}
  .tag:nth-child(n){transform:rotate(-.8deg)}
  .tag:nth-child(even){transform:rotate(.8deg)}
  .tag{box-shadow:5px 5px 0 var(--ink)}
  .about-text{transform:none;padding:1.6rem 1.3rem}
  .pass{transform:rotate(-1deg);box-shadow:6px 6px 0 var(--ink)}
  .steps .s1,.steps .s2,.steps .s3{transform:none}
  .bubbles .b1,.bubbles .b2,.bubbles .b3{transform:none}
  .bub{padding:1.3rem 1.2rem 1.1rem}
  .tabs{display:grid;grid-template-columns:repeat(3,1fr);gap:.3rem;align-items:stretch}
  .tabs [role=tab]{display:flex;align-items:center;justify-content:center;text-align:center;font-size:.78rem;line-height:1.15;padding:.7em .3em;border-radius:12px 12px 0 0}
  .tabs [aria-selected=true]{margin-bottom:-5px;padding-bottom:calc(.7em + 5px)}
  .panel{padding:1.4rem 1rem 1.8rem;min-height:0}
  .cta h2{font-size:2.5rem}
  .sun{opacity:1}
  .foot-in{gap:1.2rem}
  .motto{font-size:1.1rem}
}@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{animation:none!important;transition:none!important}
  .bub,.pass,.steps li,.cta-plane{opacity:1!important}
}
















