﻿/* inlined from index_files/css */
/* devanagari */
@font-face {
  font-family: 'Poppins';
  font-style: normal;
  font-weight: 300;
  src: url(https://fonts.gstatic.com/s/poppins/v24/pxiByp8kv8JHgFVrLDz8Z11lFc-K.woff2) format('woff2');
  unicode-range: U+0900-097F, U+1CD0-1CF9, U+200C-200D, U+20A8, U+20B9, U+20F0, U+25CC, U+A830-A839, U+A8E0-A8FF, U+11B00-11B09;
}
/* latin-ext */
@font-face {
  font-family: 'Poppins';
  font-style: normal;
  font-weight: 300;
  src: url(https://fonts.gstatic.com/s/poppins/v24/pxiByp8kv8JHgFVrLDz8Z1JlFc-K.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;
}
/* latin */
@font-face {
  font-family: 'Poppins';
  font-style: normal;
  font-weight: 300;
  src: url(https://fonts.gstatic.com/s/poppins/v24/pxiByp8kv8JHgFVrLDz8Z1xlFQ.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;
}
/* devanagari */
@font-face {
  font-family: 'Poppins';
  font-style: normal;
  font-weight: 400;
  src: url(https://fonts.gstatic.com/s/poppins/v24/pxiEyp8kv8JHgFVrJJbecmNE.woff2) format('woff2');
  unicode-range: U+0900-097F, U+1CD0-1CF9, U+200C-200D, U+20A8, U+20B9, U+20F0, U+25CC, U+A830-A839, U+A8E0-A8FF, U+11B00-11B09;
}
/* latin-ext */
@font-face {
  font-family: 'Poppins';
  font-style: normal;
  font-weight: 400;
  src: url(https://fonts.gstatic.com/s/poppins/v24/pxiEyp8kv8JHgFVrJJnecmNE.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;
}
/* latin */
@font-face {
  font-family: 'Poppins';
  font-style: normal;
  font-weight: 400;
  src: url(https://fonts.gstatic.com/s/poppins/v24/pxiEyp8kv8JHgFVrJJfecg.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;
}
/* devanagari */
@font-face {
  font-family: 'Poppins';
  font-style: normal;
  font-weight: 500;
  src: url(https://fonts.gstatic.com/s/poppins/v24/pxiByp8kv8JHgFVrLGT9Z11lFc-K.woff2) format('woff2');
  unicode-range: U+0900-097F, U+1CD0-1CF9, U+200C-200D, U+20A8, U+20B9, U+20F0, U+25CC, U+A830-A839, U+A8E0-A8FF, U+11B00-11B09;
}
/* latin-ext */
@font-face {
  font-family: 'Poppins';
  font-style: normal;
  font-weight: 500;
  src: url(https://fonts.gstatic.com/s/poppins/v24/pxiByp8kv8JHgFVrLGT9Z1JlFc-K.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;
}
/* latin */
@font-face {
  font-family: 'Poppins';
  font-style: normal;
  font-weight: 500;
  src: url(https://fonts.gstatic.com/s/poppins/v24/pxiByp8kv8JHgFVrLGT9Z1xlFQ.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;
}
/* devanagari */
@font-face {
  font-family: 'Poppins';
  font-style: normal;
  font-weight: 600;
  src: url(https://fonts.gstatic.com/s/poppins/v24/pxiByp8kv8JHgFVrLEj6Z11lFc-K.woff2) format('woff2');
  unicode-range: U+0900-097F, U+1CD0-1CF9, U+200C-200D, U+20A8, U+20B9, U+20F0, U+25CC, U+A830-A839, U+A8E0-A8FF, U+11B00-11B09;
}
/* latin-ext */
@font-face {
  font-family: 'Poppins';
  font-style: normal;
  font-weight: 600;
  src: url(https://fonts.gstatic.com/s/poppins/v24/pxiByp8kv8JHgFVrLEj6Z1JlFc-K.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;
}
/* latin */
@font-face {
  font-family: 'Poppins';
  font-style: normal;
  font-weight: 600;
  src: url(https://fonts.gstatic.com/s/poppins/v24/pxiByp8kv8JHgFVrLEj6Z1xlFQ.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;
}


/* inlined from index_files/run.css */
/* http://meyerweb.com/eric/tools/css/reset/
   v2.0 | 20110126
   License: none (public domain)
*/
html,
body,
div,
span,
applet,
object,
iframe,
h1,
h2,
h3,
h4,
h5,
h6,
p,
blockquote,
pre,
a,
abbr,
acronym,
address,
big,
cite,
del,
dfn,
em,
img,
ins,
kbd,
q,
s,
samp,
small,
strike,
strong,
sub,
sup,
tt,
var,
b,
u,
i,
center,
dl,
dt,
dd,
ol,
ul,
li,
fieldset,
form,
label,
legend,
table,
caption,
tbody,
tfoot,
thead,
tr,
th,
td,
article,
aside,
canvas,
details,
embed,
figure,
figcaption,
footer,
header,
hgroup,
menu,
nav,
output,
ruby,
section,
summary,
time,
mark,
audio,
video {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font: inherit;
  vertical-align: baseline;
  box-sizing: inherit;
}

html,
body,
div,
span,
applet,
object,
iframe,
h1,
h2,
h3,
h4,
h5,
h6,
p,
blockquote,
pre,
a,
abbr,
acronym,
address,
big,
cite,
code,
del,
dfn,
em,
img,
ins,
kbd,
q,
s,
samp,
small,
strike,
strong,
sub,
sup,
tt,
var,
b,
u,
i,
center,
dl,
dt,
dd,
ol,
ul,
li,
fieldset,
form,
label,
legend,
table,
caption,
tbody,
tfoot,
thead,
tr,
th,
td,
article,
aside,
canvas,
details,
embed,
figure,
figcaption,
footer,
header,
hgroup,
menu,
nav,
output,
ruby,
section,
summary,
time,
mark,
audio,
video,
input,
textarea,
button {
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}

/* HTML5 display-role reset for older browsers */
/* Circular hover effect for Client Story navigation arrows */
.baTaUaQaZ,
.baTaUaQd {
  transition: box-shadow 0.18s, background 0.18s;
}
.baTaUaQaZ:hover,
.baTaUaQd:hover {
  background: #fff;
  box-shadow: 0 0 0 6px rgba(0,0,0,0.07), 0 2px 8px 0 rgba(0,0,0,0.10);
  color: #c53d8f;
  opacity: 1;
}

/* Client Story LinkedIn icon hover (match original intent) */
.baTaUaQaG,
.baTaUaMz {
  transition: background-color 180ms ease, color 180ms ease, box-shadow 180ms ease;
}

.baTaUaQaG:hover,
.baTaUaMz:hover {
  background: #0077b5 !important;
  color: #ffffff !important;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.18);
  opacity: 1 !important;
}

article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section {
  display: block;
}

body {
  line-height: 1;
}

ol,
ul {
  list-style: none;
}

blockquote,
q {
  quotes: none;
}

blockquote:before,
blockquote:after,
q:before,
q:after {
  content: "";
  content: none;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}

/*
Some default styling.  This applies to edit mode and run mode, and effects things
such as HTML elements.
*/
b,
strong {
  font-weight: bold;
}

i,
em {
  font-style: italic;
}

body {
  font-family: Helvetica, Arial, sans-serif;
}

sup {
  vertical-align: super;
  font-size: smaller;
}

sub {
  vertical-align: sub;
  font-size: smaller;
}

ul,
ol {
  display: block;
  padding-left: 40px;
}

ul {
  list-style-type: disc;
}

ol {
  list-style-type: decimal;
}

a {
  color: inherit;
  text-decoration: none;
}
a:hover {
  text-decoration: underline;
  cursor: pointer;
}
a:visited {
  text-decoration: none;
}

input:-moz-ui-invalid {
  box-shadow: none;
}

input[type=input],
input[type=text],
input[type=password],
input[type=email],
input[type=search],
input[type=tel],
textarea {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}
input[type=input]::-webkit-input-placeholder,
input[type=text]::-webkit-input-placeholder,
input[type=password]::-webkit-input-placeholder,
input[type=email]::-webkit-input-placeholder,
input[type=search]::-webkit-input-placeholder,
input[type=tel]::-webkit-input-placeholder,
textarea::-webkit-input-placeholder {
  /* Chrome/Opera/Safari */
  color: #a9a9a9;
}
input[type=input]::-moz-placeholder,
input[type=text]::-moz-placeholder,
input[type=password]::-moz-placeholder,
input[type=email]::-moz-placeholder,
input[type=search]::-moz-placeholder,
input[type=tel]::-moz-placeholder,
textarea::-moz-placeholder {
  /* Firefox 19+ */
  color: #a9a9a9;
  opacity: 1;
}
input[type=input]:-ms-input-placeholder,
input[type=text]:-ms-input-placeholder,
input[type=password]:-ms-input-placeholder,
input[type=email]:-ms-input-placeholder,
input[type=search]:-ms-input-placeholder,
input[type=tel]:-ms-input-placeholder,
textarea:-ms-input-placeholder {
  /* IE 10+ */
  color: #a9a9a9 !important;
}
input[type=input]:-moz-placeholder,
input[type=text]:-moz-placeholder,
input[type=password]:-moz-placeholder,
input[type=email]:-moz-placeholder,
input[type=search]:-moz-placeholder,
input[type=tel]:-moz-placeholder,
textarea:-moz-placeholder {
  /* Firefox 18- */
  color: #a9a9a9;
  opacity: 1;
}
input[type=input].grey::-webkit-input-placeholder,
input[type=text].grey::-webkit-input-placeholder,
input[type=password].grey::-webkit-input-placeholder,
input[type=email].grey::-webkit-input-placeholder,
input[type=search].grey::-webkit-input-placeholder,
input[type=tel].grey::-webkit-input-placeholder,
textarea.grey::-webkit-input-placeholder {
  /* Chrome/Opera/Safari */
  color: #a9a9a9;
}
input[type=input].grey::-moz-placeholder,
input[type=text].grey::-moz-placeholder,
input[type=password].grey::-moz-placeholder,
input[type=email].grey::-moz-placeholder,
input[type=search].grey::-moz-placeholder,
input[type=tel].grey::-moz-placeholder,
textarea.grey::-moz-placeholder {
  /* Firefox 19+ */
  color: #a9a9a9;
  opacity: 1;
}
input[type=input].grey:-ms-input-placeholder,
input[type=text].grey:-ms-input-placeholder,
input[type=password].grey:-ms-input-placeholder,
input[type=email].grey:-ms-input-placeholder,
input[type=search].grey:-ms-input-placeholder,
input[type=tel].grey:-ms-input-placeholder,
textarea.grey:-ms-input-placeholder {
  /* IE 10+ */
  color: #a9a9a9 !important;
}
input[type=input].grey:-moz-placeholder,
input[type=text].grey:-moz-placeholder,
input[type=password].grey:-moz-placeholder,
input[type=email].grey:-moz-placeholder,
input[type=search].grey:-moz-placeholder,
input[type=tel].grey:-moz-placeholder,
textarea.grey:-moz-placeholder {
  /* Firefox 18- */
  color: #a9a9a9;
  opacity: 1;
}
input[type=input].white::-webkit-input-placeholder,
input[type=text].white::-webkit-input-placeholder,
input[type=password].white::-webkit-input-placeholder,
input[type=email].white::-webkit-input-placeholder,
input[type=search].white::-webkit-input-placeholder,
input[type=tel].white::-webkit-input-placeholder,
textarea.white::-webkit-input-placeholder {
  /* Chrome/Opera/Safari */
  color: #ffffff;
}
input[type=input].white::-moz-placeholder,
input[type=text].white::-moz-placeholder,
input[type=password].white::-moz-placeholder,
input[type=email].white::-moz-placeholder,
input[type=search].white::-moz-placeholder,
input[type=tel].white::-moz-placeholder,
textarea.white::-moz-placeholder {
  /* Firefox 19+ */
  color: #ffffff;
  opacity: 1;
}
input[type=input].white:-ms-input-placeholder,
input[type=text].white:-ms-input-placeholder,
input[type=password].white:-ms-input-placeholder,
input[type=email].white:-ms-input-placeholder,
input[type=search].white:-ms-input-placeholder,
input[type=tel].white:-ms-input-placeholder,
textarea.white:-ms-input-placeholder {
  /* IE 10+ */
  color: #ffffff !important;
}
input[type=input].white:-moz-placeholder,
input[type=text].white:-moz-placeholder,
input[type=password].white:-moz-placeholder,
input[type=email].white:-moz-placeholder,
input[type=search].white:-moz-placeholder,
input[type=tel].white:-moz-placeholder,
textarea.white:-moz-placeholder {
  /* Firefox 18- */
  color: #ffffff;
  opacity: 1;
}
input[type=input].black::-webkit-input-placeholder,
input[type=text].black::-webkit-input-placeholder,
input[type=password].black::-webkit-input-placeholder,
input[type=email].black::-webkit-input-placeholder,
input[type=search].black::-webkit-input-placeholder,
input[type=tel].black::-webkit-input-placeholder,
textarea.black::-webkit-input-placeholder {
  /* Chrome/Opera/Safari */
  color: #333333;
}
input[type=input].black::-moz-placeholder,
input[type=text].black::-moz-placeholder,
input[type=password].black::-moz-placeholder,
input[type=email].black::-moz-placeholder,
input[type=search].black::-moz-placeholder,
input[type=tel].black::-moz-placeholder,
textarea.black::-moz-placeholder {
  /* Firefox 19+ */
  color: #333333;
  opacity: 1;
}
input[type=input].black:-ms-input-placeholder,
input[type=text].black:-ms-input-placeholder,
input[type=password].black:-ms-input-placeholder,
input[type=email].black:-ms-input-placeholder,
input[type=search].black:-ms-input-placeholder,
input[type=tel].black:-ms-input-placeholder,
textarea.black:-ms-input-placeholder {
  /* IE 10+ */
  color: #333333 !important;
}
input[type=input].black:-moz-placeholder,
input[type=text].black:-moz-placeholder,
input[type=password].black:-moz-placeholder,
input[type=email].black:-moz-placeholder,
input[type=search].black:-moz-placeholder,
input[type=tel].black:-moz-placeholder,
textarea.black:-moz-placeholder {
  /* Firefox 18- */
  color: #333333;
  opacity: 1;
}
input[type=input].blue::-webkit-input-placeholder,
input[type=text].blue::-webkit-input-placeholder,
input[type=password].blue::-webkit-input-placeholder,
input[type=email].blue::-webkit-input-placeholder,
input[type=search].blue::-webkit-input-placeholder,
input[type=tel].blue::-webkit-input-placeholder,
textarea.blue::-webkit-input-placeholder {
  /* Chrome/Opera/Safari */
  color: #60aef7;
}
input[type=input].blue::-moz-placeholder,
input[type=text].blue::-moz-placeholder,
input[type=password].blue::-moz-placeholder,
input[type=email].blue::-moz-placeholder,
input[type=search].blue::-moz-placeholder,
input[type=tel].blue::-moz-placeholder,
textarea.blue::-moz-placeholder {
  /* Firefox 19+ */
  color: #60aef7;
  opacity: 1;
}
input[type=input].blue:-ms-input-placeholder,
input[type=text].blue:-ms-input-placeholder,
input[type=password].blue:-ms-input-placeholder,
input[type=email].blue:-ms-input-placeholder,
input[type=search].blue:-ms-input-placeholder,
input[type=tel].blue:-ms-input-placeholder,
textarea.blue:-ms-input-placeholder {
  /* IE 10+ */
  color: #60aef7 !important;
}
input[type=input].blue:-moz-placeholder,
input[type=text].blue:-moz-placeholder,
input[type=password].blue:-moz-placeholder,
input[type=email].blue:-moz-placeholder,
input[type=search].blue:-moz-placeholder,
input[type=tel].blue:-moz-placeholder,
textarea.blue:-moz-placeholder {
  /* Firefox 18- */
  color: #60aef7;
  opacity: 1;
}
input[type=input].green::-webkit-input-placeholder,
input[type=text].green::-webkit-input-placeholder,
input[type=password].green::-webkit-input-placeholder,
input[type=email].green::-webkit-input-placeholder,
input[type=search].green::-webkit-input-placeholder,
input[type=tel].green::-webkit-input-placeholder,
textarea.green::-webkit-input-placeholder {
  /* Chrome/Opera/Safari */
  color: #69c765;
}
input[type=input].green::-moz-placeholder,
input[type=text].green::-moz-placeholder,
input[type=password].green::-moz-placeholder,
input[type=email].green::-moz-placeholder,
input[type=search].green::-moz-placeholder,
input[type=tel].green::-moz-placeholder,
textarea.green::-moz-placeholder {
  /* Firefox 19+ */
  color: #69c765;
  opacity: 1;
}
input[type=input].green:-ms-input-placeholder,
input[type=text].green:-ms-input-placeholder,
input[type=password].green:-ms-input-placeholder,
input[type=email].green:-ms-input-placeholder,
input[type=search].green:-ms-input-placeholder,
input[type=tel].green:-ms-input-placeholder,
textarea.green:-ms-input-placeholder {
  /* IE 10+ */
  color: #69c765;
}
input[type=input].green:-moz-placeholder,
input[type=text].green:-moz-placeholder,
input[type=password].green:-moz-placeholder,
input[type=email].green:-moz-placeholder,
input[type=search].green:-moz-placeholder,
input[type=tel].green:-moz-placeholder,
textarea.green:-moz-placeholder {
  /* Firefox 18- */
  color: #69c765;
  opacity: 1;
}
input[type=input].red::-webkit-input-placeholder,
input[type=text].red::-webkit-input-placeholder,
input[type=password].red::-webkit-input-placeholder,
input[type=email].red::-webkit-input-placeholder,
input[type=search].red::-webkit-input-placeholder,
input[type=tel].red::-webkit-input-placeholder,
textarea.red::-webkit-input-placeholder {
  /* Chrome/Opera/Safari */
  color: #ff8585;
}
input[type=input].red::-moz-placeholder,
input[type=text].red::-moz-placeholder,
input[type=password].red::-moz-placeholder,
input[type=email].red::-moz-placeholder,
input[type=search].red::-moz-placeholder,
input[type=tel].red::-moz-placeholder,
textarea.red::-moz-placeholder {
  /* Firefox 19+ */
  color: #ff8585;
  opacity: 1;
}
input[type=input].red:-ms-input-placeholder,
input[type=text].red:-ms-input-placeholder,
input[type=password].red:-ms-input-placeholder,
input[type=email].red:-ms-input-placeholder,
input[type=search].red:-ms-input-placeholder,
input[type=tel].red:-ms-input-placeholder,
textarea.red:-ms-input-placeholder {
  /* IE 10+ */
  color: #ff8585 !important;
}
input[type=input].red:-moz-placeholder,
input[type=text].red:-moz-placeholder,
input[type=password].red:-moz-placeholder,
input[type=email].red:-moz-placeholder,
input[type=search].red:-moz-placeholder,
input[type=tel].red:-moz-placeholder,
textarea.red:-moz-placeholder {
  /* Firefox 18- */
  color: #ff8585;
  opacity: 1;
}

textarea {
  resize: none;
}

/*# sourceMappingURL=reset.css.map */

/*
All typefaces used in Butter, available by class and as mixins.

Replaces a few styles in global.scss, but largely represents a new level
of component hierarchy
*/
.h1 {
  font-family: "Open Sans", Helvetica, Arial, sans-serif;
}
.theme-classic .h1 {
  font-size: 22px;
  font-weight: 400;
  line-height: 24px;
}
.theme-butter .h1 {
  font-size: 20px;
  font-weight: 400;
  line-height: 24px;
}

.h2 {
  font-family: "Open Sans", Helvetica, Arial, sans-serif;
}
.theme-classic .h2 {
  font-size: 20px;
  font-weight: 400;
  line-height: 24px;
}
.theme-butter .h2 {
  font-size: 16px;
  font-weight: 400;
  line-height: 24px;
}

.h3 {
  font-family: "Open Sans", Helvetica, Arial, sans-serif;
}
.theme-classic .h3 {
  font-size: 16px;
  font-weight: 400;
  line-height: 18px;
}
.theme-butter .h3 {
  font-size: 16px;
  font-weight: 300;
  line-height: 24px;
}

.h4 {
  font-family: "Open Sans", Helvetica, Arial, sans-serif;
}
.theme-classic .h4 {
  font-size: 14px;
  font-weight: 400;
  line-height: 18px;
}
.theme-butter .h4 {
  font-size: 14px;
  font-weight: 300;
  line-height: 18px;
}

.h5 {
  font-family: "Open Sans", Helvetica, Arial, sans-serif;
}
.theme-classic .h5 {
  font-size: 12px;
  font-weight: 400;
  line-height: 18px;
}
.theme-butter .h5 {
  font-size: 12px;
  font-weight: 300;
  line-height: 18px;
}

.subhead1 {
  font-family: "Open Sans", Helvetica, Arial, sans-serif;
}
.theme-classic .subhead1 {
  font-size: 14px;
  font-weight: 400;
  line-height: 14px;
}
.theme-butter .subhead1 {
  font-size: 14px;
  font-weight: 600;
  line-height: 18px;
}

.subhead2 {
  font-family: "Open Sans", Helvetica, Arial, sans-serif;
}
.theme-classic .subhead2 {
  font-size: 12px;
  font-weight: 400;
  line-height: 14px;
}
.theme-butter .subhead2 {
  font-size: 12px;
  font-weight: 600;
  line-height: 18px;
}

.body1 {
  font-family: "Open Sans", Helvetica, Arial, sans-serif;
}
.theme-classic .body1 {
  font-size: 12px;
  font-weight: 400;
  line-height: 12px;
}
.theme-butter .body1 {
  font-size: 14px;
  font-weight: 400;
  line-height: 24px;
}

.body2 {
  font-family: "Open Sans", Helvetica, Arial, sans-serif;
}
.theme-classic .body2 {
  font-size: 10px;
  font-weight: 400;
  line-height: 10px;
}
.theme-butter .body2 {
  font-size: 12px;
  font-weight: 400;
  line-height: 24px;
}

.line-height-18 {
  line-height: 18px !important;
}

/*
All colors for both themes, concieved as a grid of color x opacity

*/
/* Note on SASS variables as of 4/15/24
 * - $action has not been updated to latest brand color as its descendents need verifcation in components
 * - $bubble_blue also should be updated to latest brand color
 * - $success, $alert, $destructive, $action_dark, $success_dark, $alert_dark, & $destructive_dark (and descendents) are only used in the theming object below
 * - $action, $base, $base_dark, & $reverse_dark were mostly replaced but are still used in the codebase
 * - $action, $base, $reverse, $base_dark, & $reverse_dark descendents are still used in the codebase
*/
/* Theme mapper */
/*

DO NOT ADD TO THIS FILE. USE constants.scss INSTEAD. WE ARE NOW VEGAN :)

*/
/* ONLY YOU CAN STOP Z-INDEX HYPERINFLATION */
/*

Terrible z-indexes responsible for all the evils of the world

*/
.highlight-dom-changes {
  animation-duration: 1s;
  animation-name: highlight-in;
  animation-timing-function: ease-out;
}

@keyframes highlight-in {
  from {
    background-color: rgb(200, 0, 0);
  }
}
/* MIXINS */
.display-flex {
  display: -webkit-box;
  display: -webkit-flex;
  display: -moz-box;
  display: -moz-flex;
  display: -ms-flexbox;
  display: flex;
}

/* TAGS */
address {
  font-style: normal;
  font-weight: normal;
}

sub,
sup {
  font-size: 75%; /* sub/sup is relative to the surrounding text */
  line-height: 0; /* line-height doesn't interfere with the positioning */
  position: relative; /* Makes all browsers position relative to the surrounding text */
  vertical-align: baseline; /* if you're using reset.css, you can remove this rule */
}

sup {
  top: -0.5em; /* Move the superscripted text up */
}

sub {
  bottom: -0.25em; /* Move the subscripted text down, but only half as far as the superscript */
}

input:focus,
textarea:focus {
  outline: none;
}

/*
GLOBALLY USEFUL CLASSES (formerly tab_common)
For the sake of avoiding specific classes and elaborate rules for spacing

To live here you must:
  a) do exactly one thing
  b) be named something that makes it extremely clear what that one thing is

Note: this was originally applied to .data-user-types, .data-editor,
.maison-flyout-styles, .maison-panel, .database-view, .maison-popup. Delete
this list when proved not buggy
*/
.code {
  font-family: "Courier New", Courier, monospace;
  font-weight: bold;
  background-color: antiquewhite;
  color: maroon;
  padding: 0px 4px;
  border-radius: 2px;
}

.maison-column {
  display: flex;
  flex-direction: column;
  height: 100%;
}

.flex-row,
.maison-row {
  display: flex;
  flex-direction: row;
}

.flex-column {
  display: flex;
  flex-direction: column;
}

.flex-start {
  justify-content: flex-start !important;
}

.center {
  justify-content: center !important;
}

.flex-end {
  justify-content: flex-end !important;
}

.space-between {
  justify-content: space-between !important;
}

.flex-1 {
  flex: 1;
}

.pos-rel {
  position: relative;
}

.suspension-vertical {
  display: flex;
  flex-direction: column !important;
  justify-content: center;
}

.horizontal-rule {
  margin-bottom: 5px;
  margin-top: 5px;
  width: 100%;
}

.padding-5 {
  padding: 5px !important;
}

.padding-10 {
  padding: 10px !important;
}

.padding-12 {
  padding: 12px !important;
}

.padding-15 {
  padding: 15px !important;
}

.padding-20 {
  padding: 20px !important;
}

.padding-left-0 {
  padding-left: 0px !important;
}

.padding-left-5 {
  padding-left: 5px !important;
}

.padding-left-10 {
  padding-left: 10px !important;
}

.padding-left-20 {
  padding-left: 20px !important;
}

.padding-left-30 {
  padding-left: 30px !important;
}

.padding-right-0 {
  padding-right: 0px !important;
}

.padding-right-5 {
  padding-right: 5px !important;
}

.padding-right-10 {
  padding-right: 10px !important;
}

.padding-right-20 {
  padding-right: 20px !important;
}

.padding-right-30 {
  padding-right: 30px !important;
}

.padding-top-0 {
  padding-top: 0px !important;
}

.padding-top-4 {
  padding-top: 4px !important;
}

.padding-top-5 {
  padding-top: 5px !important;
}

.padding-top-10 {
  padding-top: 10px !important;
}

.padding-top-15 {
  padding-top: 15px !important;
}

.padding-top-20 {
  padding-top: 20px !important;
}

.padding-bottom-0 {
  padding-bottom: 0px !important;
}

.padding-bottom-5 {
  padding-bottom: 5px !important;
}

.padding-bottom-10 {
  padding-bottom: 10px !important;
}

.padding-bottom-20 {
  padding-bottom: 20px !important;
}

.margin-10 {
  margin: 10px !important;
}

.margin-left-auto {
  margin-left: auto !important;
}

.margin-left-0 {
  margin-left: 0px !important;
}

.margin-left-5 {
  margin-left: 5px !important;
}

.margin-left-10 {
  margin-left: 10px !important;
}

.margin-left-12 {
  margin-left: 12px !important;
}

.margin-left-20 {
  margin-left: 20px !important;
}

.margin-left-30 {
  margin-left: 30px !important;
}

.margin-left-40 {
  margin-left: 40px !important;
}

.margin-left-100 {
  margin-left: 100px !important;
}

.margin-left-300 {
  margin-left: 300px !important;
}

.margin-right-minus20 {
  margin-right: -20px !important;
}

.margin-right-auto {
  margin-right: auto !important;
}

.margin-right-0 {
  margin-right: 0px !important;
}

.margin-right-5 {
  margin-right: 5px !important;
}

.margin-right-10 {
  margin-right: 10px !important;
}

.margin-right-20 {
  margin-right: 20px !important;
}

.margin-right-30 {
  margin-right: 30px !important;
}

.margin-right-40 {
  margin-right: 40px !important;
}

.margin-top-minus20 {
  margin-top: -20px !important;
}

.margin-top-minus10 {
  margin-top: -10px !important;
}

.margin-top-minus16 {
  margin-top: -16px !important;
}

.margin-top-minus5 {
  margin-top: -5px !important;
}

.margin-top-minus3 {
  margin-top: -3px !important;
}

.margin-top-minus2 {
  margin-top: -2px !important;
}

.margin-top-0 {
  margin-top: 0px !important;
}

.margin-top-5 {
  margin-top: 5px !important;
}

.margin-top-6 {
  margin-top: 6px !important;
}

.margin-top-8 {
  margin-top: 8px !important;
}

.margin-top-10 {
  margin-top: 10px !important;
}

.margin-top-12 {
  margin-top: 12px !important;
}

.margin-top-15 {
  margin-top: 15px !important;
}

.margin-top-16 {
  margin-top: 16px !important;
}

.margin-top-18 {
  margin-top: 18px !important;
}

.margin-top-20 {
  margin-top: 20px !important;
}

.margin-top-22 {
  margin-top: 22px !important;
}

.margin-top-25 {
  margin-top: 25px !important;
}

.margin-top-30 {
  margin-top: 30px !important;
}

.margin-top-40 {
  margin-top: 40px !important;
}

.margin-bottom-0 {
  margin-bottom: 0px !important;
}

.margin-bottom-5 {
  margin-bottom: 5px !important;
}

.margin-bottom-10 {
  margin-bottom: 10px !important;
}

.margin-bottom-12 {
  margin-bottom: 12px !important;
}

.margin-bottom-15 {
  margin-bottom: 15px !important;
}

.margin-bottom-20 {
  margin-bottom: 20px !important;
}

.margin-bottom-30 {
  margin-bottom: 30px !important;
}

.margin-bottom-40 {
  margin-bottom: 40px !important;
}

.width-5 {
  width: 5px !important;
}

.width-10 {
  width: 10px !important;
}

.width-15 {
  width: 15px !important;
}

.width-20 {
  width: 20px !important;
}

.width-25 {
  width: 20px !important;
}

.width-30 {
  width: 30px !important;
}

.width-35 {
  width: 35px !important;
}

.width-40 {
  width: 40px !important;
}

.width-45 {
  width: 45px !important;
}

.width-50 {
  width: 50px !important;
}

.width-60 {
  width: 60px !important;
}

.width-75 {
  width: 75px !important;
}

.width-80 {
  width: 80px !important;
}

.width-85 {
  width: 85px !important;
}

.width-100 {
  width: 100px !important;
}

.width-120 {
  width: 120px !important;
}

.width-130 {
  width: 130px !important;
}

.width-145 {
  width: 145px !important;
}

.width-150 {
  width: 150px !important;
}

.width-170 {
  width: 170px !important;
}

.width-180 {
  width: 180px !important;
}

.width-190 {
  width: 190px !important;
}

.width-195 {
  width: 195px !important;
}

.width-200 {
  width: 200px !important;
}

.width-210 {
  width: 210px !important;
}

.width-220 {
  width: 220px !important;
}

.width-250 {
  width: 250px !important;
}

.width-300 {
  width: 300px !important;
}

.width-320 {
  width: 320px !important;
}

.width-350 {
  width: 350px !important;
}

.width-400 {
  width: 400px !important;
}

.width-500 {
  width: 500px !important;
}

.width-540 {
  width: 540px !important;
}

.width-600 {
  width: 600px !important;
}

.width-640 {
  width: 640px !important;
}

.width-700 {
  width: 700px !important;
}

.width-fill {
  width: 100% !important;
}

.width-fit-content {
  width: fit-content !important;
}

.min-width-50 {
  min-width: 50px !important;
}

.min-width-60 {
  min-width: 60px !important;
}

.min-width-80 {
  min-width: 80px !important;
}

.min-width-85 {
  min-width: 85px !important;
}

.min-width-100 {
  min-width: 100px !important;
}

.min-width-120 {
  min-width: 120px !important;
}

.min-width-150 {
  min-width: 150px !important;
}

.min-width-180 {
  min-width: 180px !important;
}

.min-width-200 {
  min-width: 200px !important;
}

.min-width-400 {
  min-width: 400px !important;
}

.max-width-50 {
  max-width: 50px !important;
}

.max-width-60 {
  max-width: 60px !important;
}

.max-width-80 {
  max-width: 80px !important;
}

.max-width-85 {
  max-width: 85px !important;
}

.max-width-100 {
  max-width: 100px !important;
}

.max-width-120 {
  max-width: 120px !important;
}

.max-width-150 {
  max-width: 150px !important;
}

.max-width-180 {
  max-width: 180px !important;
}

.max-width-200 {
  max-width: 200px !important;
}

.width-one-tenth {
  width: 10% !important;
}

.width-two-tenth {
  width: 20% !important;
}

.width-one-quarter {
  width: 25% !important;
}

.width-three-tenth {
  width: 30% !important;
}

.width-one-third {
  width: 33.334% !important;
}

.width-four-tenth {
  width: 40% !important;
}

.width-half {
  width: 50% !important;
}

.width-six-tenth {
  width: 60% !important;
}

.width-two-third {
  width: 66.667% !important;
}

.width-seven-tenth {
  width: 70% !important;
}

.width-three-quarter {
  width: 75% !important;
}

.width-eight-tenth {
  width: 80% !important;
}

.width-nine-tenth {
  width: 90% !important;
}

.width-eighty-five-percent {
  width: 85% !important;
}

.height-5 {
  height: 5px !important;
}

.height-10 {
  height: 10px !important;
}

.height-15 {
  height: 15px !important;
}

.height-20 {
  height: 20px !important;
}

.height-25 {
  height: 20px !important;
}

.height-30 {
  height: 30px !important;
}

.height-35 {
  height: 35px !important;
}

.height-40 {
  height: 40px !important;
}

.height-45 {
  height: 45px !important;
}

.height-50 {
  height: 50px !important;
}

.height-55 {
  height: 55px !important;
}

.height-60 {
  height: 60px !important;
}

.height-85 {
  height: 85px !important;
}

.height-100 {
  height: 100px !important;
}

.height-120 {
  height: 120px !important;
}

.height-125 {
  height: 125px !important;
}

.height-150 {
  height: 150px !important;
}

.height-190 {
  height: 190px !important;
}

.height-195 {
  height: 195px !important;
}

.height-200 {
  height: 200px !important;
}

.height-210 {
  height: 210px !important;
}

.height-220 {
  height: 220px !important;
}

.height-250 {
  height: 250px !important;
}

.height-300 {
  height: 300px !important;
}

.height-307 {
  height: 307px !important;
}

.height-320 {
  height: 320px !important;
}

.height-400 {
  height: 400px !important;
}

.height-435 {
  height: 435px !important;
}

.height-540 {
  height: 540px !important;
}

.height-fill {
  height: 100% !important;
}

.height-one-tenth {
  height: 10% !important;
}

.height-two-tenth {
  height: 20% !important;
}

.height-one-quarter {
  height: 25% !important;
}

.height-three-tenth {
  height: 30% !important;
}

.height-one-third {
  height: 33.334% !important;
}

.height-four-tenth {
  height: 40% !important;
}

.height-half {
  height: 50% !important;
}

.height-six-tenth {
  height: 60% !important;
}

.height-two-third {
  height: 66.667% !important;
}

.height-seven-tenth {
  height: 70% !important;
}

.height-three-quarter {
  height: 75% !important;
}

.height-eight-tenth {
  height: 80% !important;
}

.height-nine-tenth {
  height: 90% !important;
}

.cursor-pointer {
  cursor: pointer;
}

.cursor-text {
  cursor: text;
}

.strikethrough {
  text-decoration: line-through;
}

.no-select {
  user-select: none;
}

.float-right {
  float: right;
}

.float-left {
  float: left;
}

.margin-left-auto {
  margin-left: auto;
}

.margin-right-auto {
  margin-right: auto;
}

.overflow-auto {
  overflow: auto !important;
}

.overflow-hidden {
  overflow: hidden !important;
}

.overflow-inherit {
  overflow: inherit !important;
}

.overflow-initial {
  overflow: initial !important;
}

.overflow-overlay {
  overflow: overlay !important;
}

.overflow-revert {
  overflow: revert !important;
}

.overflow-unset {
  overflow: unset !important;
}

.overflow-visible {
  overflow: visible !important;
}

.word-wrap-break-word {
  word-wrap: break-word;
  word-break: break-word;
}

.clear-left {
  clear: left;
}

.clear-right {
  clear: right;
}

.clear-both {
  clear: both;
}

.align-with-composer-input {
  margin-top: calc(12px + 5px + 16px - 9px);
}

.align-items-baseline {
  align-items: baseline;
}

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

.align-items-start {
  align-items: start;
}

.align-items-stretch {
  align-items: stretch;
}

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

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

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

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

.pop-color-variables.danger {
  --pop-color: var(--b-txt-danger);
  --pop-color-bg: var(--b-bg-danger1);
}
.pop-color-variables.caution {
  --pop-color: var(--b-txt-caution);
  --pop-color-bg: var(--b-bg-caution1);
}
.pop-color-variables.success {
  --pop-color: var(--b-txt-success);
  --pop-color-bg: var(--b-bg-success1);
}
.pop-color-variables.brand {
  --pop-color: var(--b-txt-brand);
  --pop-color-bg: var(--b-bg-brand1);
}

/* Make clicks pass-through */
#nprogress {
  pointer-events: none;
}

#nprogress .bar {
  background: #29d;
  position: fixed;
  z-index: 1000000000000000;
  top: 0;
  left: 0;
  width: 100%;
  height: 3px;
}

/* Fancy blur effect */
#nprogress .peg {
  display: block;
  position: absolute;
  right: 0px;
  width: 100px;
  height: 100%;
  box-shadow: 0 0 10px #29d, 0 0 5px #29d;
  opacity: 1;
  -webkit-transform: rotate(3deg) translate(0px, -4px);
  -ms-transform: rotate(3deg) translate(0px, -4px);
  transform: rotate(3deg) translate(0px, -4px);
}

.nprogress-custom-parent {
  overflow: hidden;
  position: relative;
}

.nprogress-custom-parent #nprogress .spinner,
.nprogress-custom-parent #nprogress .bar {
  position: absolute;
}

.cc_banner-wrapper .cc_btn.cc_btn_accept_all {
  max-width: 130px;
}

/*
All typefaces used in Butter, available by class and as mixins.

Replaces a few styles in global.scss, but largely represents a new level
of component hierarchy
*/
.h1 {
  font-family: "Open Sans", Helvetica, Arial, sans-serif;
}
.theme-classic .h1 {
  font-size: 22px;
  font-weight: 400;
  line-height: 24px;
}
.theme-butter .h1 {
  font-size: 20px;
  font-weight: 400;
  line-height: 24px;
}

.h2 {
  font-family: "Open Sans", Helvetica, Arial, sans-serif;
}
.theme-classic .h2 {
  font-size: 20px;
  font-weight: 400;
  line-height: 24px;
}
.theme-butter .h2 {
  font-size: 16px;
  font-weight: 400;
  line-height: 24px;
}

.h3 {
  font-family: "Open Sans", Helvetica, Arial, sans-serif;
}
.theme-classic .h3 {
  font-size: 16px;
  font-weight: 400;
  line-height: 18px;
}
.theme-butter .h3 {
  font-size: 16px;
  font-weight: 300;
  line-height: 24px;
}

.h4 {
  font-family: "Open Sans", Helvetica, Arial, sans-serif;
}
.theme-classic .h4 {
  font-size: 14px;
  font-weight: 400;
  line-height: 18px;
}
.theme-butter .h4 {
  font-size: 14px;
  font-weight: 300;
  line-height: 18px;
}

.h5 {
  font-family: "Open Sans", Helvetica, Arial, sans-serif;
}
.theme-classic .h5 {
  font-size: 12px;
  font-weight: 400;
  line-height: 18px;
}
.theme-butter .h5 {
  font-size: 12px;
  font-weight: 300;
  line-height: 18px;
}

.subhead1 {
  font-family: "Open Sans", Helvetica, Arial, sans-serif;
}
.theme-classic .subhead1 {
  font-size: 14px;
  font-weight: 400;
  line-height: 14px;
}
.theme-butter .subhead1 {
  font-size: 14px;
  font-weight: 600;
  line-height: 18px;
}

.subhead2 {
  font-family: "Open Sans", Helvetica, Arial, sans-serif;
}
.theme-classic .subhead2 {
  font-size: 12px;
  font-weight: 400;
  line-height: 14px;
}
.theme-butter .subhead2 {
  font-size: 12px;
  font-weight: 600;
  line-height: 18px;
}

.body1 {
  font-family: "Open Sans", Helvetica, Arial, sans-serif;
}
.theme-classic .body1 {
  font-size: 12px;
  font-weight: 400;
  line-height: 12px;
}
.theme-butter .body1 {
  font-size: 14px;
  font-weight: 400;
  line-height: 24px;
}

.body2 {
  font-family: "Open Sans", Helvetica, Arial, sans-serif;
}
.theme-classic .body2 {
  font-size: 10px;
  font-weight: 400;
  line-height: 10px;
}
.theme-butter .body2 {
  font-size: 12px;
  font-weight: 400;
  line-height: 24px;
}

.line-height-18 {
  line-height: 18px !important;
}

/*
All colors for both themes, concieved as a grid of color x opacity

*/
/* Note on SASS variables as of 4/15/24
 * - $action has not been updated to latest brand color as its descendents need verifcation in components
 * - $bubble_blue also should be updated to latest brand color
 * - $success, $alert, $destructive, $action_dark, $success_dark, $alert_dark, & $destructive_dark (and descendents) are only used in the theming object below
 * - $action, $base, $base_dark, & $reverse_dark were mostly replaced but are still used in the codebase
 * - $action, $base, $reverse, $base_dark, & $reverse_dark descendents are still used in the codebase
*/
/* Theme mapper */
/*

DO NOT ADD TO THIS FILE. USE constants.scss INSTEAD. WE ARE NOW VEGAN :)

*/
/* ONLY YOU CAN STOP Z-INDEX HYPERINFLATION */
/*

Terrible z-indexes responsible for all the evils of the world

*/
.highlight-dom-changes {
  animation-duration: 1s;
  animation-name: highlight-in;
  animation-timing-function: ease-out;
}

@keyframes highlight-in {
  from {
    background-color: rgb(200, 0, 0);
  }
}
/* MIXINS */
.display-flex {
  display: -webkit-box;
  display: -webkit-flex;
  display: -moz-box;
  display: -moz-flex;
  display: -ms-flexbox;
  display: flex;
}

/* TAGS */
address {
  font-style: normal;
  font-weight: normal;
}

sub,
sup {
  font-size: 75%; /* sub/sup is relative to the surrounding text */
  line-height: 0; /* line-height doesn't interfere with the positioning */
  position: relative; /* Makes all browsers position relative to the surrounding text */
  vertical-align: baseline; /* if you're using reset.css, you can remove this rule */
}

sup {
  top: -0.5em; /* Move the superscripted text up */
}

sub {
  bottom: -0.25em; /* Move the subscripted text down, but only half as far as the superscript */
}

input:focus,
textarea:focus {
  outline: none;
}

/*
GLOBALLY USEFUL CLASSES (formerly tab_common)
For the sake of avoiding specific classes and elaborate rules for spacing

To live here you must:
  a) do exactly one thing
  b) be named something that makes it extremely clear what that one thing is

Note: this was originally applied to .data-user-types, .data-editor,
.maison-flyout-styles, .maison-panel, .database-view, .maison-popup. Delete
this list when proved not buggy
*/
.code {
  font-family: "Courier New", Courier, monospace;
  font-weight: bold;
  background-color: antiquewhite;
  color: maroon;
  padding: 0px 4px;
  border-radius: 2px;
}

.maison-column {
  display: flex;
  flex-direction: column;
  height: 100%;
}

.flex-row,
.maison-row {
  display: flex;
  flex-direction: row;
}

.flex-column {
  display: flex;
  flex-direction: column;
}

.flex-start {
  justify-content: flex-start !important;
}

.center {
  justify-content: center !important;
}

.flex-end {
  justify-content: flex-end !important;
}

.space-between {
  justify-content: space-between !important;
}

.flex-1 {
  flex: 1;
}

.pos-rel {
  position: relative;
}

.suspension-vertical {
  display: flex;
  flex-direction: column !important;
  justify-content: center;
}

.horizontal-rule {
  margin-bottom: 5px;
  margin-top: 5px;
  width: 100%;
}

.padding-5 {
  padding: 5px !important;
}

.padding-10 {
  padding: 10px !important;
}

.padding-12 {
  padding: 12px !important;
}

.padding-15 {
  padding: 15px !important;
}

.padding-20 {
  padding: 20px !important;
}

.padding-left-0 {
  padding-left: 0px !important;
}

.padding-left-5 {
  padding-left: 5px !important;
}

.padding-left-10 {
  padding-left: 10px !important;
}

.padding-left-20 {
  padding-left: 20px !important;
}

.padding-left-30 {
  padding-left: 30px !important;
}

.padding-right-0 {
  padding-right: 0px !important;
}

.padding-right-5 {
  padding-right: 5px !important;
}

.padding-right-10 {
  padding-right: 10px !important;
}

.padding-right-20 {
  padding-right: 20px !important;
}

.padding-right-30 {
  padding-right: 30px !important;
}

.padding-top-0 {
  padding-top: 0px !important;
}

.padding-top-4 {
  padding-top: 4px !important;
}

.padding-top-5 {
  padding-top: 5px !important;
}

.padding-top-10 {
  padding-top: 10px !important;
}

.padding-top-15 {
  padding-top: 15px !important;
}

.padding-top-20 {
  padding-top: 20px !important;
}

.padding-bottom-0 {
  padding-bottom: 0px !important;
}

.padding-bottom-5 {
  padding-bottom: 5px !important;
}

.padding-bottom-10 {
  padding-bottom: 10px !important;
}

.padding-bottom-20 {
  padding-bottom: 20px !important;
}

.margin-10 {
  margin: 10px !important;
}

.margin-left-auto {
  margin-left: auto !important;
}

.margin-left-0 {
  margin-left: 0px !important;
}

.margin-left-5 {
  margin-left: 5px !important;
}

.margin-left-10 {
  margin-left: 10px !important;
}

.margin-left-12 {
  margin-left: 12px !important;
}

.margin-left-20 {
  margin-left: 20px !important;
}

.margin-left-30 {
  margin-left: 30px !important;
}

.margin-left-40 {
  margin-left: 40px !important;
}

.margin-left-100 {
  margin-left: 100px !important;
}

.margin-left-300 {
  margin-left: 300px !important;
}

.margin-right-minus20 {
  margin-right: -20px !important;
}

.margin-right-auto {
  margin-right: auto !important;
}

.margin-right-0 {
  margin-right: 0px !important;
}

.margin-right-5 {
  margin-right: 5px !important;
}

.margin-right-10 {
  margin-right: 10px !important;
}

.margin-right-20 {
  margin-right: 20px !important;
}

.margin-right-30 {
  margin-right: 30px !important;
}

.margin-right-40 {
  margin-right: 40px !important;
}

.margin-top-minus20 {
  margin-top: -20px !important;
}

.margin-top-minus10 {
  margin-top: -10px !important;
}

.margin-top-minus16 {
  margin-top: -16px !important;
}

.margin-top-minus5 {
  margin-top: -5px !important;
}

.margin-top-minus3 {
  margin-top: -3px !important;
}

.margin-top-minus2 {
  margin-top: -2px !important;
}

.margin-top-0 {
  margin-top: 0px !important;
}

.margin-top-5 {
  margin-top: 5px !important;
}

.margin-top-6 {
  margin-top: 6px !important;
}

.margin-top-8 {
  margin-top: 8px !important;
}

.margin-top-10 {
  margin-top: 10px !important;
}

.margin-top-12 {
  margin-top: 12px !important;
}

.margin-top-15 {
  margin-top: 15px !important;
}

.margin-top-16 {
  margin-top: 16px !important;
}

.margin-top-18 {
  margin-top: 18px !important;
}

.margin-top-20 {
  margin-top: 20px !important;
}

.margin-top-22 {
  margin-top: 22px !important;
}

.margin-top-25 {
  margin-top: 25px !important;
}

.margin-top-30 {
  margin-top: 30px !important;
}

.margin-top-40 {
  margin-top: 40px !important;
}

.margin-bottom-0 {
  margin-bottom: 0px !important;
}

.margin-bottom-5 {
  margin-bottom: 5px !important;
}

.margin-bottom-10 {
  margin-bottom: 10px !important;
}

.margin-bottom-12 {
  margin-bottom: 12px !important;
}

.margin-bottom-15 {
  margin-bottom: 15px !important;
}

.margin-bottom-20 {
  margin-bottom: 20px !important;
}

.margin-bottom-30 {
  margin-bottom: 30px !important;
}

.margin-bottom-40 {
  margin-bottom: 40px !important;
}

.width-5 {
  width: 5px !important;
}

.width-10 {
  width: 10px !important;
}

.width-15 {
  width: 15px !important;
}

.width-20 {
  width: 20px !important;
}

.width-25 {
  width: 20px !important;
}

.width-30 {
  width: 30px !important;
}

.width-35 {
  width: 35px !important;
}

.width-40 {
  width: 40px !important;
}

.width-45 {
  width: 45px !important;
}

.width-50 {
  width: 50px !important;
}

.width-60 {
  width: 60px !important;
}

.width-75 {
  width: 75px !important;
}

.width-80 {
  width: 80px !important;
}

.width-85 {
  width: 85px !important;
}

.width-100 {
  width: 100px !important;
}

.width-120 {
  width: 120px !important;
}

.width-130 {
  width: 130px !important;
}

.width-145 {
  width: 145px !important;
}

.width-150 {
  width: 150px !important;
}

.width-170 {
  width: 170px !important;
}

.width-180 {
  width: 180px !important;
}

.width-190 {
  width: 190px !important;
}

.width-195 {
  width: 195px !important;
}

.width-200 {
  width: 200px !important;
}

.width-210 {
  width: 210px !important;
}

.width-220 {
  width: 220px !important;
}

.width-250 {
  width: 250px !important;
}

.width-300 {
  width: 300px !important;
}

.width-320 {
  width: 320px !important;
}

.width-350 {
  width: 350px !important;
}

.width-400 {
  width: 400px !important;
}

.width-500 {
  width: 500px !important;
}

.width-540 {
  width: 540px !important;
}

.width-600 {
  width: 600px !important;
}

.width-640 {
  width: 640px !important;
}

.width-700 {
  width: 700px !important;
}

.width-fill {
  width: 100% !important;
}

.width-fit-content {
  width: fit-content !important;
}

.min-width-50 {
  min-width: 50px !important;
}

.min-width-60 {
  min-width: 60px !important;
}

.min-width-80 {
  min-width: 80px !important;
}

.min-width-85 {
  min-width: 85px !important;
}

.min-width-100 {
  min-width: 100px !important;
}

.min-width-120 {
  min-width: 120px !important;
}

.min-width-150 {
  min-width: 150px !important;
}

.min-width-180 {
  min-width: 180px !important;
}

.min-width-200 {
  min-width: 200px !important;
}

.min-width-400 {
  min-width: 400px !important;
}

.max-width-50 {
  max-width: 50px !important;
}

.max-width-60 {
  max-width: 60px !important;
}

.max-width-80 {
  max-width: 80px !important;
}

.max-width-85 {
  max-width: 85px !important;
}

.max-width-100 {
  max-width: 100px !important;
}

.max-width-120 {
  max-width: 120px !important;
}

.max-width-150 {
  max-width: 150px !important;
}

.max-width-180 {
  max-width: 180px !important;
}

.max-width-200 {
  max-width: 200px !important;
}

.width-one-tenth {
  width: 10% !important;
}

.width-two-tenth {
  width: 20% !important;
}

.width-one-quarter {
  width: 25% !important;
}

.width-three-tenth {
  width: 30% !important;
}

.width-one-third {
  width: 33.334% !important;
}

.width-four-tenth {
  width: 40% !important;
}

.width-half {
  width: 50% !important;
}

.width-six-tenth {
  width: 60% !important;
}

.width-two-third {
  width: 66.667% !important;
}

.width-seven-tenth {
  width: 70% !important;
}

.width-three-quarter {
  width: 75% !important;
}

.width-eight-tenth {
  width: 80% !important;
}

.width-nine-tenth {
  width: 90% !important;
}

.width-eighty-five-percent {
  width: 85% !important;
}

.height-5 {
  height: 5px !important;
}

.height-10 {
  height: 10px !important;
}

.height-15 {
  height: 15px !important;
}

.height-20 {
  height: 20px !important;
}

.height-25 {
  height: 20px !important;
}

.height-30 {
  height: 30px !important;
}

.height-35 {
  height: 35px !important;
}

.height-40 {
  height: 40px !important;
}

.height-45 {
  height: 45px !important;
}

.height-50 {
  height: 50px !important;
}

.height-55 {
  height: 55px !important;
}

.height-60 {
  height: 60px !important;
}

.height-85 {
  height: 85px !important;
}

.height-100 {
  height: 100px !important;
}

.height-120 {
  height: 120px !important;
}

.height-125 {
  height: 125px !important;
}

.height-150 {
  height: 150px !important;
}

.height-190 {
  height: 190px !important;
}

.height-195 {
  height: 195px !important;
}

.height-200 {
  height: 200px !important;
}

.height-210 {
  height: 210px !important;
}

.height-220 {
  height: 220px !important;
}

.height-250 {
  height: 250px !important;
}

.height-300 {
  height: 300px !important;
}

.height-307 {
  height: 307px !important;
}

.height-320 {
  height: 320px !important;
}

.height-400 {
  height: 400px !important;
}

.height-435 {
  height: 435px !important;
}

.height-540 {
  height: 540px !important;
}

.height-fill {
  height: 100% !important;
}

.height-one-tenth {
  height: 10% !important;
}

.height-two-tenth {
  height: 20% !important;
}

.height-one-quarter {
  height: 25% !important;
}

.height-three-tenth {
  height: 30% !important;
}

.height-one-third {
  height: 33.334% !important;
}

.height-four-tenth {
  height: 40% !important;
}

.height-half {
  height: 50% !important;
}

.height-six-tenth {
  height: 60% !important;
}

.height-two-third {
  height: 66.667% !important;
}

.height-seven-tenth {
  height: 70% !important;
}

.height-three-quarter {
  height: 75% !important;
}

.height-eight-tenth {
  height: 80% !important;
}

.height-nine-tenth {
  height: 90% !important;
}

.cursor-pointer {
  cursor: pointer;
}

.cursor-text {
  cursor: text;
}

.strikethrough {
  text-decoration: line-through;
}

.no-select {
  user-select: none;
}

.float-right {
  float: right;
}

.float-left {
  float: left;
}

.margin-left-auto {
  margin-left: auto;
}

.margin-right-auto {
  margin-right: auto;
}

.overflow-auto {
  overflow: auto !important;
}

.overflow-hidden {
  overflow: hidden !important;
}

.overflow-inherit {
  overflow: inherit !important;
}

.overflow-initial {
  overflow: initial !important;
}

.overflow-overlay {
  overflow: overlay !important;
}

.overflow-revert {
  overflow: revert !important;
}

.overflow-unset {
  overflow: unset !important;
}

.overflow-visible {
  overflow: visible !important;
}

.word-wrap-break-word {
  word-wrap: break-word;
  word-break: break-word;
}

.clear-left {
  clear: left;
}

.clear-right {
  clear: right;
}

.clear-both {
  clear: both;
}

.align-with-composer-input {
  margin-top: calc(12px + 5px + 16px - 9px);
}

.align-items-baseline {
  align-items: baseline;
}

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

.align-items-start {
  align-items: start;
}

.align-items-stretch {
  align-items: stretch;
}

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

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

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

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

.pop-color-variables.danger {
  --pop-color: var(--b-txt-danger);
  --pop-color-bg: var(--b-bg-danger1);
}
.pop-color-variables.caution {
  --pop-color: var(--b-txt-caution);
  --pop-color-bg: var(--b-bg-caution1);
}
.pop-color-variables.success {
  --pop-color: var(--b-txt-success);
  --pop-color-bg: var(--b-bg-success1);
}
.pop-color-variables.brand {
  --pop-color: var(--b-txt-brand);
  --pop-color-bg: var(--b-bg-brand1);
}

/*------------------
RUNMODE VISUAL EFFECTS
--------------------*/
:root {
  --font_default: 'Lato';
  --color_primary_default: rgba(2, 5, 211, 1);
  --color_primary_default_rgb: 2, 5, 211;
  --color_primary_contrast_default: rgba(255, 255, 255, 1);
  --color_primary_contrast_default_rgb: 255, 255, 255;
  --color_text_default: rgba(9, 23, 71, 1);
  --color_text_default_rgb: 9, 23, 71;
  --color_surface_default: rgba(255, 255, 255, 1);
  --color_surface_default_rgb: 255, 255, 255;
  --color_background_default: rgba(255, 255, 255, 0);
  --color_background_default_rgb: 255, 255, 255;
  --color_destructive_default: rgba(255, 0, 0, 1);
  --color_destructive_default_rgb: 255, 0, 0;
  --color_success_default: rgba(23, 219, 78, 1);
  --color_success_default_rgb: 23, 219, 78;
  --color_alert_default: rgba(250, 181, 21, 1);
  --color_alert_default_rgb: 250, 181, 21;
  --color_danger_default_rgb: rgba(176, 32, 12, 1);
}

html {
  -ms-text-size-adjust: 100%;
  -webkit-text-size-adjust: 100%;
}

div.bubble-element,
a.bubble-element {
  overflow: hidden;
  /*Generally speaking Bubble elements hide anything that is out of them, but for containers, we allow this*/
}
div.bubble-element.main-page, div.bubble-element.CustomElement, div.bubble-element.FloatingGroup, div.bubble-element.Group, div.bubble-element.Popup, div.bubble-element.group-item,
a.bubble-element.main-page,
a.bubble-element.CustomElement,
a.bubble-element.FloatingGroup,
a.bubble-element.Group,
a.bubble-element.Popup,
a.bubble-element.group-item {
  overflow: visible;
}

.bubble-element.Icon {
  padding: 0;
  text-align: center;
  background: none;
  border: none;
  cursor: inherit;
  overflow: hidden;
}
.bubble-element.Button {
  padding: 0;
  border: none;
  cursor: inherit;
  background: none;
  text-align: left;
}
.bubble-element.Button.flex-aligned-button {
  display: flex;
}
.bubble-element.Icon svg[data-icon-set], .bubble-element.Button svg[data-icon-set] {
  fill: currentColor;
}
.bubble-element.Icon svg[data-icon-set=feather], .bubble-element.Button svg[data-icon-set=feather] {
  stroke: currentColor;
  stroke-width: 2;
  stroke-linecap: round;
  stroke-linejoin: round;
  fill: none;
}
.bubble-element.Input {
  border: none;
  background-color: transparent;
  padding: 0;
}
.bubble-element.Page {
  z-index: 1;
}
.bubble-element.Link {
  white-space: pre-wrap;
  text-decoration: none;
}
.bubble-element.DateInput input {
  padding: 0;
}
.bubble-element.Image {
  display: flex;
  flex-direction: row;
  align-items: stretch;
}

.bubble-legacy-image {
  display: block;
}

img.hidden-image-for-caching {
  display: none;
  left: -9000px;
  top: 9000px;
}

@media all and (min--moz-device-pixel-ratio: 0) {
  option {
    font-family: sans-serif;
  }
}
*:focus {
  outline: 0px dotted transparent;
}
*:focus:active {
  outline: 0px dotted transparent !important;
}

.bubble-element.clickable-element {
  outline: 0px dotted transparent;
  touch-action: manipulation;
}
.bubble-element.clickable-element.show-outline {
  outline: 1px dotted grey;
}

/* Disable legacy Bubble debug/focus outline marker (can appear as tiny corner square) */
.bubble-element.clickable-element.show-outline {
  outline: none !important;
}

/* Hide any legacy Bubble branding badge if it gets injected */
.bubble-element.PoweredByBubble {
  display: none !important;
}

.bad-revision {
  padding: 10px;
  font-family: Arial, sans-serif;
  font-size: 14px;
  background-color: rgba(48, 48, 48, 0.9);
  font-weight: 600;
  color: white;
  position: fixed;
  text-align: center;
  top: 0px;
  width: 100%;
  box-sizing: border-box;
  z-index: 20000;
  line-height: 1.4;
  cursor: pointer;
}

.db-limit-reached,
.app-limit-reached {
  padding: 10px;
  font-family: Arial, sans-serif;
  font-size: 14px;
  background-color: rgba(255, 0, 0, 0.8);
  font-weight: 600;
  color: white;
  position: fixed;
  text-align: center;
  top: 0px;
  width: 100%;
  z-index: 20000;
  line-height: 1.4;
}

input:focus,
textarea:focus,
select:focus {
  outline: none;
}

input:disabled,
textarea:disabled,
input:disabled::placeholder,
textarea:disabled::placeholder {
  -webkit-text-fill-color: currentcolor;
  opacity: 1;
}

.FloatingGroup,
.CustomElement.floating-group {
  -webkit-transform: translateZ(0);
}

input[type=checkbox]:focus {
  outline: 1px dotted rgb(196, 196, 196);
}

.bubble-element.PoweredByBubble:hover {
  text-decoration: none;
}

.bubble-element.Text {
  overflow-wrap: break-word;
}

input[type=file]::-webkit-file-upload-button {
  display: none;
}

/* STRIPE CHECKOUT FALLBACK ON MOBILE */
.stripe-checkout-greyout {
  position: fixed;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  overflow-x: hidden;
  overflow-y: auto;
  z-index: 9999;
  font-weight: 400;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  -o-user-select: none;
  user-select: none;
  background: rgba(0, 0, 0, 0.6);
}

.stripe-checkout-btn {
  overflow: hidden;
  position: fixed;
  display: inline-block;
  visibility: visible !important;
  background-image: -webkit-linear-gradient(#28a0e5, #015e94);
  background-image: -moz-linear-gradient(#28a0e5, #015e94);
  background-image: -ms-linear-gradient(#28a0e5, #015e94);
  background-image: -o-linear-gradient(#28a0e5, #015e94);
  background-image: -webkit-linear-gradient(#28a0e5, #015e94);
  background-image: -moz-linear-gradient(#28a0e5, #015e94);
  background-image: -ms-linear-gradient(#28a0e5, #015e94);
  background-image: -o-linear-gradient(#28a0e5, #015e94);
  background-image: linear-gradient(#28a0e5, #015e94);
  -webkit-font-smoothing: antialiased;
  border: 0;
  padding: 1px;
  text-decoration: none;
  -webkit-border-radius: 5px;
  -moz-border-radius: 5px;
  -ms-border-radius: 5px;
  -o-border-radius: 5px;
  border-radius: 5px;
  -webkit-box-shadow: 0 1px 0 rgba(0, 0, 0, 0.2);
  -moz-box-shadow: 0 1px 0 rgba(0, 0, 0, 0.2);
  -ms-box-shadow: 0 1px 0 rgba(0, 0, 0, 0.2);
  -o-box-shadow: 0 1px 0 rgba(0, 0, 0, 0.2);
  box-shadow: 0 1px 0 rgba(0, 0, 0, 0.2);
  -webkit-touch-callout: none;
  -webkit-tap-highlight-color: transparent;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  -o-user-select: none;
  user-select: none;
  cursor: pointer;
}
.stripe-checkout-btn .stripe-checkout-display {
  position: relative;
  padding: 0 12px;
  line-height: 30px;
  background: #1275ff;
  background-image: -webkit-linear-gradient(#7dc5ee, #008cdd 85%, #30a2e4);
  background-image: -moz-linear-gradient(#7dc5ee, #008cdd 85%, #30a2e4);
  background-image: -ms-linear-gradient(#7dc5ee, #008cdd 85%, #30a2e4);
  background-image: -o-linear-gradient(#7dc5ee, #008cdd 85%, #30a2e4);
  background-image: -webkit-linear-gradient(#7dc5ee, #008cdd 85%, #30a2e4);
  background-image: -moz-linear-gradient(#7dc5ee, #008cdd 85%, #30a2e4);
  background-image: -ms-linear-gradient(#7dc5ee, #008cdd 85%, #30a2e4);
  background-image: -o-linear-gradient(#7dc5ee, #008cdd 85%, #30a2e4);
  background-image: linear-gradient(#7dc5ee, #008cdd 85%, #30a2e4);
  font-size: 14px;
  text-align: center;
  color: #fff;
  font-weight: bold;
  font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
  text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25);
  -webkit-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.25);
  -moz-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.25);
  -ms-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.25);
  -o-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.25);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.25);
  -webkit-border-radius: 4px;
  -moz-border-radius: 4px;
  -ms-border-radius: 4px;
  -o-border-radius: 4px;
  border-radius: 4px;
}

/*------------------
RESPONSIVE
--------------------*/
.bubble-r-line {
  clear: both;
  position: relative;
  pointer-events: none;
  /* We have to spell this logic this way to get the right specificity
    everywhere, because IE11 doesn't have a :not for us to use. */
}
.bubble-r-line > * {
  pointer-events: auto;
}
.bubble-r-line > .bubble-r-box, .bubble-r-line > .bubble-r-line {
  pointer-events: none;
}
.bubble-r-line .bubble-r-box {
  position: absolute;
  top: 0px;
  pointer-events: none;
}
.bubble-r-line .bubble-r-box > * {
  pointer-events: auto;
}
.bubble-r-line .bubble-r-box > .bubble-r-box, .bubble-r-line .bubble-r-box > .bubble-r-line {
  pointer-events: none;
}
.bubble-r-line .bubble-r-box.debug {
  pointer-events: auto;
  box-shadow: 0px 0px 0px 1px rgba(255, 0, 0, 0.6);
}
.bubble-r-line.debug {
  pointer-events: auto;
  box-shadow: 0px 0px 0px 1px rgba(140, 140, 140, 0.7);
}
.bubble-r-line:after {
  content: " ";
  display: block;
  clear: both;
}

/*------------------
NEW RESPONSIVE
--------------------*/
.bubble-r-container {
  overflow: hidden;
}
.bubble-r-container.fixed > .bubble-element {
  position: absolute;
}
.bubble-r-container.relative > .bubble-element, .bubble-r-container.flex > .bubble-element {
  position: relative;
}
.bubble-r-container.relative {
  display: grid;
  grid-template-areas: "stack";
  grid-template-rows: 100%;
  grid-template-columns: 100%;
}
.bubble-r-container.relative > .bubble-element {
  grid-area: stack;
}
.bubble-r-container.flex {
  display: flex;
  align-content: stretch;
}
.bubble-r-container.flex.row {
  flex-direction: row;
  flex-wrap: wrap;
}
.bubble-r-container.flex.column {
  flex-direction: column;
  flex-wrap: nowrap;
}

.bubble-r-container-wrapper {
  display: flex;
  flex-direction: row;
  align-items: stretch;
}
.bubble-r-container-wrapper > .bubble-r-container {
  position: relative;
  z-index: 0;
  max-width: 100%;
  flex-grow: 1;
  height: initial;
  overflow: inherit;
}

.bubble-table {
  display: flex;
  flex-wrap: nowrap;
}

.bubble-cross-axis {
  display: flex;
  flex-wrap: nowrap;
  justify-content: flex-start;
  align-items: stretch;
}

.bubble-rg > .bubble-element.group-item {
  position: relative;
}
.bubble-rg {
  display: grid;
  justify-items: stretch;
}
.bubble-rg.masonry > .bubble-element.group-item {
  height: max-content;
}

.bubble-rg-flex-row > .bubble-element.group-item {
  position: relative;
}
.bubble-rg-flex-row {
  display: flex;
  flex-direction: row;
  align-content: flex-start;
  justify-content: flex-start;
  flex-wrap: wrap;
}
.bubble-rg-flex-row.bubble-rg-flex-reverse {
  flex-wrap: wrap-reverse;
  align-content: flex-end;
}

.bubble-rg-reverse {
  display: flex;
  flex-direction: column-reverse;
}
.bubble-rg-reverse > .bubble-rg {
  transform: scale(1, -1);
}
.bubble-rg-reverse > .bubble-rg > * {
  transform: scale(1, -1);
}

.bubble-r-vertical-center {
  display: flex;
  flex-direction: column;
  justify-content: center;
}

.bubble-element {
  position: relative;
  box-sizing: border-box;
}

html[dir=rtl] .bubble-r-container {
  direction: ltr;
}
html[dir=rtl] .bubble-r-container > *:not(.bubble-r-container) {
  direction: rtl;
}

.dropdown-chevron {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  background-image: url("data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KPCFET0NUWVBFIHN2ZyBQVUJMSUMgIi0vL1czQy8vRFREIFNWRyAxLjEvL0VOIiAiaHR0cDovL3d3dy53My5vcmcvR3JhcGhpY3MvU1ZHLzEuMS9EVEQvc3ZnMTEuZHRkIj4KPHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB2ZXJzaW9uPSIxLjEiICB3aWR0aD0iMjQiIGhlaWdodD0iMjQiIHZpZXdCb3g9IjAgMCAyNCAyNCI+CiAgIDxwYXRoIGZpbGw9IiM5OTk5OTkiIGQ9Ik03LjQxLDguNThMMTIsMTMuMTdMMTYuNTksOC41OEwxOCwxMEwxMiwxNkw2LDEwTDcuNDEsOC41OFoiIC8+Cjwvc3ZnPgo=");
  background-repeat: no-repeat, repeat;
  background-position: right 0em top 50%, 0 0;
  background-size: 1em auto, 100%;
}

.bubble-legacy-table > * {
  display: none;
}
.bubble-legacy-table > .incompatible-message {
  display: inline-block;
  text-align: center;
}
.bubble-legacy-table {
  overflow: hidden !important;
  background: #f9f9f9;
  color: #888888;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  font-size: 12px;
  line-height: 16px;
}
.bubble-legacy-table:before {
  font-family: "FontAwesome";
  content: "\f071";
}

/*# sourceMappingURL=run.css.map */

/* Font Awesome moved to CDN link in index.html */



/* standalone overrides */

/* Standalone safety overrides */
html, body {
  width: 100%;
  overflow-x: hidden;
}

html {
  scroll-behavior: smooth;
}

.no-scrolling {
  overflow: hidden !important;
  overscroll-behavior: auto !important;
  -ms-overflow-style: none !important;
  scrollbar-width: none !important;
}

.no-scrolling::-webkit-scrollbar {
  display: none !important;
}

.HorizontalScrollingGroup,
.HorizontalScrollingGroup > div,
.HorizontalScrollingGroup > div > div {
  overflow-x: auto !important;
  overflow-y: hidden !important;
}

/* Font Awesome runtime conversion output */
.ix-fa-icon {
  line-height: 1;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

/* Scroll-to-top button (standalone isolated style) */
#scrollTopBtn.scroll-top-button {
  position: fixed;
  right: 22px;
  bottom: 22px;
  width: 52px;
  height: 52px;
  border: 1px solid #bdbdbd;
  border-radius: 50%;
  background: #ffffff;
  color: #6a6a6a;
  box-shadow: 0 8px 20px rgba(0, 0, 0, 0.12);
  display: flex;
  align-items: center;
  justify-content: center;
  opacity: 0 !important;
  visibility: hidden !important;
  pointer-events: none !important;
  transform: translateY(10px) scale(0.96);
  transition: opacity 220ms ease, transform 220ms ease, visibility 220ms ease, box-shadow 220ms ease;
  z-index: 9999 !important;
}

#scrollTopBtn.scroll-top-button.visible {
  opacity: 1 !important;
  visibility: visible !important;
  pointer-events: auto !important;
  transform: translateY(0) scale(1);
}

#scrollTopBtn.scroll-top-button .ix-icon,
#scrollTopBtn.scroll-top-button .fa-angle-up {
  color: #6a6a6a;
  font-size: 22px;
  font-weight: 300;
  line-height: 1;
  display: flex;
}

#scrollTopBtn.scroll-top-button:hover {
  background: #c8c8c8;
  border-color: #9f9f9f;
  box-shadow: 0 10px 24px rgba(0, 0, 0, 0.18);
}

#scrollTopBtn.scroll-top-button:hover .ix-icon,
#scrollTopBtn.scroll-top-button:hover .fa-angle-up {
  color: #6a6a6a;
}

/* WhatsApp modal */
body.ix-modal-open {
  overflow: hidden;
}

.ix-modal-overlay {
  position: fixed;
  inset: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 24px;
  background: rgba(0, 0, 0, 0.54);
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transition: opacity 220ms ease, visibility 220ms ease;
  z-index: 1600;
}

.ix-modal-overlay.is-open {
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
}

.ix-modal {
  position: fixed;
  left: 50%;
  top: 50%;
  width: min(700px, calc(100vw - 48px));
  max-height: calc(100dvh - 48px);
  border-radius: 10px;
  border: 1px solid #e9e9e9;
  background: #fff;
  box-shadow: 0 22px 52px rgba(0, 0, 0, 0.24);
  padding: 34px 33px 22px;
  overflow: auto;
  transform: translate(-50%, -50%) scale(0.98);
  transition: transform 220ms ease;
}

.ix-modal-overlay.is-open .ix-modal {
  transform: translate(-50%, -50%) scale(1);
}

.ix-modal-close {
  position: absolute;
  top: 26px;
  right: 28px;
  width: 30px;
  height: 30px;
  border: none;
  border-radius: 50%;
  background: transparent;
  color: rgba(68, 68, 68, 0.82);
  opacity: 1;
  font-size: 20px;
  font-weight: 300;
  line-height: 1;
  cursor: pointer;
  transition: color 180ms ease, background-color 180ms ease;
}

.ix-modal-close i {
  font-weight: 300;
}

.ix-modal-close:hover {
  color: rgba(22, 22, 22, 0.9);
  background: rgba(0, 0, 0, 0.05);
}

.ix-modal-header {
  display: flex;
  align-items: center;
  gap: 12px;
  margin-bottom: 14px;
}

.ix-modal-icon {
  color: #18ad48;
  font-size: 40px;
  line-height: 1;
}

.ix-modal-header h3 {
  margin: 0;
  font-family: var(--font_default);
  font-size: 26px;
  font-weight: 550;
  letter-spacing: -0.4px;
  color: #1f1f1f;
}

.ix-modal-subhead {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 22px;
}

.ix-modal-avatar {
  width: 60px;
  height: 60px;
  border-radius: 50%;
  object-fit: cover;
  flex-shrink: 0;
  margin-top: 2px;
  border: 1px solid rgba(0, 0, 0, 0.12);
}

.ix-modal-copy,
.ix-modal-prefill {
  margin: 0;
  font-family: var(--font_default);
  color: #4c4f56;
  line-height: 1.35;
}

.ix-modal-copy {
  max-width: 700px;
  font-size: 18px;
  font-weight: 500;
  padding-left: 2px;
}

.ix-modal-message {
  margin-top: 18px;
  width: 95%;
  min-height: 75px;
  border-radius: 10px;
  border: 1px solid #dadada;
  background: #fff;
  padding: 13px 15px;
  font-family: var(--font_default);
  font-size: 17px;
  font-weight: 400;
  color: #1f1f1f;
  resize: none;
  outline: none;
  transition: border-color 180ms ease, box-shadow 180ms ease, background-color 180ms ease;
}

.ix-modal-message:hover {
  border-color: #b8b8b8;
  background-color: #fcfcfc;
}

.ix-modal-message:focus {
  border-color: #9f9f9f;
  box-shadow: 0 0 0 2px rgba(0, 0, 0, 0.08);
}

.ix-modal-cta {
  margin-top: 22px;
  width: 100%;
  border: none;
  border-radius: 8px;
  height: 48px;
  min-height: 48px;
  padding: 0 18px;
  background: #12a53a;
  color: #fff;
  font-family: var(--font_default);
  font-size: 18px;
  font-weight: 600;
  line-height: 1.2;
  cursor: pointer;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
}

.ix-modal-cta .ix-modal-cta-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  line-height: 1;
}

.ix-modal-cta:hover {
  background: #119b37;
}

.ix-modal-fallback {
  margin: 30px auto 0;
  border: none;
  background: #ffffff;
  border-radius: 10px;
  padding: 6px 24px;
  color: #4f5f77;
  font-family: var(--font_default);
  font-size: 16px;
  font-weight: 400;
  cursor: pointer;
  display: block;
  transition: background-color 160ms ease, color 160ms ease;
}

.ix-modal-fallback:hover {
  background: #dadada;
  color: #425168;
}

/* Responsive menu (mobile/tablet) */
.ix-responsive-menu-toggle {
  display: none;
  border: 1px solid rgba(0, 0, 0, 0.14);
  border-radius: 10px;
  width: 44px;
  height: 44px;
  background: #f3f3f3;
  color: #222;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  font-size: 24px;
  line-height: 1;
}

.ix-responsive-menu {
  position: fixed;
  inset: 0;
  background: rgba(0, 0, 0, 0.16);
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transition: opacity 200ms ease, visibility 200ms ease;
  z-index: 1500;
}

.ix-responsive-menu.is-open {
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
}

body.ix-menu-open {
  overflow: hidden;
}

/* Hero rotating square card polish */
.baTaSkf #cube-container {
  border: 1px solid rgba(84, 84, 84, 0.22);
  border-radius: 22px;
  padding: 6px;
  box-sizing: border-box;
}

.baTaSkf #cube .face {
  border: 1px solid rgba(84, 84, 84, 0.14);
  border-radius: 18px;
  background: rgba(255, 255, 255, 0.92);
}

.baTaSkf .face-content {
  padding: 22px;
}

.ix-responsive-menu-card {
  position: absolute;
  left: 50%;
  top: 84px;
  transform: translateX(-50%);
  width: min(720px, calc(100vw - 18px));
  border-radius: 12px;
  border: 1px solid #e5e5e5;
  background: #fff;
  box-shadow: 0 12px 30px rgba(0, 0, 0, 0.18);
  padding: 10px 10px 12px;
}

.ix-responsive-menu-links {
  margin-top: 0;
}

.ix-responsive-menu-link {
  width: 100%;
  min-height: 60px;
  text-align: left;
  border: 0;
  border-bottom: 1px solid #ececec;
  background: transparent;
  padding: 14px 8px;
  font-family: var(--font_default);
  font-size: 17px;
  font-weight: 400;
  color: rgba(var(--color_text_default_rgb), 0.75);
  cursor: pointer;
  display: flex;
  align-items: center;
  gap: 10px;
}

.ix-responsive-menu-link-icon {
  width: 20px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: rgba(var(--color_text_default_rgb), 0.88);
  font-size: 20px;
  line-height: 1;
}

.ix-responsive-menu-link-label {
  line-height: 1.2;
}

.ix-responsive-menu-chat {
  width: 100%;
  margin-top: 12px;
  border: 0;
  border-radius: 12px;
  height: 46px;
  background: #0f1014;
  color: #fff;
  font-family: var(--font_default);
  font-size: 16px;
  font-weight: 600;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  cursor: pointer;
}

@media (max-width: 900px) {
  .ix-modal {
    width: min(680px, calc(100vw - 30px));
    padding: 24px 20px 20px;
  }

  .ix-modal-header h3 {
    font-size: 28px;
  }

  .ix-modal-icon {
    font-size: 30px;
  }

  .ix-modal-avatar {
    width: 84px;
    height: 84px;
  }

  .ix-modal-cta {
    font-size: 17px;
  }
}

@media (max-width: 768px) {
  .ix-modal {
    width: min(360px, calc(100vw - 24px));
    max-height: calc(100dvh - 24px);
    padding: 20px 16px 16px;
  }

  .ix-modal-header h3 {
    font-size: 20px;
    letter-spacing: 0;
    line-height: 1.25;
  }

  .ix-modal-message {
    width: 100%;
    max-width: 100%;
    box-sizing: border-box;
  }

  .ix-modal-copy {
    font-size: 17px;
  }

  .ix-modal-cta {
    width: 100%;
    max-width: 100%;
    box-sizing: border-box;
  }
}

@media (max-height: 560px) {
  .ix-modal {
    max-height: calc(100dvh - 12px);
    padding: 16px 14px 12px;
  }

  .ix-modal-header {
    margin-bottom: 10px;
  }

  .ix-modal-copy {
    font-size: 16px;
  }

  .ix-modal-message {
    margin-top: 12px;
    min-height: 64px;
  }

  .ix-modal-cta {
    margin-top: 14px;
  }

  .ix-modal-fallback {
    margin-top: 16px;
  }
}

/* Responsive fixes for tablet/mobile breakpoints without changing content */
@media (max-width: 1024px) {
  html,
  body,
  .main-page {
    overflow-x: hidden !important;
  }

  .baTaSaSq {
    min-width: 44px !important;
    width: auto !important;
    flex-grow: 0 !important;
    justify-content: flex-end !important;
  }

  .baTaSaSl {
    padding: 0 16px !important;
    min-height: 78px !important;
    max-height: none !important;
    height: auto !important;
    margin-top: 12px !important;
  }

  .baTaSaSp {
    min-width: 230px !important;
    max-width: 230px !important;
    width: 230px !important;
  }

  /* Collapse desktop nav links on tablet/mobile; keep menu trigger behavior from page logic */
  .baTaSaSq > .clickable-element.bubble-element.Group,
  .baTaSaSq > .clickable-element.bubble-element.Button {
    display: none !important;
  }

  .ix-responsive-menu-toggle {
    display: inline-flex;
  }

  body.ix-menu-open .baTaSaTaB {
    display: none !important;
  }

  /* Keep only one Chat with Rathan button on mobile/tablet (inside menu) */
  .baTaSaTaB {
    display: none !important;
  }

  .baTaSkaZ {
    padding: 0 16px !important;
    margin: 14px 0 30px !important;
  }

  .baTaSke {
    flex-wrap: wrap !important;
    gap: 20px !important;
  }

  /* "Technology has evolved" cards: prevent horizontal overflow */
  .baTaSih {
    flex-wrap: wrap !important;
    gap: 16px !important;
  }

  .baTaSih > .bubble-element.Group[data-outline="true"] {
    min-width: 0 !important;
    width: calc(50% - 8px) !important;
    max-width: calc(50% - 8px) !important;
    flex: 1 1 calc(50% - 8px) !important;
    box-sizing: border-box !important;
  }

  .baTaSkj {
    min-width: 0 !important;
    width: 100% !important;
    max-width: none !important;
    border-right: none !important;
    padding: 8px 0 0 !important;
    row-gap: 18px !important;
  }

  .baTaSkf {
    min-width: 0 !important;
    width: 100% !important;
    max-width: none !important;
  }

  .baTaSkk {
    min-width: 0 !important;
    font-size: clamp(50px, 7.4vw, 72px) !important;
    line-height: 1.18 !important;
  }

  .baTaSkp {
    row-gap: 18px !important;
    margin-top: 8px !important;
  }

  .baTaSkr {
    min-width: 0 !important;
    width: 100% !important;
  }

  .baTaSaYf .bubble-rg {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  }

  .baTaUxd,
  .baTaUxl,
  .baTaUym {
    margin-top: 0 !important;
  }

  .baTaUwt,
  .baTaUyaO,
  .baTaUyr {
    align-self: flex-start !important;
  }

  #groupFooter {
    padding: 52px 20px 58px !important;
  }

  #groupFooter .baTaTaGaC {
    flex-wrap: wrap !important;
    gap: 26px !important;
  }

  /* Mobile menu drawer card style (applies when drawer is opened by existing behavior) */
  .baTaTaJaP {
    border-radius: 14px !important;
    background: #ffffff !important;
    box-shadow: 0 10px 28px rgba(0, 0, 0, 0.16) !important;
  }
}

@media (max-width: 768px) {
  .baTaSkf #cube-container {
    width: min(100%, 240px) !important;
    height: 180px !important;
  }

  .baTaSkf .face-content {
    padding: 16px !important;
  }

  .baTaSkf .face-content > .big-text {
    font-size: 21px !important;
  }

  .baTaSkf .face-content > .small-text {
    font-size: 13px !important;
  }

  .ix-responsive-menu-card {
    width: calc(100vw - 12px);
    top: 72px;
  }

  .ix-responsive-menu-link {
    font-size: 16px;
    padding: 12px 8px;
  }

  .ix-responsive-menu-link-icon {
    font-size: 18px;
  }

  .baTaSaSl {
    padding: 0 12px !important;
    min-height: 70px !important;
    margin-top: 8px !important;
  }

  .baTaSaSp {
    min-width: 176px !important;
    max-width: 176px !important;
    width: 176px !important;
  }

  .baTaSkaZ {
    padding: 0 12px !important;
    margin: 10px 0 22px !important;
  }

  .baTaSkk {
    font-size: clamp(32px, 11.2vw, 52px) !important;
    letter-spacing: -1px !important;
    line-height: 1.12 !important;
  }

  .baTaSkr {
    font-size: clamp(18px, 5.3vw, 24px) !important;
  }

  .baTaSkq {
    min-height: 40px !important;
    padding: 8px 14px !important;
    margin-top: 10px !important;
  }

  .baTaSaYf .bubble-rg {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  }

  /* Keep "How do we build?" cards in a 2x2 grid on mobile like original */
  .baTaSih {
    gap: 12px !important;
  }

  .baTaSih > .bubble-element.Group[data-outline="true"] {
    min-width: 0 !important;
    width: calc(50% - 6px) !important;
    max-width: calc(50% - 6px) !important;
    flex: 1 1 calc(50% - 6px) !important;
    padding: 16px !important;
  }

  /* Client Story nav arrows fully inside viewport */
  .baTaUaQaX {
    width: 100% !important;
    margin: 24px 0 0 !important;
    min-width: 0 !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
  }

  .baTaUaQaZ,
  .baTaUaQd {
    min-width: 44px !important;
    max-width: 44px !important;
    min-height: 44px !important;
    max-height: 44px !important;
    width: 44px !important;
    height: 44px !important;
  }

  .baTaUaPaP {
    font-size: 16px !important;
    line-height: 1.45 !important;
  }

  .baTaUaPaV {
    font-size: 15px !important;
    line-height: 1.35 !important;
  }

  .baTaUaPb {
    min-width: 72px !important;
    max-width: 72px !important;
    width: 72px !important;
  }

  #groupCTA {
    padding: 26px 12px !important;
    row-gap: 30px !important;
  }

  .baTaUxd,
  .baTaUxl,
  .baTaUym {
    flex-wrap: wrap !important;
    gap: 10px !important;
    align-items: flex-start !important;
  }

  .baTaUxaH,
  .baTaUyaP,
  .baTaUys {
    min-width: 0 !important;
    width: 100% !important;
  }

  .baTaUwt,
  .baTaUyaO,
  .baTaUyr {
    align-self: flex-start !important;
    margin-top: 8px !important;
  }

  .baTaVaBaT0 {
    text-align: center !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }

  .baTaUaOaT {
    flex-wrap: wrap !important;
    gap: 16px !important;
  }

  .baTaUaPaD,
  .baTaUaQaM {
    min-width: 0 !important;
    width: 100% !important;
    max-width: 100% !important;
  }

  .baTaUaPb img {
    object-fit: cover !important;
  }

  #groupFooter {
    padding: 48px 16px 52px !important;
  }

  .baTaTaHd {
    min-width: 190px !important;
    max-width: 190px !important;
    width: 190px !important;
  }
}

@media (max-width: 768px) and (orientation: landscape) {
  .ix-responsive-menu-card {
    top: 56px;
    max-height: calc(100dvh - 68px);
    overflow: auto;
  }

  .ix-responsive-menu-link {
    font-size: 16px;
    padding: 8px 8px;
  }

  .baTaSaSl {
    min-height: 62px !important;
  }

  .baTaSkk {
    font-size: clamp(28px, 6.5vw, 42px) !important;
  }

  .baTaSkf {
    max-width: 320px !important;
    margin: 0 auto !important;
  }

  .baTaUaPaP {
    font-size: clamp(26px, 4.2vw, 32px) !important;
    line-height: 1.36 !important;
  }

  .baTaUaPaV {
    font-size: 16px !important;
    line-height: 1.35 !important;
  }

  .baTaUxd,
  .baTaUxl,
  .baTaUym {
    flex-wrap: nowrap !important;
    justify-content: space-between !important;
    align-items: center !important;
    gap: 16px !important;
  }

  .baTaUxaH,
  .baTaUyaP,
  .baTaUys {
    min-width: 0 !important;
    width: auto !important;
    flex: 1 1 auto !important;
  }

  .baTaUwt,
  .baTaUyaO,
  .baTaUyr {
    align-self: center !important;
    margin-top: 0 !important;
    margin-left: auto !important;
  }

  #groupFooter {
    padding: 56px 24px 62px !important;
  }

  .ix-modal {
    width: min(560px, calc(100vw - 18px)) !important;
    max-height: calc(100dvh - 16px) !important;
    padding: 14px 14px 12px !important;
  }

  .ix-modal-message {
    min-height: 58px !important;
  }

  .baTaTaJaP {
    max-height: 74dvh !important;
    overflow-y: auto !important;
  }
}

@media (min-width: 600px) and (max-width: 900px) and (orientation: portrait) {
  .ix-modal {
    width: min(520px, calc(100vw - 34px)) !important;
    max-height: calc(100dvh - 34px) !important;
  }

  .baTaUaPaP {
    font-size: clamp(30px, 4.8vw, 38px) !important;
    line-height: 1.38 !important;
  }

  .baTaUaPaV {
    font-size: 17px !important;
    line-height: 1.35 !important;
  }

  .baTaUxd,
  .baTaUxl,
  .baTaUym {
    flex-wrap: nowrap !important;
    justify-content: space-between !important;
    align-items: center !important;
    gap: 16px !important;
  }

  .baTaUxaH,
  .baTaUyaP,
  .baTaUys {
    min-width: 0 !important;
    width: auto !important;
    flex: 1 1 auto !important;
  }

  .baTaUwt,
  .baTaUyaO,
  .baTaUyr {
    align-self: center !important;
    margin-top: 0 !important;
    margin-left: auto !important;
  }

  #groupFooter {
    padding: 62px 28px 70px !important;
  }
}

@media (min-width: 700px) and (max-width: 1024px) and (orientation: portrait) {
  /* About-us team photo stack: avoid bottom clipping on tablet portrait */
  .baTaUaOaT {
    align-items: flex-start !important;
  }

  .baTaUaPaD {
    margin-top: 0 !important;
    margin-bottom: 14px !important;
    min-height: 420px !important;
    max-height: none !important;
    height: auto !important;
    overflow: visible !important;
  }

  #photo-stack {
    margin-bottom: 14px !important;
  }
}

@media (max-width: 480px) {
  .ix-modal {
    width: min(344px, calc(100vw - 20px)) !important;
    padding: 18px 14px 14px !important;
  }

  .ix-modal-close {
    top: 12px;
    right: 12px;
    font-size: 18px;
  }

  .ix-modal-header {
    margin-bottom: 10px;
  }

  .ix-modal-header h3 {
    font-size: 18px !important;
    line-height: 1.25 !important;
  }

  .ix-modal-subhead {
    gap: 12px;
  }

  .ix-modal-avatar {
    width: 56px !important;
    height: 56px !important;
    margin-top: 0;
  }

  .ix-modal-copy {
    font-size: 15px !important;
    line-height: 1.4 !important;
  }

  .ix-modal-message {
    min-height: 74px !important;
    margin-top: 12px !important;
  }

  .baTaSih > .bubble-element.Group[data-outline="true"] {
    width: calc(50% - 6px) !important;
    max-width: calc(50% - 6px) !important;
    padding: 14px 12px !important;
  }
}

@media (max-width: 480px) and (orientation: portrait) {
  /* Hero rotating square: transparent hold state + top/bottom dark rails */
  .baTaSkf #cube-container {
    border: none !important;
    border-top: 1px solid rgba(17, 17, 17, 0.45) !important;
    border-bottom: 1px solid rgba(17, 17, 17, 0.45) !important;
    border-radius: 0 !important;
    padding: 8px 0 !important;
  }

  .baTaSkf #cube .face,
  .baTaSkf #cube .face.current {
    background: transparent !important;
  }

  /* Brand logos: exactly 2 columns in mobile portrait */
  .baTaSaYf .bubble-rg {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }

  /* No-Code to AI-Build cards: single column stack */
  .baTaSih > .bubble-element.Group[data-outline="true"] {
    width: 100% !important;
    max-width: 100% !important;
    flex: 1 1 100% !important;
  }

  /* Our promise line should sit to the left */
  .baTaVaBaT0 {
    text-align: left !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    width: 100% !important;
  }

  /* Client story text + controls styling */
  .baTaUaPaP {
    font-size: clamp(22px, 8.2vw, 33px) !important;
    line-height: 1.38 !important;
    font-style: italic !important;
    text-align: center !important;
  }

  .baTaUaPaV {
    font-size: 14px !important;
    line-height: 1.3 !important;
  }

  .baTaUaQaZ,
  .baTaUaQd {
    background: transparent !important;
    box-shadow: none !important;
    opacity: 0.45 !important;
    min-width: 40px !important;
    max-width: 40px !important;
    min-height: 40px !important;
    max-height: 40px !important;
    width: 40px !important;
    height: 40px !important;
  }

  .baTaUaQaZ .ix-icon,
  .baTaUaQaZ .material-symbols-rounded,
  .baTaUaQd .ix-icon,
  .baTaUaQd .material-symbols-rounded {
    font-size: 25px !important;
    line-height: 1 !important;
  }

  /* Promises section (mobile portrait only): remove extra "more" text + left align "We..." rows */
  .baTaTaZz > .bubble-element.Group > .bubble-element.Text {
    display: none !important;
  }

  .baTaTaZz .bubble-r-container.flex.row {
    justify-content: flex-start !important;
    gap: 12px !important;
  }

  .baTaTaZz .bubble-r-container.flex.row > .bubble-element.Text {
    text-align: left !important;
  }

  /* Keep accordion detail text visible when "How?" is expanded */
  .baTaTaZz > .bubble-element.Group.no-scrolling > .bubble-element.Text {
    display: block !important;
  }

  /* Improve touch reliability for mobile portrait accordion triggers */
  .baTaTaZz .ix-accordion-trigger {
    pointer-events: auto !important;
    touch-action: manipulation !important;
  }
}

/* Our promises row title: keep single-line truncation like the original */
.baTaTaZz .bubble-r-container.flex.row > .bubble-element.Text,
.baTaTaZz .bubble-r-container.flex.row > .bubble-element.Text > div {
  min-width: 0 !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
}

@media (max-width: 375px) and (orientation: portrait) {
  /* Hero square placement in narrow portrait */
  .baTaSkf {
    display: flex !important;
    align-items: flex-start !important;
    min-height: 250px !important;
    padding: 10px 0 18px !important;
  }

  .baTaSkf #cube-container {
    margin: 10px auto 24px !important;
  }

  /* Promises: keep all "We..." lines left aligned with even row spacing */
  .baTaTaZz {
    gap: 12px !important;
  }

  .baTaTaZz > .bubble-element.Group {
    min-width: 0 !important;
    width: 100% !important;
    margin: 0 !important;
  }

  .baTaTaZz .bubble-r-container.flex.row {
    justify-content: space-between !important;
    gap: 10px !important;
  }

  .baTaTaZz .bubble-r-container.flex.row > .bubble-element.Text {
    text-align: left !important;
  }
}

@media (max-width: 768px) and (orientation: landscape) {
  /* Promises: keep a clean two-column rhythm in landscape */
  .baTaTaZz {
    gap: 14px 16px !important;
  }

  .baTaTaZz > .bubble-element.Group {
    min-width: 0 !important;
    width: calc(50% - 8px) !important;
    margin: 0 !important;
  }

  .baTaTaZz .bubble-r-container.flex.row > .bubble-element.Text {
    text-align: left !important;
  }

  /* Move the right client-story arrow slightly to the right */
  .baTaUaQd {
    margin-right: -6px !important;
  }

  /* Feel free section: prevent button collapse and keep copy wrapping naturally */
  .baTaUxaH,
  .baTaUyaP,
  .baTaUys {
    flex: 1 1 0 !important;
    min-width: 0 !important;
  }

  .baTaUwt,
  .baTaUyaO,
  .baTaUyr {
    flex: 0 0 auto !important;
    flex-shrink: 0 !important;
    min-width: 176px !important;
    padding: 8px 18px !important;
  }

  .baTaUwt .label-item,
  .baTaUyaO .label-item,
  .baTaUyr .label-item {
    white-space: nowrap !important;
  }

  .baTaUwn,
  .baTaUyaU,
  .baTaUyx {
    max-width: 100% !important;
    white-space: normal !important;
    overflow-wrap: break-word !important;
  }
}

@media (min-width: 600px) and (max-width: 900px) and (orientation: portrait) {
  /* Feel free section: keep button + description alignment and avoid compression */
  .baTaUxaH,
  .baTaUyaP,
  .baTaUys {
    flex: 1 1 0 !important;
    min-width: 0 !important;
  }

  .baTaUwt,
  .baTaUyaO,
  .baTaUyr {
    flex: 0 0 auto !important;
    flex-shrink: 0 !important;
    min-width: 184px !important;
    padding: 8px 18px !important;
  }

  .baTaUwn,
  .baTaUyaU,
  .baTaUyx {
    max-width: 100% !important;
    white-space: normal !important;
    overflow-wrap: break-word !important;
  }
}

@media (max-width: 1024px) {
  /* Hero rotated square: equal top/bottom breathing room for mobile + tablet */
  .baTaSkf #cube .face {
    align-items: stretch !important;
  }

  .baTaSkf #cube .face .face-content {
    margin-top: 0 !important;
    min-height: 100% !important;
    box-sizing: border-box !important;
    display: flex !important;
    flex-direction: column !important;
    justify-content: center !important;
    padding-top: 34px !important;
    padding-bottom: 34px !important;
  }
}

