.elementor-kit-13{--e-global-color-4635ff0:#FFD700;--e-global-typography-primary-font-family:"Roboto";--e-global-typography-primary-font-weight:600;--e-global-typography-secondary-font-family:"Roboto Slab";--e-global-typography-secondary-font-weight:400;--e-global-typography-text-font-family:"Roboto";--e-global-typography-text-font-weight:400;--e-global-typography-accent-font-family:"Roboto";--e-global-typography-accent-font-weight:500;color:#000000;}.elementor-kit-13 button,.elementor-kit-13 input[type="button"],.elementor-kit-13 input[type="submit"],.elementor-kit-13 .elementor-button{background-color:#FFD700;color:#000000;border-radius:5px 5px 5px 5px;}.elementor-kit-13 e-page-transition{background-color:#FFBC7D;}.elementor-kit-13 a{color:#000000;}.elementor-kit-13 h1{color:#FFFFFF;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1140px;}.e-con{--container-max-width:1140px;}.elementor-widget:not(:last-child){margin-block-end:20px;}.elementor-element{--widgets-spacing:20px 20px;--widgets-spacing-row:20px;--widgets-spacing-column:20px;}{}h1.entry-title{display:var(--page-title-display);}.site-header .site-branding{flex-direction:column;align-items:stretch;}.site-header{padding-inline-end:0px;padding-inline-start:0px;}.site-footer .site-branding{flex-direction:column;align-items:stretch;}@media(max-width:1024px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:767px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}/* Start custom CSS *//* ========= CXM-compliant base tokens + components (drop-in) ========= */
/* Fonts (per CXM: Montserrat for headings, Poppins for body) */
@import url('https://fonts.googleapis.com/css2?family=Montserrat:wght@600;700;800&family=Poppins:wght@400;500;600&display=swap');

/* ---------- Tokens ---------- */
:root {
  /* Brand palette (CXM) */
  --cxm-white:    #FFFFFF;
  --cxm-black:    #000000;
  --cxm-ink:      #1E1E1E;
  --cxm-green:    #7CBE56;
  --cxm-grey:     #4E4E4E;
  --cxm-offwhite: #E8E9E9;

  /* Shadows */
  --shadow-strong: 0 12px 30px rgba(0,0,0,0.2);
  --shadow-medium: 0 8px 25px rgba(0,0,0,0.15);
  --shadow-light:  0 4px 15px rgba(0,0,0,0.1);

  /* Radii & transitions */
  --radius-lg: 24px;
  --radius-md: 12px;
  --radius-full: 50px;
  --transition: all .3s ease;

  /* Typography */
  --font-heading: "Montserrat", system-ui, -apple-system, "Segoe UI", Roboto, Arial, sans-serif;
  --font-body:    "Poppins", system-ui, -apple-system, "Segoe UI", Roboto, Arial, sans-serif;

  --fs-hero: clamp(2rem, 1.2rem + 2.5vw, 2.8rem);
  --fs-h2:   clamp(1.5rem, 1.1rem + 1.2vw, 1.75rem);
  --fs-h3:   1.25rem;
  --fs-h4:   1.125rem;
  --fs-h5:   .875rem;
  --fs-body: 1rem;

  --lh-heading: 1.2;
  --lh-body:    1.5;

  /* Layout */
  --container: 1200px;
  --gutter: 24px;

  /* Buttons */
  --btn-primary-bg:   var(--cxm-green);
  --btn-primary-text: var(--cxm-black);
  --btn-outline-text: var(--cxm-white);
  --btn-outline-bd:   rgba(255,255,255,.85);

  /* Links & focus */
  --link:  var(--cxm-ink);
  --focus: 2px solid var(--cxm-green);

  /* Header background */
  --header-gradient: linear-gradient(135deg, #1E1E1E 0%, #111 50%, #000 100%);
  --header-overlay: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNDAiIGhlaWdodD0iNDAiIHZpZXdCb3g9IjAgMCA0MCA0MCIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48Y2lyY2xlIGN4PSI1IiBjeT0iNSIgcj0iMSIgZmlsbD0iI2ZmZmZmZiIgZmlsbC1vcGFjaXR5PSIwLjA3Ii8+PC9zdmc+");
}

/* ---------- Base / layout ---------- */
*,
*::before,
*::after { box-sizing: border-box; }

html { scroll-behavior: smooth; }

body {
  margin: 0;
  font-family: var(--font-body);
  font-size: var(--fs-body);
  line-height: var(--lh-body);
  color: var(--cxm-ink);
  background: var(--cxm-offwhite);
}

.container {
  max-width: var(--container);
  padding-inline: var(--gutter);
  margin-inline: auto;
}

/* Typography */
h1,h2,h3,h4,h5,h6 {
  font-family: var(--font-heading);
  line-height: var(--lh-heading);
  margin: 0 0 .6em;
  color: var(--cxm-ink);
}
h1 { font-size: var(--fs-hero); font-weight: 800; letter-spacing: .02em; }
h2 { font-size: var(--fs-h2);   font-weight: 700; letter-spacing: .01em; }
h3 { font-size: var(--fs-h3);   font-weight: 600; letter-spacing: .005em; }
h4 { font-size: var(--fs-h4);   font-weight: 600; letter-spacing: .005em; }
h5 { font-size: var(--fs-h5);   font-weight: 600; letter-spacing: .01em; text-transform: uppercase; }
p  { margin: 0 0 1em; }

a { color: var(--link); text-decoration-thickness: .08em; }
a:focus-visible, button:focus-visible, input:focus-visible {
  outline: var(--focus);
  outline-offset: 2px;
}

/* ---------- CXM-safe adaptation of your classes ---------- */
/* ===== Header ===== */
.custom-gradient-header {
  background-image: var(--header-gradient), var(--header-overlay);
  background-size: cover, auto;
  background-position: center;
  background-repeat: no-repeat;
  padding: 40px 20px;
  border-radius: var(--radius-lg);
  text-align: center;
  box-shadow: var(--shadow-strong);
  margin: 30px 0;
  position: relative;
  overflow: hidden;
}

.custom-gradient-header h1 {
  color: var(--cxm-white);
  font-size: var(--fs-hero);
  font-weight: 800;
  margin: 0 0 20px;
  letter-spacing: -0.02em;
}

.custom-gradient-header p {
  color: rgba(255,255,255,.9);
  font-size: 1.1em;
  margin: 0 0 30px;
}

.custom-gradient-header > div {
  display: flex;
  gap: 15px;
  justify-content: center;
  flex-wrap: wrap;
  align-items: center;
}

/* Primary CTA */
.custom-gradient-header a:first-child {
  background: var(--btn-primary-bg);
  color: var(--btn-primary-text);
  padding: 15px 40px;
  font-size: 16px;
  border-radius: var(--radius-full);
  font-weight: 700;
  text-decoration: none;
  display: inline-block;
  box-shadow: 0 8px 24px rgba(124, 190, 86, 0.35);
  transition: var(--transition);
}
.custom-gradient-header a:first-child:hover {
  transform: translateY(-2px);
  box-shadow: 0 12px 32px rgba(124, 190, 86, 0.45);
}

/* Secondary CTA */
.custom-gradient-header a:last-child {
  background: transparent;
  color: var(--btn-outline-text);
  border: 2px solid var(--btn-outline-bd);
  padding: 15px 40px;
  font-size: 16px;
  border-radius: var(--radius-full);
  font-weight: 700;
  text-decoration: none;
  display: inline-block;
  transition: var(--transition);
}
.custom-gradient-header a:last-child:hover {
  transform: translateY(-2px);
  box-shadow: 0 8px 24px rgba(255,255,255,0.15);
}

/* Generic hover */
.custom-gradient-header a:hover { text-decoration: none; }

/* ===== Content buttons ===== */
.custom-content-btn,
.elementor-button.elementor-button-link {
  background: var(--btn-primary-bg);
  color: var(--btn-primary-text);
  padding: 15px 30px;
  border-radius: var(--radius-full);
  text-decoration: none;
  display: inline-block;
  font-weight: 700;
  font-size: 16px;
  box-shadow: 0 6px 20px rgba(124, 190, 86, 0.35);
  transition: var(--transition);
  border: none;
  cursor: pointer;
}
.custom-content-btn:hover,
.elementor-button.elementor-button-link:hover {
  transform: translateY(-2px);
  box-shadow: 0 8px 28px rgba(124, 190, 86, 0.45);
}

/* ===== Content blocks ===== */
.custom-takeaways,
.custom-toc,
.custom-content-block,
.custom-faq {
  background: var(--cxm-white);
  box-shadow: var(--shadow-light);
  border-radius: var(--radius-md);
  padding: 25px;
  margin: 30px 0;
  border: 1px solid rgba(0,0,0,0.04);
  transition: var(--transition);
}

.custom-takeaways {
  background: linear-gradient(135deg, #F1FAF0 0%, #E6F6E2 100%);
  border-left: 4px solid var(--cxm-green);
  border-color: rgba(124,190,86,0.15);
}
.custom-takeaways h3 {
  color: var(--cxm-ink);
  margin: 0 0 15px;
  font-size: var(--fs-h3);
  font-weight: 700;
}
.custom-takeaways li {
  color: #2D3748;
  margin-bottom: 12px;
  line-height: 1.7;
  font-size: 16px;
  font-family: var(--font-body);
}

/* Table of contents / section headings */
.custom-toc {
  background: linear-gradient(135deg, #F7FAFC 0%, #EDF2F7 100%);
  border: 1px solid rgba(124,190,86,0.15);
}
.custom-toc h3,
.custom-content-block h2,
.custom-faq h2 {
  color: var(--cxm-ink);
  border-bottom: 3px solid var(--cxm-green);
  padding: 0 0 12px;
  margin: 0 0 22px;
  font-size: var(--fs-h2);
  font-weight: 700;
  line-height: 1.3;
}
.custom-toc a {
  color: var(--cxm-ink);
  text-decoration: none;
  font-weight: 500;
  font-size: 16px;
  line-height: 1.6;
  display: block;
  padding: 8px 0;
  transition: var(--transition);
}
.custom-toc a:hover { transform: translateX(4px); }

/* FAQ subsection headings */
.custom-faq h4 {
  color: var(--cxm-ink);
  font-family: var(--font-heading);
  font-weight: 600;
  font-size: var(--fs-h4);
  margin: 0 0 12px;
  letter-spacing: .005em;
}

/* Generic text inside content blocks */
.custom-content-block p,
.custom-faq p {
  color: #4A5568;
  font-family: var(--font-body);
  line-height: 1.7;
  font-size: 16px;
  font-weight: 400;
  margin-bottom: 16px;
}

/* Hover elevation */
.custom-takeaways:hover,
.custom-toc:hover,
.custom-content-block:hover,
.custom-faq:hover {
  transform: translateY(-2px);
  box-shadow: 0 8px 32px rgba(0, 0, 0, 0.08);
}

/* ===== Tables / misc ===== */
.custom-table-scroll { width: 100%; overflow-x: auto; }

/* ===== Footer separator ===== */
.elementor-location-footer .e-con.e-parent {
  border-top: 2px solid var(--cxm-ink);
  padding-top: 20px;
}

/* ---------- Accessibility helpers ---------- */
.custom-gradient-header a:focus-visible,
.custom-content-btn:focus-visible,
.elementor-button.elementor-button-link:focus-visible,
.custom-toc a:focus-visible {
  outline: var(--focus);
  outline-offset: 3px;
}

/* ---------- Responsive ---------- */
@media (max-width: 768px) {
  .custom-gradient-header { padding: 32px 18px; margin: 24px 0; }
  .custom-gradient-header h1 { font-size: clamp(1.8rem, 1.2rem + 2.5vw, 2.2rem); }
  .custom-gradient-header p  { font-size: 1.05rem; }
  .custom-takeaways,
  .custom-toc,
  .custom-content-block,
  .custom-faq { padding: 22px; margin: 22px 0; }
}

/* ---------- Optional strict theme hook ---------- */
.theme-cxm .custom-gradient-header {
  background-image: linear-gradient(135deg, #1E1E1E 0%, #2A2A2A 50%, #000 100%);
}
.theme-cxm .custom-toc a:hover { color: var(--cxm-ink); }

/* --- FIX: стабильные отступы в FAQ --- */
.custom-faq {
  display: flow-root;
  padding: 32px;
}

.custom-faq > * + * { margin-top: 16px; }
.custom-faq h2 {
  margin: 0 0 16px 0;
  padding-bottom: 12px;
  border-bottom: 3px solid var(--cxm-green);
}
.custom-faq .faq-item + .faq-item {
  margin-top: 16px;
  padding-top: 12px;
  border-top: 1px solid rgba(0,0,0,0.06);
}
.custom-faq h3,
.custom-faq h4,
.custom-faq h5 { margin: 0 0 8px 0; line-height: 1.3; }
.custom-faq p { margin: 0 0 12px 0; }
.custom-faq p:last-child { margin-bottom: 0; }
.custom-faq ul, .custom-faq ol {
  margin: 0 0 12px 0;
  padding-left: 1.25rem;
}
.custom-faq li + li { margin-top: 6px; }
.custom-faq [class*="elementor"] { margin-top: 0; margin-bottom: 0; }
@media (max-width: 768px) {
  .custom-faq { padding: 24px; }
  .custom-faq > * + * { margin-top: 12px; }
  .custom-faq h2 { padding-bottom: 10px; }
}

/* ── CXM fonts only inside custom blocks ── */
.custom-gradient-header,
.custom-content-block,
.custom-faq {
  font-family: "Poppins", system-ui, -apple-system, "Segoe UI", Roboto, Arial, sans-serif;
  line-height: 1.6;
  color: #1E1E1E;
}

.custom-gradient-header h1,
.custom-content-block h2,
.custom-content-block h3,
.custom-content-block h4,
.custom-content-block h5,
.custom-content-block h6,
.custom-faq h2,
.custom-faq h3,
.custom-faq h4,
.custom-faq h5 {
  font-family: "Montserrat", system-ui, -apple-system, "Segoe UI", Roboto, Arial, sans-serif;
  font-weight: 700;
}

/* Белый текст только в хедере */
.custom-gradient-header,
.custom-gradient-header p,
.custom-gradient-header a {
  color: rgba(255,255,255,0.9);
}

/* Кнопки внутри шапки */
.custom-gradient-header a {
  font-family: "Poppins", system-ui, -apple-system, "Segoe UI", Roboto, Arial, sans-serif;
  font-weight: 600;
}

/* для копирайта, если есть */
.footer-copy, .site-footer p:last-child {
  font-family: "Poppins", sans-serif;
  font-size: 13px;
  color: rgba(255, 255, 255, 0.7);
  text-align: center;
  letter-spacing: 0.02em;
  margin-top: 12px;
}

.custom-gradient-header > div {
  margin-top: clamp(20px, 3vw, 32px);
}/* End custom CSS */