/* MusicTMM Universum — universumars.com
   Палитра из фирменных презентаций: чёрный / янтарь / крем. */
:root{
  --ink:#0d0c0a;          /* почти чёрный, тёплый */
  --coal:#17150f;         /* панели на тёмном */
  --line:#2b2820;         /* границы на тёмном */
  --cream:#f6f2e9;        /* светлые секции */
  --cream-card:#fdfbf6;
  --cream-line:#e4ddcd;
  --amber:#f2a81d;
  --amber-deep:#c9880d;
  --txt:#efece4;          /* текст на тёмном */
  --mut:#98937f;          /* приглушённый на тёмном */
  --txt-d:#1c1a14;        /* текст на светлом */
  --mut-d:#6f695a;
  --disp:"Archivo",system-ui,sans-serif;
  --body:"Instrument Sans",system-ui,sans-serif;
  --mono:"IBM Plex Mono",ui-monospace,monospace;
  --wrap:1140px;
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{font-family:var(--body);font-size:17px;line-height:1.65;color:var(--txt);background:var(--ink)}
img{max-width:100%;height:auto;display:block}
a{color:inherit}
.wrap{max-width:var(--wrap);margin:0 auto;padding:0 24px}
.narrow{max-width:820px}
.center{text-align:center}
.hidden{position:absolute;left:-9999px}
.mono{font-family:var(--mono);letter-spacing:.01em}
.amber{color:var(--amber)}
h1,h2,h3{font-family:var(--disp);line-height:1.12;letter-spacing:-.01em}
h1{font-size:clamp(2.3rem,5.4vw,3.9rem);font-weight:800}
h2{font-size:clamp(1.7rem,3.4vw,2.5rem);font-weight:700}
h3{font-size:1.12rem;font-weight:700;margin-bottom:.5rem}
.statement{font-size:clamp(1.7rem,3.6vw,2.7rem)}
.eyebrow{font-family:var(--mono);font-size:.78rem;letter-spacing:.16em;text-transform:uppercase;color:var(--amber-deep);margin-bottom:1rem}
.band-dark .eyebrow,.hero .eyebrow{color:var(--amber)}
.lead{font-size:1.14rem;color:var(--mut);max-width:38em}
.lead-dark{font-size:1.14rem;color:var(--mut-d);max-width:44em;margin:0 auto}
.fine{font-size:.82rem;color:var(--mut);max-width:60em;margin-top:1.4rem}
.band-cream .fine{color:var(--mut-d)}
.small{font-size:.8rem}

/* ── Шапка ─────────────────────────────── */
.site-header{position:sticky;top:0;z-index:50;background:rgba(13,12,10,.92);backdrop-filter:blur(10px);border-bottom:1px solid var(--line)}
.header-in{display:flex;align-items:center;justify-content:space-between;height:68px}
.brand{display:flex;align-items:center;gap:.6rem;text-decoration:none}
.brand img{border-radius:8px}
.brand-name{font-family:var(--disp);font-weight:700;font-size:1.02rem;color:var(--txt)}
.brand-name em{font-style:normal;color:var(--amber)}
.nav{display:flex;align-items:center;gap:1.5rem}
.nav a{text-decoration:none;font-size:.94rem;color:var(--mut);transition:color .15s}
.nav a:hover,.nav a.is-active{color:var(--txt)}
.nav-cta{background:var(--amber);color:var(--ink)!important;padding:.5rem 1.05rem;border-radius:999px;font-weight:600}
.nav-cta:hover{background:#ffbd3d}
.lang-switch{font-family:var(--mono);font-size:.8rem;color:var(--mut)}
.lang-switch a{color:var(--mut);text-decoration:none;padding:0 .25rem}
.lang-switch a.on{color:var(--amber)}
.lang-switch i{font-style:normal;opacity:.5}
.nav-toggle{display:none;background:none;border:0;cursor:pointer;padding:8px}
.nav-toggle span{display:block;width:22px;height:2px;background:var(--txt);margin:5px 0;transition:.2s}

/* ── Hero ─────────────────────────────── */
.hero{padding:84px 0 72px;background:
  radial-gradient(900px 480px at 82% -10%,rgba(242,168,29,.13),transparent 60%),var(--ink)}
.hero-page{padding:76px 0 60px}
.hero-grid{display:grid;grid-template-columns:1.25fr .75fr;gap:3.5rem;align-items:center}
.hero-copy .lead{margin:1.3rem 0 1.8rem}
.cta-row{display:flex;gap:.9rem;flex-wrap:wrap;margin-bottom:2.2rem}
.cta-row.center{justify-content:center;margin-top:1.8rem}
.hero-visual{display:flex;justify-content:center}
.phone-shot{width:min(330px,80%);border-radius:26px;box-shadow:0 30px 80px rgba(0,0,0,.55),0 0 0 1px var(--line)}

/* Кнопки */
.btn{display:inline-block;font-family:var(--disp);font-weight:700;font-size:.98rem;text-decoration:none;padding:.8rem 1.6rem;border-radius:999px;transition:transform .15s,background .15s;border:0;cursor:pointer}
.btn:hover{transform:translateY(-1px)}
.btn-amber{background:var(--amber);color:var(--ink)}
.btn-amber:hover{background:#ffbd3d}
.btn-ghost{color:var(--txt);box-shadow:inset 0 0 0 1.5px var(--line)}
.btn-ghost:hover{box-shadow:inset 0 0 0 1.5px var(--mut)}
.btn-dark{background:var(--ink);color:var(--cream)}
.btn-black{background:var(--ink);color:var(--cream)}

/* «Инвойс» — фирменный мотив: строки сборов, обнулённые до $0 */
.ledger{font-family:var(--mono);font-size:.92rem;background:var(--coal);border:1px solid var(--line);border-radius:14px;padding:1.1rem 1.3rem;max-width:430px}
.ledger.big{max-width:560px;margin:0 auto 1.6rem;font-size:1rem}
.ledger-row{display:flex;align-items:baseline;gap:1rem;padding:.34rem 0;border-bottom:1px dashed var(--line)}
.ledger-row:last-child{border-bottom:0}
.ledger-row span{flex:1;color:var(--mut)}
.ledger-row s{color:#6d675a;text-decoration-color:rgba(242,168,29,.7)}
.ledger-row b{color:var(--amber);min-width:3.2em;text-align:right}
.ledger-row b.dim{color:var(--mut)}
.ledger-row.total{border-top:1px solid var(--line);margin-top:.2rem;padding-top:.55rem}
.ledger-row.total b{font-size:1.15em}
.ledger.on-cream{background:var(--ink);border-color:var(--ink);margin:1rem 0 1.2rem}

/* ── Секции ─────────────────────────────── */
.band{padding:78px 0}
.band-dark{background:var(--ink)}
.band-cream{background:var(--cream);color:var(--txt-d)}
.band-cream h1,.band-cream h2,.band-cream h3{color:var(--txt-d)}
.band-amber{background:linear-gradient(160deg,#f6b32c,#e79a10);color:var(--ink);padding:84px 0}
.band-amber h2{color:var(--ink)}
.band-amber .lead-dark{color:rgba(20,16,6,.75);margin:1rem auto 1.7rem}
.sec-head{max-width:760px;margin-bottom:2.6rem}
.sec-sub{color:var(--mut);margin-top:.9rem;max-width:40em}
.band-cream .sec-sub{color:var(--mut-d)}

/* Сетки и карточки */
.grid-2{display:grid;grid-template-columns:1fr 1fr;gap:1.2rem;margin-bottom:1.2rem}
.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:1.2rem;margin-bottom:1.2rem}
.grid-4{display:grid;grid-template-columns:repeat(4,1fr);gap:1.2rem}
.card{border-radius:14px;padding:1.5rem 1.5rem 1.4rem}
.card p{font-size:.95rem;color:var(--mut)}
.card-line{background:var(--coal);border:1px solid var(--line)}
.card-cream{background:var(--cream-card);border:1px solid var(--cream-line)}
.card-cream p{color:var(--mut-d)}
.card-dark{background:var(--ink);border:1px solid var(--ink)}
.card-dark h3{color:var(--txt)!important}
.plain h3{margin-top:.4rem}
.plain p{color:var(--mut-d);font-size:.95rem}
.band-dark .plain p{color:var(--mut)}
.big-num{font-size:2.4rem;font-weight:600;color:var(--amber);line-height:1.1;margin:.5rem 0 .7rem}
.result-line{margin-top:2.2rem;padding:1.1rem 1.4rem;border-left:3px solid var(--amber);background:var(--coal);border-radius:0 12px 12px 0;color:var(--txt)}
.result-line b{color:var(--amber);font-family:var(--mono);font-size:.85rem;letter-spacing:.1em;text-transform:uppercase;margin-right:.6rem}
.result-line.dark-text{background:var(--cream-card);color:var(--txt-d);border-color:var(--amber-deep)}
.amber-note{margin-top:.8rem}
.amber-note b{color:var(--amber)}
.zero{margin-top:.9rem;color:var(--amber);font-weight:600}

/* Статистика */
.stat-band{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem;margin-top:2rem;padding-top:1.8rem;border-top:1px solid var(--cream-line)}
.band-dark .stat-band{border-color:var(--line)}
.stat-band b{display:block;font-family:var(--disp);font-size:1.7rem;font-weight:800;color:var(--txt-d)}
.stat-band b.mono{font-family:var(--mono);font-weight:600}
.band-dark .stat-band b{color:var(--txt)}
.stat-band span{font-size:.85rem;color:var(--mut-d)}
.band-dark .stat-band span{color:var(--mut)}

/* Отрасли */
.ind-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:.8rem}
.ind{display:flex;align-items:center;justify-content:space-between;padding:1rem 1.2rem;border:1px solid var(--line);border-radius:12px;font-size:.95rem;color:var(--mut)}
.ind-link{color:var(--txt);text-decoration:none;background:var(--coal);transition:border-color .15s,color .15s}
.ind-link i{color:var(--amber);font-style:normal}
.ind-link:hover{border-color:var(--amber)}

/* Скриншоты */
.shot{margin:0 0 1.6rem}
.shot img{border-radius:14px;box-shadow:0 24px 60px rgba(0,0,0,.35);border:1px solid var(--cream-line)}
.band-dark .shot img{border-color:var(--line)}
.shot figcaption{font-size:.85rem;color:var(--mut-d);margin-top:.7rem}
.band-dark .shot figcaption{color:var(--mut)}
.phones{display:flex;gap:1.6rem;justify-content:center;margin:1.4rem 0 1.8rem}
.phones figure{max-width:250px}
.phones img{border-radius:22px;box-shadow:0 20px 50px rgba(0,0,0,.3)}
.phones figcaption{font-size:.85rem;color:var(--mut-d);margin-top:.7rem;text-align:center}
.apps-row{display:flex;gap:.9rem;flex-wrap:wrap}

/* Шаги */
.steps{list-style:none;display:grid;grid-template-columns:repeat(4,1fr);gap:1.2rem;counter-reset:s}
.steps li{counter-increment:s;background:var(--coal);border:1px solid var(--line);border-radius:14px;padding:1.4rem}
.steps li::before{content:"0" counter(s);font-family:var(--mono);color:var(--amber);font-size:.85rem;letter-spacing:.1em;display:block;margin-bottom:.7rem}
.steps li b{font-family:var(--disp);font-size:1.05rem;display:block;margin-bottom:.45rem}
.steps li p{font-size:.9rem;color:var(--mut)}
.steps-light li{background:var(--cream-card);border-color:var(--cream-line)}
.steps-light li b{color:var(--txt-d)}
.steps-light li p{color:var(--mut-d)}
.pilot{margin-top:1.6rem;padding:1.1rem 1.4rem;border-radius:12px;background:var(--amber);color:var(--ink);font-size:.98rem}
.pilot b{font-family:var(--mono);font-size:.82rem;letter-spacing:.12em;text-transform:uppercase;margin-right:.6rem}
.pilot-light{background:var(--ink);color:var(--cream)}
.pilot-light b{color:var(--amber)}

/* Списки с галочками */
.ticks{list-style:none}
.ticks li{padding:.42rem 0 .42rem 1.8rem;position:relative;font-size:.96rem}
.ticks.ok li::before{content:"✓";position:absolute;left:0;color:var(--amber-deep);font-weight:700}
.card-dark .ticks li{color:var(--mut)}
.ticks.no li::before{content:"✕";position:absolute;left:0;color:#c0574a;font-weight:700}
.ticks.two-col{columns:2;column-gap:2.5rem}
.band-dark .ticks.ok li::before{color:var(--amber)}

/* Масштаб сети */
.scale-band{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem;margin-top:1.4rem}
.scale-band div{background:var(--coal);border:1px solid var(--line);border-radius:12px;padding:1rem 1.2rem}
.scale-band span{display:block;color:var(--mut);margin-bottom:.3rem}
.scale-band b{font-size:1.25rem;color:var(--amber);font-weight:600}

/* Форма */
.contact-grid{display:grid;grid-template-columns:1.4fr .6fr;gap:3rem}
.form label{display:block;font-size:.86rem;font-weight:600;color:var(--txt-d);margin-bottom:1rem}
.f-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}
.form input,.form select,.form textarea{display:block;width:100%;margin-top:.35rem;padding:.7rem .85rem;font:inherit;font-size:.95rem;border:1px solid var(--cream-line);border-radius:10px;background:#fff;color:var(--txt-d)}
.form input:focus,.form select:focus,.form textarea:focus{outline:2px solid var(--amber);outline-offset:1px;border-color:var(--amber)}
.form .btn{margin-top:.4rem}
.contact-aside h3{margin-top:1.6rem}
.contact-aside h3:first-child{margin-top:0}
.contact-aside p{color:var(--mut-d);margin-bottom:.4rem}
.contact-aside a{color:var(--txt-d)}

/* Юридические страницы */
.legal-body h2{font-size:1.25rem;margin:1.8rem 0 .6rem}
.legal-body p{margin-bottom:.9rem;color:var(--mut-d)}

/* ── Подвал ─────────────────────────────── */
.site-footer{border-top:1px solid var(--line);padding:56px 0 28px;background:#0a0908}
.foot-grid{display:grid;grid-template-columns:1.3fr 1fr 1fr 1.2fr;gap:2.4rem;margin-bottom:2.4rem}
.foot-tag{color:var(--mut);font-size:.9rem;margin:1rem 0}
.foot-brand{min-width:0}
.foot-apps{display:flex;align-items:center;flex-wrap:nowrap;white-space:nowrap}
.foot-apps a{color:var(--mut);font-size:.88rem;text-decoration:none;margin-right:.85rem}
.foot-apps a:hover{color:var(--amber)}
/* Иконки соцсетей (LinkedIn / Instagram) — инлайн-SVG, без картинок */
.foot-social{display:inline-flex;align-items:center;vertical-align:middle;margin-left:.15rem}
.foot-social a{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;margin-right:.1rem;color:var(--mut);transition:color .2s ease}
.foot-social a:last-child{margin-right:0}
.foot-social a:hover{color:var(--amber)}
.foot-social svg{display:block;width:20px;height:20px}
.site-footer h4{font-family:var(--mono);font-size:.75rem;letter-spacing:.14em;text-transform:uppercase;color:var(--mut);margin-bottom:.9rem}
.site-footer ul{list-style:none}
.site-footer li{margin-bottom:.5rem;font-size:.92rem;color:var(--mut)}
.site-footer li a{color:var(--txt);text-decoration:none}
.site-footer li a:hover{color:var(--amber)}
.foot-contact li{color:var(--mut)}
.foot-legal{display:flex;justify-content:space-between;gap:1rem;flex-wrap:wrap;border-top:1px solid var(--line);padding-top:1.6rem;font-size:.82rem;color:var(--mut)}
.foot-legal a{color:var(--mut)}

/* Появление при прокрутке */
.reveal{opacity:0;transform:translateY(16px);transition:opacity .6s ease,transform .6s ease}
.reveal.in{opacity:1;transform:none}
@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  .reveal{opacity:1;transform:none;transition:none}
}
:focus-visible{outline:2px solid var(--amber);outline-offset:2px}

/* ── Адаптив ─────────────────────────────── */
@media (max-width:960px){
  .grid-4{grid-template-columns:1fr 1fr}
  .ind-grid{grid-template-columns:1fr 1fr 1fr}
  .steps{grid-template-columns:1fr 1fr}
  .hero-grid{grid-template-columns:1fr;gap:2.4rem}
  .hero-visual{order:-1}
  .phone-shot{width:min(240px,60%)}
  .foot-grid{grid-template-columns:1fr 1fr}
  .contact-grid{grid-template-columns:1fr}
}
/* ── Фотополосы и фото-hero ───────────────
   Тёмный оверлей — это --ink (#0d0c0a = 13,12,10) с прозрачностью,
   новых цветов не вводим. */
.photo-band{position:relative;min-height:380px;display:flex;align-items:center;
  background-size:cover;background-position:center;background-repeat:no-repeat;color:var(--cream)}
.photo-band::before{content:"";position:absolute;inset:0;
  background:linear-gradient(90deg,rgba(13,12,10,.85),rgba(13,12,10,.35))}
.photo-band>.wrap{position:relative;z-index:1}
.photo-band .photo-band-h{color:var(--cream);max-width:16em}

/* Фото-фон для hero-секций (Restaurants / Retail chains / How it works) */
.hero-photo{position:relative;background-size:cover;background-position:center;background-repeat:no-repeat}
.hero-photo::before{content:"";position:absolute;inset:0;
  background:linear-gradient(90deg,rgba(13,12,10,.85),rgba(13,12,10,.35))}
.hero-photo>.wrap{position:relative;z-index:1}

/* Отдельное фото рядом с карточками отрасли */
.sol-photo{display:block;width:100%;height:auto;border-radius:14px;
  margin:0 0 2.2rem;border:1px solid var(--cream-line)}

/* Читаемость текста поверх фото — действует ТОЛЬКО внутри .has-photo,
   обычные секции без фото не затрагиваются. */
.has-photo .eyebrow{color:var(--amber)}
.has-photo .lead{color:#f2efe8}
.has-photo h1,.has-photo h2,.has-photo .lead,.has-photo .eyebrow{
  text-shadow:0 2px 12px rgba(13,12,10,.55)}
/* Асимметричный оверлей: темно только слева-снизу под текстом, правые ~30%
   фото открыты в оригинальной яркости. Читаемость на светлых местах даёт
   text-shadow, а не общее затемнение. Только --ink с разной прозрачностью. */
.has-photo::before{background:
  linear-gradient(0deg,rgba(13,12,10,.55) 0%,rgba(13,12,10,0) 45%),
  linear-gradient(90deg,rgba(13,12,10,.82) 0%,rgba(13,12,10,.45) 42%,rgba(13,12,10,0) 72%)}

@media (max-width:720px){
  .photo-band{min-height:280px}
  .nav{position:fixed;inset:68px 0 auto 0;background:var(--ink);border-bottom:1px solid var(--line);flex-direction:column;align-items:flex-start;padding:1.2rem 24px 1.6rem;gap:1.1rem;transform:translateY(-130%);transition:transform .25s;z-index:40}
  .nav.open{transform:none}
  .nav-toggle{display:block}
  .grid-2,.grid-3{grid-template-columns:1fr}
  .stat-band,.scale-band{grid-template-columns:1fr 1fr}
  .ind-grid{grid-template-columns:1fr 1fr}
  .f-row{grid-template-columns:1fr}
  .ticks.two-col{columns:1}
  .phones{flex-wrap:wrap}
  .band{padding:56px 0}
}
@media (max-width:460px){
  .grid-4,.ind-grid,.steps{grid-template-columns:1fr}
  .brand-name{font-size:.9rem}
}