@media (min-width: 769px) and (max-width: 1024px) and (orientation: landscape) {
  /* Tablet landscape: align "Our promises" rows like reference */
  .baTaTaZz {
    justify-content: center !important;
    gap: 24px !important;
  }

  .baTaTaZz > .bubble-element.Group {
    min-width: 0 !important;
    width: calc((100% - 48px) / 3) !important;
    flex: 0 0 calc((100% - 48px) / 3) !important;
    margin: 0 !important;
  }

  .baTaTaZz .bubble-r-container.flex.row {
    justify-content: space-between !important;
    gap: 10px !important;
    width: 100% !important;
  }

  .baTaTaZz .bubble-r-container.flex.row > .bubble-element.Text {
    text-align: left !important;
  }
}

/* Client testimonial LinkedIn icon: add hover parity */
.baTaUaQaG {
  transition: transform 180ms ease, box-shadow 180ms ease, color 180ms ease, background-color 180ms ease !important;
}

.baTaUaQaG:hover,
.baTaUaQaG:focus-visible {
  color: #0a66c2 !important;
  background-color: #ffffff !important;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.22) !important;
  transform: translateY(-1px) !important;
}

/* Scroll-to-top final color override */
#scrollTopBtn.scroll-top-button {
  border: 0 !important;
  background-color: #ffffff !important;
  display: none !important;
}

