:root {
  --color-accent: #563ce9;
  --color-accent-hover: #806aff;
  --color-text-main: #262730;
  --color-dark: #000;
  --color-dark-100: #222429;
  --color-dark-80: #757887;
  --color-gray: #e5e5e5;
  --color-bg-purple: #f9f5ff;
  --color-bg-violet: #e1ddff;
  --color-bg-beige: #fafafb;
  --font-main: "Figtree", system-ui;
  --font-heading: "Space Grotesk", system-ui;
  --font-handwrite: "Shadows Into Light Two", system-ui;
  --icon-arrow-right: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTYiIGhlaWdodD0iMTYiIHZpZXdCb3g9IjAgMCAxNiAxNiIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPHBhdGggZD0iTTkuNTIxNDggMTIuNjY3TDEzLjk5OTUgOC4wMDAzM0w5LjUyMTQ4IDMuMzMzNjYiIHN0cm9rZT0id2hpdGUiIHN0cm9rZS13aWR0aD0iMS41IiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiLz4KPGxpbmUgeDE9IjAuNzUiIHkxPSItMC43NSIgeDI9IjExLjA3MiIgeTI9Ii0wLjc1IiB0cmFuc2Zvcm09Im1hdHJpeCgtMSAwIDAgMSAxMy44MjIzIDguNjQ2KSIgc3Ryb2tlPSJ3aGl0ZSIgc3Ryb2tlLXdpZHRoPSIxLjUiIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIvPgo8L3N2Zz4=");
  --icon-checkmark: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTMiIGhlaWdodD0iMTAiIHZpZXdCb3g9IjAgMCAxMyAxMCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPHBhdGggZD0iTTExLjcyMzYgMC4xODA2NjRDMTEuOTY0NiAwLjE4MDY2NCAxMi4xMDY0IDAuNDU4ODY5IDExLjk1MzEgMC42NTEzNjdMNS4wODU5NCA5LjM1NTQ3SDUuMDg0OTZDNC44MzE3OCA5LjY3MzQxIDQuMzQ4MDYgOS42NzQ4MSA0LjA5NTcgOS4zNTU0N0wwLjI0NDE0MSA0LjQ3NTU5QzAuMDkzMzY0MiA0LjI4NDM2IDAuMjI5NTQxIDQuMDAzMjUgMC40NzM2MzMgNC4wMDI5M0gxLjQ1NzAzTDEuNTI4MzIgNC4wMDY4NEMxLjU5ODggNC4wMTQ5MyAxLjY2NzMzIDQuMDM1MjYgMS43MzE0NSA0LjA2NjQxQzEuODE2ODYgNC4xMDc5MiAxLjg5MjM0IDQuMTY3NjQgMS45NTExNyA0LjI0MjE5TDQuNTg5ODQgNy41ODU5NEwxMC4yNDcxIDAuNDE5OTIyQzEwLjM2NiAwLjI2ODE0NiAxMC41NDkxIDAuMTgwNjY0IDEwLjc0MTIgMC4xODA2NjRIMTEuNzIzNloiIGZpbGw9IndoaXRlIiBzdHJva2U9IndoaXRlIiBzdHJva2Utd2lkdGg9IjAuMzYiLz4KPC9zdmc+");
  --icon-plus: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMzIiIGhlaWdodD0iMzIiIHZpZXdCb3g9IjAgMCAzMiAzMiIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPHBhdGggZD0iTTE2LjAwMTMgNi42NjY5OVYyNS4zMzM3TTYuNjY3OTcgMTYuMDAwM0gyNS4zMzQ2IiBzdHJva2U9IiMyMjI0MjkiIHN0cm9rZS13aWR0aD0iMiIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIi8+Cjwvc3ZnPg==");
  --icon-chevron-down: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTYiIGhlaWdodD0iMTYiIHZpZXdCb3g9IjAgMCAxNiAxNiIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPHBhdGggZD0iTTEyIDZMOCAxMEw0IDYiIHN0cm9rZT0iYmxhY2siIHN0cm9rZS13aWR0aD0iMiIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIi8+Cjwvc3ZnPg==");
  --icon-arrow-up: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTYiIGhlaWdodD0iMTYiIHZpZXdCb3g9IjAgMCAxNiAxNiIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPHBhdGggZD0iTTMuMzM1OTQgNi40Nzg1Mkw4LjAwMjYgMi4wMDA0N0wxMi42NjkzIDYuNDc4NTIiIHN0cm9rZT0iIzU2M0NFOSIgc3Ryb2tlLXdpZHRoPSIxLjUiIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCIvPgo8bGluZSB4MT0iOC4xMDkzOCIgeTE9IjIuOTI3NzMiIHgyPSI4LjEwOTM4IiB5Mj0iMTMuMjQ5OCIgc3Ryb2tlPSIjNTYzQ0U5IiBzdHJva2Utd2lkdGg9IjEuNSIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIi8+Cjwvc3ZnPg==");
  --icon-search: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTciIGhlaWdodD0iMTciIHZpZXdCb3g9IjAgMCAxNyAxNyIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPHBhdGggZD0iTTE1LjgyNiAxNC44ODMzTDExLjg0NjcgMTAuOTA0QzEyLjkzMTEgOS41Nzc3NCAxMy40NjQzIDcuODg1NCAxMy4zMzU5IDYuMTc3MDVDMTMuMjA3NSA0LjQ2ODY5IDEyLjQyNzUgMi44NzUwMyAxMS4xNTcxIDEuNzI1NjlDOS44ODY2NCAwLjU3NjM0NiA4LjIyMzA3IC0wLjA0MDczMjggNi41MTA0MyAwLjAwMjA4ODRDNC43OTc4IDAuMDQ0OTA5NiAzLjE2NzE0IDAuNzQ0MzU1IDEuOTU1NzUgMS45NTU3NUMwLjc0NDM1NSAzLjE2NzE0IDAuMDQ0OTA5NiA0Ljc5NzggMC4wMDIwODg0IDYuNTEwNDNDLTAuMDQwNzMyOCA4LjIyMzA3IDAuNTc2MzQ2IDkuODg2NjQgMS43MjU2OSAxMS4xNTcxQzIuODc1MDMgMTIuNDI3NSA0LjQ2ODY5IDEzLjIwNzUgNi4xNzcwNSAxMy4zMzU5QzcuODg1NCAxMy40NjQzIDkuNTc3NzQgMTIuOTMxMSAxMC45MDQgMTEuODQ2N0wxNC44ODMzIDE1LjgyNkMxNS4wMDkxIDE1Ljk0NzQgMTUuMTc3NSAxNi4wMTQ2IDE1LjM1MjMgMTYuMDEzMUMxNS41MjcxIDE2LjAxMTYgMTUuNjk0MyAxNS45NDE1IDE1LjgxNzkgMTUuODE3OUMxNS45NDE1IDE1LjY5NDMgMTYuMDExNiAxNS41MjcxIDE2LjAxMzEgMTUuMzUyM0MxNi4wMTQ2IDE1LjE3NzUgMTUuOTQ3NCAxNS4wMDkxIDE1LjgyNiAxNC44ODMzWk02LjY4ODAxIDEyLjAyMTNDNS42MzMxNyAxMi4wMjEzIDQuNjAyMDMgMTEuNzA4NSAzLjcyNDk2IDExLjEyMjVDMi44NDc5IDEwLjUzNjUgMi4xNjQzMiA5LjcwMzUyIDEuNzYwNjUgOC43Mjg5OEMxLjM1Njk4IDcuNzU0NDQgMS4yNTEzNiA2LjY4MjA5IDEuNDU3MTUgNS42NDc1MkMxLjY2Mjk0IDQuNjEyOTYgMi4xNzA4OSAzLjY2MjY1IDIuOTE2NzcgMi45MTY3N0MzLjY2MjY1IDIuMTcwODkgNC42MTI5NiAxLjY2Mjk0IDUuNjQ3NTIgMS40NTcxNUM2LjY4MjA5IDEuMjUxMzYgNy43NTQ0NCAxLjM1Njk4IDguNzI4OTggMS43NjA2NUM5LjcwMzUyIDIuMTY0MzIgMTAuNTM2NSAyLjg0NzkgMTEuMTIyNSAzLjcyNDk2QzExLjcwODUgNC42MDIwMyAxMi4wMjEzIDUuNjMzMTcgMTIuMDIxMyA2LjY4ODAxQzEyLjAxOTggOC4xMDIwMSAxMS40NTczIDkuNDU3NjQgMTAuNDU3NSAxMC40NTc1QzkuNDU3NjQgMTEuNDU3MyA4LjEwMjAxIDEyLjAxOTggNi42ODgwMSAxMi4wMjEzWiIgZmlsbD0iIzc1Nzg4NyIvPgo8L3N2Zz4=");
  --transition: .3s;
  --card-padding: clamp(20px, 3.5vw, 40px);
  --card-border-radius: clamp(16px, 3vw, 24px);
  --section-margin: clamp(40px, 6vw, 80px);
}

* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}

body {
  font-family: var(--font-main);
  color: var(--color-dark-100);
  font-size: 16px;
  font-weight: 400;
  line-height: 1.5;
}

img {
  max-width: 100%;
  height: auto;
}

.container {
  max-width: 1332px;
  margin: 0 auto;
  padding: 0 16px;
}

.container .container {
  padding: 0;
}

.container--sm {
  max-width: 1180px;
  margin: 0 auto;
  padding: 0 16px;
}

a {
  text-decoration: none;
  color: var(--color-accent);
}
a:not([class]):hover {
  color: var(--color-accent-hover);
  text-decoration: underline;
}

h1, .h1 {
  font-family: var(--font-heading);
  font-weight: 700;
  font-size: clamp(36px, 4.5vw, 56px);
  line-height: 1.18;
}

h2, .h2 {
  font-family: var(--font-heading);
  font-weight: 700;
  font-size: clamp(32px, 4.5vw, 56px);
  line-height: 1.18;
}

h3,
.h3,
.centry h2 {
  font-family: var(--font-heading);
  font-weight: 700;
  font-size: clamp(20px, 3vw, 36px);
  line-height: 1.16;
}

h4,
.h4,
.centry h3 {
  font-family: var(--font-heading);
  font-weight: 700;
  font-size: clamp(16px, 2vw, 20px);
  line-height: 1.3;
}

h5, .centry h4,
.h5 {
  font-family: var(--font-heading);
  font-weight: 500;
  font-size: 16px;
  line-height: 1.15;
}

h6,
.h6 {
  font-family: var(--font-heading);
  font-weight: 500;
  font-size: 14px;
  line-height: 1.425;
}

.text-18 {
  font-weight: 400;
  font-size: 18px;
  line-height: 1.44;
}

.text-16 {
  font-weight: 400;
  font-size: 16px;
  line-height: 1.5;
}

.text-14 {
  font-weight: 500;
  font-size: 14px;
  line-height: 1.3;
}

.text-10 {
  font-weight: 500;
  font-size: 10px;
  line-height: 1.4;
  letter-spacing: 0.04em;
  text-transform: uppercase;
}

button {
  outline: 0;
  border: 0;
}

.btn {
  padding: 16px 24px;
  font-family: var(--font-heading);
  border-radius: 16px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  cursor: pointer;
  text-decoration: none !important;
  font-weight: 500;
  font-size: 16px;
  line-height: 1.15;
  transition: 0.3s;
  gap: 12px;
  height: 50px;
}
.btn--main {
  background: var(--color-accent);
  color: #fff;
  gap: 12px;
}
.btn--main:hover {
  background: var(--color-accent-hover);
}
.btn--white {
  background: #fff;
  color: var(--color-accent);
  border: 1px solid var(--color-accent);
}
.btn--white:hover {
  background: var(--color-bg-purple);
}
.btn--secondary {
  color: var(--color-accent);
  background: var(--color-bg-purple);
}
.btn--secondary:hover {
  background: var(--color-bg-violet);
}
.btn--outline {
  border: 1px solid var(--color-accent);
  color: var(--color-accent);
}
.btn--outline:hover {
  background: var(--color-bg-purple);
}
.btn--sm {
  font-size: 14px;
  padding: 11px 18px;
  border-radius: 11px;
  line-height: 1.44;
  gap: 10px;
  height: 42px;
}
.btn--xs {
  font-size: 14px;
  padding: 9px 12px;
  border-radius: 999px;
  height: 38px;
}
.btn--arrow:after {
  content: "";
  display: inline-flex;
  width: 1em;
  height: 1em;
  mask: var(--icon-arrow-right) no-repeat center/contain;
  background: currentColor;
  transition: 0.3s;
}
.btn--arrow:hover:after {
  transform: translateX(4px);
}

.slider-nav {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 16px;
}
.slider-nav__btn {
  width: 52px;
  height: 52px;
  flex: 0 0 52px;
  background: var(--color-accent);
  border-radius: 11px;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #fff;
  font-size: 16px;
  cursor: pointer;
  transition: 0.3s;
}
.slider-nav__btn:hover {
  background: var(--color-accent-hover);
}
.slider-nav__btn[disabled] {
  opacity: 0.3;
}
.slider-nav__btn:before {
  content: "";
  display: inline-block;
  width: 1em;
  height: 1em;
  mask: var(--icon-arrow-right) no-repeat center/contain;
  background: currentColor;
}
.slider-nav__btn--prev:before {
  transform: scale(-1, 1);
}
.slider-nav__pagination {
  width: auto !important;
}

