/*
  Holmogorka custom-v2.css.
  Полная сборка на замену: стабильная база custom.css + безопасный V2-мост цветов.
  При тестировании V2 подключайте этот файл вместо custom.css, а не вместе с ним.
*/
/*
  Пакет фронтенд-стилей Holmogorka.
  Однофайловая сборка для Helix Ultimate custom.css.
  Источники: includes/style/ui-kit-full-build.css и includes/style/dropfiles-rewrite-ui.css.
*/

/* =========================
   ДИЗАЙН-ТОКЕНЫ И UI-КИТ
========================= */
:root{
  --hk-primary:#6A2C91;
  --hk-primary-dark:#4E1F6B;
  --hk-primary-light:#8C4BB8;
  --hk-secondary:#0FA958;
  --hk-surface:#ffffff;
  --hk-surface-2:#f7f4fb;
  --hk-border:#e7dff0;
  --hk-text:#2f2940;
  --hk-muted:#6f6784;
  --hk-shadow:0 10px 30px rgba(63,28,91,.08);
  --hk-shadow-lg:0 18px 40px rgba(30,18,46,.12);
  --hk-radius:20px;
  --hk-radius-sm:14px;
  --hk-btn-radius:14px;
  --hk-container:1320px;

  --bs-primary:#6A2C91;
  --bs-primary-rgb:106,44,145;
  --bs-secondary:#0FA958;
  --bs-secondary-rgb:15,169,88;
  --bs-link-color:#6A2C91;
  --bs-link-hover-color:#4E1F6B;
  --bs-body-bg:#f6f3fb;
  --bs-body-color:#2f2940;
  --bs-border-color:#e7dff0;
  --bs-border-radius:.9rem;
  --bs-border-radius-sm:.75rem;
  --bs-border-radius-lg:1.15rem;
  --bs-border-radius-xl:1.4rem;
  --bs-box-shadow:0 10px 30px rgba(63,28,91,.08);
  --bs-box-shadow-sm:0 6px 16px rgba(63,28,91,.06);
  --bs-box-shadow-lg:0 18px 40px rgba(30,18,46,.14);
}

html,
body{
  min-height:100%;
}

body{
  background:linear-gradient(135deg,#f6f3fb 0%,#f1edf8 40%,#ece7f5 100%);
  background-attachment:fixed;
  letter-spacing:-.01em;
  color:var(--hk-text);
  overflow-x:hidden;
}

a{
  text-decoration:none;
}
a:hover{
  text-decoration:none;
}

/* =========================
   МАКЕТ
========================= */

#sp-main,
#sp-page-builder,
.sppb-row-container{
  margin-left:auto;
  margin-right:auto;
  box-sizing:border-box;
}

#sp-main{
  padding-left:16px;
  padding-right:16px;
}

#sp-header,
#sp-header .container,
#sp-header .container-inner,
#sp-header .row,
#sp-main-body,
#sp-main{
  overflow:visible;
}

.hk-headerbar,
.hk-hero,
.hk-mainnav{
  color:var(--hk-text);
}

/* =========================
   ПЕРЕОПРЕДЕЛЕНИЯ BOOTSTRAP
========================= */

.btn,
.sppb-btn{
  border-radius:var(--hk-btn-radius,14px);
  font-weight:600;
  letter-spacing:-.01em;
  box-shadow:none;
}

.sppb-addon-button .sppb-btn,
.sppb-btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:.5rem;
  min-height:44px;
  padding:.625rem 1rem;
  border-radius:var(--hk-btn-radius,14px) !important;
  border:1px solid transparent;
  font-weight:700;
  line-height:1.15;
  text-decoration:none !important;
  transition:background .18s ease, color .18s ease, border-color .18s ease, box-shadow .18s ease, transform .18s ease;
}

.sppb-addon-button .sppb-btn:hover,
.sppb-addon-button .sppb-btn:focus,
.sppb-btn:hover,
.sppb-btn:focus{
  text-decoration:none !important;
}

.sppb-addon-button .sppb-btn:focus-visible,
.sppb-btn:focus-visible{
  outline:0;
  box-shadow:0 0 0 .25rem rgba(106,44,145,.18);
}

.sppb-addon-button .sppb-btn-primary,
.sppb-addon-button .sppb-btn-custom,
.sppb-addon-button .sppb-btn-default,
.sppb-btn-primary,
.sppb-btn-custom,
.sppb-btn-default{
  color:#fff !important;
  background-color:var(--hk-primary) !important;
  border-color:var(--hk-primary) !important;
  box-shadow:0 10px 20px rgba(106,44,145,.18);
}

.sppb-addon-button .sppb-btn-primary:hover,
.sppb-addon-button .sppb-btn-primary:focus,
.sppb-addon-button .sppb-btn-custom:hover,
.sppb-addon-button .sppb-btn-custom:focus,
.sppb-addon-button .sppb-btn-default:hover,
.sppb-addon-button .sppb-btn-default:focus,
.sppb-btn-primary:hover,
.sppb-btn-primary:focus,
.sppb-btn-custom:hover,
.sppb-btn-custom:focus,
.sppb-btn-default:hover,
.sppb-btn-default:focus{
  color:#fff !important;
  background-color:var(--hk-primary-dark) !important;
  border-color:var(--hk-primary-dark) !important;
}

.sppb-addon-button .sppb-btn-secondary,
.sppb-addon-button .sppb-btn-success,
.sppb-btn-secondary,
.sppb-btn-success{
  color:#fff !important;
  background-color:var(--hk-secondary) !important;
  border-color:var(--hk-secondary) !important;
}

.sppb-addon-button .sppb-btn-secondary:hover,
.sppb-addon-button .sppb-btn-secondary:focus,
.sppb-addon-button .sppb-btn-success:hover,
.sppb-addon-button .sppb-btn-success:focus,
.sppb-btn-secondary:hover,
.sppb-btn-secondary:focus,
.sppb-btn-success:hover,
.sppb-btn-success:focus{
  color:#fff !important;
  background-color:#0A7A3F !important;
  border-color:#0A7A3F !important;
}

.sppb-addon-button .sppb-btn-info,
.sppb-btn-info{
  color:#fff !important;
  background-color:#0665d0 !important;
  border-color:#0665d0 !important;
}

.sppb-addon-button .sppb-btn-warning,
.sppb-btn-warning{
  color:var(--hk-text) !important;
  background-color:#f3b760 !important;
  border-color:#f3b760 !important;
}

.sppb-addon-button .sppb-btn-danger,
.sppb-btn-danger{
  color:#fff !important;
  background-color:#e04f1a !important;
  border-color:#e04f1a !important;
}

.sppb-addon-button .sppb-btn-light,
.sppb-btn-light{
  color:var(--hk-text) !important;
  background-color:#fff !important;
  border-color:var(--hk-border) !important;
}

.sppb-addon-button .sppb-btn-outline,
.sppb-addon-button .sppb-btn-outline-primary,
.sppb-btn-outline,
.sppb-btn-outline-primary{
  color:var(--hk-primary) !important;
  background-color:transparent !important;
  border-color:#d9c2ee !important;
  box-shadow:none !important;
}

.sppb-addon-button .sppb-btn-outline:hover,
.sppb-addon-button .sppb-btn-outline:focus,
.sppb-addon-button .sppb-btn-outline-primary:hover,
.sppb-addon-button .sppb-btn-outline-primary:focus,
.sppb-btn-outline:hover,
.sppb-btn-outline:focus,
.sppb-btn-outline-primary:hover,
.sppb-btn-outline-primary:focus{
  color:#fff !important;
  background-color:var(--hk-primary) !important;
  border-color:var(--hk-primary) !important;
}

.sppb-addon-button .sppb-btn-link,
.sppb-btn-link{
  color:var(--hk-primary) !important;
  background-color:transparent !important;
  border-color:transparent !important;
  box-shadow:none !important;
}

.btn-primary{
  --bs-btn-bg:#6A2C91;
  --bs-btn-border-color:#6A2C91;
  --bs-btn-hover-bg:#4E1F6B;
  --bs-btn-hover-border-color:#4E1F6B;
  --bs-btn-active-bg:#4E1F6B;
  --bs-btn-active-border-color:#4E1F6B;
  --bs-btn-disabled-bg:#8C4BB8;
  --bs-btn-disabled-border-color:#8C4BB8;
  box-shadow:0 10px 20px rgba(106,44,145,.18);
}

.btn-outline-primary{
  --bs-btn-color:#6A2C91;
  --bs-btn-border-color:#d9c2ee;
  --bs-btn-hover-bg:#6A2C91;
  --bs-btn-hover-border-color:#6A2C91;
  --bs-btn-hover-color:#fff;
  --bs-btn-active-bg:#6A2C91;
  --bs-btn-active-border-color:#6A2C91;
  --bs-btn-active-color:#fff;
}

.btn-secondary{
  --bs-btn-bg:#0FA958;
  --bs-btn-border-color:#0FA958;
  --bs-btn-hover-bg:#0A7A3F;
  --bs-btn-hover-border-color:#0A7A3F;
  --bs-btn-active-bg:#0A7A3F;
  --bs-btn-active-border-color:#0A7A3F;
}

.btn-light{
  --bs-btn-bg:#fff;
  --bs-btn-border-color:#e7dff0;
  --bs-btn-hover-bg:#f7f4fb;
  --bs-btn-hover-border-color:#d9c2ee;
  --bs-btn-color:#2f2940;
}

.hm-ui .btn,
.hm-ui .sppb-btn,
.hm-ui .hm-ui-button,
.hm-ui [class$="__button"],
.hm-ui [class*="__button "],
.hm-ui [class*="__button--"],
.hm-ui [class$="-btn"],
.hm-ui [class*="-btn "],
.hm-ui [class*="-btn--"],
.hm-ui .downloadlink,
.hm-ui .openlink,
.hm-ui .download-all,
.hm-ui .openlink-manage-files{
  border-radius:var(--hm-ui-button-radius,var(--hk-btn-radius,14px)) !important;
}

.btn-group > .btn,
.btn-group-vertical > .btn{
  border-radius:var(--hk-btn-radius,14px) !important;
}

.form-control,
.form-select{
  border-color:#e7dff0;
  border-radius:16px;
  min-height:48px;
  box-shadow:none;
}

