:root{
  --bg:#F3ECF8; --bg-2:#E9DFF3; --surface:#FFFFFF;
  --ink:#241B4D; --ink-soft:#4A4270; --muted:#7A7394;
  --pink:#FF4F87; --pink-deep:#D93A6C;
  --yellow:#FFD23F; --teal:#24B5B0; --kraft:#D9A86C; --kraft-dark:#B9884E;
  --line:rgba(36,27,77,.14);
  --radius:22px; --radius-sm:12px;
  --display:'Unbounded','Arial Black','Helvetica Neue',Arial,sans-serif;
  --body:'Manrope','Segoe UI',Roboto,Helvetica,Arial,sans-serif;
  --shadow:0 20px 50px rgba(36,27,77,.16);
}

*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{
  font-family:var(--body); background:var(--bg); color:var(--ink);
  line-height:1.55; font-size:17px; overflow-x:hidden;
  -webkit-font-smoothing:antialiased;
}
img,svg{max-width:100%;display:block}
a{color:inherit}
h1,h2,h3{font-family:var(--display); line-height:1.1; letter-spacing:-.01em}
h2{font-size:clamp(1.7rem,4vw,2.9rem); font-weight:700}
h3{font-size:1.15rem; font-weight:700}

:focus-visible{outline:3px solid var(--pink); outline-offset:3px; border-radius:6px}

.wrap{width:min(1180px,calc(100% - 40px)); margin:0 auto}
section{padding:96px 0}
@media (max-width:720px){ section{padding:64px 0} }