.cinput {
  position: relative;
  width: 100%;
}
.cinput__label {
  font-weight: 400;
  font-size: 14px;
  line-height: 18px;
  position: absolute;
  left: 12px;
  top: 50%;
  transform: translateY(-50%);
  transition: 0.1s;
  color: var(--color-dark-80);
  pointer-events: none;
  z-index: 2;
}
.cinput__field {
  padding: 26px 12px 8px;
  height: 52px;
  border: 1px solid var(--color-gray);
  border-radius: 12px;
  outline: 0;
  display: block;
  width: 100%;
  font-family: inherit;
  font-size: 14px;
}
.cinput__field:focus {
  border-color: var(--color-accent);
}
.cinput--filled .cinput__label {
  top: 11px;
  transform: translateY(0);
  font-weight: 500;
  font-size: 10px;
  line-height: 14px;
  letter-spacing: 0.04em;
  text-transform: uppercase;
}

.cline {
  background: #fff;
  display: flex;
  justify-content: space-between;
  align-items: center;
  border-radius: 12px;
  height: 60px;
  padding-right: 9px;
  gap: 12px;
}
.cline .cinput {
  width: 100%;
  height: 100%;
}
.cline .cinput__field {
  border: 0;
  height: 100%;
  width: 100%;
}
.cline__button {
  white-space: nowrap;
  height: 42px;
  border-radius: 11px;
}
@media (width < 768px) {
  .cline {
    height: 56px;
  }
  .cline__button {
    width: 38px;
    flex: 0 0 38px;
    height: 38px;
    padding: 6px;
  }
  .cline__button span {
    display: none;
  }
}

.cswitch {
  position: relative;
  display: inline-flex;
  flex-shrink: 0;
}
.cswitch input {
  opacity: 0;
  width: 0;
  height: 0;
}
.cswitch input:checked + .cswitch__slider {
  background-color: var(--color-accent);
  border-color: var(--color-accent);
}
.cswitch input:checked + .cswitch__slider:before {
  transform: translateX(20px);
}
.cswitch__slider {
  width: 44px;
  height: 24px;
  cursor: pointer;
  inset: 0;
  background-color: #f6f6f8;
  border: 1px solid var(--color-gray);
  transition: 0.3s;
  border-radius: 100px;
}
.cswitch__slider:before {
  position: absolute;
  content: "";
  height: 16px;
  width: 16px;
  left: 4px;
  top: 4px;
  background-color: white;
  transition: 0.3s;
  border-radius: 50%;
  box-shadow: 0 2.45px 4.9px 0 rgba(0, 0, 0, 0.15);
}

.cbox {
  cursor: pointer;
  display: flex;
  gap: 12px;
}
.cbox [type=checkbox] {
  appearance: none;
  width: 24px;
  height: 24px;
  flex: 0 0 24px;
  color: #fff;
  border-radius: 7px;
  border: 1.5px solid var(--color-gray);
  background-color: #fff;
  background-position: center;
  background-repeat: no-repeat;
  transition: 0.2s;
  cursor: pointer;
}
.cbox [type=checkbox]:checked {
  background-color: var(--color-accent);
  border-color: var(--color-accent);
  background-image: var(--icon-checkmark);
  background-size: 11px;
}

.cbadge {
  background: #f4f2ff;
  color: var(--color-accent);
  padding: 4px 12px;
  border-radius: 99px;
  font-size: 14px;
  font-weight: 600;
  margin-left: 8px;
  display: flex;
  align-items: center;
  gap: 6px;
}

.link {
  display: inline-flex;
  gap: 12px;
  color: var(--color-accent);
  align-items: center;
  font-weight: 500;
}
.link--arrow-left:before {
  content: "";
  width: 1em;
  height: 1em;
  mask: var(--icon-arrow-right);
  transform: scale(-1, 1);
  background: currentColor;
  transition: 0.3s;
}
.link--arrow-left:hover:before {
  transform: scale(-1, 1) translateX(2px);
}
.link--arrow-left-top:before {
  content: "";
  width: 1em;
  height: 1em;
  mask: var(--icon-arrow-up);
  background: currentColor;
  transition: 0.3s;
}
.link--arrow-left-top:hover:before {
  transform: translateY(-2px);
}

.w-100 {
  width: 100%;
}

.iti {
  width: 100%;
}
.iti + .cinput__label {
  padding-left: 64px;
}
.iti input::placeholder {
  color: transparent;
}
.iti .iti__search-input::placeholder {
  color: var(--color-dark-80);
}
.iti .iti__country-name {
  font-size: 14px;
  order: 3;
  margin-left: 16px;
}
.iti .iti__dial-code {
  font-size: 14px;
  order: 2;
  min-width: 40px;
}

.burger {
  position: relative;
  z-index: 15;
  display: block;
  width: 24px;
  height: 24px;
  background-color: transparent;
  border: 3px solid transparent;
  border-top: 4px solid transparent;
  border-bottom: 4px solid transparent;
}
.burger::after, .burger::before,
.burger span {
  content: "";
  position: absolute;
  left: 0;
  width: 100%;
  height: 2px;
  background-color: currentColor;
  border-radius: 0.5px;
}
.burger::before {
  top: 0;
  transition: transform var(--transition), top var(--transition);
}
.burger::after {
  bottom: 0;
  transition: transform var(--transition), bottom var(--transition);
}
.burger span {
  top: 50%;
  transform: translateY(-50%);
  transition: transform var(--transition);
}
.burger--active::before {
  top: 4px;
  transform: rotate(45deg);
  transition: transform var(--transition), top var(--transition);
}
.burger--active::after {
  bottom: 10px;
  transform: rotate(-45deg);
  transition: transform var(--transition), bottom var(--transition);
}
.burger--active span {
  transform: scale(0);
  transition: transform var(--transition);
}