#scrollTopBtn.scroll-top-button:hover,
#scrollTopBtn.scroll-top-button:focus-visible {
  background-color: #e3e3e3 !important;
}

#scrollTopBtn.scroll-top-button.visible {
  display: flex !important;
}

#scrollTopBtn.scroll-top-button .ix-icon,
#scrollTopBtn.scroll-top-button .fa-angle-up,
#scrollTopBtn.scroll-top-button i.fa-solid.fa-chevron-up,
#scrollTopBtn.scroll-top-button:hover .ix-icon,
#scrollTopBtn.scroll-top-button:hover .fa-angle-up,
#scrollTopBtn.scroll-top-button:hover i.fa-solid.fa-chevron-up {
  color: #6a6a6a !important;
}

/* Remove tiny Bubble debug square if it appears at bottom-right */
.show-outline,
.show-outline::before,
.show-outline::after {
  outline: none !important;
  border: none !important;
  box-shadow: none !important;
}

.bubble-element.PoweredByBubble,
#bubble_badge,
[data-testid="powered-by-bubble"],
[data-bubble-powered-by] {
  display: none !important;
}

/* Offerings cards responsiveness */
@media (max-width: 1024px) {
  .baTaSdz {
    flex-wrap: wrap !important;
    gap: 16px !important;
  }

  .baTaSdz > .bubble-element.Group[data-outline="true"] {
    min-width: 0 !important;
    width: calc(50% - 8px) !important;
    max-width: calc(50% - 8px) !important;
    flex: 1 1 calc(50% - 8px) !important;
    box-sizing: border-box !important;
  }
}

