/* vavada0943.casino — бенто-сетка на 6 колонок. Префикс .sapph-, палитра в :root. */

:root {
  --bg:    #0a1020;   /* фон страницы, виден в зазорах сетки */
  --bg2:   #101830;   /* вложенные блоки внутри плиток */
  --card:  #131c33;   /* фон плитки */
  --line:  #25304b;   /* тонкие рамки */
  --line2: #3a4869;   /* активные рамки */
  --tx:    #eef1f8;   /* основной текст */
  --tx2:   #9aa3b8;   /* вторичный текст */
  --tx3:   #78829c;   /* подписи и метки */
  --acc:   #ffb27a;   /* акцент 1 — абрикосовый */
  --acc2:  #dee3ee;   /* акцент 2 — светлый сине-серый */
}

* { box-sizing: border-box }
html { scroll-behavior: smooth }
body {
  margin: 0;
  font: 16px/1.68 "PT Sans", ui-sans-serif, -apple-system, "Segoe UI", Arial, sans-serif;
  color: var(--tx); background: var(--bg); -webkit-font-smoothing: antialiased;
}
h1, h2, h3 { font-family: "Yeseva One", system-ui, sans-serif; line-height: 1.22; margin: 0 0 14px }
p { margin: 0 0 14px }
a { color: var(--acc); text-decoration: none }
a:hover { text-decoration: underline }