.underline, .purple-cta__title em, .prominent__title em, .faq__title em,
.solutions-hero__title em, .subscribe__title em, .htools--horizontal .htools__title em,
.amission__title em,
.hhiw__title em, .hbenefits__title em,
.banner__title em,
.ugallery__title em, .htools--vertical .htools__title em,
.why__title em {
  color: var(--color-accent);
  font-family: var(--font-handwrite);
  background-repeat: repeat-x;
  background-position: 0 100%;
  background-size: 100% 10px;
  -webkit-box-decoration-break: clone;
  box-decoration-break: clone;
  font-style: normal;
  font-weight: 400;
}
.underline--rect, .htools--vertical .htools__title em,
.why__title em {
  background-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMzMxIiBoZWlnaHQ9IjEwIiB2aWV3Qm94PSIwIDAgMzMxIDEwIiBmaWxsPSJub25lIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPgo8cGF0aCBkPSJNMiA4QzY5LjA3OSA2LjIxMjI4IDE4OS4zNDUgMy44NTE4OSAyNTMuOTUgMi43Njg5OEMzMTguNTU0IDEuNjg2MDggMzIzLjg1MiAxLjk1MjIgMzI5IDIuMzMxNDkiIHN0cm9rZT0iIzU2M0NFOSIgc3Ryb2tlLXdpZHRoPSI0IiBzdHJva2UtbGluZWNhcD0icm91bmQiLz4KPC9zdmc+");
}
.underline--zigbee, .faq__title em,
.solutions-hero__title em, .subscribe__title em, .hbenefits__title em,
.banner__title em,
.ugallery__title em {
  background-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjAzIiBoZWlnaHQ9IjE2IiB2aWV3Qm94PSIwIDAgMjAzIDE2IiBmaWxsPSJub25lIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPgo8cGF0aCBkPSJNMS41IDE0LjVDMy4yNDE5NCAxMy42OTcyIDQuOTgzODggMTIuODk0NSA5LjU1ODg2IDExLjA3MzZDMTQuMTMzOCA5LjI1Mjc3IDIxLjQ4OTEgNi40MzgxNCAyNi4zMDcxIDQuNzc1MzFDMzMuMTAyMSAyLjQzMDE1IDM2LjgzMjkgMi4wOTA4OCAzOS4wMDgxIDIuMDQ5MTlDNDIuNjgyOSAxLjk3ODc2IDMxLjQ2NTIgOS45NjcwMyAzMS4zMDE5IDExLjE2NjJDMzEuMjEwOSAxMS44MzQzIDMzLjUzNyAxMS42NjAxIDM5LjYzMzcgMTAuNDA4QzQ1LjczMDQgOS4xNTU4MSA1Ni4xNDkzIDYuNTg0NzcgNjEuNDkwMiA1LjUyMjk5QzY2LjgzMSA0LjQ2MTIxIDY2Ljc3ODEgNC45ODY2IDY1LjQ5MjEgNi44NDM5NUM2NC4yMDYxIDguNzAxMyA2MS42ODg3IDExLjg3NDcgNjEuNzU3IDEyLjgwOEM2MS44MjUzIDEzLjc0MTMgNjQuNTU1NSAxMi4zMzg0IDY4LjEwOTcgMTEuMDY5OUM3MS42NjM4IDkuODAxMyA3NS45NTkyIDguNzA5NTUgOTcuMzI4NCA3LjA1NDU1QzExOC42OTggNS4zOTk1NiAxNTcuMDEgMy4yMTQ0IDE3Ny41OTEgMi4yMTE4OUMxOTguMTcyIDEuMjA5MzkgMTk5Ljg2IDEuNDU1NzUgMjAxLjUgMS44MDY4OCIgc3Ryb2tlPSIjNTYzQ0U5IiBzdHJva2Utd2lkdGg9IjMiIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIvPgo8L3N2Zz4=");
  background-size: 100% 16px;
}
.underline--zigbee-long, .htools--horizontal .htools__title em,
.amission__title em,
.hhiw__title em {
  background-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMzE4IiBoZWlnaHQ9IjE4IiB2aWV3Qm94PSIwIDAgMzE4IDE4IiBmaWxsPSJub25lIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPgo8cGF0aCBkPSJNMS41IDE2LjVDNC4yNDM1NiAxNS41NzM3IDYuOTg3MTEgMTQuNjQ3NSAxNC4xOTI3IDEyLjU0NjVDMjEuMzk4MyAxMC40NDU1IDMyLjk4MjggNy4xOTc4NiA0MC41NzExIDUuMjc5MjFDNTEuMjczNCAyLjU3MzI1IDU3LjE0OTMgMi4xODE3OCA2MC41NzUzIDIuMTMzNjhDNjYuMzYzMSAyLjA1MjQxIDQ4LjY5NTMgMTEuMjY5NyA0OC40MzggMTIuNjUzM0M0OC4yOTQ3IDEzLjQyNDIgNTEuOTU4MyAxMy4yMjMyIDYxLjU2MDYgMTEuNzc4NEM3MS4xNjI5IDEwLjMzMzYgODcuNTcyNyA3LjM2NzA0IDk1Ljk4NDUgNi4xNDE5MUMxMDQuMzk2IDQuOTE2NzkgMTA0LjMxMyA1LjUyMyAxMDIuMjg4IDcuNjY2MUMxMDAuMjYyIDkuODA5MTkgOTYuMjk3MiAxMy40NzA4IDk2LjQwNDggMTQuNTQ3N0M5Ni41MTIzIDE1LjYyNDYgMTAwLjgxMiAxNC4wMDU5IDEwNi40MSAxMi41NDIyQzExMi4wMDggMTEuMDc4NCAxMTguNzczIDkuODE4NzEgMTUyLjQzIDcuOTA5MUMxODYuMDg2IDUuOTk5NDkgMjQ2LjQyOSAzLjQ3ODE1IDI3OC44NDQgMi4zMjE0MUMzMTEuMjU5IDEuMTY0NjggMzEzLjkxNyAxLjQ0ODk0IDMxNi41IDEuODU0MSIgc3Ryb2tlPSIjNTYzQ0U5IiBzdHJva2Utd2lkdGg9IjMiIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIvPgo8L3N2Zz4=");
  background-size: 100% 18px;
}

.hbenefits__title em,
.banner__title em,
.ugallery__title em {
  padding-bottom: 4px;
  margin-bottom: -4px;
}

.ugallery__title em {
  padding-right: 24px;
  margin-right: -24px;
}

.banner__title em {
  position: relative;
}
.banner__title em:before {
  content: "";
  width: 1.25em;
  height: 1.25em;
  background: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNzQiIGhlaWdodD0iNjkiIHZpZXdCb3g9IjAgMCA3NCA2OSIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPHBhdGggZD0iTTE1LjY4ODYgMTEuNjc4OEMyMy4xNDE4IDE5LjY0NjkgMzUuODAxNSAzNC40MDExIDQyLjQ0NzkgNDIuNDI5M0M0OS4wOTQ0IDUwLjQ1NzUgNDkuMzQ0IDUxLjMxMjcgNDkuNDg2MSA1Mi4yMTA0IiBzdHJva2U9IiM1NjNDRTkiIHN0cm9rZS13aWR0aD0iMyIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIi8+CjxwYXRoIGQ9Ik00OS40NDMxIDE4LjcwNzhDNTIuNzU4NiAyNC40MDY5IDU3Ljg4NDggMzQuODM1NyA2MC40NTkzIDQwLjQ4NEM2My4wMzM4IDQ2LjEzMjMgNjIuOTAxMyA0Ni42ODQxIDYyLjY1NTYgNDcuMjUwNCIgc3Ryb2tlPSIjNTYzQ0U5IiBzdHJva2Utd2lkdGg9IjMiIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIvPgo8cGF0aCBkPSJNMTUuNzE5IDQ1Ljk3MjJDMjIuMDgzNCA0OC4xMzgzIDMzLjAxOTEgNTIuNzIwNSAzOC43ODk1IDU1LjMzNUM0NC41NTk4IDU3Ljk0OTUgNDQuODMzNSA1OC40NTc1IDQ1LjAzMTUgNTkuMDUwOCIgc3Ryb2tlPSIjNTYzQ0U5IiBzdHJva2Utd2lkdGg9IjMiIHN0cm9rZS1saW5lY2FwPSJyb3VuZCIvPgo8L3N2Zz4=") no-repeat center/contain;
  position: absolute;
  top: 0;
  left: 0;
  transform: translate(-80%, -60%);
}

