/* /l/dyzajnery/ — телефон (≤ 760 і телефон в альбомі): своя послідовність, великий палець, нижня кнопка */
.M { width: min(640px, 100%); margin: 0 auto; padding: 0 16px calc(88px + env(safe-area-inset-bottom)); }
.M main > section { padding: 40px 0; border-top: 1px solid var(--ink); }
.M main > section:first-child { border-top: 0; padding-top: 24px; }
.m-top { display: flex; align-items: center; justify-content: space-between; gap: 8px; min-height: 56px; border-bottom: 1px solid var(--ink); }
.m-top .brand { font-weight: 700; font-size: 15px; letter-spacing: -.01em; }
.m-h1 { font-size: clamp(30px, 8.6vw, 40px); line-height: 1.04; letter-spacing: -.035em; }
.m-h2 { font-size: 26px; line-height: 1.1; letter-spacing: -.03em; margin-bottom: 18px; }
.m-lead { font-size: 17px; line-height: 1.5; margin: 18px 0 24px; }
.m-text { font-size: 16px; line-height: 1.55; margin-top: 16px; }
.m-cta { width: 100%; }

.m-rail { overflow-x: auto; scroll-snap-type: x proximity; touch-action: pan-x pan-y; margin: 0 -16px 14px; padding: 0 16px; scrollbar-width: none; }
.m-rail::-webkit-scrollbar { display: none; }
.m-rail .sizes { width: max-content; max-width: none; }
.m-rail .sizes button { scroll-snap-align: start; padding: 0 16px; }
.m-draw .sheet { padding: 10px 6px 6px; min-height: 280px; display: flex; align-items: center; justify-content: center; }
.m-draw .sheet .dl { max-height: 64vh; width: auto; max-width: 100%; }
.m-stamp { grid-template-columns: repeat(2, minmax(0, 1fr)); margin-top: 14px; border-top: 1px solid var(--ink); }
.m-stamp div { border-top: 0; border-bottom: 1px solid var(--ink); }
.m-stamp div:nth-child(even) { border-left: 1px solid var(--ink); }
.m-stamp div:nth-last-child(-n + 2) { border-bottom: 0; }
.M .stamp { border-top: 1px solid var(--ink); }

.m-big { font-size: clamp(40px, 15vw, 88px); margin-bottom: 18px; }
.m-frame { height: min(420px, 62vh); }
.m-link-cap { margin: 22px 0 8px; font-weight: 600; font-size: 14px; }

.M .vs li { padding: 14px 0; gap: 4px; font-size: 16px; line-height: 1.4; }
.M .files { grid-template-columns: 1fr; }
.M .files b { font-size: 18px; }
.M .pro { padding: 20px 16px; }
.M .pro .ghost { width: 100%; justify-content: center; }
.M .free { margin-top: 16px; }
.m-foot { padding: 20px 0; border-top: 1px solid var(--ink); color: var(--ink-2); font-size: 13px; display: grid; gap: 6px; }

.m-bar { position: fixed; left: 0; right: 0; bottom: 0; z-index: 10; padding: 10px 16px calc(10px + env(safe-area-inset-bottom));
  background: var(--paper); border-top: 1px solid var(--ink); transform: translateY(110%); transition: transform .25s ease-out; }
.m-bar .cta { width: 100%; }
.m-bar.show { transform: none; }
@media (prefers-reduced-motion: reduce) { .m-bar { transition: none; } }
