/* мур. — shared tokens (dark neon) */
:root{
  --paper:#08070C;        /* background */
  --paper-2:#15121C;
  --paper-3:#28232F;
  --card:#100E16;
  --ink:#F4EFFA;          /* text */
  --ink-2:#CBC3D8;
  --ink-3:#8B839B;
  --ink-4:#5C566A;
  --line:rgba(255,255,255,.08);
  --line-2:rgba(255,255,255,.17);
  --blue:#5B7CFF;         /* «навсегда» */
  --pink:#FF3EA0;         /* «на вечер» */
  --pen:var(--blue);
  --pen-soft:rgba(91,124,255,.16);
  --warm:var(--pink);
  --glow:0 0 10px rgba(91,124,255,.55),0 0 34px rgba(91,124,255,.28);
  --serif:'Cormorant Garamond', 'Times New Roman', serif;
  --sans:'Onest', system-ui, sans-serif;
  --mono:'JetBrains Mono', ui-monospace, monospace;
  --ease:cubic-bezier(.2,.7,.1,1);
  --ease-io:cubic-bezier(.7,0,.2,1);
  color-scheme:dark;
}
.night{--pen:var(--pink);--pen-soft:rgba(255,62,160,.16);--glow:0 0 10px rgba(255,62,160,.6),0 0 34px rgba(255,62,160,.3)}
*,*::before,*::after{margin:0;padding:0;box-sizing:border-box}
html{-webkit-text-size-adjust:100%;background:var(--paper)}
body{background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:16px;line-height:1.5;
  -webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
a{color:inherit;text-decoration:none}
button{font:inherit;color:inherit;background:none;border:0;cursor:pointer}
img,svg{display:block}
::selection{background:var(--pink);color:#fff}
.serif{font-family:var(--serif)}
.mono{font-family:var(--mono);font-size:11px;letter-spacing:.08em;text-transform:uppercase}
.it{font-style:italic}

/* neon helpers */
.neon-b{color:#DCE3FF;text-shadow:0 0 4px rgba(91,124,255,.9),0 0 14px rgba(91,124,255,.75),0 0 38px rgba(91,124,255,.55),0 0 80px rgba(91,124,255,.35)}
.neon-p{color:#FFE0F0;text-shadow:0 0 4px rgba(255,62,160,.95),0 0 14px rgba(255,62,160,.75),0 0 38px rgba(255,62,160,.55),0 0 80px rgba(255,62,160,.35)}
.neon{color:#fff;text-shadow:0 0 4px var(--pen),0 0 14px var(--pen),0 0 40px var(--pen)}

/* logo: two-tone neon wordmark */
.logo{font-family:var(--serif);font-style:italic;font-weight:600;letter-spacing:-.01em;line-height:1;display:inline-flex;align-items:baseline}
.logo b{font-weight:600;background:linear-gradient(95deg,#8FA6FF 0%,var(--blue) 35%,var(--pink) 75%,#FF8AC6 100%);
  -webkit-background-clip:text;background-clip:text;color:transparent;filter:drop-shadow(0 0 6px rgba(255,62,160,.45)) drop-shadow(0 0 14px rgba(91,124,255,.35))}
.logo i{font-style:normal;color:var(--pink);text-shadow:0 0 6px var(--pink),0 0 16px var(--pink)}

/* grain (light noise on dark) */
.grain{position:fixed;inset:0;pointer-events:none;z-index:1000;opacity:.05;mix-blend-mode:screen;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='3' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0 0 0 0 1 0 0 0 0 1 0 0 0 0 1 0 0 0 .9 0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E")}

/* hand-drawn neon underline */
.u{position:relative;white-space:nowrap}
.u svg.stroke{position:absolute;left:-4%;width:108%;bottom:-.18em;height:.42em;overflow:visible;pointer-events:none}
.u svg.stroke path{fill:none;stroke:var(--pen);stroke-width:3;stroke-linecap:round;vector-effect:non-scaling-stroke;filter:drop-shadow(0 0 4px var(--pen)) drop-shadow(0 0 10px var(--pen))}

/* underline-able phrase */
.ph{cursor:pointer;background-image:linear-gradient(var(--pen),var(--pen));background-repeat:no-repeat;
  background-position:0 100%;background-size:0% 2px;transition:background-size .5s var(--ease),color .3s,text-shadow .3s;
  border-radius:2px;padding-bottom:1px;-webkit-box-decoration-break:clone;box-decoration-break:clone}
.ph:hover{background-size:100% 1px;background-image:linear-gradient(var(--line-2),var(--line-2))}
.ph.on{background-image:linear-gradient(var(--pen),var(--pen));background-size:100% 2px;color:#fff;text-shadow:0 0 6px var(--pen),0 0 18px var(--pen)}

.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;height:52px;padding:0 26px;border-radius:999px;
  background:var(--ink);color:var(--paper);font-weight:500;font-size:15px;letter-spacing:.01em;white-space:nowrap;
  transition:transform .4s var(--ease),background .3s,box-shadow .4s}
.btn:hover{transform:translateY(-2px)}
.btn:active{transform:scale(.97)}
.btn.pen{background:var(--pen);color:#fff;box-shadow:var(--glow)}
.btn.pen:hover{box-shadow:0 0 14px var(--pen),0 0 48px var(--pen)}
.btn.ghost{background:transparent;color:var(--ink);box-shadow:inset 0 0 0 1px var(--line-2)}
.btn.ghost:hover{box-shadow:inset 0 0 0 1px var(--ink-3)}
.btn.neon-line{background:transparent;color:#fff;box-shadow:inset 0 0 0 1.5px var(--pen),0 0 12px -2px var(--pen),inset 0 0 12px -4px var(--pen)}
.btn.neon-line:hover{box-shadow:inset 0 0 0 1.5px var(--pen),0 0 24px var(--pen),inset 0 0 18px -4px var(--pen)}
.btn .arr{transition:transform .4s var(--ease)}
.btn:hover .arr{transform:translateX(4px)}

@media (prefers-reduced-motion:reduce){*{animation-duration:.01ms!important;transition-duration:.01ms!important}}