.htools--horizontal .htools__title em,
.amission__title em,
.hhiw__title em {
  padding-bottom: 6px;
  margin-bottom: -6px;
  white-space: nowrap;
}

.hhiw__title em {
  display: block;
  width: fit-content;
  padding-bottom: 6px;
  margin-bottom: -6px;
}

.subscribe__title em {
  display: block;
  width: fit-content;
  padding-bottom: 8px;
  margin-bottom: -8px;
}

.faq__title em,
.solutions-hero__title em {
  padding-bottom: 8px;
  margin-bottom: -8px;
}

.prominent__title em {
  background-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTczIiBoZWlnaHQ9IjkiIHZpZXdCb3g9IjAgMCAxNzMgOSIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPHBhdGggZD0iTTEuNSA3LjVDMzYuMzcyOSA1LjcxMjI4IDk4Ljg5NjUgMy4zNTE4OSAxMzIuNDgzIDIuMjY4OThDMTY2LjA2OSAxLjE4NjA4IDE2OC44MjQgMS40NTIyIDE3MS41IDEuODMxNDkiIHN0cm9rZT0id2hpdGUiIHN0cm9rZS13aWR0aD0iMyIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIi8+Cjwvc3ZnPg==");
  color: #fff;
}

.purple-cta__title em {
  color: #fff;
  background-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTczIiBoZWlnaHQ9IjkiIHZpZXdCb3g9IjAgMCAxNzMgOSIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPHBhdGggZD0iTTEuNSA3LjVDMzYuMzcyOSA1LjcxMjI4IDk4Ljg5NjUgMy4zNTE4OSAxMzIuNDgzIDIuMjY4OThDMTY2LjA2OSAxLjE4NjA4IDE2OC44MjQgMS40NTIyIDE3MS41IDEuODMxNDkiIHN0cm9rZT0id2hpdGUiIHN0cm9rZS13aWR0aD0iMyIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIi8+Cjwvc3ZnPg==");
}

.fancybox__container {
  z-index: 5555555557 !important;
}

.f-button.is-close-btn {
  width: 40px;
  height: 40px;
  background: #fafafb;
  border-radius: 13px;
  top: 12px !important;
  right: 12px !important;
}

.f-button.is-close-btn svg {
  fill: var(--color-dark-80);
  stroke: var(--color-dark-80);
}

.mb-20 {
  margin-bottom: 20px;
}

.text-center {
  text-align: center;
}

.d-none-desktop {
  display: none;
}

@media (max-width: 991px) {
  .d-none-desktop {
    display: block;
  }
}
.header {
  position: sticky;
  z-index: 100;
  top: 12px;
  margin-top: 40px;
  transition: background 0.3s ease, box-shadow 0.3s ease;
}
.header__wrapper {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 8px 8px 8px 16px;
  border-radius: 24px;
  background: rgba(255, 255, 255, 0.1);
  backdrop-filter: blur(10px);
  box-shadow: 0px 3.39px 33.95px 0px rgba(166, 130, 249, 0.4);
  transition: all 0.3s ease;
}
.header.scrolled .header__wrapper {
  background: #fff;
  box-shadow: 0px 4px 20px 0px rgba(166, 130, 249, 0.6);
}
.header__nav {
  display: contents;
}
.header__logo, .header__logo a {
  display: flex;
  z-index: 2;
}
.header__menu {
  display: flex;
  list-style: none;
  gap: 30px;
}
.header__menu a {
  font-size: inherit;
  display: block;
  padding: 11px 4px 9px;
  color: inherit;
  border-bottom: 2px solid transparent;
  text-decoration: none !important;
  transition: 0.2s;
}
.header__menu a:hover {
  color: var(--color-accent);
}
.header .burger {
  display: none;
}
@media (width > 576px) and (width < 992px) {
  .lock .header.scrolled .header__wrapper {
    background: transparent;
    box-shadow: unset;
  }
  .lock .header.scrolled .header__logo {
    z-index: 0;
  }
}
@media (width < 992px) {
  .header {
    margin-top: 0;
    top: 0;
    transition: 0.3s;
  }
  .header .container {
    padding: 0 8px;
  }
  .header__wrapper {
    box-shadow: unset;
    padding: 16px 8px;
    background: transparent;
    backdrop-filter: none;
    border-radius: 18px;
  }
  .header.scrolled {
    top: 12px;
  }
  .header.scrolled .header__wrapper {
    box-shadow: 0px 3.39px 33.95px 0px rgba(166, 130, 249, 0.4);
  }
  .header__menu {
    flex-direction: column;
  }
  .header__menu a {
    padding: 12px 0;
    font-weight: 600;
    font-size: 20px;
    line-height: 1;
    width: fit-content;
  }
  .header__nav {
    display: block;
    position: fixed;
    top: 0;
    right: 0;
    bottom: 0;
    width: 100%;
    opacity: 0;
    visibility: hidden;
    transform: translateX(100%);
    transition: 0.3s;
    background: #fff;
    max-width: 390px;
    padding: 70px 16px 16px;
    overflow-y: auto;
    max-height: 100%;
  }
  .header__buttons {
    margin-top: 28px;
  }
  .header__buttons .btn {
    width: 100%;
  }
  .lock .header__nav {
    opacity: 1;
    visibility: visible;
    transform: translateX(0);
  }
  .header .burger {
    display: block;
  }
}
@media (width <= 576px) {
  .header__nav {
    max-width: 100%;
  }
}

.lock {
  overflow: hidden;
}

.current-menu-item a {
  color: var(--color-accent);
  border-color: var(--color-accent);
}

