/* Страница «Маркировка» (ru/markirovka). Префикс классов — rk-.
   Перенесено из HTML-блока Tilda без изменений вида; отступ под фиксированную шапку — белая полоса 60 px, как было. */
/* ---------- Design tokens (re:Kassa brand) ---------- */
.rk-page{
  display: block;
  border-top: 60px solid #fff;
  --radius: 16px;
  --bg: #F2F2F2;
  --fg: #003837;
  --card: #FFFFFF;
  --primary: #003837;
  --primary-fg: #F7FBFA;
  --secondary: #E7F2EF;
  --muted-fg: rgba(0,56,55,.6);
  --accent: #00E673;
  --accent-fg: #003837;
  --warning: #FFA401;
  --warning-fg: #003837;
  --border: rgba(0,56,55,.1);
  --ease: cubic-bezier(.16,1,.3,1);
  --font: 'GolosMabry', Arial, sans-serif;
  font-family: var(--font);
  background: var(--bg);
  color: var(--fg);
  -webkit-font-smoothing: antialiased;
}
.rk-page :where(*){ box-sizing: border-box; }
.rk-page :where(img){ max-width:100%; display:block; }
.rk-page :where(a){ color:inherit; text-decoration:none; }
.rk-page :where(ul,ol){ margin:0; padding:0; list-style:none; }
.rk-page :where(h1,h2,h3,p){ margin:0; }
.rk-page :where(button){ font:inherit; color:inherit; background:none; border:0; cursor:pointer; padding:0; }
html{ scroll-behavior:smooth; }
.rk-sprite{ display:none; }

.rk-container{ max-width:1152px; margin:0 auto; padding:0 24px; }
.rk-container-lg{ max-width:1280px; margin:0 auto; padding:0 24px; }
.rk-container-sm{ max-width:768px; margin:0 auto; padding:0 24px; }
.rk-container-xs{ max-width:672px; margin:0 auto; padding:0 24px; }

.rk-icon{ width:1em; height:1em; stroke:currentColor; fill:none; stroke-width:2; stroke-linecap:round; stroke-linejoin:round; flex-shrink:0; }
.rk-icon.filled{ fill:currentColor; stroke:none; }

/* ---------- Hero ---------- */
.rk-hero{ position:relative; overflow:hidden; padding:96px 0 128px; text-align:center; }
.rk-badge{ display:inline-flex; align-items:center; gap:8px; border-radius:999px; border:1px solid rgba(0,230,115,.2); background:rgba(0,230,115,.1); padding:6px 12px; font-size:12px; font-weight:700; text-transform:uppercase; letter-spacing:.05em; margin-bottom:32px; }
.rk-dot{ position:relative; display:inline-flex; width:8px; height:8px; }
.rk-dot::before{ content:''; position:absolute; inset:0; border-radius:999px; background:var(--accent); opacity:.75; animation:rk-ping 1.6s cubic-bezier(0,0,.2,1) infinite; }
.rk-dot::after{ content:''; position:relative; display:block; width:8px; height:8px; border-radius:999px; background:var(--accent); }
@keyframes rk-ping{ 75%,100%{ transform:scale(2.2); opacity:0; } }
.rk-hero h1{ margin:0 0 32px; font-size:2rem; font-weight:800; line-height:1.1; letter-spacing:-.02em; }
.rk-hero p.lead{ max-width:640px; margin:0 auto 40px; color:var(--muted-fg); font-size:1rem; }
.rk-hero-actions{ display:flex; flex-direction:column; align-items:center; justify-content:center; gap:16px; }
.rk-btn-primary{ width:100%; border-radius:16px; background:var(--primary); color:var(--primary-fg); padding:16px 32px; font-weight:700; box-shadow:0 20px 40px rgba(0,56,55,.1); transition:transform .2s; display:inline-block; text-align:center; }
.rk-btn-primary:hover{ transform:translateY(-2px); }
.rk-link-underline{ font-weight:600; color:rgba(0,56,55,.8); text-decoration:underline; text-decoration-color:var(--accent); text-decoration-thickness:2px; text-underline-offset:4px; }
.rk-link-underline:hover{ color:var(--fg); }
@media (min-width:640px){
  .rk-hero h1{ font-size:3rem; }
  .rk-hero p.lead{ font-size:1.25rem; }
  .rk-hero-actions{ flex-direction:row; }
  .rk-btn-primary{ width:auto; }
}
@media (min-width:768px){ .rk-hero h1{ font-size:3.75rem; } }

