@charset "UTF-8";
button,
hr,
input {
  overflow: visible;
}
progress,
sub,
sup {
  vertical-align: baseline;
}
[type=checkbox],
[type=radio],
legend {
  box-sizing: border-box;
  padding: 0;
}
html {
  line-height: 1.15;
  -webkit-text-size-adjust: 100%;
}
body {
  margin: 0;
}
details,
main {
  display: block;
}
h1 {
  margin: 0.67em 0;
  font-size: 2em;
}
hr {
  box-sizing: content-box;
  height: 0;
}
code,
kbd,
pre,
samp {
  font-size: 1em;
  font-family: monospace, monospace;
}
a {
  background-color: transparent;
}
abbr[title] {
  border-bottom: none;
  text-decoration: underline;
  text-decoration: underline dotted;
}
b,
strong {
  font-weight: bolder;
}
small {
  font-size: 80%;
}
sub,
sup {
  position: relative;
  font-size: 75%;
  line-height: 0;
}
sub {
  bottom: -0.25em;
}
sup {
  top: -0.5em;
}
img {
  border-style: none;
}
button,
input,
optgroup,
select,
textarea {
  margin: 0;
  font-size: 100%;
  line-height: 1.15;
  font-family: inherit;
}
button,
select {
  text-transform: none;
}
[type=button],
[type=reset],
[type=submit],
button {
  -webkit-appearance: button;
}
[type=button]::-moz-focus-inner,
[type=reset]::-moz-focus-inner,
[type=submit]::-moz-focus-inner,
button::-moz-focus-inner {
  border-style: none;
  padding: 0;
}
[type=button]:-moz-focusring,
[type=reset]:-moz-focusring,
[type=submit]:-moz-focusring,
button:-moz-focusring {
  outline: ButtonText dotted 1px;
}
fieldset {
  padding: 0.35em 0.75em 0.625em;
}
legend {
  display: table;
  max-width: 100%;
  color: inherit;
  white-space: normal;
}
textarea {
  overflow: auto;
}
[type=number]::-webkit-inner-spin-button,
[type=number]::-webkit-outer-spin-button {
  height: auto;
}
[type=search] {
  -webkit-appearance: textfield;
  outline-offset: -2px;
}
[type=search]::-webkit-search-decoration {
  -webkit-appearance: none;
}
::-webkit-file-upload-button {
  -webkit-appearance: button;
  font: inherit;
}
summary {
  display: list-item;
}
[hidden],
template {
  display: none;
}
:root {
  --font-body:
    "Poppins",
    system-ui,
    -apple-system,
    BlinkMacSystemFont,
    "Segoe UI",
    sans-serif;
  --font-fa: "Font Awesome 7 Pro";
  --font-size-default: 0.9375rem;
  --font-size-large: 1.125rem;
  --font-size-x-large: 1.375rem;
  --color-text: #141414;
  --color-text-muted: color-mix(in srgb, var(--color-text) 60%, transparent);
  --color-border: color-mix(in srgb, var(--color-text) 18%, transparent);
  --overlay-opacity: 60%;
  --color-border-input: color-mix( in srgb, var(--color-text) 24%, transparent );
  --color-accent-dark: #009193;
  --color-accent: #01b5b7;
  --color-accent-light: #16e2c5;
  --color-accent-bg: color-mix(in srgb, var(--color-accent) 6%, transparent);
  --color-accent-border: color-mix( in srgb, var(--color-accent) 18%, transparent );
  --color-purple: #6564db;
  --color-purple-light: #7473de;
  --color-purple-bg: color-mix(in srgb, var(--color-purple) 6%, transparent);
  --color-purple-border: color-mix( in srgb, var(--color-purple) 18%, transparent );
  --color-red: #ef6f6c;
  --color-red-bg: color-mix(in srgb, var(--color-red) 6%, transparent);
  --color-red-border: color-mix(in srgb, var(--color-red) 18%, transparent);
  --color-pipedrive: #017737;
  --layout-padding: 24px;
  --layout-spacing: 12px;
  --layout-max-width: 888px;
  --layout-max-width-wide: 1344px;
  --layout-gap: 24px;
  --header-height: 120px;
  --site-top-padding: 0;
  --box-shadow: 0 6px 12px -3px color-mix(in srgb, var(--color-purple) 12%, transparent);
  --border-radius-base: 12px;
  --border-radius: var(--border-radius-base);
}
:root body.has-sticky-header {
  --header-height: 96px;
  --site-top-padding: 96px;
}
:root body.has-sticky-header.scrolled {
  --header-height: 72px;
}
:root body.has-sticky-header:has(.hero):not(.scrolled) {
  --header-height: 120px;
}
:root body:has(.hero):not(.has-sticky-header) {
  --site-top-padding: 120px;
}
@media (max-width: 1023px) {
  :root {
    --header-height: 72px;
  }
  :root body.has-sticky-header {
    --header-height: 72px;
    --site-top-padding: 72px;
  }
  :root body.has-sticky-header.scrolled,
  :root body.has-sticky-header:has(.hero):not(.scrolled) {
    --header-height: 72px;
  }
  :root body:has(.hero):not(.has-sticky-header) {
    --site-top-padding: 72px;
  }
}
@media (max-width: 767px) {
  :root {
    --font-size-default: 0.875rem;
    --font-size-large: 1rem;
    --font-size-x-large: 1.125rem;
    --layout-padding: 16px;
    --layout-spacing: 8px;
    --layout-gap: 12px;
    --border-radius-base: 8px;
  }
}
@supports (corner-shape: squircle) {
  :root {
    --border-radius: calc(var(--border-radius-base) * 2);
  }
}
@font-face {
  font-family: "Poppins";
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(../fonts/poppins/poppins-latin-ext-400-normal.woff2) format("woff2");
  unicode-range:
    U+0100-02BA,
    U+02BD-02C5,
    U+02C7-02CC,
    U+02CE-02D7,
    U+02DD-02FF,
    U+0304,
    U+0308,
    U+0329,
    U+1D00-1DBF,
    U+1E00-1E9F,
    U+1EF2-1EFF,
    U+2020,
    U+20A0-20AB,
    U+20AD-20C0,
    U+2113,
    U+2C60-2C7F,
    U+A720-A7FF;
}
@font-face {
  font-family: "Poppins";
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(../fonts/poppins/poppins-latin-400-normal.woff2) format("woff2");
  unicode-range:
    U+0000-00FF,
    U+0131,
    U+0152-0153,
    U+02BB-02BC,
    U+02C6,
    U+02DA,
    U+02DC,
    U+0304,
    U+0308,
    U+0329,
    U+2000-206F,
    U+20AC,
    U+2122,
    U+2191,
    U+2193,
    U+2212,
    U+2215,
    U+FEFF,
    U+FFFD;
}
@font-face {
  font-family: "Poppins";
  font-style: italic;
  font-weight: 400;
  font-display: swap;
  src: url(../fonts/poppins/poppins-latin-ext-400-italic.woff2) format("woff2");
  unicode-range:
    U+0100-02BA,
    U+02BD-02C5,
    U+02C7-02CC,
    U+02CE-02D7,
    U+02DD-02FF,
    U+0304,
    U+0308,
    U+0329,
    U+1D00-1DBF,
    U+1E00-1E9F,
    U+1EF2-1EFF,
    U+2020,
    U+20A0-20AB,
    U+20AD-20C0,
    U+2113,
    U+2C60-2C7F,
    U+A720-A7FF;
}
@font-face {
  font-family: "Poppins";
  font-style: italic;
  font-weight: 400;
  font-display: swap;
  src: url(../fonts/poppins/poppins-latin-400-italic.woff2) format("woff2");
  unicode-range:
    U+0000-00FF,
    U+0131,
    U+0152-0153,
    U+02BB-02BC,
    U+02C6,
    U+02DA,
    U+02DC,
    U+0304,
    U+0308,
    U+0329,
    U+2000-206F,
    U+20AC,
    U+2122,
    U+2191,
    U+2193,
    U+2212,
    U+2215,
    U+FEFF,
    U+FFFD;
}
@font-face {
  font-family: "Poppins";
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(../fonts/poppins/poppins-latin-ext-500-normal.woff2) format("woff2");
  unicode-range:
    U+0100-02BA,
    U+02BD-02C5,
    U+02C7-02CC,
    U+02CE-02D7,
    U+02DD-02FF,
    U+0304,
    U+0308,
    U+0329,
    U+1D00-1DBF,
    U+1E00-1E9F,
    U+1EF2-1EFF,
    U+2020,
    U+20A0-20AB,
    U+20AD-20C0,
    U+2113,
    U+2C60-2C7F,
    U+A720-A7FF;
}
@font-face {
  font-family: "Poppins";
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(../fonts/poppins/poppins-latin-500-normal.woff2) format("woff2");
  unicode-range:
    U+0000-00FF,
    U+0131,
    U+0152-0153,
    U+02BB-02BC,
    U+02C6,
    U+02DA,
    U+02DC,
    U+0304,
    U+0308,
    U+0329,
    U+2000-206F,
    U+20AC,
    U+2122,
    U+2191,
    U+2193,
    U+2212,
    U+2215,
    U+FEFF,
    U+FFFD;
}
@font-face {
  font-family: "Poppins";
  font-style: italic;
  font-weight: 500;
  font-display: swap;
  src: url(../fonts/poppins/poppins-latin-ext-500-italic.woff2) format("woff2");
  unicode-range:
    U+0100-02BA,
    U+02BD-02C5,
    U+02C7-02CC,
    U+02CE-02D7,
    U+02DD-02FF,
    U+0304,
    U+0308,
    U+0329,
    U+1D00-1DBF,
    U+1E00-1E9F,
    U+1EF2-1EFF,
    U+2020,
    U+20A0-20AB,
    U+20AD-20C0,
    U+2113,
    U+2C60-2C7F,
    U+A720-A7FF;
}
@font-face {
  font-family: "Poppins";
  font-style: italic;
  font-weight: 500;
  font-display: swap;
  src: url(../fonts/poppins/poppins-latin-500-italic.woff2) format("woff2");
  unicode-range:
    U+0000-00FF,
    U+0131,
    U+0152-0153,
    U+02BB-02BC,
    U+02C6,
    U+02DA,
    U+02DC,
    U+0304,
    U+0308,
    U+0329,
    U+2000-206F,
    U+20AC,
    U+2122,
    U+2191,
    U+2193,
    U+2212,
    U+2215,
    U+FEFF,
    U+FFFD;
}
@font-face {
  font-family: "Poppins";
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(../fonts/poppins/poppins-latin-ext-600-normal.woff2) format("woff2");
  unicode-range:
    U+0100-02BA,
    U+02BD-02C5,
    U+02C7-02CC,
    U+02CE-02D7,
    U+02DD-02FF,
    U+0304,
    U+0308,
    U+0329,
    U+1D00-1DBF,
    U+1E00-1E9F,
    U+1EF2-1EFF,
    U+2020,
    U+20A0-20AB,
    U+20AD-20C0,
    U+2113,
    U+2C60-2C7F,
    U+A720-A7FF;
}
@font-face {
  font-family: "Poppins";
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(../fonts/poppins/poppins-latin-600-normal.woff2) format("woff2");
  unicode-range:
    U+0000-00FF,
    U+0131,
    U+0152-0153,
    U+02BB-02BC,
    U+02C6,
    U+02DA,
    U+02DC,
    U+0304,
    U+0308,
    U+0329,
    U+2000-206F,
    U+20AC,
    U+2122,
    U+2191,
    U+2193,
    U+2212,
    U+2215,
    U+FEFF,
    U+FFFD;
}
@font-face {
  font-family: "Poppins";
  font-style: italic;
  font-weight: 600;
  font-display: swap;
  src: url(../fonts/poppins/poppins-latin-ext-600-italic.woff2) format("woff2");
  unicode-range:
    U+0100-02BA,
    U+02BD-02C5,
    U+02C7-02CC,
    U+02CE-02D7,
    U+02DD-02FF,
    U+0304,
    U+0308,
    U+0329,
    U+1D00-1DBF,
    U+1E00-1E9F,
    U+1EF2-1EFF,
    U+2020,
    U+20A0-20AB,
    U+20AD-20C0,
    U+2113,
    U+2C60-2C7F,
    U+A720-A7FF;
}
@font-face {
  font-family: "Poppins";
  font-style: italic;
  font-weight: 600;
  font-display: swap;
  src: url(../fonts/poppins/poppins-latin-600-italic.woff2) format("woff2");
  unicode-range:
    U+0000-00FF,
    U+0131,
    U+0152-0153,
    U+02BB-02BC,
    U+02C6,
    U+02DA,
    U+02DC,
    U+0304,
    U+0308,
    U+0329,
    U+2000-206F,
    U+20AC,
    U+2122,
    U+2191,
    U+2193,
    U+2212,
    U+2215,
    U+FEFF,
    U+FFFD;
}
html {
  scroll-padding-top: calc(var(--layout-spacing) * 2);
}
html.lenis,
html.lenis body {
  height: auto;
  overflow-anchor: none;
}
html.lenis.lenis-smooth {
  scroll-behavior: auto !important;
}
html.lenis.lenis-smooth [data-lenis-prevent] {
  overscroll-behavior: contain;
}
html.lenis.lenis-stopped {
  overflow: clip;
}
html.lenis.lenis-scrolling iframe {
  pointer-events: none;
}
::view-transition-group(root) {
  background-color: #fff;
}
@keyframes sonaro-vt-fade-out {
  to {
    opacity: 0;
  }
}
@keyframes sonaro-vt-fade-in {
  from {
    opacity: 0;
  }
}
::view-transition-old(root) {
  animation: 0.28s ease-out both sonaro-vt-fade-out;
}
::view-transition-new(root) {
  animation: 0.28s ease-in 0.28s both sonaro-vt-fade-in;
}
@media (prefers-reduced-motion: reduce) {
  ::view-transition-old(root),
  ::view-transition-new(root) {
    animation: none;
  }
}
@keyframes sonaro-fade-in {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
@keyframes sonaro-fade-in-up {
  from {
    opacity: 0;
    transform: translate3d(0, var(--animate-distance), 0);
  }
  to {
    opacity: 1;
    transform: translate3d(0, 0, 0);
  }
}
html.js-animate {
  --animate-duration: 0.75s;
  --animate-ease: cubic-bezier(0.22, 1, 0.36, 1);
  --animate-distance: 1.5rem;
}
html.js-animate .animate-fade,
html.js-animate .animate-fade-up {
  opacity: 0;
}
html.js-animate .animate-fade.is-inview,
html.js-animate .animate-fade-up.is-inview {
  animation: sonaro-fade-in var(--animate-duration) var(--animate-ease) var(--animate-delay, 0ms) both;
}
html.js-animate .animate-fade-up.is-inview {
  animation-name: sonaro-fade-in-up;
}
@media (prefers-reduced-motion: reduce) {
  html.js-animate .animate-fade,
  html.js-animate .animate-fade-up {
    opacity: 1;
    animation: none;
  }
}
body {
  color: var(--color-text);
  font-style: normal;
  font-weight: 400;
  font-size: var(--font-size-default);
  line-height: 1.666;
  font-family: var(--font-body);
  font-optical-sizing: auto;
  -webkit-font-smoothing: antialiased;
}
h1,
h2,
h3,
h4,
h5,
h6 {
  margin-block-start: 1.5em;
  margin-block-end: 0.5em;
  font-weight: 600;
  line-height: 1.3333;
}
h1:where(:first-child),
h2:where(:first-child),
h3:where(:first-child),
h4:where(:first-child),
h5:where(:first-child),
h6:where(:first-child) {
  margin-block-start: 0;
}
h1:where(:last-child),
h2:where(:last-child),
h3:where(:last-child),
h4:where(:last-child),
h5:where(:last-child),
h6:where(:last-child) {
  margin-block-end: 0;
}
.is-layout-flow > h1,
.is-layout-flow > h2,
.is-layout-flow > h3,
.is-layout-flow > h4,
.is-layout-flow > h5,
.is-layout-flow > h6 {
  margin-block-start: 1.5em;
  margin-block-end: 0.5em;
}
h1 {
  font-size: clamp(2rem, 0.54rem + 2.63vw, 2.75rem);
  margin: 0;
  font-weight: 600;
  line-height: 1.25;
  letter-spacing: -0.01em;
  text-wrap: balance;
}
h2 {
  font-size: 28px;
  line-height: 1.25;
  letter-spacing: -0.01em;
}
@media (max-width: 767px) {
  h2 {
    font-size: 24px;
  }
}
h2:where(.large) {
  font-size: clamp(1.5rem, 0.04rem + 2.63vw, 2.25rem);
}
h2:where(.small) {
  font-size: 16px;
  line-height: 1.5;
}
h2.block-heading {
  display: flex;
  column-gap: var(--layout-spacing);
  align-items: center;
  margin: 0;
  margin-block-end: calc(var(--layout-spacing) * 3);
  font-weight: 500;
  font-size: 16px;
  line-height: 1.5;
}
@media (max-width: 767px) {
  h2.block-heading {
    font-size: 14px;
  }
}
h2.block-heading:before {
  display: block;
  background-color: var(--color-border);
  width: calc(var(--layout-spacing) * 2);
  height: 2px;
  content: "";
}
h3 {
  font-size: 21px;
  line-height: 1.5;
}
@media (max-width: 767px) {
  h3 {
    font-size: 17px;
  }
}
h3:where(.small) {
  font-size: 18px;
}
@media (max-width: 767px) {
  h3:where(.small) {
    font-size: 16px;
  }
}
h4 {
  font-size: clamp(1rem, 0.76rem + 0.44vw, 1.13rem);
  line-height: 1.666;
}
h5,
h6 {
  font-weight: 600;
  line-height: 1.666;
}
h5 {
  font-size: 16px;
}
@media (max-width: 767px) {
  h5 {
    font-size: 15px;
  }
}
:where(p, ul),
:where(:root .is-layout-flow > p),
:where(:root .is-layout-flow > ul) {
  margin-block-start: 0.5em;
}
:where(ul) {
  margin-block: 0.75em;
  padding-inline-start: 2em;
}
:where(li > ul) {
  margin-block-start: 0.25em;
}
:where(a) {
  color: var(--color-accent-dark);
  text-decoration: none;
}
:where(a):hover {
  text-decoration: underline;
}
p {
  margin-block: 0.75em;
}
p:where(:first-child) {
  margin-block-start: 0;
}
p:where(:last-child) {
  margin-block-end: 0;
}
p:where(.large) {
  font-size: clamp(1rem, 0.76rem + 0.44vw, 1.13rem);
  font-weight: 500;
}
.is-layout-flow > p {
  margin-block: 0.75em;
}
b,
strong {
  font-weight: 600;
}
.has-x-large-font-size {
  font-weight: 500;
  text-wrap: pretty;
}
@media (max-width: 1023px) {
  .has-x-large-font-size {
    line-height: 1.5;
  }
}
:where(small, .small) {
  font-size: 14px;
  font-size: 80%;
}
@media (max-width: 767px) {
  :where(small, .small) {
    font-size: 13px;
    font-size: 80%;
  }
}
:where(.tiny) {
  font-size: 12px;
  font-size: 60%;
}
@media (max-width: 767px) {
  :where(.tiny) {
    font-size: 11px;
    font-size: 60%;
  }
}
:where(code, .code) {
  font-weight: 400;
}
:where(section, figure) {
  margin: 0;
}
:where(address) {
  font-style: normal;
}
body:not(.wp-admin) :focus-visible {
  outline: 2px solid color-mix(in srgb, var(--color-accent) 48%, transparent);
  outline-offset: 0;
}
body:not(.wp-admin) ::selection {
  background-color: color-mix(in srgb, var(--color-accent) 24%, transparent);
}
body:not(.wp-admin) .srt,
body:not(.wp-admin) .screen-reader-text {
  position: absolute;
  clip-path: inset(50%);
  margin: -1px;
  border: 0;
  padding: 0;
  width: 1px;
  height: 1px;
  overflow: hidden;
  white-space: nowrap;
}
body:not(.wp-admin) .skip-link:focus {
  clip: auto !important;
  display: block;
  top: 5px;
  left: 5px;
  z-index: 100000;
  clip-path: none;
  padding-inline: 1em;
  padding-block: 0.5em;
  width: auto;
  height: auto;
  font-weight: 700;
  line-height: normal;
  text-decoration: none;
}
.grecaptcha-badge {
  visibility: hidden !important;
}
.site-header {
  position: relative;
  align-content: center;
  z-index: 100;
  width: 100%;
  height: var(--header-height);
  overflow: visible;
}
body:has(.hero):not(.has-sticky-header) .site-header {
  position: absolute;
  top: 0;
  left: 0;
}
body:has(.hero):not(.has-sticky-header) .site-header:before {
  transform: translateY(calc(-100% - 1px));
}
body.has-sticky-header .site-header {
  position: fixed;
  top: 0;
  left: 0;
  transition: height 0.2s ease;
}
body.has-sticky-header .site-header:before {
  border-bottom: 1px solid var(--color-purple-border);
}
body.has-sticky-header:has(.hero):not(.scrolled) .site-header:before {
  transform: translateY(calc(-100% - 1px));
}
.site-header:before {
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1;
  transition: transform 0.2s ease;
  background-color: white;
  width: 100%;
  height: 100%;
  content: "";
}
.site-header__con {
  display: flex;
  position: relative;
  column-gap: var(--layout-gap);
  justify-content: space-between;
  align-items: center;
}
.site-header__left {
  display: flex;
  column-gap: 16px;
  column-gap: calc(var(--layout-spacing) * 4);
  align-items: center;
  overflow: visible;
}
.site-header__logo {
  display: block;
  flex-shrink: 0;
}
.site-header__logo img {
  display: block;
  vertical-align: top;
  width: 140px;
  height: 28px;
}
@media (max-width: 767px) {
  .site-header__logo img {
    width: 120px;
    height: 24px;
  }
}
.site-header__right {
  display: flex;
  column-gap: calc(var(--layout-spacing) * 3);
  align-items: center;
}
@media (max-width: 767px) {
  .site-header__right {
    column-gap: var(--layout-spacing);
  }
}
@media (max-width: 1023px) {
  .button.header-cta {
    display: none;
  }
}
.pipedrive-link {
  display: inline-flex;
  column-gap: 6px;
  justify-content: center;
  align-items: center;
  transition: color 0.2s ease;
  color: var(--color-text);
  font-weight: 500;
  font-size: 14px;
  text-decoration: none;
}
.pipedrive-link:hover {
  color: var(--color-pipedrive);
}
@media (max-width: 767px) {
  .pipedrive-link {
    width: 42px;
    height: 42px;
  }
}
.pipedrive-link__icon {
  background-image: url("data:image/svg+xml,%3Csvg width='16' height='16' viewBox='0 0 16 16' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cg clip-path='url(%23clip0_67_143)'%3E%3Cpath d='M16 8C16 12.4183 12.4183 16 8 16C3.58172 16 0 12.4183 0 8C0 3.58172 3.58172 0 8 0C12.4183 0 16 3.58172 16 8Z' fill='%23017737'/%3E%3Cpath d='M12.4921 6.7282C12.4921 8.94255 11.0623 10.457 9.018 10.457C8.04615 10.457 7.24515 10.0568 6.9453 9.5567L6.95945 10.071V13.2423H4.87256V5.0423C4.87256 4.92822 4.84418 4.89922 4.7152 4.89922H4V3.15661H5.74445C6.5448 3.15661 6.74535 3.84231 6.8021 4.14263C7.11685 3.61417 7.94555 3 9.11795 3C11.134 2.99936 12.4921 4.49901 12.4921 6.7282ZM10.362 6.74235C10.362 5.55655 9.59005 4.74262 8.61755 4.74262C7.8172 4.74262 6.91625 5.27105 6.91625 6.7572C6.91625 7.7284 7.4593 8.74275 8.58915 8.74275C9.4185 8.7421 10.362 8.14215 10.362 6.74235Z' fill='white'/%3E%3C/g%3E%3Cdefs%3E%3CclipPath id='clip0_67_143'%3E%3Crect width='16' height='16' fill='white'/%3E%3C/clipPath%3E%3C/defs%3E%3C/svg%3E%0A");
  background-size: 100%;
  width: 16px;
  height: 16px;
}
@media (max-width: 767px) {
  .pipedrive-link__icon {
    width: 20px;
    height: 20px;
  }
}
@media (max-width: 767px) {
  .pipedrive-link__text {
    display: none;
  }
}
.site-footer {
  position: relative;
  margin-block-start: calc(var(--layout-spacing) * 8);
  padding-block-end: calc(var(--layout-spacing) * 3);
  font-size: 14px;
  line-height: 1.5;
}
.site-footer p {
  margin: 0;
}
.site-footer a {
  color: var(--color-text);
}
.site-footer::before {
  position: absolute;
  inset-inline: 0;
  bottom: 0;
  z-index: 0;
  height: calc(100% + var(--layout-spacing) * 16);
  pointer-events: none;
  content: "";
  background:
    linear-gradient(
      180deg,
      transparent 0%,
      color-mix(in srgb, var(--color-purple) 18%, white) 100%);
}
@supports (background: linear-gradient(in oklch, white, white)) {
  .site-footer::before {
    background:
      linear-gradient(
        in oklch 180deg,
        transparent 0%,
        color-mix(in oklch, var(--color-purple) 2%, white) 28%,
        color-mix(in oklch, var(--color-purple) 7%, white) 55%,
        color-mix(in oklch, var(--color-purple) 20%, white) 100%);
  }
}
.site-footer::before {
  z-index: -1;
}
.site-footer-wrap {
  display: flex;
  position: relative;
  row-gap: calc(var(--layout-spacing) * 6);
  flex-direction: column;
  z-index: 2;
  border-radius: var(--border-radius);
  corner-shape: squircle;
  border: 1px solid var(--color-purple-border);
  background-color: white;
  padding-inline: calc(var(--layout-spacing) * 4);
  padding-block: calc(var(--layout-spacing) * 3.5);
}
@media (max-width: 767px) {
  .site-footer-wrap {
    padding: calc(var(--layout-spacing) * 3);
  }
}
.site-footer__top {
  display: flex;
  column-gap: calc(var(--layout-gap) * 3);
  row-gap: calc(var(--layout-spacing) * 6);
  justify-content: space-between;
  align-items: flex-start;
}
@media (max-width: 767px) {
  .site-footer__top {
    flex-direction: column;
  }
}
.site-footer__top h4 {
  margin: 0;
  margin-block-end: var(--layout-spacing);
  font-weight: 500;
  font-size: 14px;
}
.site-footer__contact-info {
  display: flex;
  column-gap: calc(var(--layout-spacing) * 2);
  font-size: 20px;
  line-height: 1.5;
}
@media (max-width: 767px) {
  .site-footer__contact-info {
    font-size: 16px;
  }
}
.site-footer__address {
  margin-block-start: var(--layout-spacing);
}
.site-footer__logos {
  display: flex;
  column-gap: calc(var(--layout-spacing) * 3);
  row-gap: var(--layout-spacing);
  flex-wrap: wrap;
  align-items: center;
  margin-block-start: calc(var(--layout-spacing) * 4);
}
.site-footer__logos img {
  display: block;
  width: auto;
  height: 60px;
}
@media (max-width: 767px) {
  .site-footer__logos img {
    height: 42px;
  }
}
.site-footer__top-right {
  display: flex;
  column-gap: calc(var(--layout-gap) * 3);
  row-gap: calc(var(--layout-gap) * 2);
}
@media (max-width: 767px) {
  .site-footer__top-right {
    flex-direction: column;
  }
}
.site-footer__top-right nav {
  max-width: 204px;
}
.site-footer__top-right nav ul {
  margin: 0;
  padding: 0;
  list-style: none;
  text-wrap: balance;
}
.site-footer__top-right nav ul li {
  margin-block-start: calc(var(--layout-spacing) * 0.75);
  text-wrap: balance;
}
.site-footer__top-right nav ul li a {
  color: var(--color-text);
  text-decoration: none;
}
.site-footer__top-right nav ul li a:hover {
  text-decoration: underline;
}
.site-footer__bottom {
  display: flex;
  column-gap: var(--layout-gap);
  row-gap: var(--layout-spacing);
  justify-content: space-between;
  align-items: center;
  color: var(--color-text-muted);
  font-size: 13px;
  line-height: 16px;
}
@media (max-width: 767px) {
  .site-footer__bottom {
    flex-direction: column-reverse;
    align-items: flex-start;
  }
}
.site-footer__bottom a {
  transition: color 0.2s ease;
  color: var(--color-text-muted);
  text-decoration: none;
}
.site-footer__bottom a:hover {
  color: var(--color-text);
}
.site-footer__bottom nav ul {
  display: flex;
  column-gap: var(--layout-gap);
  margin: 0;
  padding: 0;
  list-style: none;
}
@media (max-width: 767px) {
  .site-footer__bottom nav ul {
    grid-row: 0.25em;
    flex-direction: column;
  }
}
* {
  box-sizing: border-box;
}
.site {
  padding-block-start: var(--site-top-padding);
  overflow: clip;
}
.site:has(.hero) {
  position: relative;
  padding-block-start: 0;
}
.con,
.page-content > [class^=wp-block-],
.page-content > [class*=" wp-block-"],
.wp-block-post-content > [class^=wp-block-],
.wp-block-post-content > [class*=" wp-block-"] {
  margin-inline: auto;
  padding-inline: var(--layout-padding);
  width: 100%;
  max-width: calc(var(--layout-max-width) + var(--layout-padding) * 2);
}
.con.alignwide,
.page-content > [class^=wp-block-].alignwide,
.page-content > [class*=" wp-block-"].alignwide,
.wp-block-post-content > [class^=wp-block-].alignwide,
.wp-block-post-content > [class*=" wp-block-"].alignwide {
  max-width: calc(var(--layout-max-width-wide) + var(--layout-padding) * 2);
}
.con.alignfull,
.page-content > [class^=wp-block-].alignfull,
.page-content > [class*=" wp-block-"].alignfull,
.wp-block-post-content > [class^=wp-block-].alignfull,
.wp-block-post-content > [class*=" wp-block-"].alignfull {
  padding-inline: 0;
  max-width: 100%;
}
.con.wp-block-list,
.page-content > [class^=wp-block-].wp-block-list,
.page-content > [class*=" wp-block-"].wp-block-list,
.wp-block-post-content > [class^=wp-block-].wp-block-list,
.wp-block-post-content > [class*=" wp-block-"].wp-block-list {
  padding-inline-start: calc(var(--layout-padding) * 2);
}
.site-nav__menu {
  display: flex;
  column-gap: calc(var(--layout-spacing) * 2);
  margin: 0;
  padding: 0;
  font-weight: 500;
  list-style: none;
}
.site-nav__menu > li.menu-item {
  position: relative;
  white-space: nowrap;
}
.site-nav__menu > li.menu-item > a {
  display: inline-flex;
  column-gap: 4px;
  align-items: center;
  transition: color 0.2s ease, background-color 0.2s ease;
  height: 42px;
  color: var(--color-text);
  font-size: 14px;
  text-decoration: none;
}
.site-nav__menu > li.menu-item:hover > .sub-menu,
.site-nav__menu > li.menu-item:focus-within > .sub-menu {
  translate: 0 0;
  visibility: visible;
  opacity: 1;
  pointer-events: auto;
}
.site-nav__menu > li.menu-item:hover > a,
.site-nav__menu > li.menu-item:focus-within > a {
  color: var(--color-accent-dark);
}
.site-nav__menu > li.menu-item.menu-item-object-sonaro_product {
  position: initial;
}
.site-nav__menu > li.menu-item.menu-item-has-children > a:after {
  content: "\f107";
  font-weight: 700;
  font-size: 12px;
  font-family: var(--font-fa);
}
.sub-menu {
  position: absolute;
  top: 48px;
  left: -18px;
  border-radius: calc(var(--border-radius) * 0.75);
  corner-shape: squircle;
  display: flex;
  flex-direction: column;
  translate: 0 6px;
  visibility: hidden;
  opacity: 0;
  transition:
    visibility 0.2s ease,
    opacity 0.2s ease,
    translate 0.2s ease;
  margin: 0;
  box-shadow: var(--box-shadow);
  border: 1px solid var(--color-purple-border);
  background-color: white;
  padding: 0;
  padding-block: var(--layout-spacing);
  width: max-content;
  pointer-events: none;
  list-style: none;
}
.sub-menu:before {
  position: absolute;
  top: -12px;
  left: 0;
  background-color: transparent;
  width: 100%;
  height: 12px;
  content: "";
}
.sub-menu > li.menu-item > a {
  display: inline-flex;
  align-items: center;
  transition: background-color 0.2s ease, color 0.2s ease;
  padding-inline: 18px;
  width: 100%;
  height: 42px;
  color: var(--color-text);
  font-size: 14px;
  text-decoration: none;
}
.sub-menu > li.menu-item:hover > a {
  background-color: var(--color-accent-bg);
  color: var(--color-accent-dark);
}
.menu-item-object-sonaro_product > .sub-menu {
  left: var(--layout-padding);
  margin-inline: auto;
  border-radius: var(--border-radius);
  padding: var(--layout-padding);
  width: 100%;
  max-width: var(--layout-max-width-wide);
}
button.site-nav__open,
.button.site-nav__close,
.site-nav-backdrop,
.site-nav__socials,
.site-nav__cta {
  display: none;
}
@media (max-width: 1023px) {
  html:has([data-nav-open][aria-expanded=true]),
  html:has([data-nav-open][aria-expanded=true]) body {
    overflow: hidden;
  }
  html:has([data-nav-open][aria-expanded=true]) .site-nav-backdrop {
    visibility: visible;
    opacity: 1;
    transition: opacity var(--nav-backdrop-duration) ease, visibility 0s linear 0s;
    pointer-events: auto;
  }
  html:has([data-nav-open][aria-expanded=true]) .site-nav {
    transform: translateX(0);
    visibility: visible;
    transition: transform var(--nav-duration) var(--nav-open-ease), visibility 0s linear 0s;
    pointer-events: auto;
  }
  html:has([data-nav-open][aria-expanded=true]) .site-nav .button.site-nav__close {
    transform: scale(1);
    opacity: 1;
    transition-delay: var(--nav-duration);
  }
  .site-nav-backdrop {
    --nav-backdrop-duration: 0.2s;
    --nav-backdrop-out-delay: 0s;
    display: block;
    position: fixed;
    visibility: hidden;
    opacity: 0;
    z-index: 199;
    transition: opacity var(--nav-backdrop-duration) ease var(--nav-backdrop-out-delay), visibility 0s linear calc(var(--nav-backdrop-out-delay) + var(--nav-backdrop-duration));
    cursor: pointer;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    outline: none;
    border: none;
    -webkit-tap-highlight-color: transparent;
    background-color: color-mix(in srgb, black var(--overlay-opacity), transparent);
    padding: 0;
    pointer-events: none;
    -webkit-touch-callout: none;
    -webkit-user-select: none;
    user-select: none;
  }
  .site-nav-backdrop:focus,
  .site-nav-backdrop:focus-visible,
  .site-nav-backdrop:active {
    outline: none;
    background-color: color-mix(in srgb, black var(--overlay-opacity), transparent);
  }
  .site-nav {
    --nav-duration: 0.5s;
    --nav-content-delay: 0.35s;
    --nav-open-ease: cubic-bezier(0.16, 1, 0.3, 1);
    --nav-close-ease: cubic-bezier(0.4, 0, 0.2, 1);
    display: flex;
    position: fixed;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    flex-direction: column;
    transform: translateX(100%);
    visibility: hidden;
    z-index: 200;
    transition: transform var(--nav-duration) var(--nav-close-ease), visibility 0s linear var(--nav-duration);
    border-radius: 0;
    corner-shape: initial;
    background-color: white;
    padding: 0;
    width: 100%;
    max-width: none;
    height: 100dvh;
    overflow: hidden;
    overscroll-behavior: contain;
    pointer-events: none;
  }
  .site-nav .sub-menu {
    display: flex;
    position: relative;
    top: 0;
    left: 0;
    flex-direction: column;
    gap: 0;
    transform: none;
    translate: 0 0;
    visibility: visible;
    opacity: 1;
    margin: 0;
    margin-block-start: 10px;
    box-shadow: none;
    border: none;
    border-radius: 0;
    corner-shape: initial;
    background-color: transparent;
    padding: 0;
    width: 100%;
    pointer-events: auto;
  }
  .site-nav .sub-menu > .product-list {
    display: flex;
    flex-direction: column;
    gap: 0;
  }
  .site-nav .sub-menu > li.menu-item,
  .site-nav .sub-menu > .product-list > li.menu-item {
    margin-block: 6px;
  }
  .site-nav .sub-menu > li.menu-item a,
  .site-nav .sub-menu > .product-list > li.menu-item a {
    border-radius: 0;
    background-color: transparent;
    padding: 0;
    color: var(--color-text);
    font-size: 14px;
  }
  .site-nav .sub-menu > li.menu-item:hover > a,
  .site-nav .sub-menu > .product-list > li.menu-item:hover > a {
    background-color: transparent;
    color: var(--color-text);
  }
  .site-nav li.menu-item {
    margin-block: 0;
    width: 100%;
  }
  .site-nav li.menu-item > a {
    display: flex;
    justify-content: flex-end;
    border-radius: 0;
    background-color: transparent;
    padding: 0;
    width: 100%;
    height: auto;
    color: var(--color-text);
    font-weight: 500;
    font-size: 16px;
    text-align: right;
  }
  .site-nav li.menu-item:hover > a,
  .site-nav li.menu-item:focus-within > a {
    background-color: transparent;
    color: var(--color-text);
  }
  .site-nav li.menu-item.product-item > a {
    row-gap: 0;
    justify-content: flex-end;
    translate: none;
    box-shadow: none;
    border: none;
    border-radius: 0;
    background-color: transparent;
    padding: 0;
    width: 100%;
    height: auto;
    corner-shape: initial;
    color: var(--color-text);
    font-weight: 500;
    font-size: 16px;
    text-align: right;
  }
  .site-nav li.menu-item.product-item > a:hover {
    translate: none;
    box-shadow: none;
  }
  .site-nav li.menu-item.product-item .product-item__icon,
  .site-nav li.menu-item.product-item .product-item__content p {
    display: none;
  }
  .site-nav li.menu-item.product-item .product-item__content {
    display: block;
  }
  .site-nav li.menu-item.product-item .product-item__content h3 {
    margin: 0;
    font: inherit;
  }
  .site-nav__socials {
    display: block;
    position: absolute;
    top: calc(var(--layout-padding) * 2);
    left: calc(var(--layout-padding) * 2);
    z-index: 1;
  }
  .site-nav__socials h4 {
    margin: 0;
    margin-block-end: calc(var(--layout-spacing) * 0.75);
    font-weight: 500;
    font-size: 14px;
  }
  .site-nav__socials ul {
    margin: 0;
    padding: 0;
    list-style: none;
  }
  .site-nav__socials li {
    margin-block-start: calc(var(--layout-spacing) * 0.75);
  }
  .site-nav__socials li a {
    color: var(--color-text);
    text-decoration: none;
  }
  .site-nav__socials li a:hover,
  .site-nav__socials li a:focus-visible {
    text-decoration: underline;
  }
  .site-nav__menu {
    row-gap: 18px;
    flex: 1 1 auto;
    flex-direction: column;
    justify-content: flex-start;
    align-items: stretch;
    padding: calc(var(--layout-padding) * 2);
    padding-block-end: var(--layout-padding);
    width: 100%;
    min-height: 0;
    overflow-x: hidden;
    overflow-y: auto;
    overscroll-behavior: contain;
    -webkit-overflow-scrolling: touch;
    scrollbar-color: var(--color-border) transparent;
    scrollbar-width: thin;
  }
  .site-nav__menu::-webkit-scrollbar {
    width: 6px;
  }
  .site-nav__menu::-webkit-scrollbar-track {
    margin-block: var(--layout-padding);
    background: transparent;
  }
  .site-nav__menu::-webkit-scrollbar-thumb {
    border-radius: 999px;
    background-color: var(--color-border);
  }
  .site-nav__menu::-webkit-scrollbar-thumb:hover {
    background-color: var(--color-text-muted);
  }
  .site-nav__menu > li.menu-item:first-child {
    margin-block-start: auto;
  }
  .site-nav__menu > li.menu-item:hover > a,
  .site-nav__menu > li.menu-item:focus-within > a {
    color: var(--color-text);
  }
  .site-nav__menu > li.menu-item.menu-item-has-children > a:after {
    display: none;
  }
  .site-nav__cta {
    display: block;
    flex-shrink: 0;
    padding: var(--layout-padding);
  }
  .site-nav__cta .button {
    width: 100%;
  }
  .site-nav__menu,
  .site-nav__socials,
  .site-nav__cta {
    transform: translate3d(0, 12px, 0);
    opacity: 0;
    transition: opacity 0s linear var(--nav-duration), transform 0s linear var(--nav-duration);
  }
  html:has([data-nav-open][aria-expanded=true]) .site-nav__menu,
  html:has([data-nav-open][aria-expanded=true]) .site-nav__socials,
  html:has([data-nav-open][aria-expanded=true]) .site-nav__cta {
    transform: translate3d(0, 0, 0);
    opacity: 1;
    transition: opacity 0.2s ease, transform 0.2s cubic-bezier(0.22, 1, 0.36, 1);
  }
  html:has([data-nav-open][aria-expanded=true]) .site-nav__menu,
  html:has([data-nav-open][aria-expanded=true]) .site-nav__socials,
  html:has([data-nav-open][aria-expanded=true]) .site-nav__cta {
    transition-delay: var(--nav-content-delay);
  }
  .button.button--icon.site-nav__open {
    display: flex;
    justify-content: center;
    align-items: center;
  }
  .button.button--icon.site-nav__open > span {
    display: block;
    position: relative;
    transition: background-color 0.2s ease;
    border-radius: 2px;
    background-color: var(--color-text);
    width: 24px;
    height: 2px;
  }
  .button.button--icon.site-nav__open > span:before,
  .button.button--icon.site-nav__open > span:after {
    position: absolute;
    top: 0;
    left: 0;
    transition: inherit;
    background: inherit;
    width: inherit;
    height: inherit;
    content: "";
  }
  .button.button--icon.site-nav__open > span:before {
    translate: 0 -7px;
  }
  .button.button--icon.site-nav__open > span:after {
    translate: 0 7px;
  }
  .button.button--icon.site-nav__open:hover > span,
  .button.button--icon.site-nav__open:hover > span:before,
  .button.button--icon.site-nav__open:hover > span:after {
    background-color: var(--color-accent);
  }
  .button.site-nav__close {
    display: inline-flex;
    position: absolute;
    top: var(--layout-padding);
    right: var(--layout-padding);
    z-index: 2;
    transform: scale(0.5);
    opacity: 0;
    transition: opacity 0.2s ease, transform 0.2s ease;
    transition-delay: 0s;
  }
}
@media (prefers-reduced-motion: reduce) and (max-width: 1023px) {
  .site-nav {
    --nav-duration: 0s;
    transform: none;
  }
  .site-nav__menu,
  .site-nav__socials,
  .site-nav__cta {
    transform: none;
    opacity: 1;
    transition: none;
  }
  .site-nav-backdrop {
    --nav-backdrop-duration: 0s;
  }
}
.lang-switcher {
  display: inline-flex;
  column-gap: calc(var(--layout-spacing) * 2);
  align-items: center;
  font-weight: 500;
}
.lang-switcher a {
  display: inline-flex;
  align-items: center;
  transition: color 0.2s ease;
  height: 42px;
  color: inherit;
  color: var(--color-text);
  font-size: 14px;
  text-decoration: none;
}
.lang-switcher a:hover {
  color: var(--color-accent-dark);
}
.button,
.wp-element-button,
a.wp-element-button {
  --bg-color: var(--color-accent-dark);
  --bg-color-hover: var(--color-accent);
  --color: white;
  display: inline-flex;
  position: relative;
  justify-content: center;
  align-items: center;
  opacity: 1;
  transition: background-color 0.2s ease, color 0.2s ease;
  cursor: pointer;
  border: none;
  border-radius: calc(var(--border-radius) * 0.5);
  corner-shape: squircle;
  background-color: var(--bg-color);
  padding-inline: 18px;
  height: 42px;
  color: var(--color);
  font-weight: 500;
  font-size: initial;
  font-size: 14px;
  text-align: center;
  text-decoration: none;
  white-space: nowrap;
}
.button[disabled],
.wp-element-button[disabled],
a.wp-element-button[disabled] {
  opacity: 0.5;
  cursor: not-allowed;
  pointer-events: none;
}
.button:focus-visible,
.wp-element-button:focus-visible,
a.wp-element-button:focus-visible {
  outline: 2px solid color-mix(in srgb, var(---bg-color-hover) 48%, transparent);
}
.button:hover,
.button[aria-expanded=true],
.wp-element-button:hover,
.wp-element-button[aria-expanded=true],
a.wp-element-button:hover,
a.wp-element-button[aria-expanded=true] {
  background-color: var(--bg-color-hover);
  text-decoration: none;
}
.button:active,
.wp-element-button:active,
a.wp-element-button:active {
  background-color: color-mix(in oklch, var(--bg-color-hover), black 24%);
  text-decoration: none;
}
.button.button--purple,
.wp-element-button.button--purple,
a.wp-element-button.button--purple {
  background-color: var(--color-purple);
}
.button.button--purple:hover,
.wp-element-button.button--purple:hover,
a.wp-element-button.button--purple:hover {
  background-color: var(--color-purple-light);
}
.button.button--icon,
.wp-element-button.button--icon,
a.wp-element-button.button--icon {
  padding: 0;
  width: 42px;
  height: 42px;
  font-size: 20px;
}
.button.button--transparent,
.wp-element-button.button--transparent,
a.wp-element-button.button--transparent {
  background-color: transparent;
  color: var(--color-text);
}
.button.button--transparent:hover,
.wp-element-button.button--transparent:hover,
a.wp-element-button.button--transparent:hover {
  background-color: transparent;
  background-color: color-mix(in srgb, var(--color-accent) 12%, transparent);
  color: var(--color-accent);
}
.button[aria-busy=true],
.wp-element-button[aria-busy=true],
a.wp-element-button[aria-busy=true] {
  pointer-events: none;
  color: transparent;
  -webkit-text-fill-color: transparent;
}
.button[aria-busy=true]::before,
.wp-element-button[aria-busy=true]::before,
a.wp-element-button[aria-busy=true]::before {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  opacity: 0;
  opacity: 1;
  animation: button-loader 0.8s linear infinite;
  transition: opacity 0.2s ease;
  border: 2px solid transparent;
  border-color: color-mix(in srgb, var(--color) 40%, transparent);
  border-top-color: var(--color);
  border-radius: 50%;
  width: 14px;
  height: 14px;
  pointer-events: none;
  content: "";
}
@keyframes button-loader {
  to {
    transform: translate(-50%, -50%) rotate(360deg);
  }
}
input {
  accent-color: var(--color-accent);
}
input[type=text],
input[type=email],
input[type=password],
input[type=search],
input[type=tel],
input[type=url],
input[type=number],
input[type=date],
input[type=datetime-local],
input[type=month],
input[type=week],
input[type=time],
textarea,
select {
  display: inline-flex;
  align-items: center;
  transition: border-color 0.2s ease, color 0.2s ease;
  outline: none;
  border: 1px solid var(--color-border-input);
  border-radius: calc(var(--border-radius) * 0.5);
  background-color: white;
  padding-inline: 12px;
  width: 100%;
  height: 42px;
  corner-shape: squircle;
  font-weight: 500;
  font-size: 14px;
  line-height: 1.4;
  font-family: inherit;
  color: var(--color-text);
}
input[type=text]::placeholder,
input[type=email]::placeholder,
input[type=password]::placeholder,
input[type=search]::placeholder,
input[type=tel]::placeholder,
input[type=url]::placeholder,
input[type=number]::placeholder,
input[type=date]::placeholder,
input[type=datetime-local]::placeholder,
input[type=month]::placeholder,
input[type=week]::placeholder,
input[type=time]::placeholder,
textarea::placeholder,
select::placeholder {
  opacity: 1;
  color: var(--color-text-muted);
}
input[type=text]:focus-visible,
input[type=email]:focus-visible,
input[type=password]:focus-visible,
input[type=search]:focus-visible,
input[type=tel]:focus-visible,
input[type=url]:focus-visible,
input[type=number]:focus-visible,
input[type=date]:focus-visible,
input[type=datetime-local]:focus-visible,
input[type=month]:focus-visible,
input[type=week]:focus-visible,
input[type=time]:focus-visible,
textarea:focus-visible,
select:focus-visible {
  border-color: var(--color-accent);
  outline: 2px solid color-mix(in srgb, var(--color-accent) 24%, transparent);
  outline-offset: 0;
}
input[type=text]:disabled,
input[type=email]:disabled,
input[type=password]:disabled,
input[type=search]:disabled,
input[type=tel]:disabled,
input[type=url]:disabled,
input[type=number]:disabled,
input[type=date]:disabled,
input[type=datetime-local]:disabled,
input[type=month]:disabled,
input[type=week]:disabled,
input[type=time]:disabled,
textarea:disabled,
select:disabled {
  opacity: 0.5;
  cursor: not-allowed;
  color: var(--color-text-muted);
}
input[type=text].is-invalid,
input[type=email].is-invalid,
input[type=password].is-invalid,
input[type=search].is-invalid,
input[type=tel].is-invalid,
input[type=url].is-invalid,
input[type=number].is-invalid,
input[type=date].is-invalid,
input[type=datetime-local].is-invalid,
input[type=month].is-invalid,
input[type=week].is-invalid,
input[type=time].is-invalid,
textarea.is-invalid,
select.is-invalid {
  border-color: var(--color-red);
}
input[type=text].is-invalid:focus-visible,
input[type=email].is-invalid:focus-visible,
input[type=password].is-invalid:focus-visible,
input[type=search].is-invalid:focus-visible,
input[type=tel].is-invalid:focus-visible,
input[type=url].is-invalid:focus-visible,
input[type=number].is-invalid:focus-visible,
input[type=date].is-invalid:focus-visible,
input[type=datetime-local].is-invalid:focus-visible,
input[type=month].is-invalid:focus-visible,
input[type=week].is-invalid:focus-visible,
input[type=time].is-invalid:focus-visible,
textarea.is-invalid:focus-visible,
select.is-invalid:focus-visible {
  border-color: var(--color-red);
  outline: 2px solid color-mix(in srgb, var(--color-red) 24%, transparent);
}
textarea {
  display: block;
  padding-block: 12px;
  height: auto;
  min-height: 120px;
  resize: vertical;
}
input[type=checkbox],
input[type=radio] {
  vertical-align: middle;
  margin: 4px;
  padding: 0;
  width: 14px;
  height: 14px;
}
label {
  display: inline-block;
  margin-block-end: calc(var(--layout-spacing) * 0.5);
  color: var(--color-text);
  font-weight: 500;
  font-size: 14px;
  line-height: 18px;
}
label .required {
  color: var(--color-red);
}
.wp-block-table,
.wp-block-table.is-style-stripes {
  width: 100%;
  max-width: 100%;
  overflow-x: auto;
}
.wp-block-table table,
.wp-block-table.is-style-stripes table {
  border-collapse: separate;
  border-spacing: 0;
  width: 100%;
  line-height: 1.333;
  --table-border-radius: var(--border-radius);
}
.wp-block-table table p,
.wp-block-table.is-style-stripes table p {
  margin-block: 0.5em;
}
.wp-block-table table p:first-child,
.wp-block-table.is-style-stripes table p:first-child {
  margin-block-start: 0;
}
.wp-block-table table p:last-child,
.wp-block-table.is-style-stripes table p:last-child {
  margin-block-end: 0;
}
.wp-block-table table thead,
.wp-block-table.is-style-stripes table thead {
  background-color: var(--color-accent-bg);
  font-weight: 600;
}
.wp-block-table table tfoot,
.wp-block-table.is-style-stripes table tfoot {
  background-color: var(--color-accent-bg);
  font-weight: 600;
}
.wp-block-table table tfoot tr:first-child td,
.wp-block-table.is-style-stripes table tfoot tr:first-child td {
  border-top-width: 2px;
}
.wp-block-table table:not(:has(thead)) tbody tr:first-child td,
.wp-block-table.is-style-stripes table:not(:has(thead)) tbody tr:first-child td {
  border-top: 1px solid var(--color-border-accent);
}
.wp-block-table table:not(:has(thead)) tbody tr:first-child td:first-child,
.wp-block-table.is-style-stripes table:not(:has(thead)) tbody tr:first-child td:first-child {
  border-top-left-radius: var(--table-border-radius);
}
.wp-block-table table:not(:has(thead)) tbody tr:first-child td:last-child,
.wp-block-table.is-style-stripes table:not(:has(thead)) tbody tr:first-child td:last-child {
  border-top-right-radius: var(--table-border-radius);
}
.wp-block-table table:not(:has(tfoot)) tbody tr:last-child td:first-child,
.wp-block-table.is-style-stripes table:not(:has(tfoot)) tbody tr:last-child td:first-child {
  border-bottom-left-radius: var(--table-border-radius);
}
.wp-block-table table:not(:has(tfoot)) tbody tr:last-child td:last-child,
.wp-block-table.is-style-stripes table:not(:has(tfoot)) tbody tr:last-child td:last-child {
  border-bottom-right-radius: var(--table-border-radius);
}
.wp-block-table table tr,
.wp-block-table.is-style-stripes table tr {
  transition: background-color 0.2s ease;
}
.wp-block-table table tr:hover,
.wp-block-table.is-style-stripes table tr:hover {
  background-color: color-mix(in srgb, var(--color-accent-bg), transparent 50%);
}
.wp-block-table table th,
.wp-block-table.is-style-stripes table th {
  font-weight: 600;
}
.wp-block-table table th,
.wp-block-table table td,
.wp-block-table.is-style-stripes table th,
.wp-block-table.is-style-stripes table td {
  border: none;
  border-right: 1px solid var(--color-border-accent);
  border-bottom: 1px solid var(--color-border-accent);
  padding: 0.75em;
}
.wp-block-table table th:first-child,
.wp-block-table table td:first-child,
.wp-block-table.is-style-stripes table th:first-child,
.wp-block-table.is-style-stripes table td:first-child {
  border-left: 1px solid var(--color-border-accent);
}
.wp-block-table table tbody th,
.wp-block-table.is-style-stripes table tbody th {
  text-align: left;
}
.wp-block-table table:has(thead) thead th,
.wp-block-table.is-style-stripes table:has(thead) thead th {
  border-top: 1px solid var(--color-border-accent);
  border-bottom: 3px solid var(--color-border-accent);
}
.wp-block-table table:has(thead) thead th:first-child,
.wp-block-table.is-style-stripes table:has(thead) thead th:first-child {
  border-top-left-radius: var(--table-border-radius);
}
.wp-block-table table:has(thead) thead th:last-child,
.wp-block-table.is-style-stripes table:has(thead) thead th:last-child {
  border-top-right-radius: var(--table-border-radius);
}
.wp-block-table table:has(tfoot) tfoot td,
.wp-block-table.is-style-stripes table:has(tfoot) tfoot td {
  border-top: 3px solid var(--color-border-accent);
}
.wp-block-table table:has(tfoot) tfoot td:first-child,
.wp-block-table.is-style-stripes table:has(tfoot) tfoot td:first-child {
  border-bottom-left-radius: var(--table-border-radius);
}
.wp-block-table table:has(tfoot) tfoot td:last-child,
.wp-block-table.is-style-stripes table:has(tfoot) tfoot td:last-child {
  border-bottom-right-radius: var(--table-border-radius);
}
.wp-block-table.is-style-stripes {
  border: none;
}
.wp-block-table.is-style-stripes tbody tr:nth-child(odd) {
  background-color: color-mix(in srgb, var(--color-accent-bg) 50%, transparent);
}
img {
  max-width: 100%;
}
.gallery,
.wp-block-gallery,
figure.wp-block-image {
  margin-block: var(--layout-gap);
}
.gallery img,
.wp-block-gallery img,
figure.wp-block-image img {
  display: block;
  transition: opacity 0.2s ease;
  border-radius: calc(var(--border-radius) * 0.75);
  width: 100%;
  height: auto;
}
.gallery a:hover img,
.wp-block-gallery a:hover img,
figure.wp-block-image a:hover img {
  opacity: 0.85;
}
.gallery,
.wp-block-gallery {
  gap: var(--wp--style--block-gap, 0.5em);
}
.gallery {
  display: grid;
}
.gallery.gallery-columns-2 {
  grid-template-columns: repeat(2, 1fr);
}
.gallery.gallery-columns-3 {
  grid-template-columns: repeat(3, 1fr);
}
.gallery.gallery-columns-4 {
  grid-template-columns: repeat(4 1fr);
}
.gallery > * {
  min-width: 0;
}
.gallery figure.gallery-item {
  margin: 0;
}
.gallery figure.gallery-item img {
  display: block;
  width: 100%;
  height: auto;
}
.wp-block-freeform.block-library-rich-text__tinymce .gallery {
  margin: 0 !important;
  padding: 0 !important;
  padding-block: var(--layout-spacing) !important;
}
.wp-block-freeform.block-library-rich-text__tinymce .gallery br {
  display: none !important;
}
.wp-block-freeform.block-library-rich-text__tinymce .gallery-item {
  width: 100% !important;
}
.wp-block-freeform.block-library-rich-text__tinymce .gallery-item img {
  width: 100%;
}
img.company-logo {
  display: block;
  padding: calc(var(--layout-spacing) * 1.5);
  aspect-ratio: 2;
  width: 100%;
  height: auto;
  object-fit: contain;
}
img.company-logo.company-logo--square {
  padding-block: var(--layout-spacing);
}
img.company-logo.company-logo--vertical {
  padding-block: calc(var(--layout-spacing) * 0.5);
}
.card {
  display: flex;
  row-gap: calc(var(--layout-spacing) * 2);
  flex-direction: column;
  align-items: flex-start;
  transition: background-color 0.2s ease, color 0.2s ease;
  border-radius: var(--border-radius);
  corner-shape: squircle;
  background-color: var(--color-accent-bg);
  padding-inline: calc(var(--layout-spacing) * 2);
  padding-block: calc(var(--layout-spacing) * 1.5);
  height: 100%;
  font-weight: 500;
  font-size: 18px;
  line-height: 1.3333;
  text-decoration: none;
}
.card:hover {
  background-color: var(--color-accent);
  color: white;
}
.card:hover .icon {
  transform: translateX(0);
  opacity: 1;
}
.card > .icon {
  font-size: 48px;
}
.card > span {
  display: flex;
  column-gap: var(--layout-spacing);
  justify-content: space-between;
  align-items: flex-end;
  margin-top: auto;
  width: 100%;
}
.card > span .icon {
  transform: translateX(-50%);
  opacity: 0;
  transition: transform 0.2s ease, opacity 0.2s ease;
  margin-right: -0.25em;
  font-size: 36px;
  line-height: calc(var(--fs) * var(--lh));
}
.card.card--link > span {
  align-items: flex-start;
}
hr {
  margin-block: var(--layout-spacing);
  border: none;
  background-color: var(--color-border);
  width: 100%;
  height: 1px;
}
figcaption {
  color: var(--color-text-muted);
  line-height: 1.333;
}
.wp-element-caption {
  margin-block-start: 0.25em;
}
.waves {
  position: relative;
  width: 100%;
  overflow: hidden;
}
.waves canvas {
  display: block;
}
html.is-dialog-open:not(.lenis),
html.is-dialog-open:not(.lenis) body {
  overflow: hidden;
}
html.lenis.lenis-stopped.is-dialog-open {
  overflow: auto;
}
.dialog {
  --dialog-duration: 0.36s;
  --dialog-backdrop-duration: 0.48s;
  margin: auto;
  border: none;
  border-radius: var(--border-radius);
  corner-shape: squircle;
  background-color: white;
  padding: 0;
  width: calc(100% - var(--layout-padding));
  max-width: var(--layout-max-width);
  max-height: calc(100svh - var(--layout-padding));
  overflow: auto;
  overscroll-behavior: contain;
  color: var(--color-text);
  transform: translateY(12px) scale(0.98);
  opacity: 0;
  transition: opacity var(--dialog-duration) ease, transform var(--dialog-duration) ease;
}
.dialog[open] {
  transform: translateY(0) scale(1);
  opacity: 1;
}
.dialog[open].is-closing {
  transform: translateY(12px) scale(0.98);
  opacity: 0;
}
.dialog::backdrop {
  opacity: 0;
  transition: opacity var(--dialog-backdrop-duration) ease;
  background-color: color-mix(in srgb, black var(--overlay-opacity), transparent);
}
.dialog[open]::backdrop {
  opacity: 1;
}
.dialog[open].is-closing::backdrop {
  opacity: 0;
}
@starting-style {
  .dialog[open] {
    transform: translateY(12px) scale(0.98);
    opacity: 0;
  }
  .dialog[open]::backdrop {
    opacity: 0;
  }
}
@media (prefers-reduced-motion: reduce) {
  .dialog {
    --dialog-duration: 0s;
    --dialog-backdrop-duration: 0s;
    transform: none;
  }
}
.dialog__panel {
  position: relative;
}
.dialog__close {
  position: absolute;
  top: var(--layout-spacing);
  right: var(--layout-spacing);
  z-index: 1;
}
.dialog__content {
  padding: calc(var(--layout-spacing) * 3);
}
.dialog__content h2 {
  margin: 0;
  margin-block-end: calc(var(--layout-spacing) * 2);
  font-size: 28px;
}
@media (max-width: 767px) {
  .dialog__content h2 {
    font-size: 24px;
  }
}
.dialog__error {
  margin: 0;
  color: var(--color-text-muted);
}
.badge {
  display: inline-flex;
  justify-content: center;
  align-items: center;
  border-radius: calc(var(--border-radius) * 0.5);
  padding-inline: 6px;
  corner-shape: squircle;
  column-gap: 4px;
  background-color: color-mix(in srgb, var(--color-purple) 12%, transparent);
  height: 24px;
  color: var(--color-purple);
  font-weight: 600;
  font-size: 12px;
}
.badge.badge--gold-partner {
  background-color: color-mix(in srgb, #ba7f03 12%, transparent);
  color: #ba7f03;
}
.wp-block-buttons,
.wp-block-table,
.wp-block-details,
.wp-block-edu-core-documents,
.wp-block-edu-core-staff {
  margin-block-start: var(--layout-spacing);
  margin-block-end: calc(var(--layout-spacing) * 2);
}
.wp-block-buttons:first-child,
.wp-block-table:first-child,
.wp-block-details:first-child,
.wp-block-edu-core-documents:first-child,
.wp-block-edu-core-staff:first-child {
  margin-block-start: 0;
}
.wp-block-buttons:last-child,
.wp-block-table:last-child,
.wp-block-details:last-child,
.wp-block-edu-core-documents:last-child,
.wp-block-edu-core-staff:last-child {
  margin-block-end: 0;
}
.page-header,
.editor-visual-editor__post-title-wrapper > :where(:not(.alignleft):not(.alignright):not(.alignfull)) {
  margin-block: calc(var(--layout-spacing) * 4);
  padding-inline: var(--layout-padding);
  margin-inline: auto;
  width: 100%;
  max-width: calc(var(--layout-max-width) + var(--layout-padding) * 2);
}
.site-main:has(.page-content .alignwide) .page-header {
  max-width: calc(var(--layout-max-width-wide) + var(--layout-padding) * 2);
}
.editor-styles-wrapper:has(.wp-block-post-content .alignwide) .editor-visual-editor__post-title-wrapper > :where(:not(.alignleft):not(.alignright):not(.alignfull)) {
  max-width: calc(var(--layout-max-width-wide) + var(--layout-padding) * 2);
}
#contact-form-dialog {
  max-width: 546px;
}
.contact-form {
  display: flex;
  row-gap: var(--layout-spacing);
  flex-direction: column;
}
.contact-form__actions {
  display: flex;
  align-items: center;
  gap: var(--layout-gap);
  margin-block-start: var(--layout-spacing);
}
@media (max-width: 767px) {
  .contact-form__actions {
    flex-direction: column-reverse;
    align-items: flex-start;
  }
}
.contact-form__actions .button {
  min-width: 120px;
}
@media (max-width: 479px) {
  .contact-form__actions .button {
    width: 100%;
  }
}
.contact-form__privacy {
  margin: 0;
  color: var(--color-text-muted);
  font-size: 12px;
  line-height: 16px;
}
.contact-form__privacy a {
  color: inherit;
  text-decoration: underline;
}
.contact-form__privacy a:hover {
  color: var(--color-text);
}
.contact-form__status {
  border-radius: calc(var(--border-radius) * 0.5);
  corner-shape: squircle;
  border: 1px solid var(--color-purple-border);
  background-color: var(--color-purple-bg);
  padding: 0.75em 1em;
  font-weight: 500;
  font-size: 14px;
  line-height: 1.5;
}
.contact-form__status[data-status=error] {
  border-color: var(--color-red-border);
  background-color: var(--color-red-bg);
  color: var(--color-red);
}
.contact-form-success {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: var(--layout-spacing);
  padding-block: calc(var(--layout-spacing) * 3);
  text-align: center;
}
.contact-form-success > i {
  margin-block-end: calc(var(--layout-spacing) * 0.5);
  color: var(--color-accent);
  font-size: 56px;
  line-height: 1;
}
.contact-form-success > h2 {
  margin: 0;
}
.contact-form-success > p {
  margin: 0;
  margin-block-end: var(--layout-spacing);
  color: var(--color-text-muted);
}
.product-list {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: var(--layout-gap);
}
@media (max-width: 767px) {
  .product-list {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media (max-width: 479px) {
  .product-list {
    grid-template-columns: repeat(1, 1fr);
  }
}
.sub-menu > .product-list {
  gap: var(--layout-spacing);
}
.product-item a {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  border-radius: var(--border-radius);
  padding: calc(var(--layout-spacing) * 1.5);
  corner-shape: squircle;
  row-gap: calc(var(--layout-spacing) * 3);
  border: 1px solid var(--color-purple-border);
  height: 100%;
  color: var(--color-text);
  text-decoration: none;
}
.product-item a h3 {
  transition: color 0.2s ease;
}
.product-item:not(.menu-item) > a {
  transition: box-shadow 0.2s ease, translate 0.2s ease;
}
.product-item:not(.menu-item) > a:hover {
  translate: 0 -3px;
  box-shadow: var(--box-shadow);
}
.product-item.menu-item > a {
  row-gap: calc(var(--layout-spacing) * 2);
  border-radius: calc(var(--border-radius) * 0.75);
  --glow-color: var(--color-accent);
  transition: background-color 0.2s ease;
}
.product-item.menu-item > a::before {
  opacity: 0;
  transition: opacity 0.4s ease;
}
.product-item.menu-item:hover a {
  background-color: var(--color-accent-bg);
}
.product-item.menu-item:hover > a::before {
  opacity: 1;
}
.product-item__icon {
  display: flex;
  column-gap: calc(var(--layout-spacing) * 1.5);
  align-items: center;
  width: 100%;
}
.product-item__icon > i {
  display: flex;
  justify-content: center;
  align-items: center;
  border-radius: calc(var(--border-radius) * 0.5);
  corner-shape: squircle;
  background-color: color-mix(in srgb, var(--color-accent) 12%, transparent);
  width: 42px;
  height: 42px;
  color: var(--color-accent-dark);
  font-size: 20px;
}
.product-item:not(.menu-item) .product-item__icon > i {
  transition: background-color 0.2s ease;
}
.product-item:not(.menu-item) a:hover .product-item__icon > i {
  background-color: color-mix(in srgb, var(--color-accent) 18%, transparent);
}
.product-item__content {
  display: flex;
  row-gap: calc(var(--layout-spacing) * 0.5);
  flex-direction: column;
  text-wrap: pretty;
  width: 100%;
}
.product-item__content h3 {
  margin: 0;
  font-size: 16px;
}
.product-item__content p {
  margin: 0;
  font-size: 14px;
}
.menu-item > a > .product-item__content p {
  display: -webkit-box;
  overflow: hidden;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  font-weight: 400;
}
.glow-card {
  container-type: inline-size;
  --glow-color: var(--color-purple);
  --glow-border: color-mix(in srgb, var(--glow-color) 18%, white);
  --glow-stroke-alpha: 48%;
  --glow-stroke-size: 100cqi;
  position: relative;
  border: none !important;
}
.glow-card > * {
  position: relative;
  z-index: 1;
}
.glow-card::before,
.glow-card::after {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  border-radius: inherit;
  corner-shape: inherit;
  padding: 1px;
  pointer-events: none;
  content: "";
  -webkit-mask: linear-gradient(#000 0 0) content-box, linear-gradient(#000 0 0);
  -webkit-mask-composite: xor;
  mask: linear-gradient(#000 0 0) content-box, linear-gradient(#000 0 0);
  mask-composite: exclude;
}
.glow-card::before {
  z-index: 2;
  background: var(--glow-border);
}
.glow-card::after {
  z-index: 3;
  background:
    radial-gradient(
      var(--glow-stroke-size) circle at var(--mouse-x, 50%) var(--mouse-y, 50%),
      color-mix(in srgb, var(--glow-color) calc(var(--glow-stroke-alpha) * var(--glow-opacity, 0)), transparent) 0%,
      color-mix(in srgb, var(--glow-color) calc(var(--glow-stroke-alpha) * 0.35 * var(--glow-opacity, 0)), transparent) 38%,
      transparent 68%);
}
blockquote.testimonial {
  border-radius: var(--border-radius);
  padding-inline: calc(var(--layout-spacing) * 3);
  padding-block: calc(var(--layout-spacing) * 2.5);
  corner-shape: squircle;
  display: flex;
  row-gap: var(--layout-gap);
  flex-direction: column;
  margin: 0;
  border: 1px solid var(--color-purple-border);
  height: 100%;
}
blockquote.testimonial p {
  margin: 0;
}
blockquote.testimonial i {
  display: inline-block;
  margin-block-end: calc(var(--layout-spacing) * 1.5);
  height: 32px;
  color: var(--color-accent);
  font-size: 24px;
  line-height: 32px;
}
blockquote.testimonial > footer {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  margin-block-start: auto;
  color: var(--color-text-muted);
  font-size: 13px;
  text-transform: none;
}
blockquote.testimonial > footer cite {
  font-style: normal;
  font-weight: 500;
}
.testimonials-carousel {
  position: relative;
}
.testimonials-carousel .splide {
  position: relative;
}
.testimonials-carousel .splide:before,
.testimonials-carousel .splide:after {
  position: absolute;
  top: 0;
  bottom: 0;
  opacity: 0;
  z-index: 2;
  transition: opacity 0.2s ease;
  width: calc(var(--layout-spacing) * 4);
  pointer-events: none;
  content: "";
}
.testimonials-carousel .splide:before {
  left: 0;
  background:
    linear-gradient(
      to right,
      white 0%,
      rgba(255, 255, 255, 0) 100%);
}
.testimonials-carousel .splide:after {
  right: 0;
  background:
    linear-gradient(
      to left,
      white 0%,
      rgba(255, 255, 255, 0) 100%);
}
.testimonials-carousel .splide.has-fade-left:before,
.testimonials-carousel .splide.has-fade-right:after {
  opacity: 1;
}
.testimonials-carousel .splide__track {
  cursor: grab;
}
.testimonials-carousel .splide__track:active {
  cursor: grabbing;
}
.testimonials-carousel .splide__list {
  align-items: stretch;
  transform: translateZ(0);
  backface-visibility: hidden;
}
.testimonials-carousel .splide__slide {
  transform: translateZ(0);
  backface-visibility: hidden;
  height: auto;
}
.testimonials-carousel__grip {
  display: grid;
  position: absolute;
  top: 50%;
  right: 0.5rem;
  place-items: center;
  transform: translateY(-50%);
  opacity: 0.4;
  z-index: 3;
  pointer-events: none;
  color: var(--color-text-muted);
  font-size: 1.25rem;
  line-height: 1;
}
@media (max-width: 767px) {
  .testimonials-carousel__grip {
    display: none;
  }
}
.product-features__list {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: calc(var(--layout-gap) * 1.5) var(--layout-gap);
  margin: 0;
  padding: 0;
  list-style: none;
}
@media (max-width: 479px) {
  .product-features__list {
    grid-template-columns: 1fr;
  }
}
.product-features__placeholder {
  margin: 0;
  color: var(--color-text-muted);
}
.product-feature {
  display: flex;
  flex-direction: column;
  row-gap: calc(var(--layout-spacing) * 0.5);
  text-wrap: pretty;
}
.product-feature__title {
  margin: 0;
  font-size: 18px;
  line-height: 1.4;
}
.product-feature__description {
  margin: 0;
  color: var(--color-text-muted);
  font-size: 15px;
  line-height: 1.5;
}
.logo-carousel .splide {
  position: relative;
}
.logo-carousel .splide__track {
  mask-image:
    linear-gradient(
      to right,
      transparent 0%,
      #000 8%,
      #000 92%,
      transparent 100%);
  -webkit-mask-image:
    linear-gradient(
      to right,
      transparent 0%,
      #000 8%,
      #000 92%,
      transparent 100%);
}
.logo-carousel .splide__list {
  align-items: center;
}
.logo-carousel .splide__slide {
  display: flex;
  justify-content: center;
  align-items: center;
}
.integrations {
  display: flex;
  flex-direction: column;
  gap: calc(var(--layout-gap) * 2);
}
.integration > h2 {
  margin-block-end: var(--layout-spacing);
}
.integration > p {
  margin-block-end: calc(var(--layout-spacing) * 2);
  max-width: 660px;
}
.integration__logos {
  display: grid;
  grid-template-columns: repeat(6, 1fr);
  gap: calc(var(--layout-gap) * 0.5);
  margin-block-start: calc(var(--layout-spacing) * 2);
  overflow: visible;
}
@media (max-width: 1023px) {
  .integration__logos {
    grid-template-columns: repeat(4, 1fr);
  }
}
@media (max-width: 767px) {
  .integration__logos {
    grid-template-columns: repeat(3, 1fr);
  }
}
@media (max-width: 479px) {
  .integration__logos {
    grid-template-columns: repeat(2, 1fr);
  }
}
.integration__logo {
  position: relative;
  border: 1px solid var(--color-purple-border);
  border-radius: calc(var(--border-radius) * 0.5);
  corner-shape: squircle;
  padding: calc(var(--layout-spacing) * 1.5);
}
.integration__logo .company-logo {
  padding: 0;
}
.integration__logo:hover .integration__logo-popover,
.integration__logo:focus-within .integration__logo-popover {
  translate: -50% 0;
  visibility: visible;
  opacity: 1;
}
.integration__logo-popover {
  display: inline-flex;
  position: absolute;
  top: 0;
  left: 50%;
  justify-content: center;
  align-items: center;
  translate: -50% 0;
  visibility: hidden;
  opacity: 0;
  z-index: 2;
  transition:
    opacity 0.15s ease,
    visibility 0.15s ease,
    translate 0.15s ease;
  border: 1px solid var(--color-purple-border);
  border-radius: calc(var(--border-radius) * 0.5);
  padding-inline: 6px;
  corner-shape: squircle;
  background-color: white;
  width: max-content;
  max-width: 80%;
  height: 24px;
  overflow: hidden;
  pointer-events: none;
  color: var(--color);
  font-weight: 500;
  font-size: 12px;
  text-align: center;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.hero {
  position: relative;
  align-content: center;
  margin-block-end: calc(var(--layout-spacing) * 6);
  min-height: 100svh;
  background:
    linear-gradient(
      180deg,
      color-mix(in srgb, var(--color-purple) 18%, white) 0%,
      white 100%);
}
@supports (background: linear-gradient(in oklch, white, white)) {
  .hero {
    background:
      linear-gradient(
        in oklch 180deg,
        color-mix(in oklch, var(--color-purple) 20%, white) 0%,
        color-mix(in oklch, var(--color-purple) 7%, white) 45%,
        color-mix(in oklch, var(--color-purple) 2%, white) 72%,
        white 100%);
  }
}
@media (max-width: 1023px) {
  .hero {
    padding-block-start: calc(var(--site-top-padding) + var(--layout-spacing) * 4);
    padding-block-end: 0;
    min-height: 100svh;
  }
}
.hero .waves {
  position: absolute;
  top: 50%;
  left: 0;
  translate: 0 calc(-50% + 30vh);
  width: 100%;
}
@media (max-width: 767px) {
  .hero .waves {
    top: auto;
    bottom: 0;
    translate: 0 0;
  }
}
.hero__con {
  display: flex;
  position: relative;
  column-gap: var(--layout-gap);
  row-gap: calc(var(--layout-spacing) * 6);
  align-items: center;
  z-index: 2;
}
@media (max-width: 1023px) {
  .hero__con {
    flex-direction: column;
    align-items: flex-start;
  }
}
.hero__con > div {
  width: 50%;
}
@media (max-width: 1023px) {
  .hero__con > div {
    width: 100%;
  }
}
.hero__content h1,
.hero__content h2 {
  font-size: clamp(2rem, 0.54rem + 2.63vw, 2.75rem);
  margin: 0;
  font-weight: 600;
  line-height: 1.2;
  letter-spacing: -0.01em;
  text-wrap: balance;
}
.hero__content p {
  margin-block-start: calc(var(--layout-spacing) * 1.5);
  margin-block-end: 0;
  font-size: 16px;
  text-wrap: pretty;
}
@media (max-width: 767px) {
  .hero__content p {
    font-size: 15px;
  }
}
.hero__content .button {
  margin-block-start: calc(var(--layout-spacing) * 2);
}
.hero__product-title {
  display: flex;
  flex-wrap: wrap;
  gap: var(--layout-spacing);
  row-gap: calc(var(--layout-spacing) * 0.75);
  align-items: center;
  margin-block-end: var(--layout-spacing);
}
@media (max-width: 767px) {
  .hero__product-title {
    flex-direction: column;
    align-items: flex-start;
  }
}
.hero__product-title .badge {
  margin: 0;
}
.hero__product-title > h1 {
  padding-inline-start: 0.15em;
  font-weight: 600;
  font-size: 15px;
}
.hero__content-inner {
  max-width: calc(var(--layout-max-width-wide) / 12 * 5);
}
.hero__images {
  position: relative;
  margin-inline: auto;
  max-width: 660px;
  min-height: 18rem;
}
.hero__images img {
  display: block;
  -webkit-backdrop-filter: blur(4px);
  backdrop-filter: blur(4px);
  border-radius: var(--border-radius);
  corner-shape: squircle;
  box-shadow: var(--box-shadow);
  border: 1px solid var(--color-border);
  height: auto;
}
.hero__images .hero-image-primary {
  position: relative;
  z-index: 1;
  width: 100%;
}
.hero__images .hero-image-secondary {
  position: absolute;
  top: 6%;
  right: 0;
  z-index: 2;
  width: 48%;
}
.hero__images .hero-image-tertiary {
  position: absolute;
  bottom: 0;
  left: 2%;
  z-index: 3;
  width: 42%;
}
.cta {
  position: relative;
  margin-block: calc(var(--layout-spacing) * 12);
  margin-block-end: calc(var(--layout-spacing) * 8);
  text-align: center;
  text-wrap: balance;
}
.cta .waves {
  position: absolute;
  bottom: 0;
  left: 0;
  translate: 0 80%;
  z-index: 1;
  width: 100%;
}
.cta h2 {
  margin: 0;
  margin-block-end: calc(var(--layout-spacing) * 1.5);
  text-wrap: balance;
}
.cta p {
  margin: 0;
}
.cta p.cta__info {
  margin-block-start: var(--layout-spacing);
  color: var(--color-text-muted);
  font-size: 13px;
}
@media (max-width: 767px) {
  .cta p.cta__info {
    font-size: 12px;
  }
}
.cta .button {
  margin-block-start: calc(var(--layout-spacing) * 2);
}
.cta.cta--pipedrive {
  border-radius: var(--border-radius);
  padding-block: calc(var(--layout-spacing) * 8);
  corner-shape: squircle;
  background:
    linear-gradient(
      225deg,
      color-mix(in srgb, var(--color-accent-light) 32%, white) 0%,
      color-mix(in srgb, var(--color-accent) 12%, white) 38%,
      color-mix(in srgb, var(--color-purple) 16%, white) 72%,
      color-mix(in srgb, var(--color-purple) 36%, white) 100%);
}
@supports (background: linear-gradient(in oklch, white, white)) {
  .cta.cta--pipedrive {
    background:
      linear-gradient(
        in oklch 225deg,
        color-mix(in oklch, var(--color-accent-light) 38%, white) 0%,
        color-mix(in oklch, var(--color-accent) 14%, white) 36%,
        color-mix(in oklch, var(--color-purple) 20%, white) 68%,
        color-mix(in oklch, var(--color-purple) 42%, white) 100%);
  }
}
@media (max-width: 767px) {
  .cta.cta--pipedrive {
    padding-block: calc(var(--layout-spacing) * 6);
  }
}
.cta__con {
  position: relative;
  z-index: 2;
}
@media (max-width: 767px) {
  .cta__con {
    padding-inline: calc(var(--layout-gap) * 2);
  }
}
.has-color-text-pipedrive {
  color: var(--color-pipedrive);
}
.pressidium-cc-theme {
  --color-bg: color-mix(in srgb, var(--color-text) 12%, transparent);
  --color-bg-accent: color-mix(in srgb, var(--color-accent) 12%, transparent);
  --color-border-accent: color-mix( in srgb, var(--color-accent) 24%, transparent );
  --cc-bg: #ffffff;
  --cc-text: var(--color-text);
  --cc-btn-primary-bg: var(--color-accent);
  --cc-btn-primary-text: var(--color-white);
  --cc-btn-primary-hover-bg: color-mix( in oklch, var(--color-accent), black 24% );
  --cc-btn-primary-hover-text: #ffffff;
  --cc-btn-secondary-bg: transparent;
  --cc-btn-secondary-text: var(--color-accent);
  --cc-btn-secondary-hover-bg: var(--color-bg-accent);
  --cc-btn-secondary-hover-text: var(--color-accent);
  --cc-toggle-bg-off: color-mix( in srgb, var(--color-accent) 36%, transparent );
  --cc-toggle-bg-on: var(--color-accent);
  --cc-toggle-bg-readonly: var(--color-accent);
  --cc-toggle-knob-bg: #ffffff;
  --cc-toggle-knob-icon-color: #ffffff;
  --cc-cookie-category-block-bg: transparent;
  --cc-cookie-category-block-bg-hover: var(--color-bg-accent);
  --cc-section-border: var(--color-border-accent);
  --cc-block-text: var(--color-text);
  --cc-cookie-table-border: var(--color-border-accent);
  --cc-overlay-bg: color-mix( in srgb, black var(--overlay-opacity), transparent );
  --cc-webkit-scrollbar-bg: var(--color-bg-accent);
  --cc-webkit-scrollbar-bg-hover: var(--color-border-accent);
  --cc-btn-floating-bg: var(--color-accent);
  --cc-btn-floating-icon: #ffffff;
  --cc-btn-floating-hover-bg: color-mix( in oklch, var(--color-accent), black 24% );
  --cc-btn-floating-hover-icon: #ffffff;
}
.cc_div .c-bn {
  color: var(--color-accent) !important;
  border: none !important;
}
.cc_div .c-bn:hover {
  box-shadow: inset 0 0 0 1px var(--color-border-accent);
}
button.c-bn {
  box-shadow: inset 0 0 0 1px var(--color-border-accent);
}
#c-bns button:first-child,
#s-bns button:first-child,
#c-bns.swap button:last-child {
  color: white !important;
}
#c-bns.swap button:first-child {
  color: var(--color-accent) !important;
}