.footer {
  margin: var(--section-margin) 0 40px;
}
.footer__inner {
  padding: var(--card-padding);
  border-radius: 24px;
  background: var(--color-bg-purple);
}
.footer__wrapper {
  display: grid;
  grid-template-columns: minmax(0, 260px) minmax(0, 1fr) auto;
  gap: 20px;
  align-items: flex-start;
  padding-top: 32px;
}
.footer__left {
  display: flex;
  flex-direction: column;
  gap: 40px;
}
.footer__logo img {
  max-width: 170px;
  height: auto;
  display: block;
}
.footer__social-list {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  list-style: none;
}
.footer__social-item {
  width: 50px;
  height: 50px;
  border-radius: 999px;
  background: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: 0.3s;
}
.footer__social-item:hover {
  background: var(--color-bg-violet);
}
.footer__social-item a {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100%;
  color: var(--color-accent);
}
.footer__social-item svg {
  width: clamp(16px, 2vw, 18px);
  height: clamp(16px, 2vw, 18px);
  fill: currentColor;
}
.footer__center {
  display: flex;
  justify-content: center;
}
.footer__columns {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 24px;
}
.footer__column {
  min-width: 150px;
}
.footer__title {
  margin-bottom: 24px;
  font-family: var(--font-heading);
  font-weight: 600;
  font-size: 14px;
  line-height: 1.2;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--color-accent);
}
.footer__nav .footer__list {
  list-style: none;
}
.footer__list {
  list-style: none;
  display: flex;
  flex-direction: column;
  gap: 12px;
}
.footer__list a {
  line-height: 1.5;
  color: var(--color-dark-100);
  text-decoration: none;
}
.footer__list a:hover {
  color: var(--color-accent);
  text-decoration: underline;
}
.footer__contact {
  display: flex;
  flex-direction: column;
  gap: 6px;
}
.footer__contact-link {
  font-size: 16px;
  line-height: 1.5;
  color: var(--color-dark-100);
  text-decoration: none;
}
.footer__contact-link:hover {
  text-decoration: underline;
}
.footer__right {
  display: flex;
  justify-content: flex-end;
  align-items: flex-start;
}
.footer__bottom {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 24px;
  margin-top: 26px;
  padding-top: 14px;
  line-height: 1.5;
  border-top: 1px solid #e5e6e6;
  color: var(--color-dark-80);
}
.footer__bottom-right {
  display: flex;
  align-items: center;
  gap: 24px;
}
.footer__bottom-links {
  display: flex;
  gap: 30px;
}
.footer__bottom-link {
  text-decoration: none;
  color: inherit;
}
.footer__bottom-link:hover {
  text-decoration: underline;
}
.footer__top {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  font-size: 12px;
  text-transform: none;
}
@media (max-width: 1024px) {
  .footer__inner {
    grid-template-columns: 1fr;
    padding: 24px 20px 20px;
    row-gap: 24px;
  }
  .footer__logo {
    padding-bottom: 4px;
  }
  .footer__wrapper {
    grid-template-columns: minmax(0, 1fr);
    padding-top: 0;
  }
  .footer__left, .footer__center, .footer__right {
    display: contents;
  }
  .footer__left .btn, .footer__center .btn, .footer__right .btn {
    width: 100%;
    order: 4;
  }
  .footer__social-list {
    order: 3;
    justify-content: center;
  }
}
@media (max-width: 575px) {
  .footer__inner {
    padding: 20px 16px 18px;
  }
  .footer__logo img {
    max-width: 140px;
  }
  .footer__bottom {
    flex-direction: column-reverse;
    gap: 20px;
    margin-top: 20px;
  }
  .footer__bottom-right {
    width: 100%;
    justify-content: center;
  }
}

.modal__form-status {
  display: none;
  margin-top: 2px;
  margin-left: 2px;
}
.modal__form-status--error {
  color: red;
  font-size: 12px;
}

.sp {
  margin: clamp(40px, 4.5vw, 60px) 0 var(--section-margin);
}
.sp__wrapper {
  max-width: 700px;
  margin: 0 auto;
}
.sp__head {
  padding: 40px;
  background: var(--color-bg-purple);
  border-radius: 24px;
  margin-bottom: 40px;
}
.sp__date {
  margin-top: 20px;
  padding: 8px 10px;
  font-family: var(--font-heading);
  font-weight: 500;
  font-size: 16px;
  line-height: 1.15;
  background: #fff;
  border-radius: 10px;
	width: fit-content;
}

.centry a {
  text-decoration: underline;
}
.centry h2 {
  margin-top: 40px;
  margin-bottom: 20px;
}
.centry ul,
.centry ol {
  padding-left: 1em;
}
.centry ul li + li,
.centry ol li + li {
  margin-top: 6px;
}
.centry ul li::marker {
  font-size: 0.8em;
}
.centry > * + * {
  margin-top: 20px;
}
.centry .wp-block-image img {
  border-radius: 24px;
}