.rk-scan-visual{ margin-top:80px; display:flex; justify-content:center; }
.rk-scan-card{ position:relative; border-radius:24px; border:1px solid var(--border); background:var(--card); padding:16px; box-shadow:0 30px 60px rgba(0,0,0,.15); }
.rk-scan-frame{ position:relative; display:flex; width:192px; height:192px; align-items:center; justify-content:center; overflow:hidden; border-radius:16px; background:var(--secondary); }
@media (min-width:768px){ .rk-scan-frame{ width:256px; height:256px; } }
.rk-datamatrix{ display:grid; grid-template-columns:repeat(8,1fr); gap:4px; opacity:.25; padding:16px; }
.rk-datamatrix span{ width:16px; height:16px; }
.rk-datamatrix span.on{ background:var(--primary); }
.rk-scan-line{ position:absolute; left:16px; right:16px; top:0; height:4px; background:var(--accent); box-shadow:0 0 15px var(--accent); animation:rk-scan 2.4s var(--ease) infinite; }
@keyframes rk-scan{ 0%{ transform:translateY(-100%); opacity:0; } 50%{ opacity:1; } 100%{ transform:translateY(4700%); opacity:0; } }

/* ---------- Teal sections ---------- */
.rk-teal{ position:relative; overflow:hidden; background:var(--primary); color:var(--primary-fg); padding:96px 0; }
.rk-teal-top{ border-radius:60px 60px 0 0; }
.rk-teal-bottom{ border-radius:0 0 60px 60px; }
.rk-eyebrow{ display:inline-flex; align-items:center; gap:8px; font-size:12px; font-weight:700; text-transform:uppercase; letter-spacing:.2em; color:var(--accent); margin-bottom:16px; }
.rk-eyebrow-pill{ border-radius:999px; border:1px solid rgba(0,230,115,.3); background:rgba(0,230,115,.1); padding:6px 12px; }
.rk-glow{ position:absolute; border-radius:999px; filter:blur(60px); pointer-events:none; }

.rk-grid-2{ display:grid; gap:64px; align-items:center; }
@media (min-width:768px){ .rk-grid-2{ grid-template-columns:1fr 1fr; } }
.rk-panel{ border-radius:24px; border:1px solid rgba(255,255,255,.1); background:rgba(255,255,255,.1); padding:32px; backdrop-filter:blur(4px); }
.rk-panel-icon{ display:flex; width:56px; height:56px; align-items:center; justify-content:center; border-radius:16px; background:rgba(0,230,115,.2); margin-bottom:24px; font-size:28px; }
.rk-panel h3{ font-size:1.5rem; font-weight:700; margin-bottom:16px; }
.rk-panel ul{ display:flex; flex-direction:column; gap:16px; }
.rk-num{ display:flex; width:28px; height:28px; flex-shrink:0; align-items:center; justify-content:center; border-radius:999px; background:var(--accent); color:var(--primary); font-size:12px; font-weight:700; }
.rk-teal h2{ font-size:2.25rem; font-weight:700; letter-spacing:-.02em; margin-bottom:24px; }
@media (min-width:768px){ .rk-teal h2{ font-size:3rem; } }
.rk-teal p.big{ font-size:1.125rem; line-height:1.6; color:rgba(247,251,250,.8); margin-bottom:24px; }
@media (min-width:768px){ .rk-teal p.big{ font-size:1.25rem; } }
.rk-teal p.soft{ line-height:1.6; color:rgba(247,251,250,.7); }

