@font-face {
  font-family: "Calibri Regular";
  src: url("/fonts/Calibri%20Regular.woff2") format("woff2");
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: Calibri;
  src: url("/fonts/Calibri%20Regular.woff2") format("woff2");
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}

:root {
  --font-primary: "Outfit", sans-serif;
  --font-secondary: "Inter", sans-serif;
  --h1-font-size: 64px;
  --h1-m-font-size: 40px;
  --h2-font-size: 56px;
  --h2-m-font-size: 36px;
  --h3-font-size: 48px;
  --h3-m-font-size: 32px;
  --h4-font-size: 40px;
  --h4-m-font-size: 24px;
  --h5-font-size: 26px;
  --h5-m-font-size: 20px;
  --h6-font-size: 18px;
  --h6-m-font-size: 18px;
  --body-font-size: 16px;
  --body-m-font-size: 16px;
  --body-large-font-size: 18px;
  --body-small-font-size: 14px;
  --header-h: 84px;
}

* { box-sizing: border-box; }
html, body { margin: 0; padding: 0; }
body {
  background: #fff;
  color: #0d141a;
  font-family: var(--font-secondary);
  font-size: 16px;
  font-weight: 400;
  line-height: 1.5;
}
img { border: 0; max-width: none; }
button, input, textarea, select { font: inherit; }
a { color: inherit; }

.site-header {
  position: sticky;
  top: 0;
  z-index: 50;
  height: var(--header-h);
  background: #fff;
}
.header-bar {
  height: 100%;
  max-width: var(--bar);
  margin: 0 auto;
  padding: 9px 16px;
  display: flex;
  align-items: center;
  gap: 32px;
}
.logo { display: flex; align-items: center; line-height: 0; }
.logo img { height: 66px; width: auto; }
.site-nav {
  margin-left: auto;
  display: flex;
  align-items: center;
  gap: var(--gap);
}
.site-nav a {
  color: #0d141a;
  font-family: var(--font-secondary);
  font-size: 16px;
  font-weight: 400;
  line-height: 1.5;
  text-decoration: none;
  letter-spacing: normal;
}
.site-nav a[aria-current="page"] {
  text-decoration: underline;
  text-underline-offset: 6px;
}
.nav-toggle {
  display: none;
  margin-left: auto;
  width: 42px;
  height: 42px;
  border: 0;
  background: transparent;
  padding: 10px;
  flex-direction: column;
  justify-content: center;
  gap: 5px;
  cursor: pointer;
}
.nav-toggle span {
  display: block;
  height: 2px;
  width: 100%;
  background: #0d141a;
}