@media (max-width: 768px) {
  .baTaSdz {
    gap: 12px !important;
  }

  .baTaSdz > .bubble-element.Group[data-outline="true"] {
    width: 100% !important;
    max-width: 100% !important;
    flex: 1 1 100% !important;
  }
}

/* Final hero rotating square responsiveness (desktop/tablet/mobile) */
.baTaSkf {
  min-width: 0 !important;
  width: 100% !important;
  display: flex !important;
  justify-content: center !important;
  align-items: flex-start !important;
}

.baTaSkf #cube-container {
  width: clamp(210px, 24vw, 250px) !important;
  max-width: 100% !important;
  aspect-ratio: 1 / 1 !important;
  height: auto !important;
  margin: 0 auto !important;
  box-sizing: border-box !important;
  background: transparent !important;
  border: none !important;
  box-shadow: none !important;
}

.baTaSkf #cube {
  width: 100% !important;
  height: 100% !important;
}

.baTaSkf #cube .face .face-content {
  margin-top: 0 !important;
  min-height: 100% !important;
  box-sizing: border-box !important;
  display: flex !important;
  flex-direction: column !important;
  justify-content: center !important;
}

.baTaSkf #cube .face,
.baTaSkf #cube .face.current {
  background: transparent !important;
  border: none !important;
  box-shadow: none !important;
}