.blog {
  margin: clamp(24px, 5vw, 60px) 0 var(--section-margin);
}
.blog__title {
  text-align: center;
  margin-bottom: clamp(30px, 3.5vw, 40px);
}
.blog__nav {
  margin: 0 -16px 36px;
  gap: clamp(8px, 2vw, 16px);
  display: flex;
  flex-wrap: nowrap;
  overflow-x: auto;
  padding-bottom: 4px;
  padding-left: 16px;
  padding-right: 16px;
  width: calc(100% + 32px);
}
.blog__nav .btn {
  padding: clamp(9px, 2vw, 15px) clamp(24px, 3vw, 32px);
  border-radius: 99px;
  font-size: 14px;
  white-space: nowrap;
  height: auto;
}
.blog__items {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 32px 40px;
}
@media (width < 1280px) {
  .blog__items {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}
@media (width < 992px) {
  .blog__items {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
@media (width < 768px) {
  .blog__items {
    grid-template-columns: minmax(0, 1fr);
  }
}

body.blog {
  margin: 0;
}

.postcard {
  display: flex;
  flex-direction: column;
}
.postcard__img {
  aspect-ratio: 100/67;
  margin-bottom: 20px;
  border-radius: 24px;
  overflow: hidden;
}
.postcard__img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: 0.6s;
}
@media (prefers-reduced-motion: no-preference) {
  .postcard:hover .postcard__img img {
    transform: scale(1.02);
  }
}
.postcard__title {
  margin-bottom: 12px;
  font-size: clamp(20px, 2.5vw, 22px);
  transition: 0.2s;
}
.postcard:hover .postcard__title {
  color: var(--color-accent);
}
.postcard__snippet {
  margin-bottom: 16px;
}
.postcard__link {
  display: block;
  color: inherit;
  text-decoration: none !important;
}
.postcard__date {
  padding-right: 16px;
  border-right: 1px solid var(--color-gray);
}
.postcard__read {
  display: inline-flex;
  align-items: center;
  gap: 8px;
}
.postcard__meta {
  margin-top: auto;
  display: flex;
  align-items: center;
  gap: 12px;
  color: var(--color-dark-80);
  font-size: 14px;
}

.pagination {
  margin-top: 40px;
}

.nav-links {
  display: flex;
  align-items: center;
  justify-content: center;
  font-family: var(--font-heading);
  font-size: 14px;
  gap: 16px;
}
.nav-links a.page-numbers:hover {
  background: var(--color-bg-purple);
}
.nav-links .page-numbers {
  width: clamp(38px, 4.5vw, 56px);
  height: clamp(38px, 4.5vw, 56px);
  flex: 0 0 clamp(38px, 4.5vw, 56px);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: inherit;
  text-decoration: none !important;
  border-radius: 11px;
  transition: 0.3s;
}
.nav-links .page-numbers.current {
  background: var(--color-accent);
  color: #fff;
}
.nav-links .page-numbers.next, .nav-links .page-numbers.prev {
  background: var(--color-bg-purple);
  color: var(--color-accent);
}
.nav-links .page-numbers.next:hover, .nav-links .page-numbers.prev:hover {
  background: var(--color-bg-violet);
}
.nav-links .page-numbers.inactive {
  opacity: 0.5;
  pointer-events: none;
}

.icon {
  width: 1em;
  height: 1em;
  background: currentColor;
}
.icon--arrow-right {
  mask: var(--icon-arrow-right) no-repeat center/contain;
}
.icon--arrow-left {
  mask: var(--icon-arrow-right) no-repeat center/contain;
  transform: scale(-1, 1);
}

.blog-single {
  margin: clamp(40px, 5vw, 60px) 0 var(--section-margin);
}
.blog-single__wrapper {
  display: grid;
  grid-template-columns: 1fr 700px;
  gap: 40px;
  max-width: 1087px;
  position: relative;
}
.blog-single__image {
  aspect-ratio: 700/365;
  margin-bottom: 40px;
}
.blog-single__image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  border-radius: 24px;
}
.blog-single__aside {
  position: sticky;
  top: 100px;
}
.blog-single__aside #ez-toc-container {
  margin-top: 32px;
  margin-bottom: 20px;
}
.blog-single__header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 20px;
}
.blog-single__header .btn {
  border-radius: 99px;
}
.blog-single__title {
  margin-bottom: 20px;
}
@media (width <= 992px) {
  .blog-single__wrapper {
    grid-template-columns: minmax(0, 1fr);
    gap: 20px;
  }
  .blog-single__aside .link--arrow-left-top {
    display: none;
  }
  .blog-single__toc {
    display: none;
  }
  .blog-single__header .btn {
    font-size: 14px;
    padding: 9px 12px;
    height: 38px;
  }
}
.related {
  margin-top: 80px;
}
.related__title {
  margin-bottom: 40px;
  font-size: 36px;
}
.related__grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 40px;
}
@media (width < 1280px) {
  .related__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
@media (width < 768px) {
  .related__grid {
    grid-template-columns: minmax(0, 1fr);
  }
}

.author {
  display: flex;
  align-items: center;
  gap: 16px;
  margin-bottom: 20px;
}
.author__avatar {
  width: 36px;
  height: 36px;
  flex: 0 0 36px;
}
.author__avatar img {
  width: 100%;
  height: 100%;
  border-radius: 8.5px;
}
.author__name {
  font-family: var(--font-heading);
  font-weight: 500;
  font-size: 16px;
  line-height: 1.15;
}

.postmeta {
  display: flex;
  align-items: center;
  margin-bottom: 40px;
  color: var(--color-dark-80);
}
.postmeta__read {
  display: inline-flex;
  align-items: center;
  gap: 8px;
}
.postmeta > * + * {
  margin-inline-start: 16px;
  padding-inline-start: 16px;
  border-inline-start: 1px solid var(--color-gray);
}
@media (width < 768px) {
  .postmeta__published, .postmeta__updated, .postmeta__read {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: space-between;
    height: 100%;
  }
}

#ez-toc-container {
  padding: 0;
  border: 0 !important;
}
#ez-toc-container .ez-toc-title-container {
  margin-bottom: 20px !important;
  display: flex;
  align-items: center;
  gap: 12px;
}
#ez-toc-container .ez-toc-title-toggle {
  width: 16px;
  height: 16px;
  mask: var(--icon-chevron-down);
  background: currentColor;
  transition: 0.2s;
}
#ez-toc-container .ez-toc-title-toggle * {
  display: none;
}
#ez-toc-container.toc_close .ez-toc-title-toggle {
  transform: rotate(180deg);
}
#ez-toc-container .ez-toc-title {
  font-family: var(--font-heading);
  font-weight: 700 !important;
  font-size: 20px;
  line-height: 26px;
  color: var(--color-dark-100) !important;
}
#ez-toc-container .ez-toc-link {
  padding: 10px;
  border-left: 1px solid var(--color-gray);
  font-size: 14px;
  color: inherit;
  display: block;
  transition: 0.1s;
}
#ez-toc-container .ez-toc-link:hover {
  color: var(--color-accent);
  text-decoration: none;
}
#ez-toc-container .ez-toc-link.current {
  color: var(--color-accent);
  border-left: 2px solid var(--color-accent);
  font-weight: 500;
}
#ez-toc-container .ez-toc-list {
  list-style-type: none;
  padding-left: 0;
}
#ez-toc-container .ez-toc-list li {
  margin-top: 0;
}

.fancybox__backdrop {
  background: rgba(36, 34, 41, 0.5) !important;
}

.modal {
  padding: var(--card-padding) !important;
  max-width: 656px !important;
  border-radius: 24px !important;
}
.modal__title {
  margin-bottom: 24px;
  font-size: 36px;
}
.modal__subtitle {
  margin-bottom: 24px;
}
.modal__input-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px;
  margin-top: 20px;
}
.modal__policy {
  margin: 20px 0;
}
.modal__action {
  margin-top: 24px;
}
.modal__form-status {
  text-align: center;
  margin-top: 12px;
}
@media (width < 576px) {
  .modal__input-grid {
    grid-template-columns: minmax(0, 1fr);
    gap: 20px;
  }
}

.iti__dropdown-content {
  box-shadow: 5px 5px 10px 0px rgba(79, 79, 79, 0.0509803922) !important;
  border: 1px solid var(--color-gray) !important;
  padding: 8px !important;
  border-radius: 12px !important;
}

.iti__search-input {
  border-radius: 12px !important;
  border: 1px solid var(--color-gray) !important;
  height: 42px !important;
  margin-bottom: 8px;
  background-image: var(--icon-search);
  background-position: 95% center;
  background-repeat: no-repeat;
}

.iti__selected-country-primary {
  border-radius: 11px 0 0 11px;
}

.subscribe {
  margin: var(--section-margin) 0;
}
.subscribe__wrapper {
  padding: var(--card-padding);
  background: var(--color-bg-violet);
  border-radius: 24px;
  display: flex;
  gap: 32px;
  align-items: center;
  justify-content: space-between;
}
.subscribe__title {
  color: var(--color-accent);
  max-width: 464px;
  margin-bottom: 12px;
}
.subscribe__snippet {
  max-width: 620px;
  margin-bottom: 20px;
}
.subscribe .cbox {
  margin-top: 20px;
}
.subscribe__image {
  margin-right: 100px;
}
@media (width < 1280px) {
  .subscribe__image {
    margin-right: 0;
  }
}
@media (width < 768px) {
  .subscribe__wrapper {
    flex-direction: column;
  }
  .subscribe__image img {
    max-width: 180px;
  }
}