.sapph-skip { position: absolute; top: -44px; left: 12px; background: var(--acc); color: #0a1020; padding: 9px 14px; border-radius: 8px; z-index: 99 }
.sapph-skip:focus { top: 12px }
.sapph-w { max-width: 1220px; margin: 0 auto; padding: 0 20px }

/* шапка */
.sapph-top { position: sticky; top: 0; z-index: 50; background: rgba(10, 16, 32, .93); backdrop-filter: blur(10px) }
.sapph-top__in { max-width: 1220px; margin: 0 auto; padding: 12px 20px; display: flex; align-items: center; gap: 18px }
.sapph-brand { display: flex; align-items: center; gap: 11px; color: var(--tx) }
.sapph-brand svg { width: 34px; height: 34px }
.sapph-brand__n { font-family: "Yeseva One", sans-serif; font-size: 18px; line-height: 1 }
.sapph-brand__s { display: block; font-size: 10px; letter-spacing: 2.2px; text-transform: uppercase; color: var(--tx3); margin-top: 5px }
.sapph-nav { display: flex; gap: 17px; margin-left: auto; flex-wrap: wrap }
.sapph-nav a { color: var(--tx2); font-size: 14px; min-height: 44px; display: inline-flex; align-items: center }

/* кнопки */
.sapph-b { display: inline-flex; align-items: center; justify-content: center; min-height: 44px; padding: 12px 22px; font-family: "Yeseva One", sans-serif; font-size: 14px; border-radius: 12px; border: 1px solid transparent }
.sapph-b--go { background: var(--acc); color: #0a1020; font-weight: 600 }
.sapph-b--gh { border-color: var(--line2); color: var(--tx) }
.sapph-b--sm { padding: 9px 16px; font-size: 13px; background: var(--bg2); border-color: var(--line2) }
.sapph-b--lg { padding: 15px 30px; font-size: 15px }

/* ГЛАВНОЕ: сквозная бенто-сетка на 6 колонок */
.sapph-grid { display: grid; grid-template-columns: repeat(6, 1fr); gap: 14px; padding: 26px 0 34px; align-items: start }

/* плитка */
.sapph-tile { position: relative; grid-column: span 6; border: 1px solid var(--line); border-radius: 18px; background: var(--card); padding: 26px 24px 24px }
.sapph-tile--w6 { grid-column: span 6 }
.sapph-tile--w4 { grid-column: span 4 }
.sapph-tile--w3 { grid-column: span 3 }
.sapph-tile--w2 { grid-column: span 2 }
.sapph-tile--flat { background: var(--bg2); border-color: var(--line2) }
.sapph-tile--tight { padding: 18px 18px 16px }
.sapph-tile h2 { font-size: clamp(20px, 2.6vw, 28px); max-width: 26ch }
.sapph-tile h3 { font-size: 15.5px }
.sapph-p { color: var(--tx2); font-size: 16.5px; max-width: 78ch }
.sapph-note { color: var(--tx3); font-size: 14px; max-width: 76ch; margin-bottom: 0 }

/* метка-«ушко» в верхнем углу плитки */
.sapph-ear { display: inline-flex; align-items: center; gap: 8px; margin: -40px 0 16px -6px; padding: 6px 13px; border: 1px solid var(--line2); border-radius: 999px; background: var(--bg); font-family: "Yeseva One", sans-serif; font-size: 10.5px; letter-spacing: 2px; text-transform: uppercase; color: var(--tx3) }
.sapph-ear__n { color: var(--acc); font-size: 11.5px; letter-spacing: 1px }

/* первый экран */
.sapph-hero { padding-bottom: 30px }
.sapph-hero h1 { font-size: clamp(27px, 4vw, 44px); max-width: 20ch }
.sapph-hero__p { color: var(--tx2); font-size: 17.5px; max-width: 62ch }
.sapph-hero__cta { display: flex; gap: 12px; flex-wrap: wrap; margin: 22px 0 4px }
.sapph-num__v { display: block; font-family: "Yeseva One", sans-serif; font-size: clamp(20px, 2.6vw, 28px); color: var(--acc2); line-height: 1.1 }
.sapph-num__l { display: block; font-size: 12.5px; color: var(--tx3); margin-top: 7px }

/* таблицы */
.sapph-scroll { overflow-x: auto; -webkit-overflow-scrolling: touch; margin-top: 16px }
.sapph-t { width: 100%; border-collapse: collapse; font-size: 14.5px; min-width: 560px }
.sapph-t th { text-align: left; font-family: "Yeseva One", sans-serif; font-size: 11.5px; letter-spacing: 1.2px; text-transform: uppercase; color: var(--tx3); padding: 11px 12px; border-bottom: 1px solid var(--line2) }
.sapph-t td { padding: 12px; border-bottom: 1px solid var(--line); color: var(--tx2); vertical-align: top }
.sapph-t tr:last-child td { border-bottom: 0 }
.sapph-t td:first-child { color: var(--tx) }

/* списки внутри узких плиток */
.sapph-list { list-style: none; padding: 0; margin: 14px 0 0; counter-reset: s }
.sapph-list li { position: relative; counter-increment: s; padding: 10px 0 10px 34px; border-top: 1px solid var(--line); font-size: 14.5px; color: var(--tx2); min-height: 44px }
.sapph-list li:first-child { border-top: 0 }
.sapph-list li::before { content: counter(s); position: absolute; left: 0; top: 9px; width: 23px; height: 23px; border-radius: 8px; background: var(--bg2); border: 1px solid var(--line2); color: var(--acc); font-family: "Yeseva One", sans-serif; font-size: 12px; display: flex; align-items: center; justify-content: center }
.sapph-src { list-style: none; padding: 0; margin: 12px 0 0 }
.sapph-src li { padding: 9px 0; border-top: 1px dashed var(--line); font-size: 14px; color: var(--tx2) }

/* внутренняя сетка плитки: документы 2x2, FAQ в две колонки */
.sapph-in2 { display: grid; grid-template-columns: 1fr 1fr; gap: 14px; margin-top: 16px }
.sapph-box { border: 1px solid var(--line); border-radius: 14px; background: var(--bg2); padding: 16px 17px }
.sapph-box p { font-size: 14.5px; color: var(--tx2); margin: 0 }

/* турнир и отзывы */
.sapph-prize { font-family: "Yeseva One", sans-serif; font-size: clamp(22px, 3vw, 32px); color: var(--acc2); margin: 6px 0 4px }
.sapph-rev p { font-size: 14.5px; color: var(--tx2) }
.sapph-rev__m { display: block; font-size: 12.5px; color: var(--tx3) }

/* FAQ */
.sapph-faq details { border: 1px solid var(--line); border-radius: 14px; background: var(--bg2); padding: 13px 16px }
.sapph-faq summary { cursor: pointer; font-family: "Yeseva One", sans-serif; font-size: 14.5px; list-style: none; min-height: 44px; display: flex; align-items: center; gap: 9px }
.sapph-faq summary::-webkit-details-marker { display: none }
.sapph-faq summary::before { content: "+"; color: var(--acc); font-size: 17px; line-height: 1 }
.sapph-faq details[open] summary::before { content: "–"; color: var(--acc2) }
.sapph-faq p { margin: 8px 0 0; font-size: 14.5px; color: var(--tx2) }

/* полоса CTA плиткой */
.sapph-cta { display: flex; justify-content: space-between; align-items: center; gap: 20px; flex-wrap: wrap; border-color: var(--line2); background: linear-gradient(105deg, rgba(255, 178, 122, .16), rgba(222, 227, 238, .07) 60%, transparent) }
.sapph-cta p { font-family: "Yeseva One", sans-serif; font-size: clamp(18px, 2.3vw, 26px); margin: 0; max-width: 32ch }
.sapph-cta__b { display: flex; gap: 12px; flex-wrap: wrap }

/* редакция */
.sapph-auth h3 { font-size: 15.5px; margin-bottom: 10px }
.sapph-auth p { color: var(--tx2); font-size: 14.5px; max-width: 92ch; margin: 0 }

/* футер */
.sapph-f { padding: 30px 0 52px; font-size: 13.5px; color: var(--tx3) }
.sapph-f__g { display: grid; grid-template-columns: 1.5fr 1fr 1fr; gap: 26px; margin-bottom: 20px }
.sapph-f h4 { font-family: "Yeseva One", sans-serif; font-size: 12px; letter-spacing: 1.6px; text-transform: uppercase; color: var(--tx2); margin-bottom: 10px }
.sapph-f ul { list-style: none; padding: 0; margin: 0 }
.sapph-f li { margin-bottom: 6px }
.sapph-f a { color: var(--tx2) }
.sapph-18 { display: inline-block; border: 1px solid var(--acc2); color: var(--acc2); padding: 6px 11px; border-radius: 999px; font-family: "Yeseva One", sans-serif; margin-bottom: 10px }
.sapph-f__law { border-top: 1px solid var(--line); padding-top: 16px; line-height: 1.75 }

@media (max-width: 1000px) {
  .sapph-grid { grid-template-columns: 1fr; gap: 12px }
  .sapph-tile, .sapph-tile--w6, .sapph-tile--w4, .sapph-tile--w3, .sapph-tile--w2 { grid-column: span 1 }
  .sapph-in2, .sapph-f__g { grid-template-columns: 1fr }
  .sapph-ear { margin-top: -34px }
}
@media (max-width: 600px) {
  .sapph-top__in { flex-wrap: wrap; padding: 10px 15px }
  .sapph-nav { width: 100%; order: 3; margin-left: 0; gap: 13px }
  .sapph-w, .sapph-top__in { padding-left: 15px; padding-right: 15px }
  .sapph-tile { padding: 22px 16px 18px; border-radius: 16px }
  .sapph-t { font-size: 13.5px }
  .sapph-t th, .sapph-t td { padding: 9px 8px }
  .sapph-cta { text-align: left }
}
