.p3_4ffa8d7652_main { color: #fff; font-family: Arial, sans-serif; }

.p3_4ffa8d7652_container { max-width: 1200px; margin: 0 auto; padding: 0 16px; }

.p3_4ffa8d7652_cta_hero { background: linear-gradient(135deg, rgba(35, 45, 27, 0.8) 0%, rgba(16, 23, 16, 0.9) 100%), url('../img/banner-1.webp'); background-size: cover; background-position: center; padding: 80px 0; }

.p3_4ffa8d7652_hero_grid { display: grid; grid-template-columns: 1fr 1fr; gap: 48px; align-items: center; }

.p3_4ffa8d7652_hero_title { font-size: 2.5rem; font-weight: bold; color: #ffe14a; margin: 0 0 16px; line-height: 1.2; }

.p3_4ffa8d7652_hero_lead { font-size: 1.1rem; line-height: 1.6; margin: 0 0 32px; opacity: 0.9; }

.p3_4ffa8d7652_hero_actions { display: flex; gap: 16px; flex-wrap: wrap; }

.p3_4ffa8d7652_btn_primary { background: #ffe14a; color: #101710; padding: 12px 24px; border-radius: 8px; text-decoration: none; font-weight: 600; transition: transform 0.2s; }

.p3_4ffa8d7652_btn_primary:hover { transform: translateY(-2px); }

.p3_4ffa8d7652_btn_secondary { background: transparent; border: 2px solid #ffe14a; color: #fff; padding: 10px 22px; border-radius: 8px; font-weight: 600; cursor: pointer; transition: all 0.2s; }

.p3_4ffa8d7652_btn_secondary:hover { background: #ffe14a; color: #101710; }

.p3_4ffa8d7652_hero_image { width: 100%; height: auto; border-radius: 12px; }

.p3_4ffa8d7652_chapters { padding: 80px 0; background: #101710; }

.p3_4ffa8d7652_section_title { font-size: 2rem; color: #ffe14a; text-align: center; margin: 0 0 48px; }

.p3_4ffa8d7652_tabs_wrapper { background: #232d1b; border-radius: 16px; padding: 24px; }

.p3_4ffa8d7652_tab_buttons { display: flex; gap: 8px; margin-bottom: 32px; }

.p3_4ffa8d7652_tab_btn { background: transparent; border: 2px solid #ffe14a; color: #fff; padding: 12px 24px; border-radius: 8px; cursor: pointer; transition: all 0.2s; font-family: Arial, sans-serif; }

.p3_4ffa8d7652_tab_active { background: #ffe14a; color: #101710; }

.p3_4ffa8d7652_tab_panel { display: none; }

.p3_4ffa8d7652_panel_active { display: block; }

.p3_4ffa8d7652_step_content { display: grid; grid-template-columns: 2fr 1fr; gap: 32px; align-items: start; }

.p3_4ffa8d7652_step_content h3 { font-size: 1.4rem; color: #ffe14a; margin: 0 0 16px; }

.p3_4ffa8d7652_step_content p { line-height: 1.6; margin: 0 0 16px; }

.p3_4ffa8d7652_content_img { width: 100%; height: auto; border-radius: 12px; }

.p3_4ffa8d7652_cases { padding: 80px 0; background: #101710; }

.p3_4ffa8d7652_cases_grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(320px, 1fr)); gap: 24px; }

.p3_4ffa8d7652_case_card { background: #181f15; padding: 24px; border-radius: 12px; border: 1px solid #232d1b; }

.p3_4ffa8d7652_case_header { display: flex; justify-content: space-between; align-items: center; margin-bottom: 16px; }

.p3_4ffa8d7652_case_header h3 { font-size: 1.2rem; color: #ffe14a; margin: 0; }

.p3_4ffa8d7652_case_badge { background: #ffe14a; color: #101710; padding: 4px 12px; border-radius: 20px; font-size: 0.8rem; font-weight: 600; }

.p3_4ffa8d7652_case_card p { line-height: 1.5; margin: 0 0 20px; }

.p3_4ffa8d7652_case_features { display: flex; flex-wrap: wrap; gap: 8px; }

.p3_4ffa8d7652_feature { background: rgba(255, 225, 74, 0.1); border: 1px solid #ffe14a; padding: 6px 12px; border-radius: 16px; font-size: 0.85rem; color: #ffe14a; }

.p3_4ffa8d7652_banner_cta { background: linear-gradient(rgba(16, 23, 16, 0.7), rgba(35, 45, 27, 0.8)), url('../img/forBaner.webp'); background-size: cover; background-position: center; min-height: 400px; display: flex; align-items: center; }

.p3_4ffa8d7652_banner_overlay { width: 100%; }

.p3_4ffa8d7652_banner_content { text-align: center; max-width: 600px; margin: 0 auto; padding: 48px 24px; }

.p3_4ffa8d7652_banner_content h2 { font-size: 2.2rem; color: #ffe14a; margin: 0 0 16px; }

.p3_4ffa8d7652_banner_content p { font-size: 1.1rem; line-height: 1.6; margin: 0 0 32px; }

.p3_4ffa8d7652_banner_btn { display: inline-block; background: #ffe14a; color: #101710; padding: 16px 32px; border-radius: 8px; text-decoration: none; font-weight: 700; font-size: 1.1rem; transition: transform 0.2s; }

.p3_4ffa8d7652_banner_btn:hover { transform: scale(1.05); }

.p3_4ffa8d7652_qna_pairs { padding: 80px 0; background: #101710; }

.p3_4ffa8d7652_qna_grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(280px, 1fr)); gap: 32px; }

.p3_4ffa8d7652_qna_item { background: #181f15; padding: 24px; border-radius: 12px; }

.p3_4ffa8d7652_qna_question { font-size: 1.1rem; color: #ffe14a; margin: 0 0 12px; font-weight: 600; }

.p3_4ffa8d7652_qna_answer { line-height: 1.5; margin: 0; opacity: 0.9; }

.p3_4ffa8d7652_checklist_audit { padding: 80px 0; background: #232d1b; }

.p3_4ffa8d7652_checklist_wrapper { max-width: 800px; margin: 0 auto; }

.p3_4ffa8d7652_checklist_intro { margin-bottom: 32px; }

.p3_4ffa8d7652_checklist_intro p { font-size: 1.1rem; line-height: 1.6; text-align: center; margin: 0; }

.p3_4ffa8d7652_checklist { list-style: none; padding: 0; margin: 0; }

.p3_4ffa8d7652_check_item { display: flex; gap: 16px; margin-bottom: 24px; background: #181f15; padding: 20px; border-radius: 12px; }

.p3_4ffa8d7652_check_icon { background: #ffe14a; color: #101710; width: 32px; height: 32px; border-radius: 50%; display: flex; align-items: center; justify-content: center; font-weight: bold; flex-shrink: 0; }

.p3_4ffa8d7652_check_content h4 { font-size: 1.1rem; color: #ffe14a; margin: 0 0 8px; }

.p3_4ffa8d7652_check_content p { line-height: 1.5; margin: 0; opacity: 0.9; }

.p3_4ffa8d7652_faq_section { padding: 80px 0; background: #101710; }

.p3_4ffa8d7652_faq_list { max-width: 800px; margin: 0 auto; }

.p3_4ffa8d7652_faq_item { background: #232d1b; border-radius: 12px; margin-bottom: 16px; overflow: hidden; }

.p3_4ffa8d7652_faq_question { width: 100%; background: none; border: none; padding: 20px 24px; display: flex; justify-content: space-between; align-items: center; cursor: pointer; color: #fff; font-family: Arial, sans-serif; font-size: 1rem; text-align: left; }

.p3_4ffa8d7652_faq_question span { font-weight: 600; }

.p3_4ffa8d7652_faq_arrow { width: 20px; height: 20px; transition: transform 0.2s; }

.p3_4ffa8d7652_faq_answer { display: none; padding: 0 24px 20px; }

.p3_4ffa8d7652_faq_answer p { line-height: 1.6; margin: 0; }

.p3_4ffa8d7652_faq_open .p3_4ffa8d7652_faq_answer { display: block; }

.p3_4ffa8d7652_faq_open .p3_4ffa8d7652_faq_arrow { transform: rotate(180deg); }

@media (max-width: 768px) {
  .p3_4ffa8d7652_hero_grid { grid-template-columns: 1fr; gap: 32px; }
  .p3_4ffa8d7652_hero_title { font-size: 2rem; }
  .p3_4ffa8d7652_tab_buttons { flex-wrap: wrap; }
  .p3_4ffa8d7652_step_content { grid-template-columns: 1fr; gap: 24px; }
  .p3_4ffa8d7652_qna_grid { grid-template-columns: 1fr; }
  .p3_4ffa8d7652_banner_content h2 { font-size: 1.8rem; }
}

/* Enforced brand palette (#101710 / #232d1b / #ffe14a) — последним слоем; без «жёлтых всех button» */
html, body {
  background-color: #101710 !important;
}
main {
  background-color: transparent !important;
  color: #fff !important;
  font-family: Arial, sans-serif !important;
}
main * {
  font-family: inherit !important;
}
main, main p, main li, main label, main span, main small, main td, main th, main dd, main dt {
  color: #fff !important;
}
main h1, main h2, main h3, main h4, main .accent, main strong, main b {
  color: #ffe14a !important;
}
/* FAQ/аккордеон: заголовки h* внутри кнопки не делаем жёлтыми (было нечитаемо на жёлтом фоне) */
main button :is(h1, h2, h3, h4),
main [role="button"] :is(h1, h2, h3, h4) {
  color: #ffffff !important;
}
main button :is(span, p, div),
main [role="button"] :is(span, p, div) {
  color: inherit !important;
}
main a {
  color: #ffe14a !important;
}
main a:hover {
  color: #fff4a0 !important;
}
/* Tailwind / классы: жёлтая заливка — текст #101710 (перекрывает main a) */
main a[class*="bg-yellow"],
main a[class*="bg-amber"],
main a[class*="bg-lime"],
main a[class*="bg-[#ffe14a"],
main a[class*="bg-[#FFE14A"],
main button[class*="bg-yellow"],
main button[class*="bg-amber"],
main button[class*="bg-lime"],
main button[class*="bg-[#ffe14a"],
main button[class*="bg-[#FFE14A"] {
  color: #101710 !important;
}
main a[class*="bg-yellow"] *,
main a[class*="bg-amber"] *,
main button[class*="bg-yellow"] *,
main button[class*="bg-amber"] *,
main a[class*="bg-[#ffe14a"] *,
main a[class*="bg-[#FFE14A"] *,
main button[class*="bg-[#ffe14a"] *,
main button[class*="bg-[#FFE14A"] * {
  color: #101710 !important;
}
/* Контур / прозрачный фон + жёлтая рамка или ring — белый текст */
main a[class*="border-yellow"]:not([class*="bg-yellow"]),
main a[class*="border-amber"]:not([class*="bg-yellow"]):not([class*="bg-amber"]),
main button[class*="border-yellow"]:not([class*="bg-yellow-4"]):not([class*="bg-yellow-5"]):not([class*="bg-amber-4"]):not([class*="bg-amber-5"]),
main button[class*="border-amber"]:not([class*="bg-yellow"]):not([class*="bg-amber"]),
main a[class*="ring-yellow"]:not([class*="bg-yellow"]),
main button[class*="ring-yellow"]:not([class*="bg-yellow"]),
main a[class*="ring-amber"]:not([class*="bg-amber"]),
main button[class*="ring-amber"]:not([class*="bg-amber"]) {
  color: #ffffff !important;
}
main a[class*="border-yellow"]:not([class*="bg-yellow"]) *,
main button[class*="border-yellow"]:not([class*="bg-yellow"]) *,
main a[class*="ring-yellow"]:not([class*="bg-yellow"]) *,
main button[class*="ring-yellow"]:not([class*="bg-yellow"]) * {
  color: #ffffff !important;
}
/* Tailwind arbitrary: border-[#ffe14a] / ring — жёлтая обводка на прозрачном фоне = белый текст */
main a[class*="bg-transparent"][class*="border-[#ffe14a"],
main a[class*="bg-transparent"][class*="border-[#FFE14A"],
main button[class*="bg-transparent"][class*="border-[#ffe14a"],
main button[class*="bg-transparent"][class*="border-[#FFE14A"],
main a[class*="border-[#ffe14a"][class*="bg-transparent"],
main button[class*="border-[#ffe14a"][class*="bg-transparent"],
main a[class*="border-[#FFE14A"][class*="bg-transparent"],
main button[class*="border-[#FFE14A"][class*="bg-transparent"],
main a[class*="ring-[#ffe14a"]:not([class*="bg-[#ffe14a"]),
main button[class*="ring-[#ffe14a"]:not([class*="bg-[#ffe14a"]),
main a[class*="ring-[#FFE14A"]:not([class*="bg-[#ffe14a"]),
main button[class*="ring-[#FFE14A"]:not([class*="bg-[#ffe14a"]) {
  color: #ffffff !important;
}
main a[class*="bg-transparent"][class*="border-[#ffe14a"] *,
main button[class*="bg-transparent"][class*="border-[#ffe14a"] *,
main a[class*="border-[#ffe14a"][class*="bg-transparent"] *,
main button[class*="border-[#ffe14a"][class*="bg-transparent"] * {
  color: #ffffff !important;
}
/* Та же кнопка при hover с заливкой — тёмный текст */
main a[class*="border-[#ffe14a"][class*="hover:bg-[#ffe14a"]:hover,
main button[class*="border-[#ffe14a"][class*="hover:bg-[#ffe14a"]:hover,
main a[class*="border-[#FFE14A"][class*="hover:bg-[#FFE14A"]:hover,
main button[class*="border-[#FFE14A"][class*="hover:bg-[#FFE14A"]:hover {
  color: #101710 !important;
}
main a[class*="border-[#ffe14a"][class*="hover:bg-[#ffe14a"]:hover *,
main button[class*="border-[#ffe14a"][class*="hover:bg-[#ffe14a"]:hover * {
  color: #101710 !important;
}
/* Жёлтая ЗАЛИВКА CTA — только явный жёлтый фон (не border-color + transparent) */
main a[style*="background:#ffe14a"],
main a[style*="background: #ffe14a"],
main a[style*="background-color:#ffe14a"],
main a[style*="background-color: #ffe14a"],
main a[style*="linear-gradient"][style*="ffe14a"],
main a[style*="background:rgb(255, 225, 74)"],
main a[style*="background: rgb(255, 225, 74)"],
main a.bg-brand-accent {
  color: #101710 !important;
}
main a[style*="background:#ffe14a"]:hover,
main a[style*="background: #ffe14a"]:hover,
main a.bg-brand-accent:hover {
  color: #0a0f0a !important;
}
main a[style*="background:#ffe14a"] :is(span, strong, b),
main a[style*="background: #ffe14a"] :is(span, strong, b),
main a[style*="linear-gradient"][style*="ffe14a"] :is(span, strong, b),
main a.bg-brand-accent :is(span, strong, b) {
  color: #101710 !important;
}
main button[style*="background:#ffe14a"],
main button[style*="background: #ffe14a"],
main button[style*="background-color:#ffe14a"],
main button[style*="background-color: #ffe14a"],
main button[style*="linear-gradient"][style*="ffe14a"],
main button.bg-brand-accent {
  color: #101710 !important;
}
main button[style*="background:#ffe14a"] :is(span, strong, b),
main button[style*="background: #ffe14a"] :is(span, strong, b),
main button.bg-brand-accent :is(span, strong, b) {
  color: #101710 !important;
}
/* Контурные кнопки: прозрачный фон + рамка акцента — белый текст */
main button[style*="background:transparent"],
main button[style*="background: transparent"],
main button[style*="background-color:transparent"],
main button[style*="background-color: transparent"] {
  color: #ffffff !important;
}
main button[style*="background:transparent"] :is(span, strong, b),
main button[style*="background: transparent"] :is(span, strong, b),
main button[style*="background-color:transparent"] :is(span, strong, b),
main button[style*="background-color: transparent"] :is(span, strong, b) {
  color: #ffffff !important;
}
main a[style*="background:transparent"][class*="border"],
main a[style*="background: transparent"][class*="border"],
main a[style*="border"][style*="background:transparent"] {
  color: #ffffff !important;
}
main a[style*="background:transparent"] :is(span, strong, b),
main a[style*="background: transparent"] :is(span, strong, b) {
  color: #ffffff !important;
}
/* Tailwind: text-white на жёлтой заливке — тёмный текст */
main a[class*="bg-yellow"][class*="text-white"],
main button[class*="bg-yellow"][class*="text-white"],
main a[class*="bg-amber"][class*="text-white"],
main button[class*="bg-amber"][class*="text-white"],
main a[class*="bg-lime"][class*="text-white"],
main button[class*="bg-lime"][class*="text-white"] {
  color: #101710 !important;
}
main a[class*="bg-yellow"][class*="text-white"] *,
main button[class*="bg-yellow"][class*="text-white"] * {
  color: #101710 !important;
}
/* Контур: text-gray/zinc/slate на тёмном фоне — белый */
main a[class*="border-yellow"][class*="text-gray"],
main button[class*="border-yellow"][class*="text-gray"],
main a[class*="border-yellow"][class*="text-zinc"],
main button[class*="border-yellow"][class*="text-zinc"],
main a[class*="border-yellow"][class*="text-slate"],
main button[class*="border-yellow"][class*="text-slate"],
main a[class*="border-amber"][class*="text-gray"],
main button[class*="border-amber"][class*="text-gray"] {
  color: #ffffff !important;
}
main a[class*="border-yellow"][class*="text-gray"] *,
main button[class*="border-yellow"][class*="text-gray"] *,
main a[class*="border-amber"][class*="text-gray"] * {
  color: #ffffff !important;
}
/* Кнопки из промптов: primary = заливка, outline/secondary = контур */
main a.btn-primary:not([class*="outline"]),
main button.btn-primary:not([class*="outline"]),
main [class*="btn-primary"]:not([class*="outline"]):not([class*="border-2"]):not([class*="border-y"]) {
  color: #101710 !important;
}
main a[class*="btn-outline"],
main button[class*="btn-outline"],
main a.btn-secondary,
main button.btn-secondary {
  color: #ffffff !important;
}
/* Синие/indigo полосы — в палитру бренда (не «чужие» блоки) */
main section[class*="bg-blue"],
main section[class*="from-blue"],
main section[class*="to-blue"],
main [class*="bg-gradient"][class*="from-blue"],
main [class*="bg-gradient"][class*="to-indigo"] {
  background: linear-gradient(180deg, #232d1b 0%, #101710 100%) !important;
  background-color: #232d1b !important;
  background-image: linear-gradient(180deg, #232d1b 0%, #101710 100%) !important;
}
/* CTA с фоном: overlay position:absolute без высоты секции → контент наезжает на предыдущий блок */
main section[class*="cta"][style*="background"],
main section[style*="background-image"][class*="cta"] {
  position: relative !important;
  overflow: hidden !important;
  min-height: min(52vh, 440px) !important;
  isolation: isolate;
}
main section[class*="cta"] > [class*="overlay"],
main section[style*="background-image"] > div[class*="overlay"] {
  position: relative !important;
  inset: auto !important;
  top: auto !important;
  left: auto !important;
  right: auto !important;
  bottom: auto !important;
  width: 100% !important;
  min-height: 240px !important;
  padding: clamp(2rem, 5vw, 3.5rem) 1rem !important;
  box-sizing: border-box !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: center !important;
  background: rgba(0, 0, 0, 0.72) !important;
}
main section[class*="faq"],
main section[id="faq"] {
  position: relative;
  z-index: 1;
}
main section[class*="cta"] {
  z-index: 0;
}
main section[class*="cta"] a[class*="button"],
main section[class*="cta"] a[class*="cta_"] {
  display: inline-block !important;
  width: auto !important;
  max-width: min(96vw, 420px) !important;
  white-space: normal !important;
  text-align: center !important;
  line-height: 1.35 !important;
  box-sizing: border-box !important;
}
/* Вкладки шагов (registration и др.) вне #lw-games */
main section:not(#lw-games) button[data-tab].is-active,
main section:not(#lw-games) button[data-tab].lw-tab-on {
  background-color: #ffe14a !important;
  color: #101710 !important;
  border-color: #ffe14a !important;
}
main section:not(#lw-games) button[data-tab]:not(.is-active):not(.lw-tab-on) {
  background-color: transparent !important;
  color: #ffffff !important;
  border: 2px solid #ffe14a !important;
}
/* Ритм секций */
main > section {
  box-sizing: border-box;
  padding-left: max(1rem, env(safe-area-inset-left)) !important;
  padding-right: max(1rem, env(safe-area-inset-right)) !important;
  padding-top: 2.5rem !important;
  padding-bottom: 2.5rem !important;
}
/* FAQ: единый вид (как laki-19) */
main section[id*="faq"] [class*="faq-item"],
main section[class*="faq"] [class*="faq-item"],
main [class*="faq-section"] [class*="faq-item"] {
  background-color: #232d1b !important;
  border-radius: 12px !important;
  margin-bottom: 0.75rem !important;
  overflow: hidden;
}
main section[id*="faq"] [class*="faq-item"] > button,
main section[class*="faq"] [class*="faq-item"] > button,
main [class*="faq-section"] [class*="faq-item"] > button {
  color: #ffffff !important;
  width: 100%;
  text-align: left;
  padding: 0.85rem 1rem !important;
  background: transparent !important;
  border: none !important;
  font-weight: 700 !important;
}
main section[id*="faq"] h2,
main section[class*="faq"] h2,
main [class*="faq-section"] h2 {
  text-align: center !important;
  margin-bottom: 1.25rem !important;
}
/* Секции не получают принудительную полосу от генератора — только контент задаёт фон */
main > section:first-of-type {
  background-color: transparent !important;
}
/* Не переопределяем фон всех button — ломались вкладки и аккордеоны; CTA оформляй в HTML/Tailwind (жёлтая заливка + тёмный текст) */
#lw-games a,
[class*="games"] a,
[id*="games"] a {
  display: block;
  overflow: hidden;
  border-radius: 14px;
  transition: transform .22s ease, box-shadow .22s ease, filter .22s ease;
}
#lw-games a:hover,
[class*="games"] a:hover,
[id*="games"] a:hover {
  transform: translateY(-4px) scale(1.015);
  box-shadow: 0 10px 26px rgba(0,0,0,0.35);
  filter: saturate(1.12);
}
#lw-games img,
[class*="games"] img,
[id*="games"] img {
  width: 100%;
  aspect-ratio: 16 / 10;
  min-height: 140px;
  object-fit: cover !important;
  object-position: center;
  display: block;
}
/* Вкладки #lw-games: активная — жёлтая заливка #101710 текст; остальные — контур + белый текст */
#lw-games button[data-tab].is-active,
#lw-games button[data-tab][aria-pressed="true"] {
  background-color: #ffe14a !important;
  color: #101710 !important;
  border-color: #ffe14a !important;
}
#lw-games button[data-tab]:not(.is-active) {
  background-color: transparent !important;
  color: #ffffff !important;
  border: 2px solid #ffe14a !important;
}
#lw-games button[data-tab] * {
  color: inherit !important;
}
/* Постобработка patchMainCtaContrast: контраст gateway-ссылок в main */
main a.lw-cta-solid,
main a.lw-cta-solid * {
  color: #101710 !important;
}
main a.lw-cta-solid:hover {
  color: #0a0f0a !important;
}
main a.lw-cta-outline,
main a.lw-cta-outline * {
  color: #ffffff !important;
}