.rk-flow{ position:relative; margin-top:80px; }
.rk-flow-grid{ display:grid; grid-template-columns:repeat(2,1fr); gap:16px; }
@media (min-width:768px){ .rk-flow-grid{ grid-template-columns:repeat(4,1fr); } }
.rk-flow-item{ position:relative; display:flex; flex-direction:column; align-items:center; gap:16px; border-radius:16px; border:1px solid rgba(255,255,255,.1); background:rgba(255,255,255,.1); padding:24px; text-align:center; transition:.3s; }
.rk-flow-item:hover{ transform:translateY(-4px); background:rgba(255,255,255,.15); }
.rk-flow-icon{ display:flex; width:56px; height:56px; align-items:center; justify-content:center; border-radius:16px; background:rgba(0,230,115,.2); font-size:24px; }
.rk-flow-item span.lbl{ font-size:14px; font-weight:600; }
.rk-flow-arrow{ position:absolute; right:-12px; top:50%; transform:translateY(-50%); color:var(--accent); display:none; }
@media (min-width:768px){ .rk-flow-arrow{ display:block; } }

.rk-center{ text-align:center; }
.rk-cards-4{ display:grid; gap:24px; margin-top:64px; }
@media (min-width:640px){ .rk-cards-4{ grid-template-columns:1fr 1fr; } }
@media (min-width:1024px){ .rk-cards-4{ grid-template-columns:repeat(4,1fr); } }
.rk-feature{ border-radius:24px; border:1px solid rgba(255,255,255,.1); background:rgba(255,255,255,.1); padding:32px; transition:.3s; }
.rk-feature:hover{ transform:translateY(-4px); background:rgba(255,255,255,.15); }
.rk-feature .rk-flow-icon{ margin-bottom:20px; }
.rk-feature h3{ font-size:1.25rem; font-weight:700; margin-bottom:12px; }
.rk-feature p{ font-size:14px; line-height:1.6; color:rgba(247,251,250,.8); }

.rk-compare{ display:grid; gap:24px; margin-top:0; }
@media (min-width:768px){ .rk-compare{ grid-template-columns:1fr 1fr; } }
.rk-compare-card{ border-radius:24px; border:1px solid rgba(255,255,255,.1); background:rgba(255,255,255,.1); padding:32px; }
.rk-compare-head{ display:flex; align-items:center; gap:16px; margin-bottom:24px; }
.rk-compare-head h3{ font-size:1.5rem; font-weight:700; text-transform:uppercase; letter-spacing:.15em; color:var(--accent); }
.rk-compare-card li{ display:flex; align-items:flex-start; gap:12px; line-height:1.6; color:rgba(247,251,250,.8); margin-bottom:16px; }
.rk-compare-card li:last-child{ margin-bottom:0; }
.rk-compare-card li::before{ content:''; margin-top:8px; width:6px; height:6px; flex-shrink:0; border-radius:999px; background:var(--accent); }
.rk-compare-card strong{ color:var(--primary-fg); }
.rk-example{ margin-top:32px; border-radius:16px; border-left:4px solid var(--accent); background:rgba(255,255,255,.05); padding:24px; line-height:1.6; color:rgba(247,251,250,.8); }
.rk-example strong{ color:var(--accent); }

/* ---------- Light sections ---------- */
.rk-section{ padding:96px 0; }
.rk-section.bg-secondary{ background:var(--secondary); }
.rk-heading-eyebrow{ font-size:12px; font-weight:700; text-transform:uppercase; letter-spacing:.15em; color:rgba(0,56,55,.6); margin-bottom:12px; }
.rk-heading h2{ font-size:1.875rem; font-weight:800; letter-spacing:-.02em; }
@media (min-width:768px){ .rk-heading h2{ font-size:2.25rem; } }
.rk-heading p{ margin-top:16px; color:var(--muted-fg); }
.rk-heading.max{ max-width:640px; }

.rk-start-grid{ display:grid; gap:64px; align-items:center; }
@media (min-width:768px){ .rk-start-grid{ grid-template-columns:1fr 1fr; } }
.rk-steps-list{ margin-top:32px; display:flex; flex-direction:column; gap:16px; }
.rk-steps-list li{ display:flex; gap:16px; border-radius:16px; border:1px solid var(--border); background:var(--card); padding:24px; }
.rk-steps-list .rk-num-lg{ display:flex; width:32px; height:32px; flex-shrink:0; align-items:center; justify-content:center; border-radius:999px; background:var(--primary); color:var(--primary-fg); font-size:14px; font-weight:700; }
.rk-steps-list p.t{ font-weight:600; }
.rk-steps-list p.s{ margin-top:4px; font-size:14px; color:var(--muted-fg); }

