/* accent.legal — custom styles on top of Tailwind Play CDN */

::selection {
  background-color: rgba(255, 255, 255, 0.85);
  color: #111111;
}

html {
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  text-rendering: optimizeLegibility;
  scroll-behavior: smooth;
}

body {
  font-feature-settings: "ss01", "cv11";
}

/* ----------------------------------------------------------------
   Hero overlay (тёмный градиент сверху-вниз поверх фото)
   ---------------------------------------------------------------- */
.hero-overlay {
  background-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.20), rgba(0, 0, 0, 0.80));
}

/* ----------------------------------------------------------------
   Parallax cover — fixed на desktop, scroll на touch/мобильных
   ---------------------------------------------------------------- */
.parallax {
  background-image: url('/assets/images/parallax-portrait.png');
  background-position: center;
  background-size: cover;
  background-attachment: fixed;
}
@media (max-width: 1024px), (pointer: coarse) {
  .parallax { background-attachment: scroll; }
}

/* ----------------------------------------------------------------
   Hero CTA — двойная объёмная тень в духе Tilda
   ---------------------------------------------------------------- */
.btn-cta {
  box-shadow: -4px -4px 10px 0 #454545, 4px 4px 10px 0 #000;
  transition: transform 200ms ease, background-color 200ms ease;
}
.btn-cta:hover { transform: translateY(-1px); }
.btn-cta:active { transform: translateY(0); }

/* ----------------------------------------------------------------
   Скошенный wave-разделитель между секциями (как Tilda T796)
   ---------------------------------------------------------------- */
.wave-divider svg { display: block; width: 100%; height: 4vw; min-height: 24px; }

/* ----------------------------------------------------------------
   Native <dialog> для контактной формы
   ---------------------------------------------------------------- */
dialog::backdrop {
  background: rgba(0, 0, 0, 0.6);
  backdrop-filter: blur(4px);
  -webkit-backdrop-filter: blur(4px);
}
dialog {
  padding: 0;
  border: 0;
  border-radius: 12px;
  max-width: 92vw;
  max-height: 92vh;
}

/* ----------------------------------------------------------------
   Footer submenu (договоры оферты)
   ---------------------------------------------------------------- */
.submenu[hidden] { display: none; }

/* ----------------------------------------------------------------
   AOS — выключаем для reduced motion
   ---------------------------------------------------------------- */
@media (prefers-reduced-motion: reduce) {
  [data-aos] {
    opacity: 1 !important;
    transform: none !important;
    transition: none !important;
  }
  html { scroll-behavior: auto; }
}

/* ----------------------------------------------------------------
   Soft scrollbar (webkit)
   ---------------------------------------------------------------- */
::-webkit-scrollbar { width: 10px; height: 10px; }
::-webkit-scrollbar-track { background: transparent; }
::-webkit-scrollbar-thumb { background: rgba(17, 17, 17, 0.15); border-radius: 8px; }
::-webkit-scrollbar-thumb:hover { background: rgba(17, 17, 17, 0.3); }

/* ----------------------------------------------------------------
   Article typography — используется в /ru/blog/article.php
   Светлая версия (на ksim.pro была тёмная — там тёмный фон страницы).
   ---------------------------------------------------------------- */
.prose-article {
  color: #111111;
  font-size: 1.0625rem;
  line-height: 1.75;
}
.prose-article > * + * { margin-top: 1.25rem; }
.prose-article h2 { margin-top: 3.5rem; margin-bottom: 1.25rem; font-size: 1.75rem; font-weight: 500; letter-spacing: -0.02em; }
.prose-article h3 { margin-top: 2.5rem; margin-bottom: 1rem;    font-size: 1.375rem; font-weight: 500; letter-spacing: -0.01em; }
.prose-article a { color: #111111; text-decoration: underline; text-decoration-thickness: 1px; text-underline-offset: 3px; }
.prose-article a:hover { text-decoration-thickness: 2px; }
.prose-article ul, .prose-article ol { margin: 1.25rem 0; padding-left: 1.5rem; }
.prose-article ul { list-style: disc; }
.prose-article ol { list-style: decimal; }
.prose-article li { margin: 0.5rem 0; }
.prose-article li::marker { color: rgba(17, 17, 17, 0.4); }
.prose-article blockquote {
  margin: 1.5rem 0;
  padding-left: 1.25rem;
  border-left: 2px solid #111111;
  color: #6B7280;
  font-style: italic;
}
.prose-article code {
  background: rgba(17, 17, 17, 0.06);
  color: #111111;
  border-radius: 4px;
  padding: 0.125rem 0.375rem;
  font-size: 0.92em;
  font-family: SFMono-Regular, Menlo, Monaco, Consolas, monospace;
}
.prose-article pre {
  background: #0B0D10;
  color: #F2F2F0;
  border-radius: 0.5rem;
  padding: 1.25rem;
  overflow-x: auto;
  font-size: 0.9rem;
  margin: 1.5rem 0;
}
.prose-article pre code { background: transparent; padding: 0; color: inherit; }
.prose-article strong { color: #000000; font-weight: 600; }
.prose-article hr { margin: 2.5rem 0; border: 0; border-top: 1px solid rgba(17, 17, 17, 0.12); }