.form-control:focus,
.form-select:focus{
  border-color:#b98fd7;
  box-shadow:0 0 0 .25rem rgba(106,44,145,.12);
}

.input-group-text{
  border-color:#e7dff0;
  background:#fbf8ff;
  color:#6f6784;
  border-radius:16px;
}

.card{
  border-color:#e7dff0;
  border-radius:24px;
  box-shadow:0 10px 30px rgba(63,28,91,.08);
  overflow:hidden;
}

.card-header,
.card-footer{
  background:#fff;
  border-color:#eee5f6;
}

.alert{
  border-radius:18px;
  border-width:1px;
}

.alert-primary{
  --bs-alert-color:#4E1F6B;
  --bs-alert-bg:#f2eafb;
  --bs-alert-border-color:#d9c2ee;
}

.alert-success{
  --bs-alert-color:#0A7A3F;
  --bs-alert-bg:#e7f8ef;
  --bs-alert-border-color:#bfe9d1;
}

.alert-warning{
  --bs-alert-color:#8a5a00;
  --bs-alert-bg:#fff6db;
  --bs-alert-border-color:#f7de8a;
}

.alert-danger{
  --bs-alert-color:#842029;
  --bs-alert-bg:#fdecef;
  --bs-alert-border-color:#f3c2c8;
}

.badge{
  border-radius:999px;
  padding:.55em .85em;
  font-weight:600;
  vertical-align:middle;
}

.badge.text-bg-primary,
.bg-primary{
  background:linear-gradient(135deg,#6A2C91,#8C4BB8) !important;
}

.badge.text-bg-secondary,
.bg-secondary{
  background:linear-gradient(135deg,#0FA958,#39C777) !important;
}

.nav-pills .nav-link{
  border-radius:999px;
  color:#2f2940;
}

.nav-pills .nav-link.active,
.nav-pills .show > .nav-link{
  background:linear-gradient(135deg,#6A2C91,#8C4BB8);
}

.nav-tabs{
  border-color:#e7dff0;
}

.nav-tabs .nav-link{
  border-radius:16px 16px 0 0;
  color:#6f6784;
}

.nav-tabs .nav-link.active{
  color:#2f2940;
  border-color:#e7dff0 #e7dff0 #fff;
}

.accordion{
  --bs-accordion-border-color:#e7dff0;
  --bs-accordion-border-radius:18px;
  --bs-accordion-btn-focus-box-shadow:0 0 0 .25rem rgba(106,44,145,.12);
  --bs-accordion-active-color:#4E1F6B;
  --bs-accordion-active-bg:#f7f2fc;
}

.accordion-button{
  font-weight:600;
}

.pagination{
  --bs-pagination-border-color:#e7dff0;
  --bs-pagination-color:#6A2C91;
  --bs-pagination-hover-color:#4E1F6B;
  --bs-pagination-hover-bg:#f7f2fc;
  --bs-pagination-hover-border-color:#d9c2ee;
  --bs-pagination-focus-color:#4E1F6B;
  --bs-pagination-focus-bg:#f7f2fc;
  --bs-pagination-focus-box-shadow:0 0 0 .2rem rgba(106,44,145,.12);
  --bs-pagination-active-bg:#6A2C91;
  --bs-pagination-active-border-color:#6A2C91;
}

.page-link{
  border-radius:12px;
  margin:0 3px;
}

.table{
  --bs-table-border-color:#eee5f6;
}

.table > :not(caption) > * > *{
  padding:.9rem 1rem;
}

.table-hover > tbody > tr:hover > *{
  background:rgba(106,44,145,.03);
}

/* =========================
   ШАПКА
========================= */

.hk-headerbar{
  background:#fff;
  border:1px solid var(--hk-border);
  border-radius:24px;
  box-shadow:var(--hk-shadow);
  padding:18px 22px;
  margin:10px auto 14px;
}

.hk-headerbar .sp-column,
.hk-headerbar .sppb-column{
  display:flex;
  flex-direction:column;
  justify-content:center;
}

.hk-headerbar img{
  max-width:140px;
  height:auto;
}

.hk-headerbar .sppb-addon-text-block,
.hk-headerbar .sppb-addon-text-block *{
  color:var(--hk-text);
}

.hk-headerbar .sppb-addon-text-block p{
  margin:0 0 6px;
  line-height:1.35;
}

.hk-headerbar .sppb-addon-text-block p:last-child{
  margin-bottom:0;
}

/* =========================
   ДЕСКТОПНОЕ МЕНЮ
========================= */

.hk-mainnav{
  width:100%;
  max-width:none;
  margin:0 0 18px;
  padding:0 16px;
  position:relative;
  z-index:200;
  overflow:visible !important;
  box-sizing:border-box;
}

.hk-mainnav nav,
.hk-mainnav .sp-module-content,
.hk-mainnav .mod-menu,
.hk-mainnav .sp-module{
  display:flex;
  justify-content:flex-start;
  overflow:visible !important;
  width:100%;
}

.hk-mainnav .sp-megamenu-parent{
  display:flex !important;
  align-items:center !important;
  justify-content:flex-start;
  flex-wrap:nowrap;
  gap:6px;
  width:100%;
  margin:0;
  padding:6px 10px;
  list-style:none;
  background:rgba(255,255,255,.94);
  border:1px solid var(--hk-border);
  border-radius:18px;
  box-shadow:var(--hk-shadow);
  backdrop-filter:blur(8px);
}

.hk-mainnav .sp-megamenu-parent > li{
  position:relative;
  margin:0 !important;
  padding:0 !important;
  flex:0 0 auto;
}

.hk-mainnav .sp-megamenu-parent > li > a,
.hk-mainnav .sp-megamenu-parent > li > span{
  height:42px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  padding:0 18px;
  border-radius:16px;
  box-sizing:border-box;
  font-size:15px;
  font-weight:600;
  line-height:1;
  color:var(--hk-text) !important;
  text-decoration:none;
  white-space:nowrap;
  transition:all .18s ease;
}

.hk-mainnav .sp-megamenu-parent > li:hover > a,
.hk-mainnav .sp-megamenu-parent > li:hover > span{
  background:var(--hk-surface-2);
  color:var(--hk-primary) !important;
}

.hk-mainnav .sp-megamenu-parent > li.active > a,
.hk-mainnav .sp-megamenu-parent > li.active > span,
.hk-mainnav .sp-megamenu-parent > li.current > a,
.hk-mainnav .sp-megamenu-parent > li.current > span{
  background:linear-gradient(135deg,var(--hk-primary),var(--hk-primary-light));
  color:#fff !important;
  box-shadow:0 8px 20px rgba(106,44,145,.22);
}

.hk-mainnav .sp-megamenu-parent > li.menu-parent > a::after,
.hk-mainnav .sp-megamenu-parent > li.parent > a::after{
  content:"";
  flex:0 0 auto;
  width:7px;
  height:7px;
  margin-left:0;
  border-right:1.5px solid currentColor;
  border-bottom:1.5px solid currentColor;
  transform:rotate(45deg) translate(-1px,-1px);
  display:inline-block;
  opacity:.8;
}

.hk-mainnav .sp-megamenu-parent > li.menu-parent::after,
.hk-mainnav .sp-megamenu-parent > li.parent::after{
  content:"";
  position:absolute;
  left:-8px;
  right:-8px;
  top:100%;
  height:28px;
  background:transparent;
  z-index:300;
}

.hk-mainnav .sp-megamenu-parent > li > .sp-dropdown,
.hk-mainnav .sp-megamenu-parent > li > .sp-dropdown.sp-dropdown-main,
.hk-mainnav .sp-megamenu-parent > li > .sp-dropdown.sp-dropdown-mega{
  top:calc(100% + 1px) !important;
  left:0 !important;
  margin:0 !important;
  padding:12px !important;
  min-width:260px;
  background:rgba(255,255,255,.98);
  border:1px solid var(--hk-border);
  border-radius:18px;
  box-shadow:var(--hk-shadow-lg);
  backdrop-filter:blur(12px);
  opacity:0;
  visibility:hidden;
  transform:translateY(6px);
  transition:opacity .16s ease, transform .16s ease, visibility .16s ease;
  pointer-events:none;
  z-index:350 !important;
}

.hk-mainnav .sp-megamenu-parent > li:hover > .sp-dropdown,
.hk-mainnav .sp-megamenu-parent > li:hover > .sp-dropdown.sp-dropdown-main,
.hk-mainnav .sp-megamenu-parent > li:hover > .sp-dropdown.sp-dropdown-mega,
.hk-mainnav .sp-megamenu-parent > li:focus-within > .sp-dropdown,
.hk-mainnav .sp-megamenu-parent > li:focus-within > .sp-dropdown.sp-dropdown-main,
.hk-mainnav .sp-megamenu-parent > li:focus-within > .sp-dropdown.sp-dropdown-mega{
  opacity:1;
  visibility:visible;
  transform:translateY(0);
  pointer-events:auto;
}

.hk-mainnav .sp-dropdown-inner,
.hk-mainnav .sp-dropdown-mega .sp-dropdown-inner{
  background:transparent !important;
  border:0 !important;
  box-shadow:none !important;
  padding:0 !important;
}

.hk-mainnav .sp-dropdown ul,
.hk-mainnav .sp-dropdown-items{
  margin:0;
  padding:0;
  list-style:none;
}

.hk-mainnav .sp-dropdown li,
.hk-mainnav .sp-dropdown li.menu-parent,
.hk-mainnav .sp-dropdown li.parent{
  position:relative;
  margin:0;
  padding:0 !important;
  background:transparent !important;
  border:0 !important;
  box-shadow:none !important;
  border-radius:0 !important;
}

.hk-mainnav .sp-dropdown li > a,
.hk-mainnav .sp-dropdown li > span{
  display:flex;
  align-items:center;
  justify-content:flex-start;
  gap:10px;
  width:100%;
  min-height:46px;
  padding:11px 46px 11px 24px;
  border-radius:12px !important;
  background:transparent !important;
  border:0 !important;
  box-shadow:none !important;
  box-sizing:border-box;
  font-size:14px;
  font-weight:500;
  line-height:1.35;
  color:var(--hk-text) !important;
  text-decoration:none;
  transition:background .18s ease, color .18s ease;
  outline:0 !important;
  position:relative;
}

.hk-mainnav .sp-dropdown li:hover > a,
.hk-mainnav .sp-dropdown li:hover > span,
.hk-mainnav .sp-dropdown li > a:hover,
.hk-mainnav .sp-dropdown li > span:hover{
  background:#f4eff9 !important;
  color:var(--hk-primary) !important;
}

.hk-mainnav .sp-dropdown li.active > a,
.hk-mainnav .sp-dropdown li.current > a,
.hk-mainnav .sp-dropdown li.active > span,
.hk-mainnav .sp-dropdown li.current > span{
  background:#efe7f7 !important;
  color:var(--hk-primary) !important;
}

.hk-mainnav .sp-dropdown li.menu-parent > a::after,
.hk-mainnav .sp-dropdown li.parent > a::after,
.hk-mainnav .sp-dropdown li.menu-parent > span::after,
.hk-mainnav .sp-dropdown li.parent > span::after{
  content:"";
  position:absolute;
  top:50%;
  right:18px;
  width:7px;
  height:7px;
  border-top:1.5px solid currentColor;
  border-right:1.5px solid currentColor;
  transform:translateY(-50%) rotate(45deg);
  opacity:.75;
}

.hk-mainnav .sp-dropdown .sp-module-title,
.hk-mainnav .sp-dropdown .mega-menu-title,
.hk-mainnav .sp-dropdown h3{
  margin:4px 0 8px;
  padding:0 8px !important;
  font-size:12px;
  font-weight:700;
  text-transform:uppercase;
  letter-spacing:.04em;
  color:var(--hk-primary);
  background:transparent !important;
  border:0 !important;
  box-shadow:none !important;
  border-radius:0 !important;
}

.hk-mainnav .sp-dropdown-mega .row,
.hk-mainnav .sp-dropdown-mega [class*="col-"]{
  margin:0 !important;
}

.hk-mainnav .sp-dropdown-mega [class*="col-"]{
  padding:4px !important;
}

.hk-mainnav .sp-dropdown li.menu-parent::after,
.hk-mainnav .sp-dropdown li.parent::after{
  content:"";
  position:absolute;
  top:-4px;
  left:100%;
  width:18px;
  height:calc(100% + 8px);
  background:transparent;
  z-index:360;
}

.hk-mainnav .sp-dropdown li > .sp-dropdown,
.hk-mainnav .sp-dropdown li > .sp-dropdown-sub,
.hk-mainnav .sp-dropdown li > .sp-submenu{
  position:absolute !important;
  top:0 !important;
  left:calc(100% + 8px) !important;
  min-width:240px;
  margin:0 !important;
  padding:12px !important;
  background:rgba(255,255,255,.98);
  border:1px solid var(--hk-border);
  border-radius:16px;
  box-shadow:0 18px 40px rgba(30,18,46,.14);
  opacity:0;
  visibility:hidden;
  transform:translateX(6px);
  transition:opacity .16s ease, transform .16s ease, visibility .16s ease;
  pointer-events:none;
  z-index:360;
  overflow:hidden;
}

.hk-mainnav .sp-dropdown li:hover > .sp-dropdown,
.hk-mainnav .sp-dropdown li:hover > .sp-dropdown-sub,
.hk-mainnav .sp-dropdown li:hover > .sp-submenu,
.hk-mainnav .sp-dropdown li:focus-within > .sp-dropdown,
.hk-mainnav .sp-dropdown li:focus-within > .sp-dropdown-sub,
.hk-mainnav .sp-dropdown li:focus-within > .sp-submenu{
  opacity:1;
  visibility:visible;
  transform:translateX(0);
  pointer-events:auto;
}

.hk-mainnav .sp-dropdown li.hk-drop-left > .sp-dropdown,
.hk-mainnav .sp-dropdown li.hk-drop-left > .sp-dropdown-sub,
.hk-mainnav .sp-dropdown li.hk-drop-left > .sp-submenu{
  left:auto !important;
  right:calc(100% + 8px) !important;
  transform:translateX(-6px);
}

.hk-mainnav .sp-dropdown li.hk-drop-left:hover > .sp-dropdown,
.hk-mainnav .sp-dropdown li.hk-drop-left:hover > .sp-dropdown-sub,
.hk-mainnav .sp-dropdown li.hk-drop-left:hover > .sp-submenu{
  transform:translateX(0);
}

#sp-header .sp-megamenu-parent .sp-dropdown li.sp-menu-item > a,
#sp-header .sp-megamenu-parent .sp-dropdown li.sp-menu-item > span{
  display:flex !important;
  align-items:center !important;
  justify-content:flex-start !important;
  width:100% !important;
  min-height:46px !important;
  padding:11px 46px 11px 24px !important;
  border-radius:12px !important;
  box-sizing:border-box !important;
  line-height:1.35 !important;
  position:relative !important;
}

#sp-header .sp-megamenu-parent .sp-dropdown li.sp-menu-item:hover > a,
#sp-header .sp-megamenu-parent .sp-dropdown li.sp-menu-item:hover > span{
  background:#f4eff9 !important;
  color:var(--hk-primary) !important;
}

#sp-header .sp-megamenu-parent .sp-dropdown li.sp-has-child > a::after,
#sp-header .sp-megamenu-parent .sp-dropdown li.sp-has-child > span::after{
  content:"" !important;
  position:absolute !important;
  top:50% !important;
  right:18px !important;
  width:7px !important;
  height:7px !important;
  border-top:1.5px solid currentColor !important;
  border-right:1.5px solid currentColor !important;
  transform:translateY(-50%) rotate(45deg) !important;
  opacity:.75 !important;
}