.rk-mock{ border-radius:24px; border:1px solid var(--border); background:var(--card); padding:32px; box-shadow:0 20px 40px rgba(0,0,0,.08); }
.rk-mock-head{ display:flex; align-items:center; gap:12px; margin-bottom:24px; font-size:14px; font-weight:600; color:var(--muted-fg); }
.rk-mock-row{ display:flex; align-items:center; justify-content:space-between; border-radius:16px; border:1px solid var(--border); background:var(--secondary); padding:20px; font-weight:600; }
.rk-switch{ position:relative; display:inline-flex; width:48px; height:28px; align-items:center; border-radius:999px; background:var(--accent); }
.rk-switch span{ position:absolute; right:4px; width:20px; height:20px; border-radius:999px; background:var(--primary); box-shadow:0 1px 2px rgba(0,0,0,.2); }
.rk-mock-note{ margin-top:16px; font-size:12px; color:var(--muted-fg); }

.rk-callout{ margin-top:48px; border-radius:24px; border:1px solid rgba(0,230,115,.3); background:rgba(0,230,115,.1); padding:32px; }
.rk-callout h3{ font-size:1.125rem; font-weight:700; margin-bottom:12px; }
.rk-callout p{ max-width:640px; font-size:14px; line-height:1.6; color:var(--muted-fg); margin-bottom:16px; }
.rk-callout a{ display:inline-flex; align-items:center; gap:8px; font-size:14px; font-weight:700; text-decoration:underline; text-decoration-color:var(--accent); text-decoration-thickness:2px; text-underline-offset:4px; }

.rk-section-head-row{ display:flex; flex-direction:column; justify-content:space-between; gap:24px; margin-bottom:64px; }
@media (min-width:768px){ .rk-section-head-row{ flex-direction:row; align-items:flex-end; } }
.rk-btn-outline{ display:inline-flex; width:fit-content; align-items:center; justify-content:center; gap:8px; border-radius:16px; border:1px solid var(--primary); padding:12px 24px; font-weight:700; color:var(--primary); transition:.2s; white-space:nowrap; }
.rk-btn-outline:hover{ background:var(--primary); color:var(--primary-fg); }

/* carousel */
.rk-slider{ position:relative; }
.rk-slider-track{ display:flex; overflow-x:auto; scroll-snap-type:x mandatory; gap:16px; padding-bottom:4px; scrollbar-width:none; -ms-overflow-style:none; }
.rk-slider-track::-webkit-scrollbar{ display:none; }
.rk-slide{ scroll-snap-align:start; flex:0 0 88%; min-width:0; }
@media (min-width:640px){ .rk-slide{ flex:0 0 48%; } }
@media (min-width:1024px){ .rk-slide{ flex:0 0 32%; } }
.rk-step-card{ height:100%; display:flex; flex-direction:column; border-radius:24px; border:1px solid var(--border); background:var(--card); padding:28px; box-shadow:0 10px 25px rgba(0,56,55,.05); transition:.3s; }
.rk-step-card:hover{ transform:translateY(-4px); border-color:rgba(0,230,115,.4); }
.rk-step-top{ display:flex; align-items:flex-start; justify-content:space-between; gap:12px; margin-bottom:24px; }
.rk-step-icon{ display:flex; width:56px; height:56px; flex-shrink:0; align-items:center; justify-content:center; border-radius:16px; background:rgba(0,230,115,.15); font-size:26px; }
.rk-step-num{ font-size:2.5rem; font-weight:900; line-height:1; color:rgba(0,56,55,.1); }
.rk-step-badge{ display:inline-flex; width:fit-content; align-items:center; gap:6px; border-radius:999px; background:rgba(0,230,115,.1); color:var(--primary); padding:4px 12px; font-size:10px; font-weight:700; text-transform:uppercase; letter-spacing:.15em; margin-bottom:12px; }
.rk-step-badge .dot{ width:6px; height:6px; border-radius:999px; background:rgba(0,230,115,.7); }
.rk-step-card h3{ font-size:1.125rem; font-weight:700; margin-bottom:12px; }
@media (min-width:640px){ .rk-step-card h3{ font-size:1.25rem; } }
.rk-step-card p{ font-size:14px; line-height:1.6; color:var(--muted-fg); }
.rk-slider-progress{ margin-top:32px; display:flex; align-items:center; gap:16px; }
.rk-progress-track{ height:6px; flex:1; min-width:0; overflow:hidden; border-radius:999px; background:rgba(0,56,55,.1); }
.rk-progress-fill{ height:100%; border-radius:999px; background:var(--accent); transition:width .5s var(--ease); }
.rk-progress-label{ flex-shrink:0; font-size:12px; font-weight:700; color:var(--muted-fg); font-variant-numeric:tabular-nums; }
.rk-slider-nav{ margin-top:24px; display:flex; align-items:center; justify-content:center; gap:16px; }
.rk-slider-btn{ display:flex; width:44px; height:44px; flex-shrink:0; align-items:center; justify-content:center; border-radius:999px; border:1px solid var(--border); background:var(--card); color:var(--primary); box-shadow:0 1px 2px rgba(0,0,0,.05); transition:.15s; }
.rk-slider-btn:hover{ border-color:var(--accent); background:rgba(0,230,115,.1); }
.rk-slider-btn:disabled{ opacity:.4; cursor:default; }
.rk-slider-dots{ display:flex; align-items:center; gap:8px; }
.rk-slider-dots button{ height:10px; width:10px; border-radius:999px; background:rgba(0,56,55,.2); transition:.3s; }
.rk-slider-dots button.active{ width:32px; background:var(--primary); }
.rk-slider-hint{ margin-top:16px; text-align:center; font-size:12px; color:var(--muted-fg); }
@media (min-width:640px){ .rk-slider-hint{ display:none; } }