/* buttons */
.btn{
  display:inline-flex; align-items:center; gap:10px; padding:16px 26px;
  border-radius:999px; font-weight:700; text-decoration:none; font-size:1rem;
  border:2px solid transparent; cursor:pointer; font-family:var(--body);
  transition:transform .15s ease, box-shadow .15s ease, background .15s;
}
.btn:active{transform:translateY(1px)}
.btn-primary{background:var(--pink); color:#fff; box-shadow:0 10px 24px rgba(255,79,135,.35)}
.btn-primary:hover{background:var(--pink-deep)}
.btn-ghost{border-color:var(--ink); color:var(--ink); background:transparent}
.btn-ghost:hover{background:#241B4D; color:#fff}
.btn-yellow{background:var(--yellow); color:#241B4D}
.btn-yellow:hover{background:#ffc400}

/* header */
header{
  position:sticky; top:0; z-index:50; backdrop-filter:blur(14px);
  background:color-mix(in srgb, var(--bg) 80%, transparent);
  border-bottom:1px solid var(--line);
}
.nav{display:flex; align-items:center; justify-content:space-between; height:72px; gap:20px}
.logo{font-family:var(--display); font-weight:900; font-size:1.15rem; text-decoration:none; display:flex; align-items:center; gap:10px}
.logo b{color:var(--pink)}
.logo-mark{width:34px;height:34px;border-radius:10px;background:var(--yellow);display:grid;place-items:center;transform:rotate(-8deg)}
.nav ul{display:flex; gap:26px; list-style:none}
.nav ul a{text-decoration:none; font-weight:600; font-size:.95rem; color:var(--ink-soft)}
.nav ul a:hover{color:var(--pink)}
.nav .phone{font-weight:700; text-decoration:none}
@media (max-width:900px){ .nav ul{display:none} }

/* ===== HERO ===== */
.hero{position:relative; min-height:calc(100vh - 72px); display:grid; grid-template-columns:minmax(0,1fr); align-items:center; padding:60px 0 40px; overflow:hidden}
.hero-bg{position:absolute; inset:0; pointer-events:none; z-index:0}
.blob{position:absolute; border-radius:50%; filter:blur(70px); opacity:.55}
.blob-1{width:520px;height:520px;background:var(--pink);top:-180px;right:-120px;opacity:.28}
.blob-2{width:420px;height:420px;background:var(--teal);bottom:-160px;left:-140px;opacity:.25}
.blob-3{width:320px;height:320px;background:var(--yellow);top:40%;left:38%;opacity:.25}
.hero-grid{position:relative; z-index:1; display:grid; grid-template-columns:1.05fr .95fr; gap:40px; align-items:center}
@media (max-width:900px){ .hero-grid{grid-template-columns:1fr; gap:24px} }

.hero h1{
  font-size:clamp(2.3rem,5.6vw,4.6rem); font-weight:900; line-height:1.02;
  max-width:12ch; margin:18px 0 22px;
}
.hero h1 span{display:block}
.hero-kicker{display:inline-flex;align-items:center;gap:10px;background:var(--surface);border:1px solid var(--line);padding:8px 14px;border-radius:999px;font-weight:600;font-size:.9rem;color:var(--ink-soft)}
.hero-kicker i{width:9px;height:9px;border-radius:50%;background:var(--teal);display:inline-block}
.hero p.lead{font-size:1.15rem; color:var(--ink-soft); max-width:46ch; margin-bottom:30px}
.hero-cta{display:flex; gap:14px; flex-wrap:wrap; margin-bottom:38px}
.hero-facts{display:flex; gap:28px; flex-wrap:wrap}
.fact{display:grid; gap:2px}
.fact b{font-family:var(--display); font-size:1.5rem; font-weight:700}
.fact span{font-size:.88rem; color:var(--muted)}

/* the parcel scene */
.scene{position:relative; height:560px; perspective:1200px}
@media (max-width:900px){ .scene{height:440px} }
@media (max-width:520px){ .scene{height:380px} }
.layer{position:absolute; inset:0; will-change:transform}
.box{
  position:absolute; left:50%; bottom:40px; width:min(360px,70%); aspect-ratio:1.25;
  transform:translateX(-50%); transform-style:preserve-3d;
}
.box-body{
  position:absolute; inset:0; border-radius:14px;
  background:linear-gradient(180deg,var(--kraft) 0%,var(--kraft-dark) 100%);
  box-shadow:var(--shadow), inset 0 -18px 0 rgba(0,0,0,.08);
}
.box-body::before{ /* tape */
  content:""; position:absolute; left:50%; top:0; bottom:0; width:16%;
  transform:translateX(-50%); background:rgba(255,255,255,.28);
}
.box-body::after{ /* stamp */
  content:"90"; position:absolute; right:18px; top:18px; width:64px; height:64px;
  border:3px solid #241B4D; border-radius:50%; font-family:var(--display); font-weight:900;
  display:grid; place-items:center; color:#241B4D; font-size:1.2rem; transform:rotate(-12deg);
  opacity:.75;
}
.box-label{
  position:absolute; left:20px; bottom:20px; background:#FFF8E8; color:#241B4D;
  padding:8px 12px; border-radius:6px; font-family:var(--display); font-size:.72rem; font-weight:700;
  box-shadow:0 2px 0 rgba(0,0,0,.15); transform:rotate(2deg);
}
.box-lid{
  position:absolute; left:-2%; right:-2%; top:-6%; height:22%; border-radius:12px;
  background:linear-gradient(180deg,#E8B97E,var(--kraft)); transform-origin:top center;
  transform:rotateX(0deg); box-shadow:0 12px 24px rgba(0,0,0,.12);
  animation:lid 1.1s cubic-bezier(.2,.9,.3,1.1) .35s forwards;
}
@keyframes lid{ to{ transform:rotateX(-135deg) } }

.candy{position:absolute; width:var(--w,80px); opacity:0; animation:pop .9s cubic-bezier(.2,.8,.2,1.15) var(--d,.9s) forwards}
.candy svg{width:100%;height:auto; filter:drop-shadow(0 10px 14px rgba(36,27,77,.22))}
.candy .float{animation:float var(--t,5s) ease-in-out infinite; animation-delay:calc(var(--d) + .9s)}
@keyframes pop{
  0%{opacity:0; transform:translate(var(--sx,0),var(--sy,120px)) scale(.4) rotate(var(--r0,0deg))}
  60%{opacity:1}
  100%{opacity:1; transform:translate(0,0) scale(1) rotate(var(--r,0deg))}
}
@keyframes float{ 0%,100%{transform:translateY(0) rotate(0)} 50%{transform:translateY(-14px) rotate(4deg)} }

.c1{left:6%;top:12%;--w:120px;--d:1.0s;--r:-12deg;--r0:40deg;--sx:180px;--t:5.5s}
.c2{right:2%;top:6%;--w:96px;--d:1.15s;--r:18deg;--r0:-30deg;--sx:-160px;--t:6s}
.c3{left:22%;top:38%;--w:72px;--d:1.3s;--r:8deg;--sx:90px;--sy:90px;--t:4.5s}
.c4{right:14%;top:34%;--w:110px;--d:1.2s;--r:-6deg;--sx:-90px;--t:6.5s}
.c5{left:2%;top:58%;--w:88px;--d:1.4s;--r:22deg;--sx:150px;--t:5s}
.c6{right:0;top:58%;--w:82px;--d:1.35s;--r:-20deg;--sx:-120px;--t:5.8s}
.c7{left:44%;top:0;--w:70px;--d:1.5s;--r:12deg;--sy:200px;--t:4.8s}
@media (max-width:520px){ .candy{--w:calc(var(--w-mobile,64px))} .c1{--w:84px}.c2{--w:68px}.c3{--w:52px}.c4{--w:76px}.c5{--w:62px}.c6{--w:58px}.c7{--w:50px} }

.scroll-hint{position:absolute; left:0; right:0; bottom:18px; text-align:center; font-size:.8rem; color:var(--muted); z-index:2}

/* ===== ticker ===== */
.ticker{background:#241B4D; color:#F3ECF8; padding:16px 0; overflow:hidden; border-top:4px solid var(--yellow); border-bottom:4px solid var(--pink)}

.ticker-track{display:flex; gap:0; width:max-content; animation:ticker 40s linear infinite}
.ticker-track span{font-family:var(--display); font-weight:700; font-size:1.05rem; padding:0 22px; white-space:nowrap; display:flex; align-items:center; gap:22px}
.ticker-track span::after{content:""; width:10px; height:10px; border-radius:50%; background:var(--yellow)}
@keyframes ticker{ to{ transform:translateX(-50%) } }

/* ===== directions ===== */
.two{display:grid; grid-template-columns:1fr 1fr; gap:22px; margin-top:40px}
@media (max-width:820px){ .two{grid-template-columns:1fr} }
.dir{border-radius:var(--radius); padding:44px 40px; position:relative; overflow:hidden; min-height:520px; display:flex; flex-direction:column}
.dir h3{font-size:clamp(1.5rem,2.6vw,2.1rem); margin:6px 0 14px}
.dir p{margin-bottom:22px}
.dir ul{list-style:none; margin:auto 0 28px; display:grid; gap:10px}
.dir li{display:flex; gap:12px; align-items:flex-start; font-weight:500}
.dir li::before{content:""; flex:none; width:22px; height:22px; border-radius:50%; margin-top:2px; background:currentColor; opacity:.9;
  -webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Ccircle cx='12' cy='12' r='11' fill='black'/%3E%3Cpath d='M7 12.5l3.2 3L17 9' stroke='white' stroke-width='2.5' fill='none' stroke-linecap='round'/%3E%3C/svg%3E") center/contain no-repeat;
  mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Ccircle cx='12' cy='12' r='11' fill='black'/%3E%3Cpath d='M7 12.5l3.2 3L17 9' stroke='white' stroke-width='2.5' fill='none' stroke-linecap='round'/%3E%3C/svg%3E") center/contain no-repeat}
.dir .who{font-size:.9rem; font-weight:700; opacity:.75}
.dir .price{font-family:var(--display); font-size:1.3rem; font-weight:700; margin-bottom:18px}
.dir .price small{font-family:var(--body); font-weight:500; font-size:.85rem; opacity:.75}
.dir-kids{background:var(--yellow); color:#241B4D}
.dir-corp{background:#241B4D; color:#F3ECF8}
.dir-corp .btn-ghost{border-color:#F3ECF8; color:#F3ECF8}
.dir-corp .btn-ghost:hover{background:#F3ECF8; color:#241B4D}
.dir .deco{position:absolute; right:-40px; bottom:-40px; width:220px; opacity:.16; pointer-events:none; transform:rotate(-15deg)}

/* ===== steps ===== */
.steps{display:grid; grid-template-columns:repeat(4,1fr); gap:18px; margin-top:44px; counter-reset:step}
@media (max-width:900px){ .steps{grid-template-columns:repeat(2,1fr)} }
@media (max-width:520px){ .steps{grid-template-columns:1fr} }
.step{background:var(--surface); border:1px solid var(--line); border-radius:var(--radius-sm); padding:26px 24px 28px; position:relative}
.step::before{counter-increment:step; content:counter(step); font-family:var(--display); font-weight:900; font-size:2rem; color:var(--pink); line-height:1; display:block; margin-bottom:14px}
.step h3{margin-bottom:8px}
.step p{font-size:.95rem; color:var(--ink-soft)}
.step time{display:inline-block; margin-top:14px; font-size:.82rem; font-weight:700; color:var(--teal)}

/* ===== sets ===== */
.sets-head{display:flex; justify-content:space-between; align-items:flex-end; gap:20px; flex-wrap:wrap; margin-bottom:36px}
.sets{display:grid; grid-template-columns:repeat(3,1fr); gap:20px}
@media (max-width:900px){ .sets{grid-template-columns:1fr 1fr} }
@media (max-width:560px){ .sets{grid-template-columns:1fr} }
.set{background:var(--surface); border-radius:var(--radius); overflow:hidden; border:1px solid var(--line); display:flex; flex-direction:column}
.set-art{height:200px; display:grid; place-items:center; position:relative; overflow:hidden}
.set-art svg{width:120px; transition:transform .4s cubic-bezier(.2,.8,.2,1.3)}
.set:hover .set-art svg{transform:scale(1.12) rotate(-6deg)}
.set-tag{position:absolute; top:14px; left:14px; background:#241B4D; color:#F3ECF8; font-size:.75rem; font-weight:700; padding:6px 10px; border-radius:6px}
.set-body{padding:22px 22px 24px; display:flex; flex-direction:column; gap:10px; flex:1}
.set-body p{font-size:.93rem; color:var(--ink-soft)}
.set-meta{display:flex; justify-content:space-between; align-items:center; margin-top:auto; padding-top:14px; border-top:1px solid var(--line)}
.set-meta b{font-family:var(--display); font-size:1.05rem}
.set-meta a{font-weight:700; font-size:.9rem; color:var(--pink); text-decoration:none}

/* ===== story ===== */
.story{background:var(--bg-2); position:relative; overflow:hidden}
.story .wrap{position:relative; z-index:1}
.story-intro{display:grid; grid-template-columns:1fr 1fr; gap:40px; align-items:start; margin-bottom:60px}
@media (max-width:820px){ .story-intro{grid-template-columns:1fr} }
.story-intro p{font-size:1.1rem; color:var(--ink-soft)}
.timeline{display:grid; gap:0}
.chapter{display:grid; grid-template-columns:140px 1fr; gap:30px; padding:34px 0; border-top:1px solid var(--line)}
@media (max-width:640px){ .chapter{grid-template-columns:1fr; gap:10px; padding:26px 0} }
.chapter .year{font-family:var(--display); font-weight:900; font-size:clamp(1.6rem,3vw,2.4rem); color:var(--pink); line-height:1; position:sticky; top:96px; align-self:start}
.chapter h3{margin-bottom:8px; font-size:1.25rem}
.chapter p{color:var(--ink-soft); max-width:58ch}
.parallax-word{
  position:absolute; right:-2%; top:8%; font-family:var(--display); font-weight:900;
  font-size:clamp(6rem,22vw,20rem); color:var(--ink); opacity:.05; line-height:1; pointer-events:none; user-select:none; white-space:nowrap;
}

/* ===== calc ===== */
.calc{display:grid; grid-template-columns:1fr 1fr; gap:24px; background:#241B4D; color:#F3ECF8; border-radius:var(--radius); padding:48px; overflow:hidden; position:relative}
@media (max-width:820px){ .calc{grid-template-columns:1fr; padding:32px 24px} }
.calc h2{color:#fff}
.calc p{color:#D7CDE6}
.calc .field{margin-top:22px}.calc label{color:#F3ECF8}
.calc label{display:block; font-weight:700; margin-bottom:10px; font-size:.95rem}
.seg{display:flex; background:rgba(255,255,255,.08); border-radius:999px; padding:4px; gap:4px; width:fit-content}
.seg button{border:0; background:transparent; color:#F3ECF8; padding:10px 18px; border-radius:999px; font-weight:700; cursor:pointer; font-family:var(--body); font-size:.95rem}
.seg button[aria-pressed="true"]{background:var(--yellow); color:#241B4D}
input[type=range]{width:100%; accent-color:var(--pink); margin:6px 0}
.range-val{font-family:var(--display); font-weight:700; font-size:1.4rem}
select{width:100%; padding:14px 16px; border-radius:12px; border:1px solid rgba(255,255,255,.2); background:rgba(255,255,255,.08); color:#F3ECF8; font-family:var(--body); font-size:1rem}
select option{color:#241B4D}
.result{background:rgba(255,255,255,.07); border:1px solid rgba(255,255,255,.14); border-radius:18px; padding:32px; display:flex; flex-direction:column; justify-content:center; gap:10px}
.result .sum{font-family:var(--display); font-weight:900; font-size:clamp(2rem,4vw,3rem); color:var(--yellow); line-height:1}
.result .sub{color:#D7CDE6; font-size:.95rem}
.result .btn{margin-top:18px; align-self:flex-start}
.result small{color:#A79FC0; font-size:.8rem}

/* ===== trust ===== */
.trust{display:grid; grid-template-columns:repeat(3,1fr); gap:20px}
@media (max-width:820px){ .trust{grid-template-columns:1fr} }
.trust div{padding:28px; border-left:4px solid var(--teal); background:var(--surface); border-radius:0 var(--radius-sm) var(--radius-sm) 0}
.trust h3{margin-bottom:8px}
.trust p{font-size:.95rem; color:var(--ink-soft)}

/* ===== footer ===== */
footer{background:var(--bg-2); border-top:1px solid var(--line); padding:48px 0 32px; font-size:.92rem; color:var(--ink-soft)}
.foot{display:grid; grid-template-columns:2fr 1fr 1fr 1fr; gap:30px; margin-bottom:34px}
@media (max-width:820px){ .foot{grid-template-columns:1fr 1fr} }
@media (max-width:520px){ .foot{grid-template-columns:1fr} }
.foot ul{list-style:none; display:grid; gap:8px}
.foot a{text-decoration:none}
.foot a:hover{color:var(--pink)}
.foot h4{font-family:var(--display); font-size:.85rem; margin-bottom:14px; color:var(--ink)}
.copy{display:flex; justify-content:space-between; gap:20px; flex-wrap:wrap; border-top:1px solid var(--line); padding-top:22px; font-size:.82rem; color:var(--muted)}

/* reveal on scroll — one orchestrated reveal per section */
.reveal{opacity:0; transform:translateY(26px); transition:opacity .7s ease, transform .7s cubic-bezier(.2,.8,.2,1)}
.reveal.in{opacity:1; transform:none}

@media (prefers-reduced-motion: reduce){
  *{animation-duration:.01ms !important; animation-iteration-count:1 !important; transition-duration:.01ms !important}
  .candy{opacity:1; transform:none}
  .box-lid{transform:rotateX(-135deg)}
  .reveal{opacity:1; transform:none}
  html{scroll-behavior:auto}
}

/* ===== общие для внутренних страниц ===== */
.skip{position:absolute;left:-999px;top:0;background:#241B4D;color:#fff;padding:8px 12px;z-index:100}.skip:focus{left:8px;top:8px}
.pt0{padding-top:0}.pb0{padding-bottom:0}.mb36{margin-bottom:36px}.mt60{margin-top:60px}.center{text-align:center}
.wrap.narrow{width:min(1180px,calc(100% - 40px))}
.site-header{position:sticky}
.burger{display:none;width:44px;height:44px;border:0;background:transparent;cursor:pointer;position:relative}
.burger span,.burger span::before,.burger span::after{content:"";position:absolute;left:10px;width:24px;height:3px;border-radius:2px;background:var(--ink);transition:.2s}
.burger span{top:20px}.burger span::before{top:-8px;left:0}.burger span::after{top:8px;left:0}
.burger[aria-expanded="true"] span{background:transparent}.burger[aria-expanded="true"] span::before{transform:translateY(8px) rotate(45deg)}.burger[aria-expanded="true"] span::after{transform:translateY(-8px) rotate(-45deg)}
@media (max-width:900px){
  .burger{display:block}
  .nav ul{display:none;position:absolute;left:0;right:0;top:72px;background:var(--bg);border-bottom:1px solid var(--line);flex-direction:column;gap:0;padding:10px 20px 20px}
  .nav ul.open{display:flex}
  .nav ul a{display:block;padding:12px 0;font-size:1.05rem}
  .nav .phone{font-size:.9rem}
}
.page-head{padding:44px 0 36px}.page-head h1{font-size:clamp(1.9rem,4.5vw,3.2rem);font-weight:800;margin:10px 0 14px}
.page-head .lead{font-size:1.1rem;color:var(--ink-soft);max-width:70ch}
.crumbs ol{list-style:none;display:flex;flex-wrap:wrap;gap:6px;font-size:.85rem;color:var(--muted)}
.crumbs li+li::before{content:"/";margin-right:6px;opacity:.5}.crumbs a{text-decoration:none}.crumbs a:hover{color:var(--pink)}
.chips{display:flex;flex-wrap:wrap;gap:8px;margin-top:18px}
.chip{padding:8px 16px;border-radius:999px;border:1.5px solid var(--line);text-decoration:none;font-weight:600;font-size:.9rem}
.chip.on,.chip:hover{background:#241B4D;color:#fff;border-color:#241B4D}
.set-art img{width:100%;height:100%;object-fit:cover;transition:transform .4s cubic-bezier(.2,.8,.2,1.2)}
.set:hover .set-art img{transform:scale(1.06)}
.set-art{text-decoration:none;height:auto;aspect-ratio:3/4}
.no-photo{color:var(--muted);font-weight:600;font-size:.9rem}
.set-body h3 a{text-decoration:none}
.set-tag.static{position:static;display:inline-block;margin-bottom:12px}
button.link{background:none;border:0;color:var(--pink);font-weight:700;cursor:pointer;font-family:var(--body);font-size:.9rem;padding:0}
.empty{color:var(--muted);padding:40px 0}
.prose{font-size:1.05rem}.prose h2{margin:40px 0 14px;font-size:clamp(1.4rem,3vw,2rem)}.prose h3{margin:28px 0 10px}.prose p,.prose ul,.prose ol{margin-bottom:16px}.prose ul,.prose ol{padding-left:24px}.prose img{border-radius:var(--radius-sm);margin:20px 0}.prose a{color:var(--pink)}
.prose table{border-collapse:collapse;width:100%;margin:20px 0;font-size:.95rem}.prose td,.prose th{border:1px solid var(--line);padding:10px 12px;text-align:left}
.cover{width:100%;max-height:420px;object-fit:cover;border-radius:var(--radius);margin-bottom:20px}
/* product */
.product{padding-top:24px}
.product-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:48px;align-items:start}
@media (max-width:820px){.product-grid{grid-template-columns:1fr;gap:28px}}
.gallery-main{aspect-ratio:3/4;background:var(--surface);border-radius:var(--radius);overflow:hidden;display:grid;place-items:center;border:1px solid var(--line)}
.gallery-main img{width:100%;height:100%;object-fit:cover}
.gallery-thumbs{display:flex;gap:10px;margin-top:12px;flex-wrap:wrap}
.gallery-thumbs button{width:66px;height:88px;border-radius:12px;overflow:hidden;border:2px solid transparent;padding:0;background:var(--surface);cursor:pointer}
.gallery-thumbs button.on{border-color:var(--pink)}.gallery-thumbs img{width:100%;height:100%;object-fit:cover}
.product-info h1{font-size:clamp(1.7rem,3.6vw,2.6rem);font-weight:800;margin:0 0 14px}
.product-info .lead{font-size:1.1rem;color:var(--ink-soft);margin-bottom:22px}
.product-price{display:flex;align-items:baseline;gap:14px;margin-bottom:24px}.product-price b{font-family:var(--display);font-size:1.7rem}.product-price span{color:var(--muted);font-size:.9rem}
.product-info h3{margin:30px 0 12px}
.comp{list-style:none;display:grid;grid-template-columns:1fr 1fr;gap:8px 20px}.comp li{padding-left:22px;position:relative}.comp li::before{content:"";position:absolute;left:0;top:9px;width:10px;height:10px;border-radius:50%;background:var(--yellow)}
@media (max-width:520px){.comp{grid-template-columns:1fr}}
.product-perks{list-style:none;margin-top:28px;display:grid;gap:8px;color:var(--ink-soft);font-size:.95rem}.product-perks li::before{content:"✓ ";color:var(--teal);font-weight:800}
/* cities */
.city-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}
@media (max-width:900px){.city-grid{grid-template-columns:repeat(2,1fr)}}
.city-card{display:grid;gap:4px;padding:20px 22px;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-sm);text-decoration:none;transition:border-color .15s,transform .15s}
.city-card:hover{border-color:var(--pink);transform:translateY(-2px)}.city-card b{font-family:var(--display);font-size:1.05rem}.city-card span{font-size:.85rem;color:var(--muted)}
.city-facts{display:flex;gap:28px;flex-wrap:wrap;margin-top:24px}.city-facts div{display:grid;gap:2px}.city-facts b{font-family:var(--display);font-size:1.35rem}.city-facts span{font-size:.85rem;color:var(--muted)}
.city-links{font-size:.9rem;color:var(--muted);line-height:1.9}.city-links a{text-decoration:none;color:var(--ink-soft)}.city-links a:hover{color:var(--pink)}
.foot-cities{border-top:1px solid var(--line);padding:22px 0 8px;font-size:.85rem;line-height:1.9}.foot-cities h4{font-family:var(--display);font-size:.8rem;margin-bottom:6px;color:var(--ink)}.foot-cities a{text-decoration:none;color:var(--muted)}.foot-cities a:hover{color:var(--pink)}
.foot-mp{margin-top:12px;display:flex;gap:16px}.foot-mp a{font-weight:700;text-decoration:none;color:var(--pink)}
/* contacts */
.contacts-grid{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:start}@media (max-width:820px){.contacts-grid{grid-template-columns:1fr}}
.contacts{display:grid;grid-template-columns:auto 1fr;gap:12px 24px}.contacts dt{color:var(--muted);font-size:.9rem;padding-top:2px}.contacts dd{font-weight:600}.contacts dd a{text-decoration:none}.contacts dd a:hover{color:var(--pink)}
.req-table{border-collapse:collapse;width:100%;font-size:.95rem;margin-top:16px}.req-table td{padding:10px 12px;border-bottom:1px solid var(--line);vertical-align:top}.req-table td:first-child{color:var(--muted);width:40%}
/* faq */
.faq-item{border-top:1px solid var(--line);padding:6px 0}.faq-item:last-child{border-bottom:1px solid var(--line)}
.faq-item summary{cursor:pointer;font-weight:700;padding:14px 0;list-style:none;display:flex;justify-content:space-between;gap:16px;font-size:1.05rem}
.faq-item summary::after{content:"+";font-family:var(--display);color:var(--pink);font-size:1.3rem;flex:none}.faq-item[open] summary::after{content:"–"}
.faq-item p{padding:0 0 16px;color:var(--ink-soft)}
/* forms */
.form-block{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:40px}
@media (max-width:600px){.form-block{padding:26px 20px}}
.form-block h2{margin-bottom:8px;font-size:clamp(1.4rem,3vw,2rem)}.form-block>p{color:var(--ink-soft);margin-bottom:8px}
.req-form{display:grid;gap:14px;margin-top:20px}.row2{display:grid;grid-template-columns:1fr 1fr;gap:14px}@media (max-width:560px){.row2{grid-template-columns:1fr}}
.req-form label{display:grid;gap:6px;font-size:.9rem;font-weight:600;color:var(--ink-soft)}
.req-form input,.req-form select,.req-form textarea{font:inherit;font-size:1rem;padding:13px 14px;border-radius:12px;border:1.5px solid var(--line);background:var(--bg);color:var(--ink);width:100%}
.req-form input:focus,.req-form select:focus,.req-form textarea:focus{outline:none;border-color:var(--pink)}
.req-form .hp{position:absolute;left:-9999px}.req-form .btn{justify-self:start}
.consent{font-size:.8rem;color:var(--muted)}.consent a{color:inherit}
.form-msg{padding:14px 16px;border-radius:12px;font-weight:600}.form-msg.ok{background:#DDF5E9;color:#0F5E3A}.form-msg.err{background:#FDE2EA;color:#8E1B44}
.modal{position:fixed;inset:0;z-index:200;background:rgba(36,27,77,.55);display:grid;place-items:center;padding:20px;overflow:auto}
.modal-box{background:var(--surface);color:var(--ink);border-radius:var(--radius);padding:36px;width:min(640px,100%);position:relative;box-shadow:var(--shadow)}
.modal-box h3{font-size:1.5rem;margin-bottom:6px}.modal-sub{color:var(--ink-soft);font-size:.95rem}
.modal-close{position:absolute;right:14px;top:10px;border:0;background:none;font-size:2rem;line-height:1;cursor:pointer;color:var(--muted)}
body.no-scroll{overflow:hidden}
.candy img{width:100%;height:auto;filter:drop-shadow(0 10px 14px rgba(36,27,77,.22))}
.box.box-img{aspect-ratio:auto}.box.box-img img{width:100%;height:auto;filter:drop-shadow(0 20px 30px rgba(36,27,77,.25))}
.dir .deco{width:220px;height:auto}
.modal[hidden]{display:none}
.nav ul a{white-space:nowrap}
@media (max-width:1180px){ .nav ul{gap:18px} .nav ul a{font-size:.88rem} }
@media (min-width:901px){ .mobile-only{display:none} }
.prose h2,.prose h3,.form-block h2{max-width:none}
.nav .phone{white-space:nowrap} @media (max-width:520px){.nav .phone{font-size:.8rem}.logo{font-size:1rem}}
/* ===== city extras ===== */
.mt24{margin-top:24px}
.delivery-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.occ-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:18px}
@media (max-width:900px){.delivery-grid,.occ-grid{grid-template-columns:1fr}}
.dcard,.occ{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-sm);padding:26px 24px}
.dcard h3,.occ h3{margin-bottom:10px}.dcard p,.occ p{font-size:.95rem;color:var(--ink-soft)}
.occ{border-left:4px solid var(--yellow)}
.cta-band{display:flex;justify-content:space-between;align-items:center;gap:24px;flex-wrap:wrap;background:#241B4D;color:#F3ECF8;border-radius:var(--radius);padding:36px 40px}
.cta-band h2{color:#fff;margin-bottom:6px;font-size:clamp(1.4rem,3vw,2rem)}.cta-band p{color:#D7CDE6;margin:0}
/* ===== certificates ===== */
.certs{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}@media (max-width:900px){.certs{grid-template-columns:repeat(2,1fr)}}
.cert{display:grid;gap:6px;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-sm);padding:14px;text-decoration:none;transition:border-color .15s}
.cert:hover{border-color:var(--pink)}.cert img{width:100%;aspect-ratio:3/4;object-fit:cover;border-radius:8px}
.cert-pdf{display:grid;place-items:center;aspect-ratio:3/4;border-radius:8px;background:#FDE2EA;color:#C51F4D;font-family:var(--display);font-weight:900;font-size:1.4rem}
.cert b{font-size:.92rem}.cert span{font-size:.8rem;color:var(--pink);font-weight:700}
/* ===== configurator ===== */
.cfg{display:grid;grid-template-columns:1fr 360px;gap:28px;align-items:start}
@media (max-width:960px){.cfg{grid-template-columns:1fr}.cfg-side{position:static}}
.cfg-step{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:28px;margin-bottom:18px}
.cfg-step h3{display:flex;align-items:center;gap:12px;margin-bottom:18px;font-size:1.2rem}
.cfg-step h3 span{width:32px;height:32px;border-radius:50%;background:var(--pink);color:#fff;display:grid;place-items:center;font-size:.95rem;flex:none}
.cfg-step h3 small{font-family:var(--body);font-weight:600;color:var(--muted);font-size:.85rem;margin-left:auto}
.cfg-boxes{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}@media (max-width:640px){.cfg-boxes{grid-template-columns:1fr}}
.cfg-box input{position:absolute;opacity:0}
.cfg-box-in{display:grid;gap:4px;padding:18px;border:2px solid var(--line);border-radius:var(--radius-sm);cursor:pointer;height:100%;transition:border-color .15s}
.cfg-box input:checked+.cfg-box-in{border-color:var(--pink);background:#FFF3F7}
.cfg-box-in img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:8px;margin-bottom:6px}
.cfg-box-in b{font-family:var(--display);font-size:.95rem}.cfg-box-in small{color:var(--ink-soft);font-size:.85rem}.cfg-box-in em{font-style:normal;font-weight:700;font-size:.85rem;color:var(--pink);margin-top:6px}
.cfg-tabs{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:14px}
.cfg-tabs button{border:1.5px solid var(--line);background:var(--bg);border-radius:999px;padding:8px 16px;font:inherit;font-weight:700;font-size:.9rem;cursor:pointer;color:var(--ink)}
.cfg-tabs button.on{background:#241B4D;color:#fff;border-color:#241B4D}
.cfg-items{display:grid;gap:8px}
.cfg-item{display:grid;grid-template-columns:56px 1fr auto auto;gap:14px;align-items:center;padding:10px 12px;border:1.5px solid var(--line);border-radius:12px;transition:border-color .15s,background .15s}
.cfg-item.picked{border-color:var(--teal);background:#EEFAF9}
.cfg-item img,.cfg-ph{width:56px;height:56px;border-radius:10px;object-fit:cover;background:linear-gradient(135deg,#FFD23F,#FF4F87);opacity:.85}
.cfg-item-t{display:grid}.cfg-item-t b{font-size:.95rem}.cfg-item-t small{color:var(--muted);font-size:.8rem}
.cfg-item-p{font-weight:700;font-size:.9rem;white-space:nowrap}
.cfg-qty{display:flex;align-items:center;gap:6px}.cfg-qty button{width:32px;height:32px;border-radius:50%;border:1.5px solid var(--line);background:var(--bg);font:inherit;font-size:1.1rem;cursor:pointer;color:var(--ink);line-height:1}
.cfg-qty button:hover{border-color:var(--pink);color:var(--pink)}.cfg-qty output{min-width:22px;text-align:center;font-weight:700}
@media (max-width:560px){.cfg-item{grid-template-columns:44px 1fr auto}.cfg-item-p{display:none}.cfg-item img,.cfg-ph{width:44px;height:44px}}
.cfg-brand{display:grid;gap:10px}.cfg-brand label{display:flex;gap:10px;align-items:center;font-weight:600;cursor:pointer}.cfg-brand em{font-style:normal;color:var(--pink);font-weight:700;font-size:.9rem}
.cfg-qty-row{display:flex;align-items:center;gap:14px}.cfg-qty-row input[type=range]{flex:1}.cfg-qty-row input[type=number]{width:100px;padding:10px;border:1.5px solid var(--line);border-radius:10px;font:inherit;font-weight:700}
.cfg-side{position:sticky;top:88px}
.cfg-summary{background:#241B4D;color:#F3ECF8;border-radius:var(--radius);padding:28px;display:grid;gap:10px}
.cfg-sum-row{display:flex;justify-content:space-between;font-size:.92rem;color:#D7CDE6}.cfg-sum-row b{color:#fff}
.cfg-sum-total{display:flex;justify-content:space-between;border-top:1px solid rgba(255,255,255,.15);padding-top:12px;font-weight:700}
.cfg-sum-grand{display:flex;justify-content:space-between;align-items:baseline;gap:10px;font-weight:700}.cfg-sum-grand b{font-family:var(--display);font-size:1.6rem;color:var(--yellow)}
.cfg-list{list-style:none;font-size:.82rem;color:#D7CDE6;display:grid;gap:3px;max-height:180px;overflow:auto}
.cfg-warn{background:rgba(255,210,63,.15);color:var(--yellow);padding:10px 12px;border-radius:10px;font-size:.85rem}
.cfg-summary .btn{justify-self:stretch;justify-content:center}.cfg-summary small{color:#A79FC0;font-size:.78rem}
[hidden]{display:none!important}
/* ===== blog ===== */
.posts{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}@media (max-width:900px){.posts{grid-template-columns:1fr 1fr}}@media (max-width:560px){.posts{grid-template-columns:1fr}}
.post-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;display:flex;flex-direction:column}
.post-img{display:block;aspect-ratio:16/10;overflow:hidden;background:var(--bg-2)}.post-img img{width:100%;height:100%;object-fit:cover;transition:transform .4s}.post-card:hover .post-img img{transform:scale(1.05)}
.post-ph{display:block;height:100%;background:linear-gradient(135deg,#FFD23F 0%,#FF4F87 60%,#24B5B0 100%);opacity:.5}
.post-body{padding:20px 22px 24px;display:flex;flex-direction:column;gap:8px;flex:1}.post-body time,.post-meta{font-size:.82rem;color:var(--muted)}
.post-body h2{font-size:1.15rem;font-weight:700}.post-body h2 a{text-decoration:none}.post-body h2 a:hover{color:var(--pink)}.post-body p{font-size:.93rem;color:var(--ink-soft)}
.post-body .more{margin-top:auto;font-weight:700;font-size:.9rem;color:var(--pink);text-decoration:none}
.pager{display:flex;gap:8px;justify-content:center;margin-top:36px}.pager a{width:40px;height:40px;display:grid;place-items:center;border-radius:50%;border:1.5px solid var(--line);text-decoration:none;font-weight:700}.pager a.on{background:#241B4D;color:#fff;border-color:#241B4D}
.post-layout{display:grid;grid-template-columns:1fr 320px;gap:40px;align-items:start}@media (max-width:900px){.post-layout{grid-template-columns:1fr}}
.post-side{position:sticky;top:88px}.post-side .cfg-summary p{color:#D7CDE6;font-size:.92rem}.post-side .btn{justify-content:center}
.post-content{max-width:820px}.post-content table{font-size:.92rem}
.post-content blockquote{border-left:4px solid var(--yellow);padding:12px 20px;margin:20px 0;background:var(--surface);border-radius:0 12px 12px 0;font-style:italic}
/* ===== переключатель эпох ===== */
.epoch{position:fixed;right:18px;bottom:18px;z-index:150;font-family:var(--body)}
.epoch-btn{display:flex;align-items:center;gap:10px;background:#241B4D;color:#fff;border:0;border-radius:999px;padding:12px 18px 12px 12px;font-weight:700;font-size:.9rem;cursor:pointer;box-shadow:0 10px 30px rgba(36,27,77,.35);transition:transform .2s}
.epoch-btn:hover{transform:translateY(-2px)}
.epoch-ico{width:26px;height:26px;border-radius:50%;background:conic-gradient(#FF4F87,#FFD23F,#24B5B0,#FF4F87);animation:spin 6s linear infinite}
@keyframes spin{to{transform:rotate(360deg)}}
.epoch-panel{position:absolute;right:0;bottom:56px;width:280px;background:#fff;color:#241B4D;border-radius:16px;padding:14px;box-shadow:0 20px 50px rgba(36,27,77,.3);display:grid;gap:10px;animation:pop-in .25s cubic-bezier(.2,.8,.2,1.2)}
@keyframes pop-in{from{opacity:0;transform:translateY(10px) scale(.96)}}
.epoch-list{display:grid;gap:4px;max-height:260px;overflow:auto}
.epoch-item{display:flex;align-items:center;gap:10px;padding:8px 10px;border-radius:10px;text-decoration:none;font-size:.9rem;font-weight:600;color:#241B4D}
.epoch-item:hover{background:#F3ECF8}.epoch-item.on{background:#241B4D;color:#fff}
.sw{width:18px;height:18px;border-radius:5px;flex:none;border:1px solid rgba(0,0,0,.15)}
.sw-modern{background:linear-gradient(135deg,#F3ECF8,#FF4F87)}.sw-dendy{background:linear-gradient(135deg,#2828B8,#FFE83D)}.sw-win95{background:linear-gradient(135deg,#008080,#C0C0C0)}.sw-larek{background:linear-gradient(135deg,#F4EBD0,#2FCBE6)}.sw-vhs{background:linear-gradient(135deg,#0B0B0F,#FF2E88)}.sw-web1{background:linear-gradient(135deg,#000033,#FFFF00)}.sw-diary{background:linear-gradient(135deg,#FBF7EC,#1A3EA8)}.sw-disco{background:linear-gradient(135deg,#12062B,#FF2BD6)}
.epoch-dark{display:flex;align-items:center;gap:10px;border:1.5px solid #E1DCEC;background:#F8F6FB;color:#241B4D;border-radius:10px;padding:10px 12px;font:inherit;font-weight:700;font-size:.9rem;cursor:pointer}
.epoch-moon{width:18px;height:18px;border-radius:50%;background:#241B4D;box-shadow:inset 6px -4px 0 #fff}
.epoch-panel small{color:#7A7394;font-size:.75rem;line-height:1.4}
@media (max-width:600px){.epoch-btn span:last-child{display:none}.epoch-btn{padding:10px}}
/* ===== свайп-капча ===== */
.slide-captcha{user-select:none;-webkit-user-select:none}
.sc-track{position:relative;height:52px;border-radius:999px;background:var(--bg);border:1.5px solid var(--line);overflow:hidden;display:flex;align-items:center;justify-content:center;font-size:.9rem;font-weight:600;color:var(--muted)}
.sc-track::before{content:"";position:absolute;left:0;top:0;bottom:0;width:var(--p,0);background:#DDF5E9;transition:width .05s}
.sc-text,.sc-done{position:relative;pointer-events:none}.sc-done{display:none;color:#0F5E3A}
.sc-knob{position:absolute;left:3px;top:3px;width:44px;height:44px;border-radius:50%;border:0;background:var(--pink);color:#fff;font-size:1.3rem;cursor:grab;touch-action:none;box-shadow:0 4px 12px rgba(255,79,135,.4);transition:background .2s}
.sc-knob:active{cursor:grabbing}
.slide-captcha.done .sc-track{border-color:#0F5E3A}.slide-captcha.done .sc-text{display:none}.slide-captcha.done .sc-done{display:block}.slide-captcha.done .sc-knob{background:#0F8A5F;cursor:default}
.slide-captcha.shake .sc-knob{animation:shake .4s}@keyframes shake{25%{transform:translateX(-6px)}75%{transform:translateX(6px)}}
.req-form .btn[disabled]{opacity:.55;cursor:not-allowed;box-shadow:none}
/* ===== темная версия основной темы ===== */
body.theme-modern.dark{--bg:#15112B;--bg-2:#1D1838;--surface:#241E45;--ink:#F3ECF8;--ink-soft:#D7CDE6;--muted:#A79FC0;--line:rgba(243,236,248,.14);--shadow:0 20px 50px rgba(0,0,0,.5)}
body.theme-modern.dark .hero-kicker{background:var(--surface)}
body.theme-modern.dark .form-msg.ok{background:#0b3d2a;color:#9ff2c8}body.theme-modern.dark .form-msg.err{background:#4a0f22;color:#ffb3c8}
body.theme-modern.dark .set-art,body.theme-modern.dark .gallery-main{background:#1D1838}
body.theme-modern.dark .box-body::after{border-color:#241B4D;color:#241B4D}
body.theme-modern.dark .step::before{color:var(--yellow)}
body.theme-modern.dark .cfg-item.picked{background:#1E3A3A}body.theme-modern.dark .cfg-box input:checked+.cfg-box-in{background:#3A1F33}
body.theme-modern.dark .prose th{background:#1D1838}
body.theme-modern.dark .epoch-panel{background:#241E45;color:#F3ECF8}body.theme-modern.dark .epoch-item{color:#F3ECF8}body.theme-modern.dark .epoch-item:hover{background:#2E2757}body.theme-modern.dark .epoch-dark{background:#1D1838;border-color:#3a3360;color:#F3ECF8}
body.theme-modern.dark .sc-track::before{background:#0b3d2a}
body.theme-modern{transition:background-color .35s,color .35s}
/* ===== анимации основной темы ===== */
body.theme-modern{animation:page-in .5s ease both}
@keyframes page-in{from{opacity:0}}
.theme-modern .site-header{transition:transform .3s,box-shadow .3s}.theme-modern .site-header.hide{transform:translateY(-100%)}.theme-modern .site-header.scrolled{box-shadow:0 6px 24px rgba(36,27,77,.12)}
.theme-modern .hero h1 span{display:block;overflow:hidden}.theme-modern .hero h1 span i{display:inline-block;font-style:normal;transform:translateY(110%);animation:word-up .7s cubic-bezier(.2,.8,.2,1) forwards}
@keyframes word-up{to{transform:translateY(0)}}
.theme-modern .hero-kicker,.theme-modern .hero .lead,.theme-modern .hero-cta,.theme-modern .hero-facts{opacity:0;animation:fade-up .7s cubic-bezier(.2,.8,.2,1) forwards}
.theme-modern .hero .lead{animation-delay:.45s}.theme-modern .hero-cta{animation-delay:.6s}.theme-modern .hero-facts{animation-delay:.75s}.theme-modern .hero-kicker{animation-delay:.1s}
@keyframes fade-up{from{opacity:0;transform:translateY(22px)}to{opacity:1;transform:none}}
.theme-modern .blob{animation:blob-move 14s ease-in-out infinite alternate}.theme-modern .blob-2{animation-duration:18s}.theme-modern .blob-3{animation-duration:11s}
@keyframes blob-move{to{transform:translate(60px,-40px) scale(1.15)}}
.theme-modern .reveal{transition-delay:calc(var(--i,0)*.08s)}
.theme-modern .btn{position:relative;overflow:hidden}.theme-modern .btn::after{content:"";position:absolute;top:0;left:-70%;width:40%;height:100%;background:linear-gradient(120deg,transparent,rgba(255,255,255,.45),transparent);transform:skewX(-20deg);transition:left .5s}.theme-modern .btn:hover::after{left:130%}
.theme-modern .btn-primary:hover{transform:translateY(-2px);box-shadow:0 14px 30px rgba(255,79,135,.45)}
.theme-modern .set,.theme-modern .post-card,.theme-modern .city-card{transition:transform .25s cubic-bezier(.2,.8,.2,1),box-shadow .25s}.theme-modern .set:hover,.theme-modern .post-card:hover{transform:translateY(-6px);box-shadow:var(--shadow)}
.theme-modern .set[data-tilt]{transform-style:preserve-3d}
.theme-modern .step{transition:transform .25s,border-color .25s}.theme-modern .step:hover{transform:translateY(-4px);border-color:var(--pink)}
.theme-modern .step::before{transition:transform .3s}.theme-modern .step:hover::before{transform:scale(1.2) rotate(-8deg)}
.theme-modern .dir{transition:transform .3s}.theme-modern .dir:hover{transform:scale(1.015)}
.theme-modern .dir .deco{transition:transform .5s}.theme-modern .dir:hover .deco{transform:rotate(0) scale(1.1)}
.theme-modern .chip,.theme-modern .cfg-tabs button{transition:background .2s,color .2s,transform .2s}.theme-modern .chip:hover{transform:translateY(-2px)}
.theme-modern .cfg-item{transition:border-color .2s,background .2s,transform .2s}.theme-modern .cfg-item.picked{transform:translateX(4px)}
.theme-modern .cfg-sum-grand b{transition:transform .2s}.theme-modern .cfg-sum-grand b.bump{animation:bump .35s}
@keyframes bump{40%{transform:scale(1.12)}}
.theme-modern .faq-item summary::after{transition:transform .3s}.theme-modern .faq-item[open] summary::after{transform:rotate(180deg)}
.theme-modern .chapter .year{transition:color .3s}.theme-modern .chapter:hover .year{color:var(--teal)}
.theme-modern .ticker-track span{transition:color .2s}.theme-modern .ticker:hover .ticker-track{animation-play-state:paused}
.theme-modern .modal-box{animation:pop-in .3s cubic-bezier(.2,.8,.2,1.2)}
.theme-modern .cursor-glow{position:fixed;width:340px;height:340px;border-radius:50%;background:radial-gradient(circle,rgba(255,79,135,.16),transparent 60%);pointer-events:none;transform:translate(-50%,-50%);z-index:0;transition:opacity .4s}
@media (prefers-reduced-motion:reduce){.theme-modern *{animation:none!important;transition:none!important}.theme-modern .hero h1 span i{transform:none}.theme-modern .hero-kicker,.theme-modern .hero .lead,.theme-modern .hero-cta,.theme-modern .hero-facts{opacity:1}}
/* ===== город ===== */
.city-hero{position:relative;overflow:hidden;padding:56px 0 60px;background:linear-gradient(135deg,#241B4D 0%,#3A2A7A 60%,#1F4C6E 100%);color:#F3ECF8}
.city-hero .crumbs a,.city-hero .crumbs li{color:#B9B0D6}
.city-hero h1{color:#fff;font-size:clamp(2rem,5vw,4rem);max-width:16ch}
.city-hero .lead{color:#D7CDE6}
.city-hero .city-facts b{color:var(--yellow)}.city-hero .city-facts span{color:#B9B0D6}
.city-hero .btn-ghost{border-color:#fff;color:#fff}.city-hero .btn-ghost:hover{background:#fff;color:#241B4D}
.city-hero-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:40px;align-items:center;position:relative;z-index:1}@media (max-width:900px){.city-hero-grid{grid-template-columns:1fr}}
.route{background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.14);border-radius:var(--radius);padding:28px;backdrop-filter:blur(6px)}
.route-line{display:flex;align-items:center;gap:12px;margin:8px 0 18px}.route-line b{font-family:var(--display);font-size:1.05rem;color:#fff}.route-line .dash{flex:1;height:2px;background:repeating-linear-gradient(90deg,var(--yellow) 0 10px,transparent 10px 18px);position:relative}
.route-line .dash::after{content:"";position:absolute;left:0;top:-9px;width:20px;height:20px;border-radius:50%;background:var(--yellow);animation:truck 3.5s linear infinite}
@keyframes truck{to{left:calc(100% - 20px)}}
.route-tags{display:flex;flex-wrap:wrap;gap:8px}.route-tags span{background:rgba(255,255,255,.12);border-radius:999px;padding:6px 12px;font-size:.85rem;font-weight:600}
.route-tags span::before{content:"✓ ";color:var(--teal)}
.city-hero .city-bg{position:absolute;right:-6%;bottom:-25%;font-family:var(--display);font-weight:900;font-size:clamp(8rem,26vw,24rem);color:#fff;opacity:.05;line-height:1;pointer-events:none;white-space:nowrap}
.city-hero .candy{position:absolute;pointer-events:none;opacity:.9}
.city-catalog{background:var(--bg-2)}
.city-badge{display:inline-flex;align-items:center;gap:8px;background:var(--yellow);color:#241B4D;font-weight:700;border-radius:999px;padding:8px 14px;font-size:.85rem;margin-bottom:16px}
.city-note{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:40px}@media (max-width:900px){.city-note{grid-template-columns:1fr}}
.city-note div{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-sm);padding:22px 24px}.city-note b{display:block;font-family:var(--display);font-size:1.6rem;margin-bottom:4px;color:var(--pink)}.city-note span{color:var(--ink-soft);font-size:.95rem}
/* ===== правки: заголовок, фото набора, производство, история ===== */
.hero h1{max-width:none;font-size:clamp(2.2rem,5vw,4.2rem);text-wrap:balance}
.hero h1 span{white-space:nowrap}@media (max-width:520px){.hero h1 span{white-space:normal}.hero h1{font-size:clamp(2rem,9vw,2.6rem)}}
.scene-photo{height:600px}@media (max-width:900px){.scene-photo{height:480px}}@media (max-width:520px){.scene-photo{height:360px}}
.hero-photo{position:absolute;inset:6% 0 4%;display:grid;place-items:center}
.hero-photo img{position:relative;z-index:2;max-height:100%;width:auto;max-width:100%;object-fit:contain;filter:drop-shadow(0 30px 40px rgba(36,27,77,.28));animation:photo-in 1s cubic-bezier(.2,.8,.2,1) both,float 7s ease-in-out 1s infinite}
@keyframes photo-in{from{opacity:0;transform:translateY(40px) scale(.92)}}
.hero-photo em{position:absolute;bottom:-4px;left:50%;transform:translate(-50%,0);z-index:3;background:var(--surface);border:1px solid var(--line);border-radius:999px;padding:8px 16px;font-style:normal;font-weight:700;font-size:.85rem;white-space:nowrap}
.hero-photo-blob{position:absolute;border-radius:50%;z-index:1}.hero-photo-blob.b1{width:78%;aspect-ratio:1;background:var(--yellow);opacity:.9;left:6%;top:4%;animation:blob-move 12s ease-in-out infinite alternate}.hero-photo-blob.b2{width:46%;aspect-ratio:1;background:var(--pink);opacity:.55;right:2%;bottom:0;animation:blob-move 15s ease-in-out infinite alternate-reverse}
.lead-sm{color:var(--ink-soft);margin-top:8px;max-width:60ch}
.photo-strip{display:grid;grid-template-columns:repeat(4,1fr);grid-auto-rows:200px;gap:14px}
.photo-strip figure:nth-child(1),.photo-strip figure:nth-child(6){grid-column:span 2;grid-row:span 2}
@media (max-width:900px){.photo-strip{grid-template-columns:repeat(2,1fr);grid-auto-rows:170px}.photo-strip figure:nth-child(1),.photo-strip figure:nth-child(6){grid-row:span 1}}
.photo-strip figure,.photo-grid figure{position:relative;margin:0;border-radius:var(--radius-sm);overflow:hidden;background:var(--surface)}
.photo-strip img,.photo-grid img{width:100%;height:100%;object-fit:cover;transition:transform .5s}.photo-strip figure:hover img,.photo-grid figure:hover img{transform:scale(1.05)}
.photo-strip figcaption,.photo-grid figcaption{position:absolute;left:0;right:0;bottom:0;padding:24px 14px 12px;background:linear-gradient(transparent,rgba(36,27,77,.75));color:#fff;font-size:.85rem;font-weight:600}
.photo-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.photo-grid figure{aspect-ratio:4/3}@media (max-width:700px){.photo-grid{grid-template-columns:1fr 1fr}}
.chapter{grid-template-columns:170px 1fr;align-items:start}.chapter.has-photo{grid-template-columns:170px 1fr 260px}
@media (max-width:900px){.chapter.has-photo{grid-template-columns:170px 1fr}.chapter-photo{grid-column:2}}
@media (max-width:640px){.chapter,.chapter.has-photo{grid-template-columns:1fr}.chapter-photo{grid-column:1}}
.chapter .year{position:static;font-size:clamp(1.4rem,2.6vw,2rem);line-height:1.1;overflow-wrap:anywhere}
.chapter-photo{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:var(--radius-sm);box-shadow:var(--shadow);transform:rotate(1.5deg)}
/* ===== блок маркетплейсов ===== */
.mp{padding-top:0}
.mp-box{display:grid;grid-template-columns:1.1fr .9fr;gap:36px;align-items:center;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:44px;box-shadow:var(--shadow);position:relative;overflow:hidden}
.mp-box::before{content:"";position:absolute;right:-120px;top:-120px;width:340px;height:340px;border-radius:50%;background:radial-gradient(circle,rgba(255,79,135,.18),transparent 65%);pointer-events:none}
@media (max-width:900px){.mp-box{grid-template-columns:1fr;padding:30px 24px}}
.mp-badge{display:inline-block;background:var(--yellow);color:#241B4D;font-weight:700;font-size:.8rem;border-radius:999px;padding:6px 12px;margin-bottom:14px}
.mp-head h2{margin-bottom:12px;font-size:clamp(1.4rem,3vw,2.1rem)}.mp-head p{color:var(--ink-soft)}.mp-hint{font-size:.85rem;color:var(--muted);margin-top:8px}
.mp-cards{display:grid;gap:14px}
.mp-card{display:grid;gap:4px;padding:22px 24px;border-radius:var(--radius-sm);text-decoration:none;color:#fff;position:relative;overflow:hidden;transition:transform .2s,box-shadow .2s;border:0}
.mp-card:hover{transform:translateY(-3px);box-shadow:0 14px 30px rgba(0,0,0,.2)}
.mp-ozon{background:#005BFF}.mp-wb{background:linear-gradient(120deg,#CB11AB,#481173)}
.mp-name{font-family:var(--display);font-size:1.5rem;font-weight:900;letter-spacing:-.01em}.mp-note{opacity:.9;font-size:.92rem}.mp-cta{margin-top:10px;font-weight:700;font-size:.85rem;background:rgba(255,255,255,.18);border-radius:999px;padding:6px 12px;width:fit-content}
.mp-card::after{content:"";position:absolute;right:-30px;bottom:-40px;width:120px;height:120px;border-radius:50%;background:rgba(255,255,255,.12)}
/* ===== соцсети и мессенджеры ===== */
.head-contacts{display:flex;align-items:center;gap:14px}
.socials{display:flex;gap:6px}
.soc{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;background:var(--surface);border:1px solid var(--line);color:var(--ink);transition:transform .2s,background .2s,color .2s}
.soc svg{width:18px;height:18px;fill:currentColor}
.soc:hover{transform:translateY(-2px);color:#fff}
.soc-tg:hover{background:#2AABEE;border-color:#2AABEE}.soc-wa:hover{background:#25D366;border-color:#25D366}.soc-max:hover{background:#7B61FF;border-color:#7B61FF}.soc-vk:hover{background:#0077FF;border-color:#0077FF}.soc-ok:hover{background:#EE8208;border-color:#EE8208}.soc-yt:hover{background:#FF0000;border-color:#FF0000}.soc-dzen:hover{background:#111;border-color:#111}
.foot-socials{margin-top:12px}
@media (max-width:1100px){.head-contacts .socials{display:none}}
/* мобильный бар */
.mobile-bar{display:none}
@media (max-width:900px){
  .mobile-bar{display:flex;position:fixed;left:0;right:0;bottom:0;z-index:140;background:var(--surface);border-top:1px solid var(--line);box-shadow:0 -8px 24px rgba(36,27,77,.12);padding:6px 4px calc(6px + env(safe-area-inset-bottom))}
  .mb-item{flex:1;display:grid;justify-items:center;gap:3px;text-decoration:none;color:var(--ink-soft);font-size:.62rem;font-weight:700;padding:4px 2px;border-radius:10px}
  .mb-item svg{width:22px;height:22px;fill:currentColor}
  .mb-phone{color:var(--pink)}
  body{padding-bottom:64px}
  .epoch{bottom:76px}
  .theme-win95 .taskbar{bottom:64px}
}