/* =========================
   ГЛАВНЫЙ БЛОК
========================= */

.hk-hero{
  margin-top:18px;
}

.hk-hero__row{
  display:grid !important;
  grid-template-columns:240px minmax(0,1fr) 300px;
  gap:20px;
  align-items:start;
}

.hk-hero__aside,
.hk-hero__main,
.hk-hero__promo{
  min-width:0;
}

.hk-hero__aside > .sppb-column-addons,
.hk-hero__main > .sppb-column-addons,
.hk-hero__promo > .sppb-column-addons{
  height:100%;
  display:flex;
  flex-direction:column;
  gap:16px;
}

.hk-director-card,
.hk-director-meta{
  background:var(--hk-surface);
  border:1px solid var(--hk-border);
  border-radius:var(--hk-radius);
  box-shadow:var(--hk-shadow);
}

.hk-director-card{
  padding:14px;
  overflow:hidden;
}

.hk-director-card img{
  display:block;
  width:100%;
  aspect-ratio:3/4;
  object-fit:cover;
  border-radius:16px;
}

.hk-director-meta{
  padding:18px 16px;
  text-align:center;
}

.hk-director-meta h3,
.hk-director-meta h4{
  margin:0 0 8px;
  font-size:20px;
  line-height:1.2;
  color:var(--hk-text);
}

.hk-director-meta p{
  margin:0;
  color:var(--hk-muted);
  line-height:1.45;
}

.hk-welcome-card{
  background:linear-gradient(135deg,#ffffff 0%,#fbf8ff 100%);
  border:1px solid var(--hk-border);
  border-radius:28px;
  box-shadow:var(--hk-shadow);
  padding:34px 40px;
  min-height:100%;
}

.hk-welcome-card h1,
.hk-welcome-card h2,
.hk-welcome-card h3{
  margin:0 0 20px;
  color:var(--hk-text);
  font-weight:400;
  font-size:clamp(28px,2.8vw,52px);
  line-height:1.15;
}

.hk-welcome-card p{
  margin:0 0 16px;
  color:#4a425d;
  font-size:17px;
  line-height:1.6;
}

.hk-welcome-card p:last-child{
  margin-bottom:0;
}

.hk-hero__promo{
  display:flex;
  flex-direction:column;
}

.hk-promo-card{
  background:#fff;
  border:1px solid var(--hk-border);
  border-radius:18px;
  box-shadow:var(--hk-shadow);
  padding:10px 14px;
  min-height:78px;
  display:flex;
  align-items:center;
  overflow:hidden;
}

.hk-promo-card a{
  display:flex;
  align-items:center;
  width:100%;
  min-height:54px;
  color:inherit;
  text-decoration:none;
}

.hk-promo-card img{
  display:block;
  max-width:100%;
  max-height:54px;
  width:auto;
  height:auto;
  object-fit:contain;
}

.hk-promo-card .jmoddiv,
.hk-promo-card .jmodedit,
.hk-promo-card .edit-icon,
.hk-promo-card .icon-edit,
.hk-promo-card .sppb-addon-text:empty,
.hk-promo-card .sppb-empty,
.hk-promo-card small:empty,
.hk-promo-card span:empty{
  display:none !important;
}

.hk-hero .sppb-addon{
  margin-bottom:0 !important;
}

.hk-hero .sppb-addon-content,
.hk-hero .sppb-addon-single-image-container{
  height:auto;
}

.hk-hero .sppb-img-responsive,
.hk-hero img{
  image-rendering:auto;
}

/* =========================
   АДАПТИВ
========================= */

@media (max-width:1399px){
  .hk-hero__row{
    grid-template-columns:220px minmax(0,1fr) 280px;
  }

  .hk-welcome-card{
    padding:28px 30px;
  }

  .hk-welcome-card p{
    font-size:16px;
  }
}

@media (max-width:991px){
  .hk-mainnav{
    margin:10px auto 14px;
    padding:0 12px;
  }

  .hk-mainnav .sp-megamenu-parent{
    display:none !important;
  }

  .hk-hero__row{
    grid-template-columns:1fr;
  }

  .hk-director-card,
  .hk-director-meta,
  .hk-welcome-card,
  .hk-promo-card{
    border-radius:18px;
  }

  .hk-welcome-card{
    padding:24px 22px;
  }

  .hk-welcome-card p{
    font-size:16px;
  }

  .hk-mainnav .sp-megamenu-parent > li > .sp-dropdown,
  .hk-mainnav .sp-dropdown li > .sp-dropdown,
  .hk-mainnav .sp-dropdown li > .sp-dropdown-sub,
  .hk-mainnav .sp-dropdown li > .sp-submenu{
    transition:none;
  }
}
/* =========================
   БЕЗОПАСНЫЕ СТИЛИ OFFCANVAS-МЕНЮ
========================= */

#offcanvas-toggler{
  width:52px;
  height:52px;
  border-radius:16px;
}

@media (min-width: 992px){
  #offcanvas-toggler{
    display:none !important;
  }
}