.rk-pills{ margin-top:48px; display:flex; flex-wrap:wrap; gap:12px; }
.rk-pill{ border-radius:999px; border:1px solid var(--border); background:var(--card); padding:10px 20px; font-size:14px; font-weight:600; }
.rk-note-box{ margin-top:32px; max-width:768px; border-radius:16px; border:1px solid rgba(0,230,115,.3); background:rgba(0,230,115,.1); padding:24px; font-size:14px; line-height:1.6; }

.rk-icon-grid{ display:grid; grid-template-columns:repeat(2,1fr); gap:16px; margin-top:64px; }
@media (min-width:768px){ .rk-icon-grid{ grid-template-columns:repeat(3,1fr); } }
@media (min-width:1024px){ .rk-icon-grid{ grid-template-columns:repeat(6,1fr); } }
.rk-icon-tile{ border-radius:16px; border:1px solid var(--border); background:var(--card); padding:24px; text-align:center; transition:.2s; }
.rk-icon-tile:hover{ box-shadow:0 10px 25px rgba(0,56,55,.08); }
.rk-icon-tile .rk-flow-icon{ margin:0 auto 12px; width:48px; height:48px; background:rgba(0,230,115,.15); color:var(--primary); }
.rk-icon-tile span{ font-size:12px; font-weight:700; text-transform:uppercase; letter-spacing:-.01em; }
.rk-foot-note{ margin:48px auto 0; max-width:640px; text-align:center; font-size:14px; color:var(--muted-fg); }
.rk-foot-note.strong{ margin-top:12px; font-weight:600; color:var(--fg); }