.block { position: relative; }
.block-bg { position: absolute; inset: 0; overflow: hidden; z-index: 0; }
.block-bg img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.scrim { position: absolute; inset: 0; background: #000; }
.block-pad {
  position: relative;
  z-index: 1;
  padding: calc(var(--pt) * 1px) calc(var(--pr) * 1px) calc(var(--pb) * 1px) calc(var(--pl) * 1px);
}
.fit {
  container-type: inline-size;
  width: min(calc(var(--cw) * 1px), 100%);
  margin: 0 auto;
  overflow: hidden;
}
.fit-sizer {
  position: relative;
  height: calc(var(--dh) * 1px * min(1, 100cqi / (var(--cw) * 1px)));
}
.canvas {
  position: absolute;
  top: 0;
  left: 0;
  width: calc(var(--cw) * 1px);
  height: calc(var(--dh) * 1px);
  transform: scale(min(1, 100cqi / (var(--cw) * 1px)));
  transform-origin: top left;
}
.el {
  position: absolute;
  top: calc(var(--dt) * 1px);
  left: calc(var(--dl) * 1px);
  width: calc(var(--dw) * 1px);
  height: calc(var(--deh) * 1px);
  z-index: var(--z);
}

.text-box { overflow: visible; }
.text-box h1, .text-box h2, .text-box h3, .text-box h4, .text-box h5, .text-box h6, .text-box p {
  margin: 0;
  font-style: normal;
  text-decoration: none;
}
.text-box h1 {
  font-family: var(--font-primary);
  font-size: var(--fontSizeDesktop, var(--h1-font-size));
  font-weight: 600;
  line-height: var(--lineHeightDesktop, 1.3);
  letter-spacing: 0;
}
.text-box h2 {
  font-family: var(--font-primary);
  font-size: var(--fontSizeDesktop, var(--h2-font-size));
  font-weight: 600;
  line-height: var(--lineHeightDesktop, 1.3);
  letter-spacing: 0;
}
.text-box h3 {
  font-family: var(--font-primary);
  font-size: var(--fontSizeDesktop, var(--h3-font-size));
  font-weight: 600;
  line-height: var(--lineHeightDesktop, 1.3);
}
.text-box h4 {
  font-family: var(--font-primary);
  font-size: var(--fontSizeDesktop, var(--h4-font-size));
  font-weight: 600;
  line-height: var(--lineHeightDesktop, 1.3);
}
.text-box h5 {
  font-family: var(--font-primary);
  font-size: var(--fontSizeDesktop, var(--h5-font-size));
  font-weight: 600;
  line-height: var(--lineHeightDesktop, 1.3);
}
.text-box h6 {
  font-family: var(--font-primary);
  font-size: var(--fontSizeDesktop, var(--h6-font-size));
  font-weight: 600;
  line-height: var(--lineHeightDesktop, 1.3);
}
.text-box p, .text-box .body {
  font-family: var(--font-secondary);
  font-size: var(--fontSizeDesktop, var(--body-font-size));
  font-weight: 400;
  line-height: var(--lineHeightDesktop, 1.5);
  letter-spacing: normal;
  text-transform: none;
}
.text-box .body-large {
  font-size: var(--fontSizeDesktop, var(--body-large-font-size));
  line-height: var(--lineHeightDesktop, 1.5);
}
.text-box .body-small {
  font-family: var(--font-secondary);
  font-size: var(--fontSizeDesktop, var(--body-small-font-size));
  font-weight: 500;
  line-height: var(--lineHeightDesktop, 1.5);
  text-transform: uppercase;
}
.text-box strong { font-weight: 700; }
.text-box a { color: inherit; text-decoration: underline; text-underline-offset: 2px; }

.el-shape { pointer-events: none; }
.el-img { overflow: hidden; border-radius: var(--br, 0px); pointer-events: none; }
.el-img img { width: 100%; height: 100%; display: block; border-radius: inherit; }
.gbtn {
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  text-decoration: none;
  font-family: var(--font-secondary);
  font-size: calc(var(--bfs, 16) * 1px);
  font-weight: var(--fw, 500);
  line-height: 1.2;
  color: var(--fc);
  background: var(--bg);
  border: var(--bw) solid var(--bc);
  border-radius: var(--br);
  overflow: hidden;
  padding: 0 10px;
}
a.gbtn { cursor: pointer; }
.gbtn:hover {
  background: var(--bgh);
  color: var(--fch);
  border-color: var(--bch);
}
.gbtn.is-pass { pointer-events: none; }

.builder-form {
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
}
.form-fields {
  display: flex;
  flex-direction: column;
  gap: calc(var(--gap) * 1px);
  align-items: var(--salign, center);
}
.builder-form .field { width: 100%; }
.builder-form label {
  display: block;
  margin: 0 0 6px;
  color: var(--label);
  font-family: var(--font-secondary);
  font-size: calc(var(--lfs) * 1px);
  font-weight: 400;
  line-height: 1.25;
}
.builder-form input, .builder-form textarea {
  width: 100%;
  height: 44px;
  background: var(--ifill);
  color: var(--itext);
  border: calc(var(--ibw) * 1px) solid var(--ibc);
  border-radius: var(--ibr);
  font-family: var(--font-secondary);
  font-size: calc(var(--ifs) * 1px);
  padding: 10px 14px;
  outline: none;
}
.builder-form textarea { height: 120px; resize: vertical; padding-top: 12px; }
.builder-form input:hover, .builder-form textarea:hover,
.builder-form input:focus, .builder-form textarea:focus {
  background: var(--ifillh);
  border-color: var(--ibch);
}
.builder-form input::placeholder, .builder-form textarea::placeholder { color: #8b909a; }
.builder-form button {
  height: 48px;
  padding: 0 36px;
  border-radius: var(--sbr);
  border: 0;
  background: var(--sbg);
  color: var(--sfc);
  font-family: var(--font-secondary);
  font-size: calc(var(--sfs) * 1px);
  font-weight: 500;
  cursor: pointer;
}
.builder-form button:hover { background: var(--sbgh); color: var(--sfch); }
.builder-form .is-invalid { border-color: rgb(224, 30, 53) !important; }
.form-success {
  display: none;
  margin: 0;
  color: var(--label);
  font-family: var(--font-secondary);
  font-size: 22px;
  font-weight: 600;
  text-align: center;
  padding: 28px 8px;
}
.builder-form.is-done .form-fields { display: none; }
.builder-form.is-done .form-success { display: block; }
.embed-host { overflow: visible; }

@media screen and (max-width: 920px) {
  :root { --header-h: 111px; }
  .header-bar { padding: 24px 16px; }
  .logo img { height: 63px; }
  .nav-toggle { display: flex; }
  .site-nav {
    display: none;
    position: absolute;
    top: 100%;
    right: 0;
    left: 0;
    margin: 0;
    background: #fff;
    flex-direction: column;
    align-items: flex-end;
    gap: var(--mgap);
    padding: 8px 20px 20px;
    box-shadow: 0 12px 28px rgba(0, 0, 0, 0.12);
  }
  .site-nav.is-open { display: flex; }
  .site-nav a { padding: 8px 0; }
  .block-pad {
    padding: calc(var(--mpt) * 1px) calc(var(--mpr) * 1px) calc(var(--mpb) * 1px) calc(var(--mpl) * 1px);
  }
  .fit { width: 100%; }
  .fit-sizer { height: calc(var(--mh) * 1px * (100cqi / (var(--mcw) * 1px))); }
  .canvas {
    width: calc(var(--mcw) * 1px);
    height: calc(var(--mh) * 1px);
    transform: scale(calc(100cqi / (var(--mcw) * 1px)));
  }
  .el {
    top: calc(var(--mt) * 1px);
    left: calc(var(--ml) * 1px);
    width: calc(var(--mw) * 1px);
    height: calc(var(--meh) * 1px);
  }
  .hide-m { display: none !important; }
  .el-img { border-radius: var(--mbr, 0px); }
  .text-box h1 { font-size: var(--fontSizeMobile, var(--h1-m-font-size)); line-height: var(--lineHeightMobile, 1.3); }
  .text-box h2 { font-size: var(--fontSizeMobile, var(--h2-m-font-size)); line-height: var(--lineHeightMobile, 1.3); }
  .text-box h3 { font-size: var(--fontSizeMobile, var(--h3-m-font-size)); line-height: var(--lineHeightMobile, 1.3); }
  .text-box h4 { font-size: var(--fontSizeMobile, var(--h4-m-font-size)); line-height: var(--lineHeightMobile, 1.3); }
  .text-box h5 { font-size: var(--fontSizeMobile, var(--h5-m-font-size)); line-height: var(--lineHeightMobile, 1.3); }
  .text-box h6 { font-size: var(--fontSizeMobile, var(--h6-m-font-size)); line-height: var(--lineHeightMobile, 1.3); }
  .text-box p, .text-box .body, .text-box .body-large, .text-box .body-small {
    font-size: var(--fontSizeMobile, var(--body-m-font-size));
    line-height: var(--lineHeightMobile, 1.5);
  }
  .text-box .body-large { font-size: var(--fontSizeMobile, 18px); }
  .text-box .body-small { font-size: var(--fontSizeMobile, 14px); }
  .form-fields { gap: calc(var(--mgap) * 1px); }
  .builder-form label { font-size: calc(var(--mlfs) * 1px); }
  .builder-form input, .builder-form textarea { font-size: calc(var(--mifs) * 1px); }
  .builder-form button { font-size: calc(var(--msfs) * 1px); }
}

@media screen and (min-width: 921px) {
  .hide-d { display: none !important; }
}

.cookie {
  position: fixed;
  z-index: 80;
  left: 1rem;
  bottom: 1rem;
  width: min(390px, calc(100% - 2rem));
}
.cookie[hidden] { display: none; }
.cookie-card, .cookie-modal {
  background: #fff;
  color: #2c2f31;
  border-radius: 0.5rem;
  box-shadow: 0 8px 28px rgba(0, 0, 0, 0.18);
  padding: 1.15rem 1.2rem 1rem;
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
  font-size: 15px;
  line-height: 1.4;
}
.cookie-card h2, .cookie-modal h2 {
  font-family: inherit;
  font-size: 17px;
  font-weight: 600;
  margin: 0 0 8px;
}
.cookie-card p, .cookie-modal p { color: #5e6266; font-size: 14px; margin: 0; }
.cookie-actions { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 14px; }
.cookie-actions button, .cookie-modal button {
  border-radius: 0.4rem;
  border: 0;
  min-height: 40px;
  padding: 0 14px;
  cursor: pointer;
  font-size: 14px;
}
.cookie .primary { background: #30363c; color: #fff; }
.cookie .primary:hover { background: #000; }
.cookie .secondary { background: #eaeff2; color: #2c2f31; }
.cookie .secondary:hover { background: #d4dae0; }
.cookie .texty { background: transparent; color: #30363c; text-decoration: underline; padding-inline: 6px; }
.cookie-modal {
  position: fixed;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  width: min(560px, calc(100% - 2rem));
  max-height: min(80vh, 640px);
  overflow: auto;
  z-index: 90;
}
.cookie-modal[hidden] { display: none; }
.cookie-backdrop { position: fixed; inset: 0; background: rgba(0, 0, 0, 0.45); z-index: 85; }
.cookie-backdrop[hidden] { display: none; }
.pref { border-top: 1px solid #f0f4f7; padding: 12px 0; }
.pref h3 { font-family: inherit; font-size: 15px; margin: 0 0 4px; }
.pref-head { display: flex; justify-content: space-between; gap: 12px; align-items: center; }
.toggle { width: 44px; height: 24px; border-radius: 99px; background: #667481; position: relative; flex: none; }
.toggle.on { background: #30363c; }
.toggle i { position: absolute; top: 3px; left: 3px; width: 18px; height: 18px; border-radius: 50%; background: #fff; transition: left 0.15s ease; }
.toggle.on i { left: 23px; }
.toggle:disabled { opacity: 0.7; cursor: not-allowed; }
