{"id":4257,"date":"2025-08-19T19:11:55","date_gmt":"2025-08-19T14:11:55","guid":{"rendered":"https:\/\/cifrum.kz\/kontakty\/"},"modified":"2026-06-15T16:07:48","modified_gmt":"2026-06-15T11:07:48","slug":"kontakty","status":"publish","type":"page","link":"https:\/\/cifrum.kz\/en\/kontakty\/","title":{"rendered":"Contacts"},"content":{"rendered":"\n<style>\n\/* ===========================================================\n   Cifrum.kz \u2014 \u201cContacts\u201d page, v3 (single column).\n   All rules scoped under .custom-contact-page \u2014 do not affect\n   the header, footer or the rest of the site.\n   =========================================================== *\/\n\n.custom-contact-page{\n  --ccp-primary:#3d58bb;\n  --ccp-primary-dark:#2c45a2;\n  --ccp-primary-soft:#eef2fb;\n  --ccp-accent:#4055c8;\n  --ccp-red:#e72f2d;\n  --ccp-text:#0f1c3f;\n  --ccp-text-body:#1c2030;\n  --ccp-text-muted:#64748b;\n  --ccp-border:#e8eaf3;\n  --ccp-card:#ffffff;\n  --ccp-radius:16px;\n  --ccp-radius-sm:10px;\n  --ccp-shadow:0 4px 22px rgba(15,28,63,.05),0 1px 3px rgba(15,28,63,.04);\n  --ccp-shadow-primary:0 6px 18px rgba(61,88,187,.30);\n  font-family:-apple-system,BlinkMacSystemFont,\"Segoe UI\",Roboto,\"Helvetica Neue\",Arial,sans-serif;\n  color:var(--ccp-text-body);line-height:1.55;\n  padding:8px 0 64px;box-sizing:border-box;\n}\n.custom-contact-page *,\n.custom-contact-page *::before,\n.custom-contact-page *::after{box-sizing:border-box}\n.custom-contact-page .ccp-wrap{max-width:880px;margin:0 auto;padding:0 16px}\n\n\/* ---------- Hero ---------- *\/\n.custom-contact-page .ccp-hero{text-align:center;margin-bottom:32px;padding:8px 0}\n.custom-contact-page .ccp-hero-eyebrow{\n  display:inline-block;margin-bottom:14px;padding:6px 14px;\n  font-size:.72rem;font-weight:800;text-transform:uppercase;\n  letter-spacing:.14em;color:var(--ccp-primary);\n  background:var(--ccp-primary-soft);\n  border-radius:999px;\n}\n.custom-contact-page .ccp-hero-text{\n  margin:0 auto;max-width:680px;\n  font-size:1.08rem;color:var(--ccp-text-muted);line-height:1.55;\n  text-align:center;\n}\n\n\/* ---------- Base section card ---------- *\/\n.custom-contact-page .ccp-section{\n  background:var(--ccp-card);\n  border-radius:var(--ccp-radius);\n  padding:36px;margin-bottom:24px;\n  box-shadow:var(--ccp-shadow);\n  border:1px solid rgba(15,28,63,.04);\n  position:relative;overflow:hidden;\n}\n.custom-contact-page .ccp-section:last-of-type{margin-bottom:0}\n@media(max-width:768px){\n  .custom-contact-page .ccp-section{padding:24px 22px;margin-bottom:18px}\n}\n\n\/* Accent stripe at the top of the form card *\/\n.custom-contact-page .ccp-form-section::before{\n  content:\"\";position:absolute;top:0;left:0;right:0;height:3px;\n  background:linear-gradient(90deg,var(--ccp-primary) 0%,var(--ccp-accent) 50%,var(--ccp-red) 100%);\n}\n\n.custom-contact-page .ccp-section-heading{\n  display:flex;align-items:center;gap:14px;\n  margin:0 0 8px;font-size:1.55rem;font-weight:800;\n  color:var(--ccp-text);letter-spacing:-.012em;line-height:1.2;\n}\n.custom-contact-page .ccp-section-heading svg{\n  width:40px;height:40px;padding:9px;flex-shrink:0;\n  color:#fff;border-radius:12px;\n  background:linear-gradient(135deg,var(--ccp-primary) 0%,var(--ccp-accent) 100%);\n  box-shadow:0 4px 12px rgba(61,88,187,.25);\n}\n@media(max-width:480px){\n  .custom-contact-page .ccp-section-heading{font-size:1.3rem;gap:10px}\n  .custom-contact-page .ccp-section-heading svg{width:34px;height:34px;padding:7px}\n}\n.custom-contact-page .ccp-section-sub{\n  margin:0 0 24px;font-size:.98rem;color:var(--ccp-text-muted);line-height:1.5;\n  text-align:left;\n}\n\/* Force normal text alignment \u2014 Astra theme may set justify on the page *\/\n.custom-contact-page,\n.custom-contact-page p,\n.custom-contact-page span,\n.custom-contact-page div,\n.custom-contact-page label{text-align:left}\n.custom-contact-page .ccp-hero,\n.custom-contact-page .ccp-hero *{text-align:center}\n\n\/* ====================================================\n   1) FORM \u2014 Multipurpose\n   ==================================================== *\/\n.custom-contact-page .ccp-form{display:flex;flex-direction:column;gap:18px}\n.custom-contact-page .ccp-row-2{display:grid;grid-template-columns:1fr 1fr;gap:14px}\n@media(max-width:640px){.custom-contact-page .ccp-row-2{grid-template-columns:1fr;gap:18px}}\n\n.custom-contact-page .ccp-field{display:flex;flex-direction:column;gap:6px}\n.custom-contact-page .ccp-field label{\n  font-size:.83rem;font-weight:600;color:var(--ccp-text);\n}\n.custom-contact-page .ccp-field label .ccp-req{color:var(--ccp-red);margin-left:2px}\n.custom-contact-page .ccp-field input,\n.custom-contact-page .ccp-field select,\n.custom-contact-page .ccp-field textarea{\n  width:100%;\n  \/* Fixed height for input\/select; textarea is overridden below *\/\n  height:50px;padding:0 16px;\n  font:inherit;font-size:.96rem;line-height:1.2;\n  color:var(--ccp-text-body);\n  background:#f7f9ff;\n  border:1.5px solid var(--ccp-border);\n  border-radius:var(--ccp-radius-sm);\n  transition:border-color .18s ease,box-shadow .18s ease,background .18s ease;\n  outline:0;\n  -webkit-text-fill-color:var(--ccp-text-body);\n}\n.custom-contact-page .ccp-field input::placeholder,\n.custom-contact-page .ccp-field textarea::placeholder{\n  color:#94a3b8;opacity:1;\n}\n.custom-contact-page .ccp-field input:hover,\n.custom-contact-page .ccp-field select:hover,\n.custom-contact-page .ccp-field textarea:hover{\n  border-color:#c9d2ed;background:#fff;\n}\n.custom-contact-page .ccp-field textarea{\n  height:auto;min-height:160px;padding:14px 16px;\n  resize:vertical;line-height:1.55;\n}\n.custom-contact-page .ccp-field select{\n  appearance:none;-webkit-appearance:none;-moz-appearance:none;\n  background-image:url(\"data:image\/svg+xml;utf8,<svg xmlns='http:\/\/www.w3.org\/2000\/svg' width='12' height='8' viewBox='0 0 12 8'><path fill='none' stroke='%233d58bb' stroke-width='2' stroke-linecap='round' stroke-linejoin='round' d='M1 1.5l5 5 5-5'\/><\/svg>\");\n  background-repeat:no-repeat;background-position:right 16px center;\n  background-color:#f7f9ff;\n  padding-right:44px;cursor:pointer;\n}\n.custom-contact-page .ccp-field select:hover{background-color:#fff}\n.custom-contact-page .ccp-field input:focus,\n.custom-contact-page .ccp-field select:focus,\n.custom-contact-page .ccp-field textarea:focus{\n  border-color:var(--ccp-primary);background:#fff;\n  box-shadow:0 0 0 4px rgba(61,88,187,.14);\n}\n.custom-contact-page .ccp-field select:focus{background-color:#fff}\n\n.custom-contact-page .ccp-file{\n  display:inline-flex;align-items:center;gap:10px;\n  padding:12px 18px;font-size:.93rem;font-weight:600;\n  color:var(--ccp-primary);background:var(--ccp-primary-soft);\n  border:1px dashed rgba(61,88,187,.35);\n  border-radius:var(--ccp-radius-sm);cursor:pointer;\n  transition:background .18s ease,border-color .18s ease;\n  align-self:flex-start;\n}\n.custom-contact-page .ccp-file:hover{\n  background:#e3eaff;border-color:var(--ccp-primary);\n}\n.custom-contact-page .ccp-file svg{width:18px;height:18px}\n.custom-contact-page .ccp-file input[type=file]{\n  position:absolute;opacity:0;width:0;height:0;pointer-events:none;\n}\n\n.custom-contact-page .ccp-consent{\n  display:flex;gap:10px;align-items:flex-start;\n  font-size:.87rem;color:var(--ccp-text-muted);line-height:1.5;\n}\n.custom-contact-page .ccp-consent input[type=checkbox]{\n  margin-top:3px;flex-shrink:0;width:16px;height:16px;\n  accent-color:var(--ccp-primary);cursor:pointer;\n}\n.custom-contact-page .ccp-consent a{\n  color:var(--ccp-primary);text-decoration:underline;\n}\n\n.custom-contact-page .ccp-submit{\n  display:inline-flex;align-items:center;justify-content:center;gap:10px;\n  padding:15px 32px;margin-top:6px;\n  font:inherit;font-size:1.02rem;font-weight:700;color:#fff;\n  background:linear-gradient(135deg,var(--ccp-primary) 0%,var(--ccp-accent) 100%);\n  border:0;border-radius:var(--ccp-radius-sm);cursor:pointer;\n  box-shadow:var(--ccp-shadow-primary);\n  transition:transform .2s ease,box-shadow .2s ease;\n  align-self:flex-start;\n}\n.custom-contact-page .ccp-submit:hover{\n  transform:translateY(-1px);\n  box-shadow:0 10px 24px rgba(61,88,187,.42);\n}\n.custom-contact-page .ccp-submit:active{transform:translateY(0)}\n.custom-contact-page .ccp-submit svg{width:16px;height:16px;transition:transform .2s ease}\n.custom-contact-page .ccp-submit:hover svg{transform:translateX(4px)}\n\n\/* ====================================================\n   2) CONTACTS\n   ==================================================== *\/\n.custom-contact-page .ccp-contacts-grid{\n  display:grid;grid-template-columns:repeat(2,1fr);gap:14px;\n  margin-bottom:24px;\n}\n@media(max-width:640px){.custom-contact-page .ccp-contacts-grid{grid-template-columns:1fr}}\n\n.custom-contact-page .ccp-contact-row{\n  display:flex;align-items:center;gap:14px;\n  padding:14px 16px;\n  background:var(--ccp-primary-soft);\n  border-radius:var(--ccp-radius-sm);\n  text-decoration:none;color:var(--ccp-text);\n  transition:transform .2s ease,box-shadow .2s ease,background .2s ease;\n}\n.custom-contact-page .ccp-contact-row:hover{\n  transform:translateY(-1px);background:#e3eaff;\n  box-shadow:0 4px 14px rgba(61,88,187,.12);\n}\n.custom-contact-page .ccp-contact-icon{\n  flex:0 0 44px;width:44px;height:44px;border-radius:12px;\n  background:#fff;color:var(--ccp-primary);\n  display:inline-flex;align-items:center;justify-content:center;\n  box-shadow:0 2px 8px rgba(61,88,187,.10);\n}\n.custom-contact-page .ccp-contact-icon svg{width:20px;height:20px}\n.custom-contact-page .ccp-contact-meta{display:flex;flex-direction:column;min-width:0}\n.custom-contact-page .ccp-contact-meta small{\n  font-size:.7rem;color:var(--ccp-text-muted);\n  text-transform:uppercase;letter-spacing:.06em;font-weight:600;\n}\n.custom-contact-page .ccp-contact-meta strong{\n  font-size:1.02rem;font-weight:700;color:var(--ccp-text);margin-top:2px;\n  word-break:break-word;\n}\n\n\/* Address *\/\n.custom-contact-page .ccp-address{\n  display:flex;gap:14px;align-items:flex-start;\n  padding:16px;background:var(--ccp-primary-soft);\n  border-radius:var(--ccp-radius-sm);\n  font-size:.96rem;line-height:1.55;color:var(--ccp-text-body);\n  margin-bottom:24px;\n}\n.custom-contact-page .ccp-address-icon{\n  flex:0 0 22px;color:var(--ccp-primary);margin-top:2px;\n}\n.custom-contact-page .ccp-address-icon svg{width:22px;height:22px}\n\n\/* Official details *\/\n.custom-contact-page .ccp-sub-label{\n  display:block;margin:24px 0 12px;\n  font-size:.7rem;font-weight:800;text-transform:uppercase;\n  letter-spacing:.12em;color:var(--ccp-primary);\n}\n.custom-contact-page .ccp-credentials{display:flex;flex-direction:column;gap:8px}\n.custom-contact-page .ccp-credential{\n  display:flex;gap:12px;align-items:flex-start;\n  padding:12px 16px;background:#fafbff;\n  border:1px solid var(--ccp-border);\n  border-radius:var(--ccp-radius-sm);\n  font-size:.92rem;color:var(--ccp-text-muted);line-height:1.5;\n}\n.custom-contact-page .ccp-credential-dot{\n  flex:0 0 6px;width:6px;height:6px;border-radius:50%;\n  background:var(--ccp-primary);margin-top:9px;\n}\n.custom-contact-page .ccp-credential strong{color:var(--ccp-text);font-weight:700}\n\n\/* Social media *\/\n.custom-contact-page .ccp-socials{\n  display:flex;gap:10px;flex-wrap:wrap;margin-top:8px;\n}\n.custom-contact-page .ccp-social{\n  display:inline-flex;align-items:center;gap:8px;\n  padding:10px 16px;border-radius:999px;\n  background:#fff;border:1px solid var(--ccp-border);\n  color:var(--ccp-text);font-size:.9rem;font-weight:600;\n  text-decoration:none;transition:all .2s ease;\n}\n.custom-contact-page .ccp-social svg{width:18px;height:18px;color:var(--ccp-primary)}\n.custom-contact-page .ccp-social:hover{\n  background:var(--ccp-primary);color:#fff;border-color:var(--ccp-primary);\n  transform:translateY(-2px);\n  box-shadow:var(--ccp-shadow-primary);\n}\n.custom-contact-page .ccp-social:hover svg{color:#fff}\n\n\/* ====================================================\n   3) FAQ\n   ==================================================== *\/\n.custom-contact-page .ccp-faq{display:flex;flex-direction:column;gap:10px}\n.custom-contact-page .ccp-faq-item{\n  border:1px solid var(--ccp-border);\n  border-radius:var(--ccp-radius-sm);\n  background:#fafbff;\n  overflow:hidden;\n  transition:border-color .2s ease,box-shadow .2s ease;\n}\n.custom-contact-page .ccp-faq-item[open]{\n  border-color:rgba(61,88,187,.30);\n  box-shadow:0 4px 14px rgba(61,88,187,.08);\n  background:#fff;\n}\n.custom-contact-page .ccp-faq-item summary{\n  display:flex;align-items:center;gap:14px;\n  padding:16px 18px;cursor:pointer;\n  font-weight:700;color:var(--ccp-text);font-size:1rem;\n  list-style:none;-webkit-tap-highlight-color:transparent;\n  user-select:none;\n}\n.custom-contact-page .ccp-faq-item summary::-webkit-details-marker{display:none}\n.custom-contact-page .ccp-faq-marker{\n  flex:0 0 26px;width:26px;height:26px;border-radius:50%;\n  background:var(--ccp-primary-soft);color:var(--ccp-primary);\n  display:inline-flex;align-items:center;justify-content:center;\n  font-size:1.05rem;font-weight:700;\n  transition:transform .25s ease,background .2s ease;\n}\n.custom-contact-page .ccp-faq-item[open] .ccp-faq-marker{\n  transform:rotate(45deg);background:var(--ccp-primary);color:#fff;\n}\n.custom-contact-page .ccp-faq-q{flex:1 1 auto}\n.custom-contact-page .ccp-faq-a{\n  padding:0 18px 18px 56px;\n  font-size:.95rem;color:var(--ccp-text-muted);line-height:1.6;\n}\n@media(max-width:640px){\n  .custom-contact-page .ccp-faq-a{padding-left:18px}\n}\n\n\/* ====================================================\n   4) MAP\n   ==================================================== *\/\n.custom-contact-page .ccp-map{\n  background:var(--ccp-card);border-radius:var(--ccp-radius);\n  padding:8px;box-shadow:var(--ccp-shadow);\n  border:1px solid rgba(15,28,63,.04);overflow:hidden;\n  margin-bottom:0;\n}\n.custom-contact-page .ccp-map-frame{\n  position:relative;width:100%;aspect-ratio:21\/9;\n  border-radius:var(--ccp-radius-sm);overflow:hidden;\n  background:linear-gradient(135deg,#eef2fb 0%,#dde6f7 100%);\n}\n.custom-contact-page .ccp-map-frame iframe,\n.custom-contact-page .ccp-map-frame .ccp-map-placeholder{\n  position:absolute;inset:0;width:100%;height:100%;border:0;\n  display:flex;align-items:center;justify-content:center;\n  flex-direction:column;gap:12px;\n  color:var(--ccp-primary);font-size:.95rem;font-weight:600;\n}\n.custom-contact-page .ccp-map-placeholder svg{width:44px;height:44px;opacity:.5}\n@media(max-width:768px){\n  .custom-contact-page .ccp-map-frame{aspect-ratio:4\/3}\n}\n\n\/* ====================================================\n   5) WIZARD \u2014 stepped form\n   ==================================================== *\/\n.custom-contact-page .ccp-stepper{\n  display:flex;gap:6px;margin:0 0 28px;padding:0;list-style:none;\n}\n.custom-contact-page .ccp-stepper li{\n  flex:1;display:flex;align-items:center;gap:10px;\n  padding:10px 4px 12px;\n  font-size:.85rem;font-weight:600;color:var(--ccp-text-muted);\n  border-bottom:2px solid var(--ccp-border);\n  transition:color .25s ease,border-color .25s ease;\n}\n.custom-contact-page .ccp-stepper li .ccp-step-num{\n  display:inline-flex;align-items:center;justify-content:center;\n  width:26px;height:26px;border-radius:50%;\n  background:var(--ccp-border);color:#fff;font-size:.78rem;font-weight:700;\n  flex-shrink:0;\n  transition:all .25s ease;\n}\n.custom-contact-page .ccp-stepper li.active{\n  color:var(--ccp-primary);border-bottom-color:var(--ccp-primary);\n}\n.custom-contact-page .ccp-stepper li.active .ccp-step-num{\n  background:var(--ccp-primary);\n  box-shadow:0 4px 12px rgba(61,88,187,.30);\n}\n.custom-contact-page .ccp-stepper li.done{\n  color:var(--ccp-primary);border-bottom-color:var(--ccp-primary);\n}\n.custom-contact-page .ccp-stepper li.done .ccp-step-num{\n  background:var(--ccp-primary);\n}\n@media(max-width:540px){\n  .custom-contact-page .ccp-stepper li{font-size:.78rem;gap:6px}\n  .custom-contact-page .ccp-stepper li .ccp-step-num{width:22px;height:22px;font-size:.72rem}\n}\n\n\/* Step pane *\/\n.custom-contact-page .ccp-pane{display:none;animation:ccpFade .25s ease}\n.custom-contact-page .ccp-pane.active{display:block}\n@keyframes ccpFade{from{opacity:0;transform:translateY(4px)}to{opacity:1;transform:none}}\n\n.custom-contact-page .ccp-pane-intro{\n  margin:0 0 22px;color:var(--ccp-text-muted);font-size:.98rem;line-height:1.5;\n}\n\n\/* Topic grid *\/\n.custom-contact-page .ccp-topics{\n  display:grid;grid-template-columns:repeat(3,1fr);gap:12px;\n}\n@media(max-width:720px){.custom-contact-page .ccp-topics{grid-template-columns:repeat(2,1fr)}}\n@media(max-width:430px){.custom-contact-page .ccp-topics{grid-template-columns:1fr}}\n\n.custom-contact-page .ccp-topic{\n  display:flex;flex-direction:column;align-items:flex-start;gap:8px;\n  padding:18px 16px;\n  background:#fafbff;\n  border:1.5px solid var(--ccp-border);\n  border-radius:14px;\n  text-align:left;cursor:pointer;\n  font:inherit;color:var(--ccp-text);\n  transition:transform .25s ease,border-color .25s ease,box-shadow .25s ease,background .25s ease;\n}\n.custom-contact-page .ccp-topic:hover,\n.custom-contact-page .ccp-topic:focus-visible{\n  border-color:var(--ccp-primary);background:#fff;\n  transform:translateY(-2px);\n  box-shadow:0 10px 24px rgba(61,88,187,.14);\n  outline:none;\n}\n.custom-contact-page .ccp-topic-icon{\n  display:inline-flex;align-items:center;justify-content:center;\n  width:40px;height:40px;border-radius:12px;\n  background:var(--ccp-primary-soft);color:var(--ccp-primary);\n  margin-bottom:4px;\n  transition:background .25s ease,color .25s ease;\n}\n.custom-contact-page .ccp-topic-icon svg{width:20px;height:20px}\n.custom-contact-page .ccp-topic:hover .ccp-topic-icon{\n  background:var(--ccp-primary);color:#fff;\n}\n.custom-contact-page .ccp-topic strong{\n  font-size:.97rem;font-weight:700;line-height:1.3;color:var(--ccp-text);\n}\n.custom-contact-page .ccp-topic small{\n  font-size:.79rem;color:var(--ccp-text-muted);\n  font-weight:500;line-height:1.45;\n}\n\n\/* \u201cBack\u201d button *\/\n.custom-contact-page .ccp-back{\n  display:inline-flex;align-items:center;gap:6px;\n  margin:0 0 16px;padding:6px 0;\n  background:transparent;border:0;cursor:pointer;\n  font:inherit;font-size:.9rem;font-weight:600;color:var(--ccp-primary);\n}\n.custom-contact-page .ccp-back:hover{text-decoration:underline}\n\n\/* Selected-topic badge *\/\n.custom-contact-page .ccp-chosen{\n  display:inline-flex;align-items:center;gap:8px;\n  padding:8px 18px;margin:0 0 22px;\n  background:var(--ccp-primary-soft);\n  border-radius:999px;\n  font-size:.86rem;color:var(--ccp-text);\n}\n.custom-contact-page .ccp-chosen strong{color:var(--ccp-primary);font-weight:700}\n\n\/* Honeypot \u2014 invisible field *\/\n.custom-contact-page .ccp-hp{\n  position:absolute;left:-9999px;top:-9999px;\n  width:1px;height:1px;opacity:0;pointer-events:none;\n}\n\n\/* Action buttons *\/\n.custom-contact-page .ccp-actions{\n  display:flex;gap:12px;margin-top:8px;align-items:center;flex-wrap:wrap;\n}\n.custom-contact-page .ccp-secondary{\n  padding:13px 22px;\n  background:transparent;\n  border:1.5px solid var(--ccp-border);\n  border-radius:var(--ccp-radius-sm);\n  font:inherit;font-size:.95rem;font-weight:600;\n  color:var(--ccp-text);cursor:pointer;\n  transition:all .2s ease;\n}\n.custom-contact-page .ccp-secondary:hover{\n  background:var(--ccp-primary-soft);\n  border-color:var(--ccp-primary);\n  color:var(--ccp-primary);\n}\n\n\/* Error message *\/\n.custom-contact-page .ccp-form-error{\n  margin-top:14px;padding:12px 16px;\n  background:#fef0f0;\n  border:1px solid #fbcaca;\n  border-radius:10px;\n  color:#b3261e;font-size:.9rem;line-height:1.45;\n}\n\n\/* Success screen *\/\n.custom-contact-page .ccp-success{\n  text-align:center;padding:16px 0 8px;\n}\n.custom-contact-page .ccp-success-icon{\n  display:inline-flex;align-items:center;justify-content:center;\n  width:76px;height:76px;margin-bottom:18px;\n  background:linear-gradient(135deg,#10b981 0%,#059669 100%);\n  border-radius:50%;color:#fff;\n  box-shadow:0 14px 34px rgba(16,185,129,.32);\n}\n.custom-contact-page .ccp-success-icon svg{width:36px;height:36px}\n.custom-contact-page .ccp-success h3{\n  margin:0 0 10px;font-size:1.5rem;font-weight:800;color:var(--ccp-text);\n}\n.custom-contact-page .ccp-success p{\n  margin:0 auto 24px;max-width:480px;color:var(--ccp-text-muted);line-height:1.55;\n}\n\n\/* Submit-disabled indicator *\/\n.custom-contact-page .ccp-submit[disabled]{\n  opacity:.7;cursor:wait;transform:none !important;\n}\n\n\/* ====================================================\n   6) UPLOADER \u2014 file uploads\n   ==================================================== *\/\n.custom-contact-page .ccp-hint{\n  font-weight:500;color:var(--ccp-text-muted);font-size:.78rem;margin-left:4px;\n}\n.custom-contact-page .ccp-uploader-input{\n  position:absolute;left:-9999px;width:1px;height:1px;opacity:0;\n}\n.custom-contact-page .ccp-uploader-drop{\n  display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;\n  padding:26px 22px;\n  background:var(--ccp-primary-soft);\n  border:2px dashed rgba(61,88,187,.32);\n  border-radius:14px;cursor:pointer;\n  text-align:center;\n  transition:background .2s ease,border-color .2s ease,transform .15s ease;\n}\n.custom-contact-page .ccp-uploader-drop:hover,\n.custom-contact-page .ccp-uploader-input:focus + .ccp-uploader-drop{\n  background:#e3eaff;border-color:var(--ccp-primary);\n}\n.custom-contact-page .ccp-uploader.ccp-uploader-dragover .ccp-uploader-drop{\n  background:#dde6f7;border-color:var(--ccp-primary);\n  transform:scale(1.01);\n}\n.custom-contact-page .ccp-uploader-icon-big{\n  width:36px;height:36px;color:var(--ccp-primary);\n}\n.custom-contact-page .ccp-uploader-title{\n  font-size:.96rem;font-weight:700;color:var(--ccp-text);\n}\n.custom-contact-page .ccp-uploader-hint{\n  font-size:.78rem;color:var(--ccp-text-muted);line-height:1.5;font-weight:500;\n}\n\n\/* Selected files list *\/\n.custom-contact-page .ccp-uploader-list{\n  list-style:none;margin:12px 0 0;padding:0;\n  display:flex;flex-direction:column;gap:6px;\n}\n.custom-contact-page .ccp-uploader-item{\n  display:flex;align-items:center;gap:10px;\n  padding:10px 12px;\n  background:#fff;\n  border:1px solid var(--ccp-border);\n  border-radius:10px;\n  font-size:.88rem;\n  animation:ccpFade .25s ease;\n}\n.custom-contact-page .ccp-uploader-item-icon{\n  display:inline-flex;align-items:center;justify-content:center;\n  flex:0 0 32px;width:32px;height:32px;border-radius:8px;\n  background:var(--ccp-primary-soft);color:var(--ccp-primary);\n}\n.custom-contact-page .ccp-uploader-item-icon svg{width:16px;height:16px}\n.custom-contact-page .ccp-uploader-item-name{\n  flex:1;min-width:0;\n  word-break:break-all;font-weight:600;color:var(--ccp-text);\n}\n.custom-contact-page .ccp-uploader-item-size{\n  flex-shrink:0;color:var(--ccp-text-muted);font-size:.78rem;font-weight:500;\n}\n.custom-contact-page .ccp-uploader-remove{\n  flex-shrink:0;\n  display:inline-flex;align-items:center;justify-content:center;\n  width:28px;height:28px;padding:0;\n  background:transparent;border:0;border-radius:8px;cursor:pointer;\n  color:var(--ccp-text-muted);\n  transition:background .15s ease,color .15s ease;\n}\n.custom-contact-page .ccp-uploader-remove svg{width:16px;height:16px}\n.custom-contact-page .ccp-uploader-remove:hover{\n  background:#fef0f0;color:var(--ccp-red);\n}\n\n.custom-contact-page .ccp-uploader-error{\n  margin-top:8px;padding:10px 14px;\n  background:#fef0f0;border:1px solid #fbcaca;border-radius:10px;\n  color:#b3261e;font-size:.85rem;line-height:1.4;\n}\n<\/style>\n\n\n<div class=\"custom-contact-page\">\n  <div class=\"ccp-wrap\">\n\n    <!-- ============ Hero subheading ============ -->\n    <div class=\"ccp-hero\">\n      <span class=\"ccp-hero-eyebrow\">Contact the editorial team<\/span>\n      <p class=\"ccp-hero-text\">We are always open to new topics, suggestions and partnerships. Drop us a line \u2014 we will do our best to reply within 1\u20132 business days.<\/p>\n    <\/div>\n\n    <!-- ============ 1) FORM (wizard, 3 steps) ============ -->\n    <section class=\"ccp-section ccp-form-section\">\n      <h2 class=\"ccp-section-heading\">\n        <svg viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><path d=\"M4 4h16c1.1 0 2 .9 2 2v12c0 1.1-.9 2-2 2H4c-1.1 0-2-.9-2-2V6c0-1.1.9-2 2-2z\"\/><polyline points=\"22,6 12,13 2,6\"\/><\/svg>\n        Write to the editors\n      <\/h2>\n      <p class=\"ccp-section-sub\">Fill the form in three steps \u2014 we&#8217;ll show only the fields you need and respond within 1\u20132 business days.<\/p>\n\n      <form id=\"ccp-wizard\" class=\"ccp-form ccp-wizard\"\n            data-language=\"en\"\n            data-msg-sending=\"Sending\u2026\"\n            data-msg-validation=\"Please fill in the required fields correctly\"\n            data-msg-network=\"Failed to send. Please try again in a minute.\"\n            data-msg-rate=\"Too many attempts. Please wait a minute and try again.\"\n            novalidate>\n\n        <ol class=\"ccp-stepper\" aria-hidden=\"true\">\n          <li class=\"active\"><span class=\"ccp-step-num\">1<\/span><span>Topic<\/span><\/li>\n          <li><span class=\"ccp-step-num\">2<\/span><span>Details<\/span><\/li>\n          <li><span class=\"ccp-step-num\">3<\/span><span>Done<\/span><\/li>\n        <\/ol>\n\n        <!-- Honeypot \u2014 invisible to real users, bots fill it -->\n        <input class=\"ccp-hp\" type=\"text\" name=\"website\" tabindex=\"-1\" autocomplete=\"off\" aria-hidden=\"true\">\n        <input type=\"hidden\" name=\"topic\" id=\"ccp-topic-input\">\n        <input type=\"hidden\" name=\"language\" value=\"en\">\n\n        <!-- ===== Step 1: topic ===== -->\n        <div class=\"ccp-pane active\" data-pane=\"1\">\n          <p class=\"ccp-pane-intro\">Choose a topic \u2014 we&#8217;ll show only the relevant fields.<\/p>\n          <div class=\"ccp-topics\">\n            <button type=\"button\" class=\"ccp-topic\" data-topic=\"news\">\n              <span class=\"ccp-topic-icon\"><svg viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><path d=\"M4 22h16a2 2 0 002-2V4a2 2 0 00-2-2H8a2 2 0 00-2 2v16a2 2 0 01-2 2zm0 0a2 2 0 01-2-2v-9c0-1.1.9-2 2-2h2\"\/><path d=\"M18 14h-8m8-4h-8m4-4h-4\"\/><\/svg><\/span>\n              <strong>Submit a news tip<\/strong>\n              <small>Story, documents, photos<\/small>\n            <\/button>\n            <button type=\"button\" class=\"ccp-topic\" data-topic=\"press\">\n              <span class=\"ccp-topic-icon\"><svg viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><path d=\"M14 2H6a2 2 0 00-2 2v16a2 2 0 002 2h12a2 2 0 002-2V8z\"\/><polyline points=\"14 2 14 8 20 8\"\/><line x1=\"16\" y1=\"13\" x2=\"8\" y2=\"13\"\/><line x1=\"16\" y1=\"17\" x2=\"8\" y2=\"17\"\/><polyline points=\"10 9 9 9 8 9\"\/><\/svg><\/span>\n              <strong>Press release<\/strong>\n              <small>From a company or agency<\/small>\n            <\/button>\n            <button type=\"button\" class=\"ccp-topic\" data-topic=\"advertising\">\n              <span class=\"ccp-topic-icon\"><svg viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><path d=\"M3 11l18-5v12L3 14v-3z\"\/><path d=\"M11.6 16.8a3 3 0 11-5.8-1.6\"\/><\/svg><\/span>\n              <strong>Advertising &#038; partnerships<\/strong>\n              <small>Media kit, special projects<\/small>\n            <\/button>\n            <button type=\"button\" class=\"ccp-topic\" data-topic=\"expert\">\n              <span class=\"ccp-topic-icon\"><svg viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><path d=\"M12 20h9\"\/><path d=\"M16.5 3.5a2.12 2.12 0 013 3L7 19l-4 1 1-4L16.5 3.5z\"\/><\/svg><\/span>\n              <strong>Become an author \/ expert<\/strong>\n              <small>Columns and commentary<\/small>\n            <\/button>\n            <button type=\"button\" class=\"ccp-topic\" data-topic=\"correction\">\n              <span class=\"ccp-topic-icon\"><svg viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><path d=\"M10.29 3.86L1.82 18a2 2 0 001.71 3h16.94a2 2 0 001.71-3L13.71 3.86a2 2 0 00-3.42 0z\"\/><line x1=\"12\" y1=\"9\" x2=\"12\" y2=\"13\"\/><line x1=\"12\" y1=\"17\" x2=\"12.01\" y2=\"17\"\/><\/svg><\/span>\n              <strong>Correction or complaint<\/strong>\n              <small>Report an error in an article<\/small>\n            <\/button>\n            <button type=\"button\" class=\"ccp-topic\" data-topic=\"general\">\n              <span class=\"ccp-topic-icon\"><svg viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><path d=\"M21 15a2 2 0 01-2 2H7l-4 4V5a2 2 0 012-2h14a2 2 0 012 2z\"\/><\/svg><\/span>\n              <strong>General inquiry<\/strong>\n              <small>Reach the editorial team<\/small>\n            <\/button>\n          <\/div>\n        <\/div>\n\n        <!-- ===== Step 2: details ===== -->\n        <div class=\"ccp-pane\" data-pane=\"2\">\n          <button type=\"button\" class=\"ccp-back\" data-go=\"1\">\n            <svg viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2.4\" stroke-linecap=\"round\" stroke-linejoin=\"round\" width=\"14\" height=\"14\"><polyline points=\"15 18 9 12 15 6\"\/><\/svg>\n            <span>Back to topic selection<\/span>\n          <\/button>\n          <div class=\"ccp-chosen\">Topic: <strong id=\"ccp-chosen-label\">\u2014<\/strong><\/div>\n\n          <div class=\"ccp-row-2\">\n            <div class=\"ccp-field\" data-always>\n              <label for=\"ccp-name\">Your name <span class=\"ccp-req\">*<\/span><\/label>\n              <input id=\"ccp-name\" name=\"name\" type=\"text\" autocomplete=\"name\" required>\n            <\/div>\n            <div class=\"ccp-field\" data-always>\n              <label for=\"ccp-email\">Email <span class=\"ccp-req\">*<\/span><\/label>\n              <input id=\"ccp-email\" name=\"email\" type=\"email\" placeholder=\"you@example.com\" autocomplete=\"email\" required>\n            <\/div>\n          <\/div>\n\n          <div class=\"ccp-row-2\">\n            <div class=\"ccp-field\" data-show-for=\"press advertising expert\">\n              <label for=\"ccp-org\">Organization <span class=\"ccp-req ccp-req-when\" data-req-for=\"press advertising\">*<\/span><\/label>\n              <input id=\"ccp-org\" name=\"organization\" type=\"text\" autocomplete=\"organization\">\n            <\/div>\n            <div class=\"ccp-field\" data-show-for=\"advertising expert\">\n              <label for=\"ccp-phone\">Phone <span class=\"ccp-req ccp-req-when\" data-req-for=\"advertising\">*<\/span><\/label>\n              <input id=\"ccp-phone\" name=\"phone\" type=\"tel\" placeholder=\"87055822147\" autocomplete=\"tel\">\n            <\/div>\n          <\/div>\n\n          <div class=\"ccp-field\" data-show-for=\"news press correction expert\">\n            <label for=\"ccp-url\">Article link <span class=\"ccp-req ccp-req-when\" data-req-for=\"correction\">*<\/span><\/label>\n            <input id=\"ccp-url\" name=\"url\" type=\"url\" placeholder=\"https:\/\/...\">\n          <\/div>\n\n          <div class=\"ccp-field\" data-show-for=\"expert\">\n            <label for=\"ccp-expertise\">Area of expertise <span class=\"ccp-req\">*<\/span><\/label>\n            <input id=\"ccp-expertise\" name=\"expertise\" type=\"text\" placeholder=\"AI, cybersecurity, fintech\u2026\">\n          <\/div>\n\n          <div class=\"ccp-field\" data-always>\n            <label for=\"ccp-message\"><span data-label-for=\"general\">Message<\/span><span data-label-for=\"news press\">Tell us about the news<\/span><span data-label-for=\"advertising\">What would you like to propose?<\/span><span data-label-for=\"expert\">Tell us about yourself<\/span><span data-label-for=\"correction\">Describe the error<\/span> <span class=\"ccp-req\">*<\/span><\/label>\n            <textarea id=\"ccp-message\" name=\"message\" placeholder=\"Describe your request in as much detail as possible\u2026\" required><\/textarea>\n          <\/div>\n\n          <!-- File upload -->\n          <div class=\"ccp-field ccp-uploader\" data-show-for=\"news press expert correction advertising\">\n            <label for=\"ccp-files\">Documents and files <span class=\"ccp-hint\">(optional)<\/span><\/label>\n            <input id=\"ccp-files\" name=\"files[]\" type=\"file\" multiple\n                   accept=\".pdf,.doc,.docx,.rtf,.txt,.jpg,.jpeg,.png,.gif,.webp,.zip\"\n                   class=\"ccp-uploader-input\">\n            <label for=\"ccp-files\" class=\"ccp-uploader-drop\">\n              <svg viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.8\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"ccp-uploader-icon-big\"><path d=\"M21 15v4a2 2 0 01-2 2H5a2 2 0 01-2-2v-4\"\/><polyline points=\"17 8 12 3 7 8\"\/><line x1=\"12\" y1=\"3\" x2=\"12\" y2=\"15\"\/><\/svg>\n              <strong class=\"ccp-uploader-title\">Drag files here or click to choose<\/strong>\n              <small class=\"ccp-uploader-hint\">Up to 5 files \u00b7 max 10 MB per file \u00b7 15 MB total<br>PDF, DOC, DOCX, RTF, TXT, JPG, PNG, GIF, WEBP, ZIP<\/small>\n            <\/label>\n            <ul class=\"ccp-uploader-list\" hidden><\/ul>\n            <div class=\"ccp-uploader-error\" hidden><\/div>\n          <\/div>\n\n          <label class=\"ccp-consent\">\n            <input type=\"checkbox\" name=\"consent\" required>\n            <span>I agree to the processing of personal data and the <a href=\"\/privacy\/\" target=\"_blank\" rel=\"noopener\">privacy policy<\/a>.<\/span>\n          <\/label>\n\n          <div class=\"ccp-actions\">\n            <button type=\"submit\" class=\"ccp-submit\">\n              <span class=\"ccp-submit-label\">Send message<\/span>\n              <svg viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2.4\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><line x1=\"5\" y1=\"12\" x2=\"19\" y2=\"12\"\/><polyline points=\"12 5 19 12 12 19\"\/><\/svg>\n            <\/button>\n          <\/div>\n\n          <div class=\"ccp-form-error\" role=\"alert\" hidden><\/div>\n        <\/div>\n\n        <!-- ===== Step 3: success ===== -->\n        <div class=\"ccp-pane\" data-pane=\"3\">\n          <div class=\"ccp-success\">\n            <div class=\"ccp-success-icon\">\n              <svg viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"3\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><polyline points=\"20 6 9 17 4 12\"\/><\/svg>\n            <\/div>\n            <h3>Thank you! Your message has been sent<\/h3>\n            <p>We have received your request and will reply within 1\u20132 business days to the email you provided.<\/p>\n            <button type=\"button\" class=\"ccp-secondary\" data-action=\"reset\">Send another message<\/button>\n          <\/div>\n        <\/div>\n\n      <\/form>\n    <\/section>\n\n    <!-- ============ 2) CONTACTS ============ -->\n    <section class=\"ccp-section ccp-contacts-section\">\n      <h2 class=\"ccp-section-heading\">\n        <svg viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><path d=\"M22 16.92v3a2 2 0 0 1-2.18 2 19.79 19.79 0 0 1-8.63-3.07 19.5 19.5 0 0 1-6-6 19.79 19.79 0 0 1-3.07-8.67A2 2 0 0 1 4.11 2h3a2 2 0 0 1 2 1.72 12.84 12.84 0 0 0 .7 2.81 2 2 0 0 1-.45 2.11L8.09 9.91a16 16 0 0 0 6 6l1.27-1.27a2 2 0 0 1 2.11-.45 12.84 12.84 0 0 0 2.81.7A2 2 0 0 1 22 16.92z\"\/><\/svg>\n        Contact details\n      <\/h2>\n      <p class=\"ccp-section-sub\">Direct line to the Cifrum.kz editorial team.<\/p>\n\n      <div class=\"ccp-contacts-grid\">\n        <a class=\"ccp-contact-row\" href=\"tel:87055822147\">\n          <span class=\"ccp-contact-icon\"><svg viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><path d=\"M22 16.92v3a2 2 0 0 1-2.18 2 19.79 19.79 0 0 1-8.63-3.07 19.5 19.5 0 0 1-6-6 19.79 19.79 0 0 1-3.07-8.67A2 2 0 0 1 4.11 2h3a2 2 0 0 1 2 1.72 12.84 12.84 0 0 0 .7 2.81 2 2 0 0 1-.45 2.11L8.09 9.91a16 16 0 0 0 6 6l1.27-1.27a2 2 0 0 1 2.11-.45 12.84 12.84 0 0 0 2.81.7A2 2 0 0 1 22 16.92z\"\/><\/svg><\/span>\n          <span class=\"ccp-contact-meta\"><small>Phone<\/small><strong>87055822147<\/strong><\/span>\n        <\/a>\n        <a class=\"ccp-contact-row\" href=\"mailto:info@cifrum.kz\">\n          <span class=\"ccp-contact-icon\"><svg viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><path d=\"M4 4h16c1.1 0 2 .9 2 2v12c0 1.1-.9 2-2 2H4c-1.1 0-2-.9-2-2V6c0-1.1.9-2 2-2z\"\/><polyline points=\"22,6 12,13 2,6\"\/><\/svg><\/span>\n          <span class=\"ccp-contact-meta\"><small>Email<\/small><strong>info@cifrum.kz<\/strong><\/span>\n        <\/a>\n      <\/div>\n\n      <div class=\"ccp-address\">\n        <span class=\"ccp-address-icon\"><svg viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><path d=\"M21 10c0 7-9 13-9 13s-9-6-9-13a9 9 0 0118 0z\"\/><circle cx=\"12\" cy=\"10\" r=\"3\"\/><\/svg><\/span>\n        <span>071400, Republic of Kazakhstan, Abai Region,<br>Semey, 26 Kabanbay Batyr St., office 227<\/span>\n      <\/div>\n\n      <span class=\"ccp-sub-label\">Official details<\/span>\n      <div class=\"ccp-credentials\">\n        <div class=\"ccp-credential\"><span class=\"ccp-credential-dot\"><\/span><span><strong>Online publication \u201cTsifrovoy RUM\u201d<\/strong> (cifrum.kz)<\/span><\/div>\n        <div class=\"ccp-credential\"><span class=\"ccp-credential-dot\"><\/span><span><strong>Certificate No. KZ77VPY00125034<\/strong> \u00b7 24 July 2025, Astana<\/span><\/div>\n        <div class=\"ccp-credential\"><span class=\"ccp-credential-dot\"><\/span><span><strong>Editorial office:<\/strong> Cifrum.kz<\/span><\/div>\n      <\/div>\n\n      <span class=\"ccp-sub-label\">Find us on social<\/span>\n      <div class=\"ccp-socials\">\n        <a class=\"ccp-social\" href=\"https:\/\/t.me\/cifrumkz\" target=\"_blank\" rel=\"noopener noreferrer\">\n          <svg viewBox=\"0 0 24 24\" fill=\"currentColor\"><path d=\"M9.78 17.93l.4-3.85 7.06-6.38c.32-.28-.07-.41-.49-.16L6.84 14.7l-3.78-1.2c-.82-.25-.82-.81.18-1.21L19.32 6.1c.69-.31 1.34.17 1.07 1.21l-2.78 13.1c-.19.88-.71 1.1-1.45.69l-3.92-2.9-1.89 1.83c-.22.22-.4.4-.79.4z\"\/><\/svg>\n          <span>Telegram<\/span>\n        <\/a>\n        <a class=\"ccp-social\" href=\"https:\/\/wa.me\/77055822147\" target=\"_blank\" rel=\"noopener noreferrer\">\n          <svg viewBox=\"0 0 24 24\" fill=\"currentColor\"><path d=\"M20.5 3.5A11 11 0 003.6 17.9L2 22l4.2-1.4A11 11 0 1020.5 3.5zM12 20a8.9 8.9 0 01-4.6-1.3l-.3-.2-2.5.9.9-2.5-.2-.3A8.9 8.9 0 1112 20zm5.1-6.6c-.3-.1-1.6-.8-1.9-.9-.3-.1-.4-.1-.6.1-.2.3-.7.9-.8 1-.1.2-.3.2-.6.1-.3-.1-1.2-.4-2.3-1.4-.9-.8-1.4-1.7-1.6-2-.2-.3 0-.4.1-.5.1-.1.3-.3.4-.5.1-.2.2-.3.3-.5 0-.2 0-.4-.1-.5l-.7-1.7c-.2-.4-.4-.4-.6-.4h-.5c-.2 0-.5.1-.7.3-.3.3-1 1-1 2.5s1 2.9 1.2 3.1c.1.2 2.1 3.2 5.1 4.5.7.3 1.3.5 1.7.6.7.2 1.3.2 1.8.1.6-.1 1.6-.7 1.8-1.3.2-.6.2-1.2.2-1.3-.1-.2-.3-.3-.6-.4z\"\/><\/svg>\n          <span>WhatsApp<\/span>\n        <\/a>\n        <a class=\"ccp-social\" href=\"https:\/\/www.instagram.com\/cifrum.kz\/\" target=\"_blank\" rel=\"noopener noreferrer\">\n          <svg viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><rect x=\"2\" y=\"2\" width=\"20\" height=\"20\" rx=\"5\"\/><path d=\"M16 11.37A4 4 0 1112.63 8 4 4 0 0116 11.37z\"\/><line x1=\"17.5\" y1=\"6.5\" x2=\"17.51\" y2=\"6.5\"\/><\/svg>\n          <span>Instagram<\/span>\n        <\/a>\n        <a class=\"ccp-social\" href=\"https:\/\/www.facebook.com\/cifrumkz\/\" target=\"_blank\" rel=\"noopener noreferrer\">\n          <svg viewBox=\"0 0 24 24\" fill=\"currentColor\"><path d=\"M22 12a10 10 0 10-11.6 9.9V15h-2.4v-3h2.4V9.8c0-2.4 1.4-3.8 3.7-3.8.7 0 1.5.1 2.1.2v2.4h-1.2c-1.2 0-1.5.7-1.5 1.5V12h2.6l-.4 3h-2.2v6.9A10 10 0 0022 12z\"\/><\/svg>\n          <span>Facebook<\/span>\n        <\/a>\n        <a class=\"ccp-social\" href=\"https:\/\/x.com\/CifrumKz\" target=\"_blank\" rel=\"noopener noreferrer\">\n          <svg viewBox=\"0 0 24 24\" fill=\"currentColor\"><path d=\"M18.9 3H22l-7.3 8.4L23 21h-6.8l-5.3-6.8L4.7 21H1.6l7.8-8.9L1 3h6.9l4.8 6.2L18.9 3zm-2.4 16h1.7L7.6 5H5.8l10.7 14z\"\/><\/svg>\n          <span>X<\/span>\n        <\/a>\n        <a class=\"ccp-social\" href=\"https:\/\/vk.com\/cifrumkz\" target=\"_blank\" rel=\"noopener noreferrer\">\n          <svg viewBox=\"0 0 24 24\" fill=\"currentColor\"><path d=\"M12.785 16.241s.288-.032.435-.193c.135-.147.131-.422.131-.422s-.018-1.301.582-1.494c.592-.19 1.351 1.262 2.157 1.821.609.422 1.072.33 1.072.33l2.153-.031s1.126-.071.591-.964c-.044-.073-.312-.661-1.609-1.873-1.358-1.271-1.175-1.065.46-3.255 1-1.34 1.398-2.158 1.273-2.508-.117-.335-.85-.244-.85-.244l-2.434.015s-.181-.024-.314.058c-.131.078-.215.265-.215.265s-.385 1.043-.899 1.929c-1.085 1.871-1.518 1.971-1.696 1.853-.413-.274-.31-1.085-.31-1.661 0-1.8.267-2.546-.522-2.745-.262-.066-.456-.111-1.124-.118-.857-.009-1.583.003-1.994.21-.273.139-.484.448-.355.466.159.023.519.101.71.367.246.343.237 1.117.237 1.117s.142 2.114-.331 2.376c-.324.18-.769-.187-1.737-1.886-.495-.871-.869-1.834-.869-1.834s-.073-.183-.202-.281c-.156-.118-.376-.156-.376-.156l-2.314.015s-.348.01-.476.164c-.114.135-.009.418-.009.418s1.812 4.282 3.864 6.44c1.881 1.978 4.018 1.848 4.018 1.848z\"\/><\/svg>\n          <span>VK<\/span>\n        <\/a>\n      <\/div>\n    <\/section>\n\n    <!-- ============ 3) FAQ ============ -->\n    <section class=\"ccp-section\">\n      <h2 class=\"ccp-section-heading\">\n        <svg viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><circle cx=\"12\" cy=\"12\" r=\"10\"\/><path d=\"M9.09 9a3 3 0 015.83 1c0 2-3 3-3 3\"\/><line x1=\"12\" y1=\"17\" x2=\"12.01\" y2=\"17\"\/><\/svg>\n        Frequently asked questions\n      <\/h2>\n      <p class=\"ccp-section-sub\">Answers to common questions \u2014 maybe yours is already covered.<\/p>\n\n      <div class=\"ccp-faq\">\n        <details class=\"ccp-faq-item\">\n          <summary><span class=\"ccp-faq-marker\">+<\/span><span class=\"ccp-faq-q\">How do I submit a news tip or expert piece?<\/span><\/summary>\n          <div class=\"ccp-faq-a\">Write to us via the form above and pick the \u201cSubmit a news tip\u201d subject, or email <a href=\"mailto:info@cifrum.kz\" style=\"color:var(--ccp-primary)\">info@cifrum.kz<\/a> directly. Attach a press-release link, documents or supporting materials. An editor will contact you within 1\u20132 business days.<\/div>\n        <\/details>\n\n        <details class=\"ccp-faq-item\">\n          <summary><span class=\"ccp-faq-marker\">+<\/span><span class=\"ccp-faq-q\">How can I advertise or partner with you?<\/span><\/summary>\n          <div class=\"ccp-faq-a\">For commercial proposals, choose the \u201cAdvertising &#038; partnerships\u201d subject in the form. We will share the media kit and rates for native publications, banners and special projects. For urgent matters, email <a href=\"mailto:info@cifrum.kz\" style=\"color:var(--ccp-primary)\">info@cifrum.kz<\/a> directly.<\/div>\n        <\/details>\n\n        <details class=\"ccp-faq-item\">\n          <summary><span class=\"ccp-faq-marker\">+<\/span><span class=\"ccp-faq-q\">How do I become a Cifrum author or columnist?<\/span><\/summary>\n          <div class=\"ccp-faq-a\">We invite experts in IT, AI, cybersecurity, digitalisation and startups. Select \u201cBecome an author \/ expert\u201d in the form, tell us about yourself and your field, and attach sample publications. The editorial team reviews applications individually.<\/div>\n        <\/details>\n\n        <details class=\"ccp-faq-item\">\n          <summary><span class=\"ccp-faq-marker\">+<\/span><span class=\"ccp-faq-q\">Spotted an error or need a correction?<\/span><\/summary>\n          <div class=\"ccp-faq-a\">Choose the \u201cCorrection or complaint\u201d subject, include the article link and describe the issue with supporting sources. The editorial team will verify the information and update the article with an edit note.<\/div>\n        <\/details>\n\n        <details class=\"ccp-faq-item\">\n          <summary><span class=\"ccp-faq-marker\">+<\/span><span class=\"ccp-faq-q\">When will you reply to my message?<\/span><\/summary>\n          <div class=\"ccp-faq-a\">Usually within 1\u20132 business days. For breaking-news matters we try to respond sooner. Reply times may be longer on weekends and public holidays.<\/div>\n        <\/details>\n\n        <details class=\"ccp-faq-item\">\n          <summary><span class=\"ccp-faq-marker\">+<\/span><span class=\"ccp-faq-q\">How do I comment on Cifrum articles?<\/span><\/summary>\n          <div class=\"ccp-faq-a\">There is a comment form under every article. A user&#8217;s first comment goes through editorial moderation. Insults, spam and publication of third-party personal data are prohibited.<\/div>\n        <\/details>\n      <\/div>\n    <\/section>\n\n    <!-- ============ 4) MAP ============ -->\n    <section class=\"ccp-section\" style=\"padding:8px\">\n      <div class=\"ccp-map-frame\">\n        <div class=\"ccp-map-placeholder\">\n          <svg viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.8\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><path d=\"M21 10c0 7-9 13-9 13s-9-6-9-13a9 9 0 0118 0z\"\/><circle cx=\"12\" cy=\"10\" r=\"3\"\/><\/svg>\n          <span>An interactive map of Semey will appear here<\/span>\n        <\/div>\n      <\/div>\n    <\/section>\n\n  <\/div>\n<\/div>\n\n<script>\n\/* ===========================================================\n   Cifrum.kz \u2014 contact-form wizard.\n   Self-contained inline script.  No jQuery, no\n   global variables.  Theme-independent.\n   =========================================================== *\/\n(function(){\n  var form = document.getElementById('ccp-wizard');\n  if(!form) return;\n\n  var panes        = form.querySelectorAll('.ccp-pane');\n  var stepperItems = form.querySelectorAll('.ccp-stepper > li');\n  var topicInput   = form.querySelector('#ccp-topic-input');\n  var chosenLabel  = form.querySelector('#ccp-chosen-label');\n  var topicButtons = form.querySelectorAll('.ccp-topic');\n  var conditional  = form.querySelectorAll('[data-show-for]');\n  var reqWhen      = form.querySelectorAll('.ccp-req-when');\n  var labelFor     = form.querySelectorAll('[data-label-for]');\n  var formError    = form.querySelector('.ccp-form-error');\n  var submitBtn    = form.querySelector('.ccp-submit');\n  var submitLabel  = form.querySelector('.ccp-submit-label');\n  var submitLabelText = submitLabel ? submitLabel.textContent : '';\n\n  \/* ----- Uploader (file uploads) ----- *\/\n  var uploader       = form.querySelector('.ccp-uploader');\n  var fileInput      = form.querySelector('#ccp-files');\n  var fileListEl     = form.querySelector('.ccp-uploader-list');\n  var uploaderDrop   = form.querySelector('.ccp-uploader-drop');\n  var uploaderError  = form.querySelector('.ccp-uploader-error');\n  var MAX_FILES      = 5;\n  var MAX_SIZE       = 10 * 1024 * 1024;  \/\/ 10 MB per file\n  var MAX_TOTAL      = 15 * 1024 * 1024;  \/\/ 15 MB total\n  var ALLOWED        = \/.(pdf|docx?|rtf|txt|jpe?g|png|gif|webp|zip)$\/i;\n  var selectedFiles  = [];  \/\/ array of File objects\n\n  function fmtSize(b){\n    if(b < 1024) return b + ' B';\n    if(b < 1024*1024) return Math.round(b\/1024) + ' KB';\n    return (b\/(1024*1024)).toFixed(1) + ' MB';\n  }\n  function showUploaderError(msg){\n    if(!uploaderError) return;\n    if(!msg){ uploaderError.hidden = true; uploaderError.textContent = ''; return; }\n    uploaderError.textContent = msg;\n    uploaderError.hidden = false;\n  }\n  function renderFileList(){\n    if(!fileListEl) return;\n    fileListEl.innerHTML = '';\n    if(selectedFiles.length === 0){ fileListEl.hidden = true; return; }\n    fileListEl.hidden = false;\n    selectedFiles.forEach(function(f, idx){\n      var li = document.createElement('li');\n      li.className = 'ccp-uploader-item';\n      li.innerHTML =\n        '<span class=\"ccp-uploader-item-icon\"><svg viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><path d=\"M14 2H6a2 2 0 00-2 2v16a2 2 0 002 2h12a2 2 0 002-2V8z\"\/><polyline points=\"14 2 14 8 20 8\"\/><\/svg><\/span>' +\n        '<span class=\"ccp-uploader-item-name\"><\/span>' +\n        '<span class=\"ccp-uploader-item-size\"><\/span>' +\n        '<button type=\"button\" class=\"ccp-uploader-remove\" aria-label=\"Remove file\"><svg viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2.4\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><line x1=\"18\" y1=\"6\" x2=\"6\" y2=\"18\"\/><line x1=\"6\" y1=\"6\" x2=\"18\" y2=\"18\"\/><\/svg><\/button>';\n      li.querySelector('.ccp-uploader-item-name').textContent = f.name;\n      li.querySelector('.ccp-uploader-item-size').textContent = fmtSize(f.size);\n      li.querySelector('.ccp-uploader-remove').addEventListener('click', function(){\n        selectedFiles.splice(idx, 1);\n        renderFileList();\n      });\n      fileListEl.appendChild(li);\n    });\n  }\n  function addFiles(list){\n    showUploaderError('');\n    var added = 0, skippedExt = 0, skippedSize = 0, skippedTotal = 0;\n    Array.prototype.forEach.call(list, function(f){\n      if(selectedFiles.length >= MAX_FILES) return;\n      if(!ALLOWED.test(f.name)){ skippedExt++; return; }\n      if(f.size > MAX_SIZE){ skippedSize++; return; }\n      var totalSize = selectedFiles.reduce(function(s,x){return s+x.size}, 0) + f.size;\n      if(totalSize > MAX_TOTAL){ skippedTotal++; return; }\n      selectedFiles.push(f);\n      added++;\n    });\n    if(skippedExt)   showUploaderError('Some files were skipped: unsupported format.');\n    if(skippedSize)  showUploaderError('File over 10 MB was skipped.');\n    if(skippedTotal) showUploaderError('Total 15 MB limit exceeded.');\n    renderFileList();\n  }\n  if(fileInput){\n    fileInput.addEventListener('change', function(){\n      addFiles(fileInput.files);\n      fileInput.value = '';  \/\/ allow re-selecting the same file\n    });\n  }\n  if(uploaderDrop){\n    ['dragenter','dragover'].forEach(function(ev){\n      uploaderDrop.addEventListener(ev, function(e){\n        e.preventDefault(); e.stopPropagation();\n        uploader && uploader.classList.add('ccp-uploader-dragover');\n      });\n    });\n    ['dragleave','drop'].forEach(function(ev){\n      uploaderDrop.addEventListener(ev, function(e){\n        e.preventDefault(); e.stopPropagation();\n        uploader && uploader.classList.remove('ccp-uploader-dragover');\n      });\n    });\n    uploaderDrop.addEventListener('drop', function(e){\n      if(e.dataTransfer && e.dataTransfer.files){\n        addFiles(e.dataTransfer.files);\n      }\n    });\n  }\n\n  function goToStep(n){\n    panes.forEach(function(p){\n      p.classList.toggle('active', p.getAttribute('data-pane') === String(n));\n    });\n    stepperItems.forEach(function(s,i){\n      s.classList.toggle('active', i+1 === n);\n      s.classList.toggle('done',   i+1 <  n);\n    });\n    \/\/ smooth-scroll to form top (only if not already visible)\n    var rect = form.getBoundingClientRect();\n    if(rect.top < 0 || rect.top > window.innerHeight * 0.4){\n      form.scrollIntoView({behavior:'smooth', block:'start'});\n    }\n  }\n\n  function applyTopic(topic, labelText){\n    topicInput.value = topic;\n    chosenLabel.textContent = labelText;\n\n    \/\/ show\/hide conditional fields\n    conditional.forEach(function(el){\n      var list = (el.getAttribute('data-show-for') || '').split(\/s+\/);\n      var visible = list.indexOf(topic) !== -1;\n      el.style.display = visible ? '' : 'none';\n      \/\/ disable hidden inputs so browser doesn't enforce required\n      var fields = el.querySelectorAll('input,textarea,select');\n      fields.forEach(function(f){\n        f.disabled = !visible;\n        \/\/ remove required from hidden fields so submit isn't blocked\n        if(!visible) f.removeAttribute('required');\n      });\n    });\n\n    \/\/ show\/hide asterisks for conditionally-required fields\n    reqWhen.forEach(function(star){\n      var topics = (star.getAttribute('data-req-for') || '').split(\/s+\/);\n      var required = topics.indexOf(topic) !== -1;\n      star.style.display = required ? '' : 'none';\n      \/\/ set required on matching input\n      var field = star.closest('.ccp-field');\n      if(field){\n        var input = field.querySelector('input,textarea,select');\n        if(input){\n          if(required) input.setAttribute('required','required');\n          else input.removeAttribute('required');\n        }\n      }\n    });\n\n    \/\/ switch dynamic message labels\n    labelFor.forEach(function(span){\n      var topics = (span.getAttribute('data-label-for') || '').split(\/s+\/);\n      span.style.display = topics.indexOf(topic) !== -1 ? '' : 'none';\n    });\n  }\n\n  \/\/ Step 1 \u2192 Step 2\n  topicButtons.forEach(function(btn){\n    btn.addEventListener('click', function(){\n      var topic = btn.getAttribute('data-topic');\n      var label = btn.querySelector('strong').textContent;\n      applyTopic(topic, label);\n      goToStep(2);\n    });\n  });\n\n  \/\/ \u201cBack\u201d buttons\n  form.querySelectorAll('[data-go]').forEach(function(b){\n    b.addEventListener('click', function(){\n      goToStep(parseInt(b.getAttribute('data-go'), 10));\n    });\n  });\n\n  \/\/ Reset from success screen\n  form.querySelectorAll('[data-action=\"reset\"]').forEach(function(b){\n    b.addEventListener('click', function(){\n      form.reset();\n      topicInput.value = '';\n      selectedFiles = [];\n      renderFileList();\n      showUploaderError('');\n      if(formError){ formError.hidden = true; formError.textContent = ''; }\n      conditional.forEach(function(el){\n        el.style.display = '';\n        el.querySelectorAll('input,textarea,select').forEach(function(f){f.disabled=false});\n      });\n      goToStep(1);\n    });\n  });\n\n  \/\/ Submit\n  form.addEventListener('submit', function(e){\n    e.preventDefault();\n    if(formError){ formError.hidden = true; formError.textContent = ''; }\n\n    \/\/ Simple client-side validation\n    if(!form.checkValidity()){\n      form.reportValidity();\n      return;\n    }\n\n    \/\/ Build multipart payload manually \u2014 this lets us:\n    \/\/ 1) attach files from selectedFiles (not trusting fileInput.files\n    \/\/    after UI-side removals),\n    \/\/ 2) skip disabled fields.\n    var fd = new FormData();\n    var formInputs = form.querySelectorAll('input:not([type=file]):not([disabled]),textarea:not([disabled]),select:not([disabled])');\n    formInputs.forEach(function(el){\n      if(!el.name) return;\n      if(el.type === 'checkbox' || el.type === 'radio'){\n        if(el.checked) fd.append(el.name, el.value || 'on');\n      } else {\n        fd.append(el.name, el.value);\n      }\n    });\n    \/\/ Files \u2014 only those in selectedFiles (after UI filtering)\n    selectedFiles.forEach(function(f){\n      fd.append('files[]', f, f.name);\n    });\n\n    submitBtn.disabled = true;\n    if(submitLabel) submitLabel.textContent = form.getAttribute('data-msg-sending') || 'Sending\u2026';\n\n    fetch('\/wp-json\/cifrum\/v1\/contact', {\n      method: 'POST',\n      \/\/ Do NOT set Content-Type \u2014 the browser will add multipart boundary\n      headers: {'Accept':'application\/json'},\n      credentials: 'same-origin',\n      body: fd\n    })\n    .then(function(r){\n      return r.json().then(function(j){return {status:r.status, body:j}})\n        .catch(function(){return {status:r.status, body:null}});\n    })\n    .then(function(res){\n      if(res.body && res.body.ok){\n        goToStep(3);\n      } else {\n        var msg = form.getAttribute('data-msg-network');\n        if(res.status === 429) msg = form.getAttribute('data-msg-rate');\n        else if(res.body && res.body.error === 'validation') msg = form.getAttribute('data-msg-validation');\n        if(formError){ formError.textContent = msg; formError.hidden = false; }\n      }\n    })\n    .catch(function(){\n      if(formError){\n        formError.textContent = form.getAttribute('data-msg-network');\n        formError.hidden = false;\n      }\n    })\n    .then(function(){\n      submitBtn.disabled = false;\n      if(submitLabel) submitLabel.textContent = submitLabelText;\n    });\n  });\n})();\n<\/script>\n\n","protected":false},"excerpt":{"rendered":"<p>Contact the editorial team We are always open to new topics, suggestions and partnerships. Drop us a line \u2014 we [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"_acf_changed":false,"site-sidebar-layout":"default","site-content-layout":"","ast-site-content-layout":"default","site-content-style":"default","site-sidebar-style":"default","ast-global-header-display":"","ast-banner-title-visibility":"","ast-main-header-display":"","ast-hfb-above-header-display":"","ast-hfb-below-header-display":"","ast-hfb-mobile-header-display":"","site-post-title":"","ast-breadcrumbs-content":"","ast-featured-img":"","footer-sml-layout":"","ast-disable-related-posts":"","theme-transparent-header-meta":"","adv-header-id-meta":"","stick-header-meta":"","header-above-stick-meta":"","header-main-stick-meta":"","header-below-stick-meta":"","astra-migrate-meta-layouts":"default","ast-page-background-enabled":"default","ast-page-background-meta":{"desktop":{"background-color":"var(--ast-global-color-5)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"tablet":{"background-color":"","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"mobile":{"background-color":"","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""}},"ast-content-background-meta":{"desktop":{"background-color":"var(--ast-global-color-4)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"tablet":{"background-color":"var(--ast-global-color-4)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"mobile":{"background-color":"var(--ast-global-color-4)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""}},"footnotes":""},"class_list":["post-4257","page","type-page","status-publish","hentry"],"acf":[],"_links":{"self":[{"href":"https:\/\/cifrum.kz\/en\/wp-json\/wp\/v2\/pages\/4257","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/cifrum.kz\/en\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/cifrum.kz\/en\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/cifrum.kz\/en\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/cifrum.kz\/en\/wp-json\/wp\/v2\/comments?post=4257"}],"version-history":[{"count":5,"href":"https:\/\/cifrum.kz\/en\/wp-json\/wp\/v2\/pages\/4257\/revisions"}],"predecessor-version":[{"id":6382,"href":"https:\/\/cifrum.kz\/en\/wp-json\/wp\/v2\/pages\/4257\/revisions\/6382"}],"wp:attachment":[{"href":"https:\/\/cifrum.kz\/en\/wp-json\/wp\/v2\/media?parent=4257"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}