.rk-when-grid{ display:grid; gap:16px; margin-top:48px; }
@media (min-width:640px){ .rk-when-grid{ grid-template-columns:1fr 1fr; } }
@media (min-width:1024px){ .rk-when-grid{ grid-template-columns:repeat(4,1fr); } }
.rk-when-item{ display:flex; align-items:center; gap:12px; border-radius:16px; border:1px solid var(--border); background:var(--card); padding:16px 20px; font-size:14px; font-weight:600; }
.rk-when-item .rk-icon{ color:#00a75c; }

.rk-fines{ position:relative; overflow:hidden; border-radius:2rem; background:var(--warning); color:var(--warning-fg); padding:40px 24px; }
@media (min-width:768px){ .rk-fines{ padding:64px; } }
.rk-fines-bg{ position:absolute; right:12px; top:4px; font-size:5rem; font-weight:900; opacity:.1; user-select:none; line-height:1; }
@media (min-width:640px){ .rk-fines-bg{ right:24px; top:16px; font-size:9rem; } }
.rk-fines h2{ position:relative; font-size:1.875rem; font-weight:800; letter-spacing:-.02em; margin-bottom:24px; }
.rk-fines p{ position:relative; font-size:1.125rem; font-weight:600; color:rgba(0,56,55,.8); margin-bottom:16px; }
.rk-fines-grid{ position:relative; display:grid; gap:24px; margin-top:40px; }
@media (min-width:640px){ .rk-fines-grid{ grid-template-columns:repeat(3,1fr); } }
.rk-fine-card{ border-radius:16px; border:1px solid rgba(255,255,255,.3); background:rgba(255,255,255,.3); padding:24px; }
.rk-fine-card span.lbl{ display:block; margin-bottom:8px; font-size:14px; font-weight:700; text-transform:uppercase; }
.rk-fine-card span.val{ font-size:1.875rem; font-weight:900; }
.rk-fines a{ position:relative; margin-top:40px; display:inline-flex; align-items:center; gap:8px; font-size:14px; font-weight:700; text-decoration:underline; text-underline-offset:4px; }

.rk-accordion{ margin-top:48px; display:flex; flex-direction:column; gap:16px; }
.rk-acc-item{ border-radius:16px; border:1px solid var(--border); background:var(--card); }
.rk-acc-item[open]{ border-color:var(--accent); }
.rk-acc-item summary{ display:flex; cursor:pointer; list-style:none; align-items:center; justify-content:space-between; gap:16px; padding:24px; font-weight:700; }
.rk-acc-item summary::-webkit-details-marker{ display:none; }
.rk-acc-arrow{ display:flex; width:24px; height:24px; flex-shrink:0; align-items:center; justify-content:center; border-radius:999px; background:var(--secondary); transition:transform .2s; }
.rk-acc-item[open] .rk-acc-arrow{ transform:rotate(180deg); }
.rk-acc-body{ padding:0 24px 24px; font-size:14px; line-height:1.6; color:var(--muted-fg); }
.rk-acc-body ul{ list-style:disc; padding-left:20px; margin:8px 0; }
.rk-acc-body li{ margin-bottom:8px; }

.rk-cta{ background:var(--primary); color:var(--primary-fg); padding:96px 0; text-align:center; }
@media (min-width:768px){ .rk-cta{ padding:128px 0; } }
.rk-cta-icon{ margin:0 auto 40px; display:flex; width:64px; height:64px; align-items:center; justify-content:center; border-radius:16px; background:var(--accent); color:var(--primary); font-size:28px; }
.rk-cta h2{ font-size:2.25rem; font-weight:800; letter-spacing:-.02em; margin-bottom:24px; }
@media (min-width:768px){ .rk-cta h2{ font-size:3rem; } }
.rk-cta p.sub{ font-size:1.125rem; color:rgba(247,251,250,.6); margin-bottom:40px; }
.rk-cta-list{ margin:0 auto 48px; display:grid; max-width:576px; gap:12px; text-align:left; }
@media (min-width:640px){ .rk-cta-list{ grid-template-columns:1fr 1fr; } }
.rk-cta-list li{ display:flex; align-items:flex-start; gap:8px; font-size:14px; color:rgba(247,251,250,.8); }
.rk-cta-list .rk-icon{ margin-top:2px; color:var(--accent); }
.rk-cta-actions{ display:flex; flex-direction:column; align-items:center; justify-content:center; gap:16px; }
@media (min-width:640px){ .rk-cta-actions{ flex-direction:row; } }
.rk-btn-lg-accent{ width:100%; border-radius:16px; background:var(--accent); color:var(--accent-fg); padding:20px 40px; font-weight:900; transition:transform .2s; }
.rk-btn-lg-accent:hover{ transform:scale(1.05); }
.rk-btn-lg-ghost{ display:inline-flex; width:100%; align-items:center; justify-content:center; gap:8px; border-radius:16px; border:1px solid rgba(255,255,255,.2); padding:20px 40px; font-weight:600; transition:.2s; }
.rk-btn-lg-ghost:hover{ background:rgba(255,255,255,.1); }
@media (min-width:640px){ .rk-btn-lg-accent,.rk-btn-lg-ghost{ width:auto; } }

.rk-enter{ animation:rk-fade-up .6s var(--ease) both; }
@keyframes rk-fade-up{ from{ opacity:0; transform:translateY(20px); } to{ opacity:1; transform:none; } }