@media (max-width: 991.98px){
  #offcanvas-toggler{
    display:inline-flex !important;
    align-items:center;
    justify-content:center;
    background:#fff;
    border:1px solid var(--hk-border);
    box-shadow:0 8px 20px rgba(63,28,91,.08);
    color:var(--hk-primary);
  }
}

/* Только визуальное оформление, без переопределения позиции панели */
.offcanvas-menu{
  background:linear-gradient(180deg,#fbf8ff 0%,#f5effc 100%);
  color:var(--hk-text);
}

.offcanvas-menu .offcanvas-inner{
  padding:18px;
}

.offcanvas-menu .close-offcanvas,
.offcanvas-menu .btn-close,
.offcanvas-menu .close{
  width:40px;
  height:40px;
  border-radius:12px;
  border:1px solid var(--hk-border);
  background:#fff;
  box-shadow:0 6px 16px rgba(63,28,91,.06);
  opacity:1;
}

/* Сброс списка */
.offcanvas-menu .menu,
.offcanvas-menu .menu ul,
.offcanvas-menu .offcanvas-menu,
.offcanvas-menu .offcanvas-menu-sub{
  list-style:none;
  margin:0;
  padding:0;
}

.offcanvas-menu .menu,
.offcanvas-menu .offcanvas-menu{
  display:flex;
  flex-direction:column;
  gap:12px;
}

.offcanvas-menu .menu > li,
.offcanvas-menu .offcanvas-menu > li{
  margin:0 !important;
}

/* Первый уровень */
.offcanvas-menu .menu > li > a,
.offcanvas-menu .menu > li > span,
.offcanvas-menu .offcanvas-menu > li > a,
.offcanvas-menu .offcanvas-menu > li > span{
  display:flex !important;
  align-items:center !important;
  justify-content:space-between !important;
  width:100% !important;
  min-height:56px !important;
  padding:14px 18px !important;
  border-radius:18px !important;
  background:#fff !important;
  border:1px solid rgba(106,44,145,.08) !important;
  color:#3a3551 !important;
  text-decoration:none !important;
  font-size:16px !important;
  font-weight:600 !important;
  line-height:1.25 !important;
  box-shadow:0 8px 22px rgba(63,28,91,.05) !important;
  position:relative;
  margin:0 !important;
}

.offcanvas-menu .menu > li > a:hover,
.offcanvas-menu .offcanvas-menu > li > a:hover{
  background:#f7f2fc !important;
  color:var(--hk-primary) !important;
}

.offcanvas-menu .menu > li.active > a,
.offcanvas-menu .offcanvas-menu > li.active > a{
  background:linear-gradient(135deg,#6A2C91,#8C4BB8) !important;
  color:#fff !important;
  border-color:transparent !important;
}

/* Стрелка верхнего уровня только для родительских пунктов */
.offcanvas-menu .menu > li > a::after,
.offcanvas-menu .offcanvas-menu > li > a::after{
  content:none !important;
}

.offcanvas-menu .menu > li.menu-parent > a::after,
.offcanvas-menu .menu > li.parent > a::after,
.offcanvas-menu .offcanvas-menu > li.menu-parent > a::after,
.offcanvas-menu .offcanvas-menu > li.parent > a::after{
  content:"" !important;
  width:10px !important;
  height:10px !important;
  flex:0 0 10px !important;
  border-right:2px solid currentColor !important;
  border-bottom:2px solid currentColor !important;
  transform:rotate(45deg) !important;
  opacity:.7 !important;
  transition:transform .2s ease !important;
}

.offcanvas-menu li.hk-open > a::after{
  transform:rotate(225deg) !important;
}

/* Подменю */
.offcanvas-menu .menu > li > ul,
.offcanvas-menu .menu ul li > ul,
.offcanvas-menu .offcanvas-menu > li > ul,
.offcanvas-menu .offcanvas-menu-sub > li > ul{
  margin:10px 0 0 0 !important;
  padding:0 0 0 14px !important;
  border-left:2px solid rgba(106,44,145,.12) !important;
}

.offcanvas-menu .menu ul > li,
.offcanvas-menu .offcanvas-menu-sub > li{
  margin:0 0 10px !important;
}

.offcanvas-menu .menu ul > li > a,
.offcanvas-menu .menu ul > li > span,
.offcanvas-menu .offcanvas-menu-sub > li > a,
.offcanvas-menu .offcanvas-menu-sub > li > span{
  display:flex !important;
  align-items:flex-start !important;
  justify-content:flex-start !important;
  width:100% !important;
  min-height:46px !important;
  padding:11px 38px 11px 14px !important;
  border-radius:14px !important;
  background:#fff !important;
  border:1px solid rgba(106,44,145,.08) !important;
  color:#5b566e !important;
  text-decoration:none !important;
  font-size:15px !important;
  font-weight:500 !important;
  line-height:1.4 !important;
  box-shadow:0 6px 14px rgba(63,28,91,.04) !important;
  position:relative !important;
  white-space:normal !important;
}

.offcanvas-menu .menu ul > li > a::before,
.offcanvas-menu .menu ul > li > span::before,
.offcanvas-menu .offcanvas-menu-sub > li > a::before,
.offcanvas-menu .offcanvas-menu-sub > li > span::before{
  content:"" !important;
  width:8px !important;
  height:8px !important;
  flex:0 0 8px !important;
  margin-top:.42em !important;
  margin-right:12px !important;
  border-radius:50% !important;
  background:rgba(106,44,145,.28) !important;
}

/* Убираем унаследованные стрелки вложенных пунктов */
.offcanvas-menu .menu ul > li > a::after,
.offcanvas-menu .menu ul > li > span::after,
.offcanvas-menu .offcanvas-menu-sub > li > a::after,
.offcanvas-menu .offcanvas-menu-sub > li > span::after{
  content:none !important;
}

/* Одна стрелка для вложенных родительских пунктов */
.offcanvas-menu .menu ul > li.menu-parent > a::after,
.offcanvas-menu .menu ul > li.parent > a::after,
.offcanvas-menu .offcanvas-menu-sub > li.menu-parent > a::after,
.offcanvas-menu .offcanvas-menu-sub > li.parent > a::after,
.offcanvas-menu .offcanvas-inner ul.menu > li.menu-parent > span.menu-separator::after{
  content:"" !important;
  position:absolute !important;
  right:14px !important;
  top:50% !important;
  width:8px !important;
  height:8px !important;
  border-right:2px solid currentColor !important;
  border-bottom:2px solid currentColor !important;
  transform:translateY(-50%) rotate(-45deg) !important;
  opacity:.72 !important;
}

.offcanvas-menu .offcanvas-inner ul.menu > li.menu-parent[aria-expanded=true] > span.menu-separator::after,
.offcanvas-menu .menu ul > li.hk-open > a::after,
.offcanvas-menu .offcanvas-menu-sub > li.hk-open > a::after,
.offcanvas-menu .menu ul > li.menu-parent[aria-expanded=true] > a::after,
.offcanvas-menu li.menu-parent[aria-expanded=true] > a::after{
  transform:translateY(-50%) rotate(45deg) !important;
}

.offcanvas-menu .menu-toggler{
  display:none !important;
}

.offcanvas-menu .menu ul > li > a:hover,
.offcanvas-menu .menu ul > li > span:hover,
.offcanvas-menu .offcanvas-menu-sub > li > a:hover,
.offcanvas-menu .offcanvas-menu-sub > li > span:hover{
  background:#f7f2fc !important;
  color:var(--hk-primary) !important;
}

.offcanvas-menu .menu ul > li.active > a,
.offcanvas-menu .offcanvas-menu-sub > li.active > a{
  background:#efe7f7 !important;
  color:var(--hk-primary) !important;
}

/* =========================
   DROPFILES UI
========================= */
/* Глобальный UI Dropfiles v2 — UI-кит Holmogorka */

:root {
  --dfv2-primary: var(--hk-primary, #6A2C91);
  --dfv2-primary-dark: var(--hk-primary-dark, #4E1F6B);
  --dfv2-primary-light: var(--hk-primary-light, #8C4BB8);
  --dfv2-secondary: var(--hk-secondary, #0FA958);
  --dfv2-surface: var(--hk-surface, #ffffff);
  --dfv2-surface-2: var(--hk-surface-2, #f7f4fb);
  --dfv2-border: var(--hk-border, #e7dff0);
  --dfv2-text: var(--hk-text, #2f2940);
  --dfv2-muted: var(--hk-muted, #6f6784);
  --dfv2-shadow: var(--hk-shadow, 0 18px 38px rgba(44, 24, 73, .12));
  --dfv2-shadow-lg: var(--hk-shadow-lg, 0 26px 52px rgba(44, 24, 73, .16));
}

/* ===== Общие стили ===== */
.dropfiles-content,
.dropfiles-content * {
  box-sizing: border-box;
}

.dropfiles-content a {
  text-decoration: none;
}

.dropfiles-content .downloadlink,
.dropfiles-content .openlink,
.dropfiles-content .download-all,
.dropfiles-content .openlink-manage-files {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  min-height: 44px;
  padding: 10px 16px;
  border-radius: 14px;
  border: 1px solid var(--dfv2-border);
  background: #fff;
  color: var(--dfv2-primary);
  font-weight: 600;
  line-height: 1.1;
  transition: background .18s ease, color .18s ease, border-color .18s ease, transform .18s ease, box-shadow .18s ease;
}

.dropfiles-content .downloadlink:hover,
.dropfiles-content .openlink:hover,
.dropfiles-content .download-all:hover,
.dropfiles-content .openlink-manage-files:hover {
  transform: translateY(-1px);
}

.dropfiles-content .downloadlink {
  background: var(--dfv2-primary);
  border-color: var(--dfv2-primary);
  color: #fff;
}

.dropfiles-content .downloadlink:hover {
  background: var(--dfv2-primary-dark);
  border-color: var(--dfv2-primary-dark);
  color: #fff;
}

.dropfiles-content .openlink:hover,
.dropfiles-content .download-all:hover,
.dropfiles-content .openlink-manage-files:hover {
  background: var(--dfv2-surface-2);
  color: var(--dfv2-primary-dark);
}

/* ===== Тема по умолчанию / список карточек ===== */
.dropfiles-content-default .dropfiles_list {
  display: flex;
  flex-direction: column;
  gap: 14px;
}

.dropfiles-content-default .dropfiles_list .file {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 16px;
  align-items: stretch;
  padding: 18px 20px;
  border: 1px solid var(--dfv2-border);
  border-radius: 24px;
  background: var(--dfv2-surface);
  box-shadow: var(--dfv2-shadow);
  transition: box-shadow .2s ease, transform .2s ease;
}

.dropfiles-content-default .dropfiles_list .file:hover {
  box-shadow: var(--dfv2-shadow-lg);
}

.dropfiles-content-default .dropfiles_list .filecontent {
  display: grid;
  grid-template-columns: 132px minmax(0, 1fr);
  gap: 16px;
  align-items: stretch;
  min-width: 0;
}

.dropfiles-content-default .dropfiles_list .custom-icon,
.dropfiles-content-default .dropfiles_list .ext {
  display: flex;
  align-items: center;
  justify-content: center;
  align-self: stretch;
  min-height: 100%;
  width: 132px;
  min-width: 132px;
  padding: 18px;
  border-radius: 24px;
  border: 1px solid var(--dfv2-border);
  background: var(--dfv2-surface-2);
  color: var(--dfv2-primary);
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: .04em;
}

.dropfiles-content-default .dropfiles_list .custom-icon img,
.dropfiles-content-default .dropfiles_list .ext img,
.dropfiles-content-default .dropfiles_list .custom-icon svg,
.dropfiles-content-default .dropfiles_list .ext svg {
  display: block;
  width: auto;
  height: auto;
  max-width: 60px !important;
  max-height: 60px !important;
  margin: auto;
  object-fit: contain;
}

.dropfiles-content-default .dropfiles_list .ext .txt,
.dropfiles-content-default .dropfiles_list .ext span {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 60px;
  min-height: 60px;
  padding: 8px;
  border-radius: 18px;
  background: rgba(255,255,255,.78);
}

.dropfiles-content-default .dropfiles_list h3 {
  margin: 0 0 10px;
  color: var(--dfv2-text);
  font-size: clamp(1.1rem, 1.7vw, 1.45rem);
  line-height: 1.12;
  font-weight: 700;
  word-break: break-word;
}

.dropfiles-content-default .dropfiles_list h3 a {
  color: var(--dfv2-text);
}

.dropfiles-content-default .dropfiles_list h3 a:hover {
  color: var(--dfv2-primary);
}

.dropfiles-content-default .dropfiles_list .file-xinfo {
  display: flex;
  flex-wrap: wrap;
  gap: 10px 12px;
  align-items: flex-start;
}

.dropfiles-content-default .dropfiles_list .file-desc {
  flex: 1 1 100%;
  margin-bottom: 2px;
  color: var(--dfv2-text);
  line-height: 1.55;
}

.dropfiles-content-default .dropfiles_list .file-version,
.dropfiles-content-default .dropfiles_list .file-size,
.dropfiles-content-default .dropfiles_list .file-hits,
.dropfiles-content-default .dropfiles_list .file-dated,
.dropfiles-content-default .dropfiles_list .file-modified {
  display: inline-flex;
  align-items: center;
  min-height: 36px;
  padding: 8px 14px;
  border-radius: 999px;
  background: #fff;
  border: 1px solid var(--dfv2-border);
  color: var(--dfv2-muted);
  font-size: .92rem;
  line-height: 1.1;
}

.dropfiles-content-default .dropfiles_list .file-version span,
.dropfiles-content-default .dropfiles_list .file-size span,
.dropfiles-content-default .dropfiles_list .file-hits span,
.dropfiles-content-default .dropfiles_list .file-dated span,
.dropfiles-content-default .dropfiles_list .file-modified span {
  color: var(--dfv2-text);
  font-weight: 600;
  margin-right: 4px;
}

.dropfiles-content-default .dropfiles_list .file-right {
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: 10px;
  min-width: 188px;
}

.dropfiles-content-default .dropfiles_list .file-right > * {
  width: 100%;
}

/* Цвета типов файлов */
.dropfiles-content-default .dropfiles_list .ext.pdf,
.dropfiles-content-default .dropfiles_list .custom-icon.pdf,
.dropfiles-content-table table .ext.pdf {
  background: #ffe9ea;
  border-color: #ffd2d6;
  color: #c03642;
}

.dropfiles-content-default .dropfiles_list .ext.xls,
.dropfiles-content-default .dropfiles_list .ext.xlsx,
.dropfiles-content-default .dropfiles_list .ext.csv,
.dropfiles-content-default .dropfiles_list .custom-icon.xls,
.dropfiles-content-default .dropfiles_list .custom-icon.xlsx,
.dropfiles-content-default .dropfiles_list .custom-icon.csv,
.dropfiles-content-table table .ext.xls,
.dropfiles-content-table table .ext.xlsx,
.dropfiles-content-table table .ext.csv {
  background: #e9f8ef;
  border-color: #cfeedd;
  color: #14804a;
}

.dropfiles-content-default .dropfiles_list .ext.doc,
.dropfiles-content-default .dropfiles_list .ext.docx,
.dropfiles-content-default .dropfiles_list .ext.odt,
.dropfiles-content-default .dropfiles_list .ext.rtf,
.dropfiles-content-default .dropfiles_list .custom-icon.doc,
.dropfiles-content-default .dropfiles_list .custom-icon.docx,
.dropfiles-content-default .dropfiles_list .custom-icon.odt,
.dropfiles-content-default .dropfiles_list .custom-icon.rtf,
.dropfiles-content-table table .ext.doc,
.dropfiles-content-table table .ext.docx,
.dropfiles-content-table table .ext.odt,
.dropfiles-content-table table .ext.rtf {
  background: #ebf3ff;
  border-color: #d6e5ff;
  color: #275fba;
}

.dropfiles-content-default .dropfiles_list .ext.ppt,
.dropfiles-content-default .dropfiles_list .ext.pptx,
.dropfiles-content-default .dropfiles_list .custom-icon.ppt,
.dropfiles-content-default .dropfiles_list .custom-icon.pptx,
.dropfiles-content-table table .ext.ppt,
.dropfiles-content-table table .ext.pptx {
  background: #fff0e8;
  border-color: #ffddcc;
  color: #d86b25;
}

.dropfiles-content-default .dropfiles_list .ext.zip,
.dropfiles-content-default .dropfiles_list .ext.rar,
.dropfiles-content-default .dropfiles_list .ext.7z,
.dropfiles-content-default .dropfiles_list .custom-icon.zip,
.dropfiles-content-default .dropfiles_list .custom-icon.rar,
.dropfiles-content-default .dropfiles_list .custom-icon.7z,
.dropfiles-content-table table .ext.zip,
.dropfiles-content-table table .ext.rar,
.dropfiles-content-table table .ext.7z {
  background: #f1ecff;
  border-color: #dfd1ff;
  color: #6a2c91;
}

.dropfiles-content-default .dropfiles_list .ext.jpg,
.dropfiles-content-default .dropfiles_list .ext.jpeg,
.dropfiles-content-default .dropfiles_list .ext.png,
.dropfiles-content-default .dropfiles_list .ext.webp,
.dropfiles-content-default .dropfiles_list .ext.gif,
.dropfiles-content-default .dropfiles_list .custom-icon.jpg,
.dropfiles-content-default .dropfiles_list .custom-icon.jpeg,
.dropfiles-content-default .dropfiles_list .custom-icon.png,
.dropfiles-content-default .dropfiles_list .custom-icon.webp,
.dropfiles-content-default .dropfiles_list .custom-icon.gif,
.dropfiles-content-table table .ext.jpg,
.dropfiles-content-table table .ext.jpeg,
.dropfiles-content-table table .ext.png,
.dropfiles-content-table table .ext.webp,
.dropfiles-content-table table .ext.gif {
  background: #fff7e0;
  border-color: #ffeab0;
  color: #b87c00;
}

/* Ссылки категорий */
.dropfiles-content .dropfiles-categories,
.dropfiles-content .categories-links,
.dropfiles-content .dropfiles-list-categories {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-bottom: 16px;
}

.dropfiles-content .catlink.dropfilescategory,
.dropfiles-content a.dropfilescategory {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  min-height: 40px;
  padding: 8px 14px;
  border-radius: 14px;
  background: #fff;
  border: 1px solid var(--dfv2-border);
  color: var(--dfv2-primary);
  font-weight: 600;
}

.dropfiles-content .catlink.dropfilescategory:hover,
.dropfiles-content a.dropfilescategory:hover {
  background: var(--dfv2-surface-2);
  color: var(--dfv2-primary-dark);
}

/* ===== Табличная тема ===== */
.dropfiles-content-table .dropfiles-container-table,
.dropfiles-content-table .mediaTableWrapper {
  border-radius: 24px;
  overflow: hidden;
  border: 1px solid var(--dfv2-border);
  background: var(--dfv2-surface);
  box-shadow: var(--dfv2-shadow);
}

.dropfiles-content-table table {
  width: 100%;
  border-collapse: separate;
  border-spacing: 0;
}

.dropfiles-content-table thead th {
  background: var(--dfv2-surface-2);
  color: var(--dfv2-text);
  font-weight: 700;
  border-bottom: 1px solid var(--dfv2-border);
}

.dropfiles-content-table th,
.dropfiles-content-table td {
  padding: 14px 16px;
  vertical-align: middle;
  border-color: var(--dfv2-border);
}

.dropfiles-content-table tbody tr {
  background: #fff;
}

.dropfiles-content-table tbody tr:nth-child(even) {
  background: #fcfbfe;
}

.dropfiles-content-table tbody tr:hover {
  background: #f9f6fd;
}

.dropfiles-content-table td.file_title {
  min-width: 280px;
}

.dropfiles-content-table td.file_title .title {
  color: var(--dfv2-text);
  font-weight: 600;
}

.dropfiles-content-table td.file_title .title:hover {
  color: var(--dfv2-primary);
}

.dropfiles-content-table td.file_title .ext,
.dropfiles-content-table td.file_title .custom-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 60px;
  height: 60px;
  min-width: 60px;
  padding: 8px;
  margin-right: 12px;
  border-radius: 16px;
  background: var(--dfv2-surface-2);
  border: 1px solid var(--dfv2-border);
  color: var(--dfv2-primary);
  font-weight: 700;
  text-transform: uppercase;
}

.dropfiles-content-table td.file_title .custom-icon img,
.dropfiles-content-table td.file_title .ext img,
.dropfiles-content-table td.file_title .custom-icon svg,
.dropfiles-content-table td.file_title .ext svg {
  display: block;
  max-width: 36px !important;
  max-height: 36px !important;
  width: auto !important;
  height: auto !important;
  object-fit: contain;
  margin: auto;
}

/* ===== Дерево папок / прочее ===== */
.dropfiles-content .breadcrumbs {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  align-items: center;
  margin-bottom: 16px;
  padding: 0;
}

.dropfiles-content .breadcrumbs > li {
  list-style: none;
  color: var(--dfv2-text);
  font-weight: 700;
}

/* ===== Адаптив ===== */
@media (max-width: 991.98px) {
  .dropfiles-content-default .dropfiles_list .file {
    grid-template-columns: 1fr;
  }

  .dropfiles-content-default .dropfiles_list .file-right {
    flex-direction: row;
    flex-wrap: wrap;
    min-width: 0;
  }

  .dropfiles-content-default .dropfiles_list .file-right > * {
    width: auto;
  }
}

@media (max-width: 767.98px) {
  .dropfiles-content-default .dropfiles_list .file {
    padding: 16px;
    border-radius: 20px;
  }

  .dropfiles-content-default .dropfiles_list .filecontent {
    grid-template-columns: 1fr;
    gap: 12px;
  }

  .dropfiles-content-default .dropfiles_list .custom-icon,
  .dropfiles-content-default .dropfiles_list .ext {
    width: 96px;
    min-width: 96px;
    min-height: 96px;
    padding: 14px;
    border-radius: 20px;
  }

  .dropfiles-content-default .dropfiles_list .custom-icon img,
  .dropfiles-content-default .dropfiles_list .ext img,
  .dropfiles-content-default .dropfiles_list .custom-icon svg,
  .dropfiles-content-default .dropfiles_list .ext svg {
    max-width: 52px !important;
    max-height: 52px !important;
  }

  .dropfiles-content-default .dropfiles_list .file-right {
    flex-direction: column;
  }

  .dropfiles-content-default .dropfiles_list .file-right > * {
    width: 100%;
  }

  .dropfiles-content-table th,
  .dropfiles-content-table td {
    padding: 12px 10px;
  }
}

/* =========================
   БЕЗОПАСНЫЙ V2-МОСТ ЦВЕТОВ
========================= */
:root,
body.site,
.com-sppagebuilder,
#sp-page-builder {
  --hk-primary: #6a2c91;
  --hk-primary-dark: #4e1f6b;
  --hk-primary-light: #8c4bb8;
  --hk-primary-soft: #f2eafb;
  --hk-secondary: #0fa958;
  --hk-secondary-dark: #0a7a3f;
  --hk-secondary-light: #39c777;
  --hk-secondary-soft: #e7f8ef;
  --hk-info: #0665d0;
  --hk-info-dark: #044a99;
  --hk-info-light: #2e7dd1;
  --hk-info-soft: #e1effe;
  --hk-warning: #f3b760;
  --hk-warning-dark: #8a5a00;
  --hk-warning-soft: #fff4e3;
  --hk-danger: #e04f1a;
  --hk-danger-dark: #9f3410;
  --hk-danger-soft: #fde9e2;
  --hk-light: #f7f4fb;
  --hk-light-2: #fbf8ff;
  --hk-dark: #2f2940;
  --hk-dark-2: #201b2d;
  --hk-surface: #ffffff;
  --hk-surface-2: #f7f4fb;
  --hk-border: #e7dff0;
  --hk-text: #2f2940;
  --hk-muted: #6f6784;
  --hk-shadow: 0 10px 30px rgba(63, 28, 91, .08);
  --hk-shadow-sm: 0 6px 16px rgba(63, 28, 91, .06);
  --hk-shadow-lg: 0 18px 40px rgba(30, 18, 46, .14);

  --hm-core-primary: var(--hk-primary);
  --hm-core-primary-dark: var(--hk-primary-dark);
  --hm-core-primary-light: var(--hk-primary-light);
  --hm-core-primary-soft: var(--hk-primary-soft);
  --hm-core-secondary: var(--hk-secondary);
  --hm-core-secondary-dark: var(--hk-secondary-dark);
  --hm-core-secondary-light: var(--hk-secondary-light);
  --hm-core-secondary-soft: var(--hk-secondary-soft);
  --hm-core-info: var(--hk-info);
  --hm-core-info-dark: var(--hk-info-dark);
  --hm-core-info-soft: var(--hk-info-soft);
  --hm-core-warning: var(--hk-warning);
  --hm-core-warning-dark: var(--hk-warning-dark);
  --hm-core-warning-soft: var(--hk-warning-soft);
  --hm-core-danger: var(--hk-danger);
  --hm-core-danger-dark: var(--hk-danger-dark);
  --hm-core-danger-soft: var(--hk-danger-soft);
  --hm-core-surface: var(--hk-surface);
  --hm-core-surface-soft: var(--hk-surface-2);
  --hm-core-border: var(--hk-border);
  --hm-core-text: var(--hk-text);
  --hm-core-muted: var(--hk-muted);
  --hm-core-shadow: var(--hk-shadow);

  --bs-blue: var(--hk-info);
  --bs-indigo: var(--hk-primary-dark);
  --bs-purple: var(--hk-primary);
  --bs-pink: var(--hk-danger);
  --bs-red: var(--hk-danger);
  --bs-orange: #f28c38;
  --bs-yellow: var(--hk-warning);
  --bs-green: var(--hk-secondary);
  --bs-teal: var(--hk-secondary-light);
  --bs-cyan: var(--hk-info-light);

  --bs-primary: var(--hk-primary);
  --bs-primary-rgb: 106, 44, 145;
  --bs-primary-text-emphasis: var(--hk-primary-dark);
  --bs-primary-bg-subtle: var(--hk-primary-soft);
  --bs-primary-border-subtle: #d9c2ee;
  --bs-secondary: var(--hk-secondary);
  --bs-secondary-rgb: 15, 169, 88;
  --bs-secondary-text-emphasis: var(--hk-secondary-dark);
  --bs-secondary-bg-subtle: var(--hk-secondary-soft);
  --bs-secondary-border-subtle: #bfe9d1;
  --bs-success: var(--hk-secondary);
  --bs-success-rgb: 15, 169, 88;
  --bs-success-text-emphasis: var(--hk-secondary-dark);
  --bs-success-bg-subtle: var(--hk-secondary-soft);
  --bs-success-border-subtle: #bfe9d1;
  --bs-info: var(--hk-info);
  --bs-info-rgb: 6, 101, 208;
  --bs-info-text-emphasis: var(--hk-info-dark);
  --bs-info-bg-subtle: var(--hk-info-soft);
  --bs-info-border-subtle: #c6defa;
  --bs-warning: var(--hk-warning);
  --bs-warning-rgb: 243, 183, 96;
  --bs-warning-text-emphasis: var(--hk-warning-dark);
  --bs-warning-bg-subtle: var(--hk-warning-soft);
  --bs-warning-border-subtle: #fae4c0;
  --bs-danger: var(--hk-danger);
  --bs-danger-rgb: 224, 79, 26;
  --bs-danger-text-emphasis: var(--hk-danger-dark);
  --bs-danger-bg-subtle: var(--hk-danger-soft);
  --bs-danger-border-subtle: #f7d2c6;
  --bs-light: var(--hk-light);
  --bs-light-rgb: 247, 244, 251;
  --bs-dark: var(--hk-dark);
  --bs-dark-rgb: 47, 41, 64;
  --bs-body-color: var(--hk-text);
  --bs-body-color-rgb: 47, 41, 64;
  --bs-emphasis-color: var(--hk-text);
  --bs-emphasis-color-rgb: 47, 41, 64;
  --bs-secondary-color: var(--hk-muted);
  --bs-secondary-color-rgb: 111, 103, 132;
  --bs-secondary-bg: #f1edf8;
  --bs-secondary-bg-rgb: 241, 237, 248;
  --bs-tertiary-color: #8a829b;
  --bs-tertiary-color-rgb: 138, 130, 155;
  --bs-tertiary-bg: var(--hk-light-2);
  --bs-tertiary-bg-rgb: 251, 248, 255;
  --bs-link-color: var(--hk-primary);
  --bs-link-color-rgb: 106, 44, 145;
  --bs-link-hover-color: var(--hk-primary-dark);
  --bs-link-hover-color-rgb: 78, 31, 107;
  --bs-border-color: var(--hk-border);
  --bs-border-color-translucent: rgba(106, 44, 145, .18);
  --bs-focus-ring-color: rgba(106, 44, 145, .25);
  --bs-code-color: var(--hk-primary);
  --bs-highlight-bg: var(--hk-warning-soft);
}

.hk-theme-preview {
  color: var(--hk-text);
  background: linear-gradient(135deg, #f6f3fb 0%, #f1edf8 42%, #ece7f5 100%);
}

.bg-primary,
.text-bg-primary,
.sppb-bg-primary {
  color: #fff !important;
  background-color: rgba(var(--bs-primary-rgb), var(--bs-bg-opacity, 1)) !important;
}

.bg-secondary,
.text-bg-secondary,
.sppb-bg-secondary {
  color: #fff !important;
  background-color: rgba(var(--bs-secondary-rgb), var(--bs-bg-opacity, 1)) !important;
}

.bg-success,
.text-bg-success,
.sppb-bg-success {
  color: #fff !important;
  background-color: rgba(var(--bs-success-rgb), var(--bs-bg-opacity, 1)) !important;
}

.bg-info,
.text-bg-info,
.sppb-bg-info {
  color: #fff !important;
  background-color: rgba(var(--bs-info-rgb), var(--bs-bg-opacity, 1)) !important;
}

.bg-warning,
.text-bg-warning,
.sppb-bg-warning {
  color: var(--hk-text) !important;
  background-color: rgba(var(--bs-warning-rgb), var(--bs-bg-opacity, 1)) !important;
}

.bg-danger,
.text-bg-danger,
.sppb-bg-danger {
  color: #fff !important;
  background-color: rgba(var(--bs-danger-rgb), var(--bs-bg-opacity, 1)) !important;
}

.bg-light,
.text-bg-light {
  color: var(--hk-text) !important;
  background-color: rgba(var(--bs-light-rgb), var(--bs-bg-opacity, 1)) !important;
}

.bg-dark,
.text-bg-dark {
  color: #fff !important;
  background-color: rgba(var(--bs-dark-rgb), var(--bs-bg-opacity, 1)) !important;
}

.bg-body,
.bg-white { background-color: var(--hk-surface) !important; }
.bg-body-secondary { background-color: var(--bs-secondary-bg) !important; }
.bg-body-tertiary { background-color: var(--bs-tertiary-bg) !important; }
.bg-primary-subtle { background-color: var(--bs-primary-bg-subtle) !important; }
.bg-secondary-subtle { background-color: var(--bs-secondary-bg-subtle) !important; }
.bg-success-subtle { background-color: var(--bs-success-bg-subtle) !important; }
.bg-info-subtle { background-color: var(--bs-info-bg-subtle) !important; }
.bg-warning-subtle { background-color: var(--bs-warning-bg-subtle) !important; }
.bg-danger-subtle { background-color: var(--bs-danger-bg-subtle) !important; }
.bg-light-subtle { background-color: var(--hk-light-2) !important; }
.bg-dark-subtle { background-color: #ece8f1 !important; }

.text-primary,
.link-primary,
.sppb-text-primary { color: var(--hk-primary) !important; }
.text-secondary,
.link-secondary,
.sppb-text-secondary { color: var(--hk-secondary) !important; }
.text-success,
.link-success,
.sppb-text-success { color: var(--hk-secondary) !important; }
.text-info,
.link-info,
.sppb-text-info { color: var(--hk-info) !important; }
.text-warning,
.link-warning,
.sppb-text-warning { color: var(--hk-warning-dark) !important; }
.text-danger,
.link-danger,
.sppb-text-danger { color: var(--hk-danger) !important; }
.text-dark,
.link-dark { color: var(--hk-dark) !important; }
.text-muted { color: var(--hk-muted) !important; }

.text-primary-emphasis { color: var(--bs-primary-text-emphasis) !important; }
.text-secondary-emphasis { color: var(--bs-secondary-text-emphasis) !important; }
.text-success-emphasis { color: var(--bs-success-text-emphasis) !important; }
.text-info-emphasis { color: var(--bs-info-text-emphasis) !important; }
.text-warning-emphasis { color: var(--bs-warning-text-emphasis) !important; }
.text-danger-emphasis { color: var(--bs-danger-text-emphasis) !important; }
.text-light-emphasis { color: var(--hk-muted) !important; }
.text-dark-emphasis { color: var(--hk-dark-2) !important; }

.border,
.border-top,
.border-end,
.border-bottom,
.border-start { border-color: var(--hk-border) !important; }
.border-primary { border-color: rgba(var(--bs-primary-rgb), var(--bs-border-opacity, 1)) !important; }
.border-secondary { border-color: rgba(var(--bs-secondary-rgb), var(--bs-border-opacity, 1)) !important; }
.border-success { border-color: rgba(var(--bs-success-rgb), var(--bs-border-opacity, 1)) !important; }
.border-info { border-color: rgba(var(--bs-info-rgb), var(--bs-border-opacity, 1)) !important; }
.border-warning { border-color: rgba(var(--bs-warning-rgb), var(--bs-border-opacity, 1)) !important; }
.border-danger { border-color: rgba(var(--bs-danger-rgb), var(--bs-border-opacity, 1)) !important; }
.border-light { border-color: var(--hk-light) !important; }
.border-dark { border-color: rgba(var(--bs-dark-rgb), var(--bs-border-opacity, 1)) !important; }
.border-primary-subtle { border-color: var(--bs-primary-border-subtle) !important; }
.border-secondary-subtle { border-color: var(--bs-secondary-border-subtle) !important; }
.border-success-subtle { border-color: var(--bs-success-border-subtle) !important; }
.border-info-subtle { border-color: var(--bs-info-border-subtle) !important; }
.border-warning-subtle { border-color: var(--bs-warning-border-subtle) !important; }
.border-danger-subtle { border-color: var(--bs-danger-border-subtle) !important; }

.btn-primary,
.sppb-btn-primary {
  --bs-btn-color: #fff;
  --bs-btn-bg: var(--hk-primary);
  --bs-btn-border-color: var(--hk-primary);
  --bs-btn-hover-color: #fff;
  --bs-btn-hover-bg: var(--hk-primary-dark);
  --bs-btn-hover-border-color: var(--hk-primary-dark);
  --bs-btn-active-color: #fff;
  --bs-btn-active-bg: var(--hk-primary-dark);
  --bs-btn-active-border-color: var(--hk-primary-dark);
  --bs-btn-disabled-bg: var(--hk-primary-light);
  --bs-btn-disabled-border-color: var(--hk-primary-light);
  color: #fff;
  background-color: var(--hk-primary);
  border-color: var(--hk-primary);
}

.btn-secondary,
.btn-success,
.sppb-btn-secondary,
.sppb-btn-success {
  --bs-btn-color: #fff;
  --bs-btn-bg: var(--hk-secondary);
  --bs-btn-border-color: var(--hk-secondary);
  --bs-btn-hover-color: #fff;
  --bs-btn-hover-bg: var(--hk-secondary-dark);
  --bs-btn-hover-border-color: var(--hk-secondary-dark);
  --bs-btn-active-color: #fff;
  --bs-btn-active-bg: var(--hk-secondary-dark);
  --bs-btn-active-border-color: var(--hk-secondary-dark);
  color: #fff;
  background-color: var(--hk-secondary);
  border-color: var(--hk-secondary);
}

.btn-info,
.sppb-btn-info {
  --bs-btn-color: #fff;
  --bs-btn-bg: var(--hk-info);
  --bs-btn-border-color: var(--hk-info);
  --bs-btn-hover-color: #fff;
  --bs-btn-hover-bg: var(--hk-info-dark);
  --bs-btn-hover-border-color: var(--hk-info-dark);
  --bs-btn-active-color: #fff;
  --bs-btn-active-bg: var(--hk-info-dark);
  --bs-btn-active-border-color: var(--hk-info-dark);
  color: #fff;
  background-color: var(--hk-info);
  border-color: var(--hk-info);
}

.btn-warning,
.sppb-btn-warning {
  --bs-btn-color: var(--hk-text);
  --bs-btn-bg: var(--hk-warning);
  --bs-btn-border-color: var(--hk-warning);
  --bs-btn-hover-color: var(--hk-text);
  --bs-btn-hover-bg: #e9a92c;
  --bs-btn-hover-border-color: #e9a92c;
  color: var(--hk-text);
  background-color: var(--hk-warning);
  border-color: var(--hk-warning);
}

.btn-danger,
.sppb-btn-danger {
  --bs-btn-color: #fff;
  --bs-btn-bg: var(--hk-danger);
  --bs-btn-border-color: var(--hk-danger);
  --bs-btn-hover-color: #fff;
  --bs-btn-hover-bg: var(--hk-danger-dark);
  --bs-btn-hover-border-color: var(--hk-danger-dark);
  color: #fff;
  background-color: var(--hk-danger);
  border-color: var(--hk-danger);
}

.btn-outline-primary,
.sppb-btn-outline-primary {
  --bs-btn-color: var(--hk-primary);
  --bs-btn-border-color: #d9c2ee;
  --bs-btn-hover-color: #fff;
  --bs-btn-hover-bg: var(--hk-primary);
  --bs-btn-hover-border-color: var(--hk-primary);
  color: var(--hk-primary);
  border-color: #d9c2ee;
}

.btn-outline-secondary,
.btn-outline-success,
.sppb-btn-outline-secondary,
.sppb-btn-outline-success {
  --bs-btn-color: var(--hk-secondary);
  --bs-btn-border-color: #bfe9d1;
  --bs-btn-hover-color: #fff;
  --bs-btn-hover-bg: var(--hk-secondary);
  --bs-btn-hover-border-color: var(--hk-secondary);
  color: var(--hk-secondary);
  border-color: #bfe9d1;
}

.btn-outline-info,
.sppb-btn-outline-info {
  --bs-btn-color: var(--hk-info);
  --bs-btn-border-color: #c6defa;
  --bs-btn-hover-color: #fff;
  --bs-btn-hover-bg: var(--hk-info);
  --bs-btn-hover-border-color: var(--hk-info);
  color: var(--hk-info);
  border-color: #c6defa;
}

.btn-outline-warning,
.sppb-btn-outline-warning {
  --bs-btn-color: var(--hk-warning-dark);
  --bs-btn-border-color: #fae4c0;
  --bs-btn-hover-color: var(--hk-text);
  --bs-btn-hover-bg: var(--hk-warning);
  --bs-btn-hover-border-color: var(--hk-warning);
  color: var(--hk-warning-dark);
  border-color: #fae4c0;
}

.btn-outline-danger,
.sppb-btn-outline-danger {
  --bs-btn-color: var(--hk-danger);
  --bs-btn-border-color: #f7d2c6;
  --bs-btn-hover-color: #fff;
  --bs-btn-hover-bg: var(--hk-danger);
  --bs-btn-hover-border-color: var(--hk-danger);
  color: var(--hk-danger);
  border-color: #f7d2c6;
}

.alert-primary {
  --bs-alert-color: var(--hk-primary-dark);
  --bs-alert-bg: var(--hk-primary-soft);
  --bs-alert-border-color: var(--bs-primary-border-subtle);
}

.alert-secondary,
.alert-success {
  --bs-alert-color: var(--hk-secondary-dark);
  --bs-alert-bg: var(--hk-secondary-soft);
  --bs-alert-border-color: var(--bs-secondary-border-subtle);
}

.alert-info {
  --bs-alert-color: var(--hk-info-dark);
  --bs-alert-bg: var(--hk-info-soft);
  --bs-alert-border-color: var(--bs-info-border-subtle);
}

.alert-warning {
  --bs-alert-color: var(--hk-warning-dark);
  --bs-alert-bg: var(--hk-warning-soft);
  --bs-alert-border-color: var(--bs-warning-border-subtle);
}

.alert-danger {
  --bs-alert-color: var(--hk-danger-dark);
  --bs-alert-bg: var(--hk-danger-soft);
  --bs-alert-border-color: var(--bs-danger-border-subtle);
}

.table-primary { --bs-table-color: var(--hk-primary-dark); --bs-table-bg: var(--hk-primary-soft); --bs-table-border-color: var(--bs-primary-border-subtle); }
.table-secondary,
.table-success { --bs-table-color: var(--hk-secondary-dark); --bs-table-bg: var(--hk-secondary-soft); --bs-table-border-color: var(--bs-secondary-border-subtle); }
.table-info { --bs-table-color: var(--hk-info-dark); --bs-table-bg: var(--hk-info-soft); --bs-table-border-color: var(--bs-info-border-subtle); }
.table-warning { --bs-table-color: var(--hk-warning-dark); --bs-table-bg: var(--hk-warning-soft); --bs-table-border-color: var(--bs-warning-border-subtle); }
.table-danger { --bs-table-color: var(--hk-danger-dark); --bs-table-bg: var(--hk-danger-soft); --bs-table-border-color: var(--bs-danger-border-subtle); }

.hk-surface,
.demo-surface {
  color: var(--hk-text);
  background: var(--hk-surface);
  border: 1px solid var(--hk-border);
  border-radius: 18px;
  box-shadow: var(--hk-shadow);
}

.hk-surface-soft {
  color: var(--hk-text);
  background: var(--hk-surface-2);
  border: 1px solid var(--hk-border);
}

.hm-ui {
  --hm-ui-accent: var(--hm-core-primary);
  --hm-ui-accent-dark: var(--hm-core-primary-dark);
  --hm-ui-accent-light: var(--hm-core-primary-light);
  --hm-ui-accent-soft: var(--hm-core-primary-soft);
  --hm-ui-accent-text: #fff;
  --hm-ui-surface: var(--hm-core-surface);
  --hm-ui-surface-soft: var(--hm-core-surface-soft);
  --hm-ui-text: var(--hm-core-text);
  --hm-ui-muted: var(--hm-core-muted);
  --hm-ui-border: var(--hm-core-border);
  --hm-ui-shadow: var(--hm-core-shadow);
  color: var(--hm-ui-text);
}

.hm-ui-theme-brand,
.hm-ui-theme-holmo_primary {
  --hm-ui-accent: var(--hk-primary);
  --hm-ui-accent-dark: var(--hk-primary-dark);
  --hm-ui-accent-light: var(--hk-primary-light);
  --hm-ui-accent-soft: var(--hk-primary-soft);
}

.hm-ui-theme-success,
.hm-ui-theme-secondary,
.hm-ui-theme-green,
.hm-ui-theme-holmo_secondary {
  --hm-ui-accent: var(--hk-secondary);
  --hm-ui-accent-dark: var(--hk-secondary-dark);
  --hm-ui-accent-light: var(--hk-secondary-light);
  --hm-ui-accent-soft: var(--hk-secondary-soft);
}

.hm-ui-theme-info,
.hm-ui-theme-oneui,
.hm-ui-theme-oneui_info {
  --hm-ui-accent: var(--hk-info);
  --hm-ui-accent-dark: var(--hk-info-dark);
  --hm-ui-accent-light: var(--hk-info-light);
  --hm-ui-accent-soft: var(--hk-info-soft);
}

.hm-ui-theme-warning {
  --hm-ui-accent: var(--hk-warning);
  --hm-ui-accent-dark: var(--hk-warning-dark);
  --hm-ui-accent-soft: var(--hk-warning-soft);
  --hm-ui-accent-text: var(--hk-text);
}

.hm-ui-theme-danger {
  --hm-ui-accent: var(--hk-danger);
  --hm-ui-accent-dark: var(--hk-danger-dark);
  --hm-ui-accent-soft: var(--hk-danger-soft);
}

.hm-ui-theme-dark,
.hm-ui-theme-holmo_dark {
  --hm-ui-accent: #fff;
  --hm-ui-accent-dark: #fff;
  --hm-ui-accent-soft: rgba(255, 255, 255, .13);
  --hm-ui-accent-text: var(--hk-primary-dark);
  --hm-ui-surface: linear-gradient(135deg, #2c2340 0%, #4e1f6b 100%);
  --hm-ui-surface-soft: rgba(255, 255, 255, .10);
  --hm-ui-text: #fff;
  --hm-ui-muted: rgba(255, 255, 255, .76);
  --hm-ui-border: rgba(255, 255, 255, .12);
}

/* Финальная защита каскада для верхнего десктопного меню */
#sp-section-2.hk-mainnav .sp-megamenu-parent > li > a,
#sp-section-2.hk-mainnav .sp-megamenu-parent > li > span,
.hk-mainnav .sp-megamenu-parent > li > a,
.hk-mainnav .sp-megamenu-parent > li > span{
  height:42px !important;
  min-height:42px !important;
  padding:0 18px !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  border-radius:16px !important;
  line-height:1 !important;
  margin:0 !important;
  box-sizing:border-box !important;
}

/* Финальная защита каскада для десктопного меню */
#sp-section-2.hk-mainnav .sp-megamenu-parent .sp-dropdown .sp-dropdown-inner > ul > li.sp-menu-item > a,
#sp-section-2.hk-mainnav .sp-megamenu-parent .sp-dropdown .sp-dropdown-inner > ul > li.sp-menu-item > span,
.hk-mainnav .sp-megamenu-parent .sp-dropdown .sp-dropdown-inner > ul > li.sp-menu-item > a,
.hk-mainnav .sp-megamenu-parent .sp-dropdown .sp-dropdown-inner > ul > li.sp-menu-item > span{
  padding:11px 46px 11px 1rem !important;
  min-height:46px !important;
  display:flex !important;
  align-items:center !important;
  box-sizing:border-box !important;
}

#sp-section-2.hk-mainnav .sp-megamenu-parent .sp-dropdown .sp-dropdown-inner > ul > li.sp-has-child > a::after,
#sp-section-2.hk-mainnav .sp-megamenu-parent .sp-dropdown .sp-dropdown-inner > ul > li.sp-has-child > span::after,
.hk-mainnav .sp-megamenu-parent .sp-dropdown .sp-dropdown-inner > ul > li.sp-has-child > a::after,
.hk-mainnav .sp-megamenu-parent .sp-dropdown .sp-dropdown-inner > ul > li.sp-has-child > span::after{
  right:18px !important;
}

/* Финальная защита каскада для кнопок SPPB */
#sp-main [id^="sppb-addon-"] .sppb-button-wrapper > a.sppb-btn.sppb-btn-custom,
#sp-main [id^="sppb-addon-"] .sppb-button-wrapper > a.sppb-btn.sppb-btn-default,
#sp-main [id^="sppb-addon-"] .sppb-button-wrapper > a.sppb-btn.sppb-btn-primary,
#sp-page-builder [id^="sppb-addon-"] .sppb-button-wrapper > a.sppb-btn.sppb-btn-custom,
#sp-page-builder [id^="sppb-addon-"] .sppb-button-wrapper > a.sppb-btn.sppb-btn-default,
#sp-page-builder [id^="sppb-addon-"] .sppb-button-wrapper > a.sppb-btn.sppb-btn-primary,
body.site [id^="sppb-addon-"] .sppb-button-wrapper > a.sppb-btn.sppb-btn-custom,
body.site [id^="sppb-addon-"] .sppb-button-wrapper > a.sppb-btn.sppb-btn-default,
body.site [id^="sppb-addon-"] .sppb-button-wrapper > a.sppb-btn.sppb-btn-primary{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  gap:.5rem !important;
  min-height:44px !important;
  padding:.625rem 1rem !important;
  border:1px solid var(--hk-primary) !important;
  border-radius:var(--hk-btn-radius,14px) !important;
  background:var(--hk-primary) !important;
  background-image:none !important;
  color:#fff !important;
  font-weight:700 !important;
  line-height:1.15 !important;
  text-decoration:none !important;
  box-shadow:0 10px 20px rgba(106,44,145,.18) !important;
}

#sp-main [id^="sppb-addon-"] .sppb-button-wrapper > a.sppb-btn.sppb-btn-custom:hover,
#sp-main [id^="sppb-addon-"] .sppb-button-wrapper > a.sppb-btn.sppb-btn-custom:focus,
#sp-main [id^="sppb-addon-"] .sppb-button-wrapper > a.sppb-btn.sppb-btn-default:hover,
#sp-main [id^="sppb-addon-"] .sppb-button-wrapper > a.sppb-btn.sppb-btn-default:focus,
#sp-main [id^="sppb-addon-"] .sppb-button-wrapper > a.sppb-btn.sppb-btn-primary:hover,
#sp-main [id^="sppb-addon-"] .sppb-button-wrapper > a.sppb-btn.sppb-btn-primary:focus,
#sp-page-builder [id^="sppb-addon-"] .sppb-button-wrapper > a.sppb-btn.sppb-btn-custom:hover,
#sp-page-builder [id^="sppb-addon-"] .sppb-button-wrapper > a.sppb-btn.sppb-btn-custom:focus,
#sp-page-builder [id^="sppb-addon-"] .sppb-button-wrapper > a.sppb-btn.sppb-btn-default:hover,
#sp-page-builder [id^="sppb-addon-"] .sppb-button-wrapper > a.sppb-btn.sppb-btn-default:focus,
#sp-page-builder [id^="sppb-addon-"] .sppb-button-wrapper > a.sppb-btn.sppb-btn-primary:hover,
#sp-page-builder [id^="sppb-addon-"] .sppb-button-wrapper > a.sppb-btn.sppb-btn-primary:focus,
body.site [id^="sppb-addon-"] .sppb-button-wrapper > a.sppb-btn.sppb-btn-custom:hover,
body.site [id^="sppb-addon-"] .sppb-button-wrapper > a.sppb-btn.sppb-btn-custom:focus,
body.site [id^="sppb-addon-"] .sppb-button-wrapper > a.sppb-btn.sppb-btn-default:hover,
body.site [id^="sppb-addon-"] .sppb-button-wrapper > a.sppb-btn.sppb-btn-default:focus,
body.site [id^="sppb-addon-"] .sppb-button-wrapper > a.sppb-btn.sppb-btn-primary:hover,
body.site [id^="sppb-addon-"] .sppb-button-wrapper > a.sppb-btn.sppb-btn-primary:focus{
  border-color:var(--hk-primary-dark) !important;
  background:var(--hk-primary-dark) !important;
  background-image:none !important;
  color:#fff !important;
  text-decoration:none !important;
}