@media (max-width: 1024px) {
  .baTaSkf #cube-container {
    width: clamp(190px, 34vw, 240px) !important;
  }
}

@media (max-width: 768px) {
  .baTaSkf #cube-container {
    width: clamp(170px, 56vw, 220px) !important;
  }

  .baTaSkf .face-content > .big-text {
    font-size: clamp(20px, 5.5vw, 24px) !important;
    line-height: 1.2 !important;
  }

  .baTaSkf .face-content > .small-text {
    font-size: clamp(12px, 3.4vw, 14px) !important;
    line-height: 1.35 !important;
  }
}

@media (max-width: 480px) {
  .baTaSkf #cube-container {
    width: clamp(156px, 62vw, 205px) !important;
  }
}

/* Mobile/tablet only: suppress tiny bottom-right debug square */
@media (max-width: 1024px) {
  .bubble-r-line.debug,
  .bubble-r-line .bubble-r-box.debug,
  .show-outline,
  .show-outline::before,
  .show-outline::after,
  .bubble-element.clickable-element.show-outline,
  #bubble_badge,
  .bubble-element.PoweredByBubble,
  [data-testid="powered-by-bubble"],
  [data-bubble-powered-by] {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
    width: 0 !important;
    height: 0 !important;
    min-width: 0 !important;
    min-height: 0 !important;
    pointer-events: none !important;
    border: 0 !important;
    outline: 0 !important;
    box-shadow: none !important;
  }

  input[type=checkbox]:focus,
  input[type=radio]:focus,
  button:focus,
  [tabindex]:focus {
    outline: none !important;
    box-shadow: none !important;
  }

  /* Fallback for injected fixed corner marker nodes */
  body > div[style*="position: fixed"][style*="right: 0"][style*="bottom: 0"],
  body > span[style*="position: fixed"][style*="right: 0"][style*="bottom: 0"] {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
    pointer-events: none !important;
  }
}

@media (max-width: 600px) {
  .baTaUaJp {
    flex-direction: column !important;
    align-items: center !important;
    gap: 22px !important;
    margin-top: 0 !important;
  }

  .baTaUcaF {
    align-self: center !important;
    order: 1 !important;
  }

  .baTaUaKf {
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
    flex: 0 1 auto !important;
    align-self: center !important;
    order: 2 !important;
  }

  .baTaUaKaB,
  .baTaUaKaZ,
  .baTaUcd {
    width: 100% !important;
    max-width: 100% !important;
    align-self: center !important;
  }
}

@media (max-width: 480px) and (orientation: portrait) {
  .baTaSil {
    margin-bottom: 20px !important;
  }

  .baTaSih > .bubble-element.Group[data-outline="true"]:not(:last-child),
  .baTaSdz > .bubble-element.Group[data-outline="true"]:not(:last-child) {
    margin-bottom: 20px !important;
  }
}