.purple-cta {
  margin: var(--section-margin) 0;
}
.purple-cta__inner {
  background: var(--color-accent);
  border-radius: 24px;
  padding: 40px;
  color: #fff;
  text-align: center;
  overflow: hidden;
}
.purple-cta__content {
  max-width: 800px;
  margin: 0 auto;
  display: flex;
  flex-direction: column;
  align-items: center;
}
.purple-cta__title {
  color: #fff;
  margin-bottom: 12px;
}
.purple-cta__text {
  max-width: 680px;
}
.purple-cta__actions {
  margin-top: clamp(20px, 3.5vw, 40px);
  width: 100%;
}
.purple-cta .btn {
  min-width: 208px;
}
@media (max-width: 575px) {
  .purple-cta .btn {
    width: 100%;
  }
}

.paranja {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.5);
  opacity: 0;
  visibility: hidden;
  transition: 0.3s;
  z-index: 44;
}

.lock .paranja {
  opacity: 1;
  visibility: visible;
}

.archive,
body.blog,
.single-post {
  position: relative;
}
.archive:after,
body.blog:after,
.single-post:after {
  content: "";
  width: 100%;
  height: 100%;
  position: absolute;
  top: -200px;
  left: 0;
  background: url("../img/page-banner.webp") no-repeat top left/contain;
  pointer-events: none;
  opacity: 0.4;
}
@media (width < 768px) {
  .archive:after,
  body.blog:after,
  .single-post:after {
    background-position: top left;
    background-size: contain;
  }
}

.cshare {
  display: flex;
  align-items: center;
  gap: 12px;
}
.cshare__item {
  width: clamp(38px, 4vw, 50px);
  height: clamp(38px, 4vw, 50px);
  flex: 0 0 clamp(38px, 4vw, 50px);
  border-radius: 100%;
  background: var(--color-bg-purple);
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  transition: 0.3s;
}
.cshare__item svg {
  max-width: clamp(16px, 2vw, 18px);
  fill: currentColor;
  color: var(--color-accent);
}
.cshare__item:hover {
  background: var(--color-bg-violet);
}

.ccta__wrapper {
  display: flex;
  padding: 24px;
  background: var(--color-bg-purple);
  border-radius: 24px;
  gap: 24px;
}
.ccta__image {
  flex: 0 0 200px;
}
.ccta__image img {
  height: 100%;
  width: 100%;
  object-fit: cover;
  border-radius: 24px;
}
.ccta__title {
  margin-bottom: 16px;
}
.ccta__snippet {
  margin-bottom: 24px;
}
@media (width < 768px) {
  .ccta__wrapper {
    flex-direction: column;
  }
  .ccta__image {
    max-height: 240px;
  }
}

.error-page__img {
  max-width: 576px;
  margin: 0 auto;
}

.cookie-consent {
  position: fixed;
  bottom: 24px;
  left: 24px;
  z-index: 9999999999;
  max-width: 440px;
  background: #fff;
  border-radius: var(--card-border-radius);
  box-shadow: 0px 4px 40px rgba(0, 0, 0, 0.1);
  transform: translateY(150%);
  opacity: 0;
  visibility: hidden;
  transition: all 0.5s ease;
}
.cookie-consent.show {
  transform: translateY(0);
  opacity: 1;
  visibility: visible;
}
.cookie-consent__wrapper {
  padding: 24px;
  display: flex;
  flex-direction: column;
  gap: 16px;
}
.cookie-consent__title {
  margin-bottom: 8px;
}
.cookie-consent__text {
  color: var(--color-dark-80);
}
.cookie-consent__text a {
  color: var(--color-accent);
  text-decoration: underline;
}
.cookie-consent__text a:hover {
  color: var(--color-accent-hover);
}
.cookie-consent__actions {
  display: flex;
}
.cookie-consent__actions .btn {
  width: 100%;
}
@media (width < 576px) {
  .cookie-consent {
    bottom: 16px;
    left: 16px;
    right: 16px;
    max-width: none;
  }
}

.cinput.cselect {
  cursor: pointer;
  user-select: none;
}
.cinput.cselect .cselect__input {
  opacity: 0;
  visibility: hidden;
  position: absolute;
  pointer-events: none;
  width: 0;
  height: 0;
}
.cinput.cselect__field {
  display: none;
}
.cinput.cselect .cselect__trigger {
  width: 100%;
  height: 52px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 26px 12px 8px;
  outline: none;
  position: relative;
  z-index: 2;
  border: 1px solid var(--color-gray);
  border-radius: 12px;
  background: #fff;
  transition: border-color 0.2s;
}
.cinput.cselect .cselect__trigger:hover {
  border-color: var(--color-accent);
}
.cinput.cselect .cselect__val {
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  display: block;
	font-size: 14px;
}
.cinput.cselect .cselect__icon {
  color: var(--color-dark-80);
  transition: transform 0.3s ease;
  flex-shrink: 0;
  transform: translateY(-8px);
}
.cinput.cselect .cselect__dropdown {
  position: absolute;
  top: calc(100% + 4px);
  left: 0;
  width: 100%;
  background: #fff;
  border-radius: 12px;
  box-shadow: 0px 4px 24px rgba(0, 0, 0, 0.12);
  z-index: 100;
  opacity: 0;
  visibility: hidden;
  transform: translateY(-8px);
  transition: opacity 0.25s ease, transform 0.25s ease, visibility 0.25s;
  padding: 8px;
  border: 1px solid var(--color-gray);
}
.cinput.cselect.active .cselect__dropdown {
  opacity: 1;
  visibility: visible;
  transform: translateY(0);
}
.cinput.cselect.active .cselect__icon, .cinput.cselect.active .cselect__trigger {
  transform: none;
}
.cinput.cselect.active .cselect__icon {
  transform: rotate(180deg) translateY(8px);
}
.cinput.cselect.active .cselect__trigger, .cinput.cselect:focus-within .cselect__trigger {
  border-color: var(--color-accent);
}
.cinput.cselect .cselect__option {
  padding: 10px 12px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  border-radius: 8px;
  cursor: pointer;
  transition: background 0.2s;
  font-size: 15px;
  gap: 8px;
}
.cinput.cselect .cselect__option:hover {
  background: var(--color-bg-purple);
}
.cinput.cselect .cselect__option.active {
  color: var(--color-accent);
  font-weight: 500;
}
.cinput.cselect .cselect__option.active .cselect__check {
  display: block;
}
.cinput.cselect .cselect__check {
  display: none;
  color: var(--color-accent);
  flex-shrink: 0;
}