/* === Миас + · Mobile overrides (mobile-first column stack) === */
.cp .cp-wrap { max-width: 100%; padding: 0 16px; }
.cp .cp-grid, .cp [class*="cp-grid-"], .cp .cp-flex:not(.cp-flex-row-keep) {
  display: flex; flex-direction: column; gap: 16px;
}
.cp[data-mode="wireframes"] .cp-wrap { max-width: none; }
.cp h1, .cp .cp-display { font-size: clamp(28px, 9vw, 44px); line-height: 1.05; }
.cp h2 { font-size: clamp(22px, 7vw, 32px); line-height: 1.1; }
.cp h3 { font-size: clamp(18px, 5.5vw, 24px); line-height: 1.2; }
.cp h4 { font-size: clamp(16px, 4.5vw, 20px); }
.cp p, .cp li { font-size: 15px; line-height: 1.5; }
.cp .cp-eyebrow, .cp .cp-mono { font-size: 11px; letter-spacing: 0.18em; }
.cp .cp-btn, .cp .cp-btn-primary, .cp .cp-btn-secondary, .cp .cp-btn-lg, .cp .cp-btn-sm,
.cp [class*="cp-btn"]:not(.cp-btn-icon):not(.cp-btn-row):not(.cp-tab),
.cp button:not(.cp-btn-icon):not(.cp-tab):not(.cp-nav-trigger) {
  width: 100% !important; max-width: 100% !important; min-height: 44px !important;
  font-size: 14px !important; padding: 12px 18px !important;
  text-align: center !important; justify-content: center !important;
  white-space: normal !important; word-break: break-word;
}
.cp .cp-btn span, .cp [class*="cp-btn"] span { white-space: normal !important; word-break: keep-all; }
.cp .cp-btn-icon { width: auto; min-width: 44px; min-height: 44px; }
.cp .cp-btn-row, .cp .cp-flex-buttons { flex-direction: column; gap: 12px; }
.cp .cp-nav-panel, .cp [class*="cp-nav-panel"], .cp .cp-dd-panel,
.cp [class*="dd-panel"], .cp [data-role="dropdown-panel"] { display: none !important; }
.cp .cp-nav-trigger { white-space: nowrap; font-size: 12px; padding: 6px 8px; }
.cp .cp-nav-dd { position: static !important; }
.cp header *, .cp [class*="cp-nav"] { flex-wrap: wrap !important; }
.cp [class*="cp-nav"] > * { flex-shrink: 1 !important; min-width: 0 !important; }
.cp header > div, .cp .cp-top, .cp [class*="cp-header"] { width: 100% !important; flex-wrap: wrap !important; }
.cp header, .cp .cp-nav, .cp [data-role="header"] {
  flex-direction: column !important; align-items: stretch !important; gap: 8px; padding: 12px 16px;
}
.cp .cp-nav-links, .cp [data-role="nav-links"] {
  display: flex; flex-direction: row; flex-wrap: wrap; gap: 12px 16px; font-size: 13px;
}
.cp .cp-nav-cta, .cp [data-role="cta"] { width: 100%; }
@media (max-width: 768px) {
  .cp::before { display: none; }
  .cp-radial-bg { background: none; }
  .cp-grid-bg { background-size: 40px 40px; opacity: 0.4; }
  [style*="filter: blur"], [style*="filter:blur"] { filter: none !important; }
  .cp { overflow-x: hidden; }
  .cp * { max-width: 100%; }
  .cp img, .cp video, .cp canvas, .cp svg { max-width: 100%; height: auto; }
}
.cp-hero, .cp [class*="hero"] {
  flex-direction: column !important; text-align: left;
  padding: 24px 0; gap: 18px !important;
}
.cp-hero img, .cp [class*="hero"] img, .cp [class*="hero"] svg { max-width: 280px; height: auto; }
.cp .cp-card, .cp .cp-panel, .cp [class*="card"], .cp [class*="panel"] {
  width: 100%; margin: 0 auto; padding: 16px; font-size: 14px;
}
.cp .cp-marquee, .cp [class*="marquee"] { font-size: 11px; padding: 8px 0; }
.cp .cp-stats, .cp [class*="stats"] {
  display: grid !important; grid-template-columns: 1fr 1fr; gap: 16px; flex-direction: unset !important;
}
.cp [class*="stats"] [class*="stat-"]:nth-child(n) { text-align: center; }
.cp table { display: block; overflow-x: auto; white-space: nowrap; -webkit-overflow-scrolling: touch; }
.cp a, .cp button, .cp [role="button"], .cp input, .cp select, .cp textarea { min-height: 44px; }
.cp input, .cp textarea, .cp select { font-size: 16px; }
.cp form, .cp .cp-form { display: flex; flex-direction: column; gap: 12px; width: 100%; }
.cp .cp-form-row { flex-direction: column; gap: 12px; }
@media (hover: none) {
  .cp .cp-btn:active, .cp [role="button"]:active, .cp a:active {
    transform: scale(0.98); transition: transform 0.08s ease;
  }
}
