/*! normalize-scss | MIT/GPLv2 License | bit.ly/normalize-scss */

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

body {
    margin: 0;
}

@font-face {
    font-family: Gibson;
    src: url(../../static/fonts/67a672b51e6c0a51be771696f2bd514e.otf)
        format("opentype");
    font-weight: 600;
    font-style: normal;
}

@font-face {
    font-family: Gibson;
    src: url(../../static/fonts/8589d9b084f760715fb15b5e46bd6e33.otf)
        format("opentype");
    font-weight: 400;
    font-style: normal;
}

@font-face {
    font-family: roman;
    src: url(../../static/fonts/cd7c034893607d34d14a0ec269b87a75.woff2)
        format("woff2");
    font-weight: 400;
    font-style: normal;
}

article,
aside,
footer,
header,
nav,
section {
    display: block;
}

h1 {
    font-size: 2em;
    margin: 0.67em 0;
}

figcaption,
figure {
    display: block;
}

figure {
    margin: 1em 40px;
}

hr {
    box-sizing: content-box;
    height: 0;
    overflow: visible;
}

main {
    display: block;
}

pre {
    font-family: monospace, monospace;
    font-size: 1em;
}

a {
    background-color: transparent;
    -webkit-text-decoration-skip: objects;
}

abbr[title] {
    border-bottom: none;
    text-decoration: underline;
    text-decoration: underline dotted;
}

b,
strong {
    font-weight: inherit;
    font-weight: bolder;
}

code,
kbd,
samp {
    font-family: monospace, monospace;
    font-size: 1em;
}

dfn {
    font-style: italic;
}

mark {
    background-color: #ff0;
    color: #000;
}

small {
    font-size: 80%;
}

sub,
sup {
    font-size: 75%;
    line-height: 0;
    position: relative;
    vertical-align: baseline;
}

sub {
    bottom: -0.25em;
}

sup {
    top: -0.5em;
}

audio,
video {
    display: inline-block;
}

audio:not([controls]) {
    display: none;
    height: 0;
}

img {
    border-style: none;
}

svg:not(:root) {
    overflow: hidden;
}

button,
input,
optgroup,
select,
textarea {
    font-family: sans-serif;
    font-size: 100%;
    line-height: 1.15;
    margin: 0;
}

button {
    overflow: visible;
}

button,
select {
    text-transform: none;
}

[type="reset"],
[type="submit"],
button,
html [type="button"] {
    -webkit-appearance: button;
}

[type="button"]::-moz-focus-inner,
[type="reset"]::-moz-focus-inner,
[type="submit"]::-moz-focus-inner,
button::-moz-focus-inner {
    border-style: none;
    padding: 0;
}

[type="button"]:-moz-focusring,
[type="reset"]:-moz-focusring,
[type="submit"]:-moz-focusring,
button:-moz-focusring {
    outline: 1px dotted ButtonText;
}

input {
    overflow: visible;
}

[type="checkbox"],
[type="radio"] {
    box-sizing: border-box;
    padding: 0;
}

[type="number"]::-webkit-inner-spin-button,
[type="number"]::-webkit-outer-spin-button {
    height: auto;
}

[type="search"] {
    -webkit-appearance: textfield;
    outline-offset: -2px;
}

[type="search"]::-webkit-search-cancel-button,
[type="search"]::-webkit-search-decoration {
    -webkit-appearance: none;
}

::-webkit-file-upload-button {
    -webkit-appearance: button;
    font: inherit;
}

fieldset {
    padding: 0.35em 0.75em 0.625em;
}

legend {
    box-sizing: border-box;
    display: table;
    max-width: 100%;
    padding: 0;
    color: inherit;
    white-space: normal;
}

progress {
    display: inline-block;
    vertical-align: baseline;
}

textarea {
    overflow: auto;
}

details {
    display: block;
}

summary {
    display: list-item;
}

menu {
    display: block;
}

canvas {
    display: inline-block;
}

[hidden],
template {
    display: none;
}
button:focus {
    outline: none;
}
.checkbox-label:after,
.flow-blood_pressure-diastolic:before,
.flow-blood_pressure-systolic:before,
.flow-question-text_field--is_loading:after,
.select:after,
[class*=" icon-"]:before,
[class^="icon-"]:before {
    font-family: roman;
    font-style: normal;
    font-weight: 400;
    speak: none;
    display: inline-block;
    text-decoration: inherit;
    width: 1em;
    text-align: center;
    font-variant: normal;
    text-transform: none;
    line-height: 1em;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

.icon-roman:before {
    content: "\E801";
}

.icon-close-circle:before {
    content: "\E802";
}

.icon-loading:before {
    content: "\E803";
}

.icon-triangle:before {
    content: "\E804";
}

.icon-camera:before {
    content: "\E805";
}

.icon-oval:before {
    content: "\E806";
}

.icon-edit:before {
    content: "\E807";
}

.icon-hippa:before {
    content: "\E808";
}

.icon-lock:before {
    content: "\E809";
}

.icon-submit:before {
    content: "\E80A";
}

.icon-down-dir:before {
    content: "\E80B";
}

.icon-check:before {
    content: "\E80C";
}

.icon-reload:before {
    content: "\E80D";
}

.icon-star:before {
    content: "\E80F";
}

.icon-angle-down:before {
    content: "\E810";
}

.icon-nav:before {
    content: "\E811";
}

.icon-close:before {
    content: "\E812";
}

.icon-angle-left:before {
    content: "\E813";
}

.icon-angle-right:before {
    content: "\E81F";
}

.icon-arrow-next:before {
    content: "\E821";
}

.icon-edit-1:before {
    content: "\E815";
}

.icon-close-second:before {
    content: "\E816";
}

.icon-refresh:before {
    content: "\E817";
}

.icon-check-second:before {
    content: "\E818";
}

.icon-dollar:before {
    content: "\E819";
}

.icon-check-third:before {
    content: "\E81A";
}

.icon-go-back:before {
    content: "\E81B";
}

.icon-check-first:before {
    content: "\E81C";
}

.icon-tick-fourth:before {
    content: "\E81D";
}

.icon-play:before {
    content: "\E81E";
}

.icon-arrow-next-thick:before {
    content: "\E820";
}

.icon-help:before {
    content: "\E822";
}

.icon-download:before {
    content: "\E823";
}

.icon-secured-payment:before {
    content: "\E80E";
}

.icon-long-arrow-down:before {
    content: "\E824";
}

.icon-ro:before {
    content: "\E847";
}

.icon-play-circle:before {
    content: "\E800";
}

.icon-info:before {
    content: "\E825";
}

.icon-photo:before {
    content: "\E826";
}

.icon-magnifier:before {
    content: "\E827";
}

.loading_spinner {
    width: 26px;
    height: 26px;
    display: block !important;
}

.loading_spinner-circle {
    stroke-dasharray: 76;
    animation: dash 2.5s infinite, opacity 2.5s linear infinite;
}

.loading_spinner-group {
    animation: rotate 2.5s infinite;
    transform-origin: 13px 13px;
    transform: rotate(-90deg);
}

@keyframes opacity {
    0% {
        opacity: 1;
    }
    70% {
        opacity: 1;
    }
    90% {
        opacity: 0;
    }
    to {
        opacity: 0;
    }
}

@keyframes rotate {
    0% {
        transform: rotate(-90deg);
    }
    to {
        transform: rotate(270deg);
    }
}

@keyframes dash {
    0% {
        stroke-dashoffset: 76;
    }
    to {
        stroke-dashoffset: 0;
    }
}

@keyframes preloader {
    0% {
        opacity: 1;
    }
    to {
        opacity: 0;
    }
}

.preloader {
    position: fixed;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    background: #fff;
    z-index: 2000;
}

.preloader .loading_spinner {
    position: absolute;
    top: 120px;
    left: 50%;
    margin-left: -13px;
}

.preloader--secondary {
    top: 60px !important;
}

.preloader--is_loaded {
    pointer-events: none;
}

.preloader--is_loaded,
.preloader--is_loaded .preloader-inner {
    animation: 0.5s preloader forwards;
}

body {
    background: #fff;
    color: #21303d;
    font-family: Gibson, sans-serif;
    font-style: normal;
    font-size: 14px;
    letter-spacing: 0.7px;
    font-weight: 400;
    line-height: 1.2em;
}

* {
    box-sizing: border-box;
}

button,
input,
optgroup,
select,
textarea {
    font-family: Gibson, sans-serif;
}

.h1,
h1 {
    font-size: 2.143em;
    font-weight: 400;
    line-height: 1.2em;
    letter-spacing: 1.25px;
    margin: 0 0 10px;
}

.h2,
h2 {
    font-size: 1.714em;
}

.h2,
.h3,
h2,
h3 {
    font-weight: 400;
    line-height: 1.2em;
    letter-spacing: 1px;
    margin: 0 0 10px;
}

.h3,
h3 {
    font-size: 1.429em;
}

.h4,
h4 {
    font-size: 1.143em;
}

.h4,
.h5,
h4,
h5 {
    font-weight: 400;
    line-height: 1.2em;
    letter-spacing: 0.7px;
    margin: 0 0 10px;
}

.h5,
h5 {
    font-size: 1em;
}

.h6,
h6 {
    font-size: 0.857em;
    font-weight: 400;
    letter-spacing: 0.6px;
    margin: 0 0 10px;
}

.f-xxtiny,
.h6,
h6 {
    line-height: 1.2em;
}

.f-xxtiny {
    font-size: 0.5em;
    letter-spacing: 0.41px;
}

.f-xtiny {
    font-size: 0.714em;
    letter-spacing: 0.5px;
    line-height: 1.2em;
}

.chat-assistant-role,
.circle_button-text,
.credit_card-input,
.f-tiny,
.form_field-label,
.page_final-security-link,
.page_final-security-text,
.page_form-links,
.security_icons {
    font-size: 0.857em;
    letter-spacing: 0.6px;
    line-height: 1.2em;
}

.button--ghost,
.button--ghost_dark,
.button--outline,
.button--primary,
.button--quaternary,
.button--secondary,
.button--teriary,
.chat-edit-text,
.chat__action .button--secondary,
.checkbox--secondary .checkbox-label,
.f-small,
.flow-choice_list-info,
.modal-content,
.msg {
    font-size: 1em;
    letter-spacing: 0.7px;
    line-height: 1.2em;
}

.chat-assistant-name,
.f-normal,
.flow-choice_list-link,
.form_field-control,
.form_field .ant-calendar-picker-input,
.modal-header,
.page_final-header,
.page_final-photo-text p,
.page_form-header {
    font-size: 1.143em;
    letter-spacing: 0.7px;
    line-height: 1.2em;
}

.f-medium {
    font-size: 1.429em;
}

.f-big,
.f-medium {
    letter-spacing: 1px;
    line-height: 1.2em;
}

.f-big {
    font-size: 1.714em;
}

.f-large {
    font-size: 2.143em;
}

.f-huge,
.f-large {
    letter-spacing: 1.25px;
    line-height: 1.2em;
}

.f-huge {
    font-size: 3.571em;
}

.f-uppercase {
    text-transform: uppercase;
}

p {
    font-size: 1.143em;
    font-weight: 400;
    line-height: 1.2em;
    margin: 0 0 10px;
}

a {
    color: #a4a9ad;
    text-decoration: underline;
    transition: color 0.2s;
    outline: none;
}

a:hover {
    color: #4e5862;
}

blockquote {
    font-style: italic;
    margin: 0 0 10px;
    padding: 20px;
}

blockquote cite {
    font-weight: 600;
}

code {
    display: block;
}

code,
ol,
ul {
    margin: 0 0 10px;
}

ol,
ul {
    padding: 0 0 0 30px;
}

ol li,
ul li {
    margin: 0 0 10px;
    padding: 0;
}

ol li:last-child,
ul li:last-child {
    margin-bottom: 0;
}

ol ol,
ol ul,
ul ol,
ul ul {
    margin-top: 10px;
}

img {
    margin: 0 0 10px;
    display: block;
    max-width: 100%;
    height: auto;
}

b,
strong {
    font-weight: 600;
}

.form-row {
    display: flex;
    width: 100%;
    margin: 0 1px;
}

.form-row > .form-item {
    margin-left: -1px;
    margin-right: -1px;
    flex: 1;
}

.form-row--has_spacing {
    margin: 0;
}

.form-row--has_spacing > .form-item {
    margin-left: 9px;
}

.form-row--has_spacing > .form-item:first-child {
    margin-left: 0;
}

.form-item {
    margin: 0 0 10px;
    display: flex;
    align-items: flex-start;
    width: 100%;
}

.form .form-item:last-child {
    margin-bottom: 0;
}

.form-footer {
    margin-top: 20px;
    display: flex;
    margin: 20px -5px 0;
}

.form-footer .button {
    margin: 0 5px;
}

.form-footer--align_center {
    justify-content: center;
}

.form-footer--align_right {
    justify-content: flex-end;
}

.form-footer_text {
    margin-top: 20px;
    font-size: 1em;
}

.form-footer_text--align_center {
    text-align: center;
}

.form-label {
    text-transform: uppercase;
    margin-bottom: 5px;
    display: block;
    font-size: 1em;
}

.button {
    min-height: 48px;
    line-height: 1.2;
    font-size: 14px;
    padding: 14.6px 30px;
}

.button .loading_spinner {
    display: inline-block !important;
    margin: -7px 0;
}

.button--primary {
    background: #1ece96;
    border-radius: 30px;
    border: 1px solid #1ece96;
    color: #fff;
    cursor: pointer;
    display: inline-block;
    outline: none;
    position: relative;
    text-align: center;
    text-decoration: none;
    text-transform: uppercase;
    font-weight: 600;
    transition: background-color 0.3s;
}

.button-color-gradient {
    background: linear-gradient(90.25deg, #3dadee 9.64%, #53ccaf 86.85%);
    box-shadow: 0px 2px 7px rgba(0, 0, 0, 0.12);
    -webkit-box-shadow: 0px 2px 7px rgba(0, 0, 0, 0.12);
    transition: 0.5s;
    background-size: 140%;
}
.button-color-gradient:hover {
    background-position: right center;
}
.button--primary[disabled] {
    color: #fff;
    background: #e2e2e2;
    border-color: #e2e2e2;
    cursor: default;
}
.button--primary:not([disabled]):hover {
    background-color: #1ece96;
    color: #fff;
}

.button--secondary {
    background: #ff412d;
    border-radius: 30px;
    border: 1px solid #ff412d;
    color: #fff;
    cursor: pointer;
    display: inline-block;
    outline: none;
    position: relative;
    text-align: center;
    text-decoration: none;
    text-transform: uppercase;
    font-weight: 600;
    transition: background-color 0.3s;
}

.button--secondary[disabled] {
    color: #fff;
    background: #e2e2e2;
    border-color: #e2e2e2;
    cursor: default;
}

.button--secondary:not([disabled]):hover {
    background-color: #ff412d;
    color: #fff;
}

.button--teriary {
    background: #fff;
    border-radius: 30px;
    border: 1px solid #fff;
    color: #1ece96;
    cursor: pointer;
    display: inline-block;
    outline: none;
    position: relative;
    text-align: center;
    text-decoration: none;
    text-transform: uppercase;
    font-weight: 600;
    transition: background-color 0.3s;
}

.button--teriary[disabled] {
    color: #fff;
    background: #e2e2e2;
    border-color: #e2e2e2;
    cursor: default;
}

.button--teriary:not([disabled]):hover {
    background-color: #fff;
    color: #1ece96;
}

.button--outline {
    background: transparent;
    border-radius: 30px;
    border: 1px solid #1ece96;
    color: #1ece96;
    cursor: pointer;
    display: inline-block;
    outline: none;
    position: relative;
    text-align: center;
    text-decoration: none;
    text-transform: uppercase;
    font-weight: 600;
    transition: background-color 0.3s;
    font-weight: 400;
}

.button--outline[disabled] {
    color: #fff;
    background: #e2e2e2;
    border-color: #e2e2e2;
    cursor: default;
}

.button--outline:not([disabled]):hover {
    background-color: transparent;
    color: #1ece96;
}

.button--ghost {
    background: transparent;
    border-radius: 30px;
    border: 1px solid transparent;
    color: #1ece96;
    cursor: pointer;
    display: inline-block;
    outline: none;
    position: relative;
    text-align: center;
    text-decoration: none;
    text-transform: uppercase;
    font-weight: 600;
    transition: background-color 0.3s;
    font-weight: 400;
}

.button--ghost[disabled] {
    color: #fff;
    background: #e2e2e2;
    border-color: #e2e2e2;
    cursor: default;
}

.button--ghost:not([disabled]):hover {
    background-color: transparent;
    color: #1ece96;
}

.button--ghost_dark {
    background: transparent;
    border-radius: 30px;
    border: 1px solid transparent;
    color: #21303d;
    cursor: pointer;
    display: inline-block;
    outline: none;
    position: relative;
    text-align: center;
    text-decoration: none;
    text-transform: uppercase;
    font-weight: 600;
    transition: background-color 0.3s;
    font-weight: 400;
}

.button--ghost_dark[disabled] {
    color: #fff;
    background: #e2e2e2;
    border-color: #e2e2e2;
    cursor: default;
}

.button--ghost_dark:not([disabled]):hover {
    background-color: transparent;
    color: #21303d;
}

.button--quaternary {
    background: transparent;
    border-radius: 30px;
    border: 1px solid #e2e2e2;
    color: #21303d;
    cursor: pointer;
    display: inline-block;
    outline: none;
    position: relative;
    text-align: center;
    text-decoration: none;
    text-transform: uppercase;
    font-weight: 600;
    transition: background-color 0.3s;
    font-weight: 400;
}

.button--quaternary[disabled] {
    color: #fff;
    background: #e2e2e2;
    border-color: #e2e2e2;
    cursor: default;
}

.button--quaternary:not([disabled]):hover {
    background-color: transparent;
    color: #21303d;
}

.button--small {
    min-height: 36px;
    line-height: 1.2;
    font-size: 12px;
    padding: 9.8px 15px;
}

.button--medium {
    min-height: 48px;
    line-height: 1.2;
    font-size: 14px;
    padding: 14.6px 30px;
}

.button--big {
    min-height: 58px;
    line-height: 1.2;
    font-size: 16px;
    padding: 18.4px 30px;
}

.button--block {
    width: 100%;
}

.button--rectangle {
    border-radius: 0;
}

.button-icon {
    font-size: 17px;
}

.button-icon--prefix {
    margin-right: 8px;
}

.button-icon--suffix {
    margin-left: 8px;
}

.button-progress_bar {
    background: #1ece96;
    border-radius: 24px;
    border-radius: 30px;
    bottom: 0;
    display: block;
    left: 0;
    margin: -1px;
    overflow: hidden;
    position: absolute;
    right: 0;
    top: 0;
    z-index: 1;
}

.button-progress_bar-inner {
    display: block;
    height: 100%;
    background: #1dc28d;
}

.button-progress_bar--smooth-transition .button-progress_bar-inner {
    transition: width 0.3s;
}

.button-progress_bar + span {
    position: relative;
    z-index: 2;
}

.button-progress_bar + i {
    position: absolute;
    z-index: 2;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    font-size: 22px;
}

.form-item + .button {
    margin-top: 25px;
}

.circle_button {
    border: 0;
    background: none;
    padding: 0;
    margin: 0;
    display: flex;
    align-items: center;
    color: #a4a9ad;
    cursor: pointer;
    outline: none;
    text-decoration: none;
}

.circle_button-icon {
    width: 24px;
    height: 24px;
    border-radius: 50%;
    background: #fff;
    border: 1px solid #e2e2e2;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 11px;
}

.circle_button-text {
    text-transform: uppercase;
    margin-left: 5px;
}

.button-link,
.circle_button:hover {
    color: #a4a9ad;
}

.button-link {
    text-align: left;
    background: none;
    margin: 0;
    padding: 0;
    border: none;
    cursor: pointer;
    -moz-user-select: text;
    outline: none;
    text-decoration: underline;
    transition: color 0.2s;
}

.button-link:hover {
    color: #4e5862;
}

.form_field {
    position: relative;
    width: 100%;
    display: block;
}

.form_field-label {
    position: absolute;
    left: 10px;
    right: 10px;
    top: 50%;
    transform: translateY(-50%);
    color: #a4a9ad;
    text-transform: uppercase;
    transition: transform 0.3s;
    transform-origin: 0 50%;
    z-index: 4;
    pointer-events: none;
}

textarea.form_field-control + .form_field-label {
    top: 25px;
    transform: none;
}

.form_field-error {
    margin-top: 10px;
    color: #e73737;
    font-size: 12px;
}

.form_field-additional_label {
    color: rgba(33, 48, 61, 0.7);
    font-size: 14px;
    line-height: 14px;
    margin-bottom: 10px;
    display: block;
}

.form_field-control,
.form_field .ant-calendar-picker-input {
    background: #fff;
    border: 1px solid #e2e2e2;
    outline: none;
    border-radius: 0;
    -webkit-appearance: none;
    -moz-appearance: none;
    color: #21303d;
    line-height: 1.2;
    padding: 28px 10px 12px;
    display: block;
    width: 100%;
    transition: box-shadow 0.5s, border-color 0.3s;
    position: relative;
    z-index: 2;
}

.form_field--has_error .form_field-control,
.form_field--has_error .form_field .ant-calendar-picker-input {
    border-color: #e73737;
    z-index: 3;
}

.form_field--no_label .form_field-control,
.form_field--no_label .form_field .ant-calendar-picker-input {
    padding: 22px 10px 18px;
    color: #727b83;
}

.form_field--not_empty .form_field-control,
.form_field--not_empty .form_field .ant-calendar-picker-input {
    color: #21303d;
}

.form_field-control:disabled,
.form_field .ant-calendar-picker-input:disabled {
    opacity: 0.5;
}

.form_field-control:focus {
    box-shadow: inset 0 1px 7px rgba(0, 0, 0, 0.1);
}

.form_field-control:focus + .form_field-label {
    transform: translateY(calc(-50% - 10px)) scale(0.8);
}

.form_field--not_empty textarea.form_field-control + .form_field-label,
.form_field textarea.form_field-control:focus + .form_field-label {
    transform: translateY(-10px) scale(0.8);
}

.form_field--not_empty .form_field-label {
    transform: translateY(calc(-50% - 10px)) scale(0.8);
}

.form_field input::-webkit-contacts-auto-fill-button {
    visibility: hidden;
    display: none !important;
    pointer-events: none;
    position: absolute;
    right: 0;
}

.select {
    display: block;
}

.select .form_field-control {
    padding-right: 25px;
}

.select .form_field-control:focus {
    box-shadow: none;
}

.select:after {
    content: "\E80B";
    display: block;
    position: absolute;
    right: 15px;
    top: 50%;
    transform: translateY(-50%);
    font-size: 15px;
    z-index: 5;
    pointer-events: none;
}

.checkbox-label {
    font-size: 12px;
    position: relative;
    padding-left: 33px !important;
    color: #21303d;
    min-height: 24px !important;
    display: block;
    user-select: none;
    cursor: pointer !important;
    padding-top: 5px;
    font-weight: normal !important;
}

.checkbox-label a {
    color: #21303d;
}

.checkbox-label:before {
    width: 22px;
    height: 22px;
    border: 1px solid #a4a9ad;
    background: #fff;
    content: "";
}

.checkbox-label:after,
.checkbox-label:before {
    position: absolute;
    display: block;
    left: 0;
    top: 50%;
    transform: translateY(-50%);
}

.checkbox-label:after {
    content: "\E80C";
    font-size: 17px;
    color: #1ece96;
    padding: 4px;
    visibility: hidden;
    opacity: 0;
    transition: opacity 0.3s;
}

.checkbox-input {
    display: none;
}

.checkbox-input:checked + .checkbox-label:after {
    visibility: visible;
    opacity: 1;
}

.checkbox--teriary .checkbox-label {
    color: #727b83;
    padding-left: 35px;
    font-size: 12px;
    letter-spacing: 0.04em;
    line-height: 16px;
}

.checkbox--teriary .checkbox-label a {
    color: #727b83;
}

.checkbox--teriary .checkbox-label:before {
    border: 2px solid #a4a9ad;
    width: 22px;
    height: 22px;
    border-radius: 2px;
    transition: border-color 0.3s, background-color 0.3s;
}

.checkbox--teriary .checkbox-label:after {
    color: #1ece96;
    padding: 3px 4px;
    font-size: 18px;
}

.checkbox--teriary .checkbox-input:checked + .checkbox-label:before {
    border-color: #e2e2e2;
}

.checkbox--teriary .checkbox-input--has_error + .checkbox-label:before {
    border-color: #e73737;
}

.checkbox--secondary .checkbox-label {
    letter-spacing: 1.75px;
    padding-left: 37px;
    min-height: 23px;
    color: #21303d;
    padding-top: 4px;
    padding-bottom: 4px;
}

.checkbox--secondary .checkbox-label:before {
    width: 21px;
    height: 21px;
    border-radius: 3px;
    transition: border-color 0.3s, background-color 0.3s;
}

.checkbox--secondary .checkbox-label:after {
    color: #fff;
    padding: 3px;
}

.checkbox--secondary .checkbox-input:checked + .checkbox-label:before {
    border-color: #ff412d;
    background: #ff412d;
}

.msg {
    padding: 6px 10px;
    text-transform: uppercase;
    text-align: center;
    display: block;
    z-index: 11;
}

.msg--error {
    background: #e73737;
    color: #fff;
}

.msg--success {
    background: #1ece96;
    color: #fff;
}

.msg a {
    color: inherit;
}

.credit_card {
    border: 1px solid #a4a9ad;
    background: #fff;
    height: 60px;
    display: flex;
    align-items: center;
}

.form_field--has_error .credit_card {
    border-color: #e73737;
}

.credit_card-input {
    color: #a4a9ad;
    height: 58px;
    border: 0;
    -webkit-appearance: none;
    outline: none;
    padding: 21px 15px;
}

@media (max-width: 768px) {
    .credit_card-input {
        padding: 21px 10px;
    }
}

.credit_card-input::placeholder {
    color: #a4a9ad;
}

.credit_card-input--number {
    width: 100%;
}

.ghost_button {
    outline: none;
    cursor: pointer;
    padding: 0 0 2px;
    letter-spacing: 0.7px;
    color: #1ece96;
    font-size: 14px;
    line-height: 14px;
    text-transform: uppercase;
    font-weight: 600;
    display: inline-block;
    border: 0;
    border-bottom: 1.5px solid hsla(0, 0%, 89%, 0.4);
    text-decoration: none;
    transition: color 0.3s;
}

.ghost_button:hover {
    color: #1bb886;
}

.ghost_button-wrap {
    padding: 22px 10px;
    text-align: center;
}

.switch-input {
    display: none;
}

.switch-label {
    display: block;
    position: relative;
    width: 37px;
    height: 20px;
    cursor: pointer;
}

input:disabled + .switch-label {
    cursor: default;
}

.switch-label:after,
.switch-label:before {
    content: "";
    display: block;
    position: absolute;
}

.switch-label:before {
    background: #a4a9ad;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    border-radius: 10px;
    transition: background-color 0.3s;
}

.switch-input:checked + .switch-label:before {
    background-color: #1ece96;
}

.switch-input:disabled + .switch-label:before {
    background-color: #e2e2e2;
}

.switch-label:after {
    width: 16px;
    height: 16px;
    background: #fff;
    border-radius: 50%;
    transform: translate(2px, 2px);
    transition: transform 0.3s;
}

.switch-input:checked + .switch-label:after {
    transform: translate(19px, 2px);
}

.switch-input:disabled + .switch-label:after {
    background-color: #f7f7f7;
}

.edit_button {
    width: 24px;
    height: 24px;
    border: 1px solid #e2e2e2;
    display: block;
    margin: 0;
    padding: 0;
    color: #a4a9ad;
    font-size: 10px;
    border-radius: 50%;
    background: transparent;
    cursor: pointer;
    outline: none;
    transition: border-color 0.3s;
}

.edit_button i {
    font-size: 12px;
}

.edit_button:hover {
    border-color: #bcbcbc;
}

.modal {
    background: #fff;
    border-radius: 3px;
    width: 500px;
    overflow-x: hidden;
    overflow-y: auto;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    outline: none;
    border: 3px solid #fff;
    z-index: 20;
}

.modal--splitted {
    border: 0;
}

@media (max-width: 768px) {
    .modal {
        left: 30px;
        right: 30px;
        width: calc(100% - 60px);
        max-height: calc(100% - 60px);
        transform: translateY(-50%);
    }
}

.modal-overlay {
    position: fixed;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
    background: rgba(33, 48, 61, 0.85);
    outline: none;
    z-index: 20;
}

.modal-inner {
    padding: 24px;
}

@media (max-width: 768px) {
    .modal-inner {
        padding: 20px 15px 15px;
    }
}

.modal-header {
    margin-bottom: 15px;
    text-align: center;
    text-transform: uppercase;
}

.modal-content {
    line-height: 22px;
}

.modal-buttons {
    display: flex;
}

.modal-buttons .button {
    width: 100%;
    border-right: 0;
    border-radius: 0;
}

.modal-buttons .button:first-child {
    border-left: 0;
}

.modal-upload {
    padding: 55px 15px 25px;
}

@media (max-width: 768px) {
    .modal-upload {
        padding: 30px 15px 0;
    }
}

.modal-upload-wrap {
    overflow: visible;
}

.modal-upload-tip {
    position: absolute;
    color: #fff;
    margin: 0;
    top: -69px;
    width: 100%;
    text-align: center;
}

.modal-upload-mask {
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    z-index: 2;
}

.modal-upload-splitted {
    display: flex;
}

.modal-upload-splitted .modal-upload-side:first-child {
    border-left: 0;
}

.modal-upload-side {
    border-left: 1px solid #e2e2e2;
    padding: 65px 30px 45px;
    width: 50%;
    flex-shrink: 0;
}

.modal-upload-side .button {
    padding-left: 10px;
    padding-right: 10px;
}

.modal-upload-side-thumb_wrap {
    height: 120px;
    overflow: hidden;
}

.modal-upload-side-thumb {
    margin: 0 auto;
}

.modal-upload-side-thumb--upload {
    width: 87px;
}

.modal-upload-side-thumb--take_photo {
    margin-top: 7px;
    width: 111px;
}

.modal-upload-side-text {
    font-size: 14px;
    line-height: 18px;
    text-align: center;
    letter-spacing: 0.7px;
    margin: 0 0 25px;
}

.modal-upload-camera_wrap {
    width: 100%;
    height: 334px;
    position: relative;
    overflow: hidden;
}

.modal-upload-loading_spinner {
    display: flex;
    align-items: center;
    justify-content: center;
    background: #fff;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
}

.modal-upload-input_file {
    display: none;
}

.modal-upload-video {
    margin: 0 auto;
    max-width: 100%;
    height: 334px;
    display: block;
    object-fit: cover;
    transform: scaleX(-1);
    position: relative;
    z-index: 1;
}

.modal-upload-img {
    margin-left: auto;
    margin-right: auto;
    width: 376px;
    max-width: 100%;
    height: auto;
    display: block;
}

.security_icons {
    display: flex;
    justify-content: center;
    align-items: center;
    text-transform: uppercase;
    color: #a4a9ad;
}

@media (max-width: 768px) {
    .security_icons {
        margin: 30px 0 8px;
    }
}

.security_icons-item {
    margin: 0 2px;
    display: flex;
    align-items: center;
}

.security_icons-icon {
    color: #a4a9ad;
}

.security_icons-icon.icon-hippa {
    font-size: 41px;
    margin-right: -1px;
}

.security_icons-icon.icon-lock {
    font-size: 21px;
    margin-right: 8px;
    margin-top: -7px;
}

.app {
    height: 100%;
    overflow: hidden;
    display: flex;
    flex-direction: column;
}

.app,
.app-sidebar {
    position: fixed;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
}

.app-main {
    position: relative;
    display: flex;
    flex-direction: column;
    background: #fff;
}

.app-main,
.app-main-content-wrap {
    height: 100%;
}

.app-main--grey {
    background: #f7f7f7;
}

.app-content {
    flex: 1;
    overflow-y: auto;
    -webkit-overflow-scrolling: touch;
}

.app-content--fixed_header {
    padding-top: 60px;
}

.app-content--dark {
    background: #1d2733;
}

.app-content--white {
    background: #fff;
}

.app-content--gray {
    background: #f7f7f7;
}

.app-content-container {
    width: 560px;
    max-width: 100%;
    margin: 0 auto;
}

.app-content--page_form {
    background: #fff;
    border-top: 1px solid #f7f7f7;
}

.app-content-inner {
    padding: 0 13px;
}

.app-footer {
    flex-shrink: 0;
}

@media (max-width: 768px) {
    .hidden-mobile {
        display: none !important;
    }
}

@media (min-width: 769px) {
    .hidden-desktop {
        display: none !important;
    }
}

#PlacesAutocomplete__autocomplete-container {
    z-index: 5;
}

.fake_chat .chat-msg {
    padding-left: 0;
    padding-right: 0;
}

.fake_chat .chat-msg-bubble-wrap {
    max-width: 100%;
}

.user_data_card {
    border: 0;
    border-bottom: 1px solid #efefef;
    padding: 22px 35px 32px 15px;
    display: block;
    width: 100%;
    text-align: left;
    text-decoration: none;
    position: relative;
    background: transparent;
    outline: none;
    cursor: pointer;
}

.user_data_card:after {
    font-family: roman;
    font-style: normal;
    font-weight: 400;
    speak: none;
    display: inline-block;
    text-decoration: inherit;
    width: 1em;
    text-align: center;
    font-variant: normal;
    text-transform: none;
    line-height: 1em;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    content: "\E821";
    display: block;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    right: 20px;
    color: #a4a9ad;
    font-size: 14px;
}

.user_data_card--no_border {
    border: 0;
}

.user_data_card--secondary:after {
    display: none;
}

.user_data_card-header {
    font-size: 12px;
    font-weight: 400;
    margin: 0 0 15px;
}

.user_data_card-header,
.user_data_card-label {
    text-transform: uppercase;
    color: #a4a9ad;
    letter-spacing: 0.5px;
    line-height: 12px;
    display: block;
}

.user_data_card-label {
    font-size: 10px;
    margin: 0 0 5px;
}

.user_data_card-text {
    display: block;
    font-size: 16px;
    color: #21303d;
    line-height: 22px;
    letter-spacing: 0.5px;
}

.user_data_card-number {
    margin: 0 0 8px;
    display: flex;
    align-items: center;
}

.user_data_card-number-type {
    margin: 0;
    width: 32px;
}

.user_data_card-number-hidden_digits {
    margin: 0 9px;
    width: 34px;
}

.user_data_card-number-last_digits {
    font-size: 16px;
    color: #21303d;
    font-weight: 600;
}

.user_data_card-online_payment {
    width: 26px;
    margin: 6px 0 -10px;
}

.coupon_message {
    display: flex;
    align-items: flex-start;
    color: #1dc28d;
    font-size: 14px;
    line-height: 22px;
}

.coupon_message img {
    width: 31px;
    height: 26px;
    margin: 0 10px 0 0;
    flex-shrink: 0;
}

.coupon_message-text {
    padding-top: 3px;
}

.payment_button {
    border-radius: 29px;
    overflow: hidden;
    -webkit-mask-image: -webkit-radial-gradient(#fff, #000);
}

.payment_button--disabled {
    opacity: 0.5;
    pointer-events: none;
}

.payment-legal-text {
    background: #fff;
    border-radius: 4px;
    border: 1px solid #e2e2e2;
    line-height: 1.5em;
    margin-bottom: 30px;
    padding: 22px 15px;
}

.ro_footer {
    margin-top: 30px;
    display: flex;
    flex-direction: column;
    align-items: center;
    color: #a4a9ad;
}

.ro_footer--bright {
    color: #e2e2e2;
}

.ro_footer-text {
    font-size: 12px;
    letter-spacing: 0.6px;
    margin: 0 0 8px;
}

.ro_footer-icon {
    font-size: 24px;
}

.nob {
    background: #fff;
    border: 1px solid #efefef;
    padding: 45px 20px 35px;
    margin-bottom: 8px;
}

@media (max-width: 768px) {
    .nob {
        margin-left: -20px;
        margin-right: -20px;
    }
    .nob .nob-number--secondary {
        font-size: 20px;
    }
}

.nob-top {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
}

.nob-top-thumb {
    margin: 0 35px 0 0;
}

.nob-top-thumb--secondary {
    display: block;
    margin: 0;
    width: 142px;
    height: auto;
    flex-shrink: 0;
}

.nob-title {
    font-size: 16px;
    font-weight: 400;
    letter-spacing: 0.06em;
    color: #4e5862;
    margin: 0 0 4px;
}

.nob-label {
    display: inline-block;
    line-height: 22px;
    padding: 0 8px;
    background: #1ece96;
    color: #fff;
    text-transform: uppercase;
    font-size: 8px;
    margin-bottom: 15px;
}

.nob-label,
.nob-number {
    letter-spacing: 1px;
    font-weight: 600;
}

.nob-number {
    color: #21303d;
    font-size: 32px;
    line-height: 36px;
    margin: 0;
}

.nob-number--secondary {
    font-size: 28px;
}

.nob-number-wrap {
    display: flex;
    align-items: baseline;
    flex-wrap: wrap;
    margin-bottom: 12px;
}

.nob-number-suffix {
    font-size: 14px;
    color: #727b83;
    margin-left: 6px;
}

.nob-price {
    display: flex;
    align-items: baseline;
    margin-bottom: 25px;
}

.nob-price-value {
    color: #21303d;
    font-size: 24px;
}

.nob-price-suffix {
    font-size: 16px;
    color: #727b83;
    margin-left: 4px;
    letter-spacing: 1px;
}

.nob-text {
    margin: 25px 0 15px;
}

.nob-text--secondary {
    margin-top: 15px;
}

.nob-text p {
    color: #21303d;
    font-size: 16px;
    line-height: 26px;
    margin: 0;
    letter-spacing: 0.02em;
    margin: 0 0 25px;
}

.nob-text p:last-child {
    margin-bottom: 0;
}

.nob .button--block {
    margin-top: 35px;
}

.nob-image {
    float: right;
    position: relative;
    right: -20px;
}

.nob-list {
    list-style-type: disc;
    padding-left: 15px;
}

.nob-list--item {
    color: #21303d;
    font-size: 14px;
    line-height: 18px;
    margin: 0;
    letter-spacing: 0.02em;
    margin: 0 0 15px;
}

.nob-list--item:last-child {
    margin-bottom: 0;
}

.notification_bar {
    position: relative;
    background: #1ece96;
    padding: 20px;
    padding: 20px 40px 20px 20px;
}

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

.notification_bar-inner p {
    font-size: 14px;
    line-height: 20px;
    margin: 0;
    color: #fff;
}

.notification_bar-close_button {
    position: absolute;
    padding: 10px;
    color: #85e4ca;
    font-size: 10px;
    right: 5px;
    top: 50%;
    transform: translateY(-50%);
    background: none;
    border: 0;
    outline: none;
    cursor: pointer;
}

.info_icon {
    display: inline-block;
}

.info_icon .icon-info {
    font-size: 14px;
    color: #a4a9ad;
    cursor: pointer;
}

.info_icon .icon-info--primary {
    color: #1ece96;
}

.info_icon-text {
    display: block;
    background: #fff;
    width: 195px;
    box-shadow: 1px 1px 5px rgba(0, 0, 0, 0.16);
    padding: 15px 13px;
    color: #727b83;
    font-size: 12px;
    line-height: 18px;
    letter-spacing: 0.7px;
}

.info_icon:hover .info_icon-text {
    opacity: 1;
    visibility: visible;
}

@keyframes listItem {
    0% {
        opacity: 0;
        transform: translateY(5px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

.photo_step-example {
    height: 208px;
}

.photo_step-example-header {
    background: #21303d;
    margin: 0;
    color: #fff;
    padding: 6px 5px 5px;
    line-height: 14px;
    text-align: center;
    text-transform: uppercase;
    font-size: 14px;
    letter-spacing: 1px;
    border-top-left-radius: 5px;
    border-top-right-radius: 5px;
}

.photo_step-example-main {
    border: 1px solid #a4a9ad;
    border-top: 0;
    border-bottom-left-radius: 5px;
    border-bottom-right-radius: 5px;
    height: 183px;
    overflow: hidden;
    background: 50% no-repeat;
    background-size: cover;
}

.photo_step-example-main-photo {
    width: 100%;
    height: 183px;
    background: bottom no-repeat;
    background-size: contain;
}

.photo_step-example-main-photo--id {
    background-position: 50%;
}

.photo_step-box {
    background: #fff;
    padding: 25px;
    padding: 30px 25px;
    margin: 0 0 30px;
}

.photo_step-box--secondary {
    margin-bottom: 12px;
}

.photo_step-box--secondary + .button {
    margin-top: 25px;
}

.photo_step-box-title {
    font-size: 16px;
    letter-spacing: 0.05em;
    margin: 0 0 15px;
}

@media (max-width: 768px) {
    .photo_step-box {
        margin: 0 -20px 30px;
    }
    .photo_step-box--secondary {
        margin-bottom: 12px;
    }
}

.photo_step-content {
    margin-top: 35px;
    margin: 35px 10px 0;
}

.photo_step-heading {
    font-size: 14px;
    font-weight: 600;
    margin: 0 0 15px;
    letter-spacing: 0;
}

.photo_step-list {
    display: block;
    margin: 0;
    padding: 0;
}

.photo_step-list--animated li {
    opacity: 0;
    animation: 0.5s listItem forwards;
}

.photo_step-list--animated li:nth-child(2) {
    animation-delay: 0.5s;
}

.photo_step-list--animated li:nth-child(3) {
    animation-delay: 1s;
}

.photo_step-list--animated li:nth-child(4) {
    animation-delay: 1.5s;
}

.photo_step-list--animated li:nth-child(5) {
    animation-delay: 2s;
}

.photo_step-list li {
    display: block;
    font-size: 14px;
    line-height: 20px;
    letter-spacing: 0.7px;
    color: #4e5862;
    padding-left: 27px;
    position: relative;
    margin: 0 0 5px;
}

.photo_step-list li:last-child {
    margin-bottom: 0;
}

.photo_step-list li:before {
    font-family: roman;
    font-style: normal;
    font-weight: 400;
    speak: none;
    display: inline-block;
    text-decoration: inherit;
    width: 1em;
    text-align: center;
    font-variant: normal;
    text-transform: none;
    line-height: 1em;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    content: "\E80C";
    color: #1ece96;
    position: absolute;
    font-size: 12px;
    left: 0;
    top: 4px;
}

.photo_step-security_icons {
    margin-top: 28px;
}

.photo_step-error {
    color: #e73737;
    text-align: center;
    font-size: 14px;
    line-height: 20px;
    letter-spacing: 0.05em;
    margin: 19px 0;
}

.photo_step-upload {
    height: 208px;
    border: 1px dashed #e2e2e2;
    border-radius: 5px;
    position: relative;
    overflow: hidden;
}

.photo_step-upload-secondary_button {
    width: 260px;
    margin: 23px auto 0;
    display: block;
}

.photo_step-upload-secondary_button + .photo_step-upload-photo_upload_button {
    margin-top: 15px;
}

.photo_step-upload-secondary_button i {
    font-size: 15px;
    margin-right: 10px;
}

.photo_step-upload-photo_upload_button {
    width: 260px;
    margin: 23px auto 0;
    display: block;
    font-weight: 600;
}

.photo_step-upload-photo_upload_button i {
    font-size: 15px;
    margin-right: 10px;
}

.photo_step-upload--has_photo {
    border: 0;
}

.photo_step-upload-label {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    cursor: pointer;
}

.photo_step-upload-label--mobile {
    display: none;
}

@media (max-width: 768px) {
    .photo_step-upload-label--mobile {
        display: block;
        z-index: 5;
    }
}

.photo_step-upload-placeholder {
    position: absolute;
    top: 25px;
    left: 50%;
    transform: translateX(-50%);
}

.photo_step-box--secondary .photo_step-upload-placeholder {
    top: 10px;
    bottom: 10px;
    height: calc(100% - 20px);
    width: auto;
}

.photo_step-upload-button {
    height: 33px;
    border: 0;
    outline: none;
    cursor: pointer;
    background: none;
    position: absolute;
    bottom: 24px;
    left: 50%;
    width: 100%;
    transform: translateX(-50%);
    color: #1ece96;
    font-weight: 600;
    font-size: 14px;
    letter-spacing: 0.4px;
    line-height: 33px;
    text-transform: uppercase;
}

.photo_step-upload-button--error {
    bottom: 40px;
}

.photo_step-upload-button-icon {
    display: inline-block;
    width: 33px;
    height: 33px;
    color: #fff;
    border-radius: 50%;
    background: #1ece96;
    font-size: 15px;
    margin-right: 8px;
}

.photo_step-upload-button-photo_icon {
    border: 0;
    width: 32px;
    height: 32px;
    line-height: 32px;
    border-radius: 50%;
    font-size: 15px;
    color: #efefef;
    background: #4e5862;
    position: absolute;
    right: 13px;
    bottom: 13px;
    z-index: 6;
    text-align: center;
}

.photo_step-upload-photo {
    position: absolute;
    top: 0;
    left: 50%;
    height: 100%;
    width: auto;
    transform: translateX(-50%);
    z-index: 5;
}

.photo_step-upload-photo_bg {
    z-index: 4;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    position: absolute;
    width: 120%;
    max-width: none;
    height: auto;
    filter: blur(14px);
}

.photo_step-upload-photo_icon {
    display: flex;
    padding: 0 15px 0 10px;
    border: 0;
    width: auto;
    height: 32px;
    line-height: 32px;
    border-radius: 16px;
    font-size: 11px;
    color: #efefef;
    background: rgba(33, 48, 61, 0.5);
    position: absolute;
    right: 13px;
    bottom: 13px;
    z-index: 6;
    text-align: center;
}

.photo_step-upload-photo_icon-text {
    display: none;
    color: #fff;
    font-weight: 600;
    font-size: 10px;
    letter-spacing: 0;
    margin-left: 7px;
}

.photo_step-upload-photo_icon--secondary .photo_step-upload-photo_icon-text {
    display: block;
}

.photo_step-upload .flow-photo-item-upload-progress {
    top: 110px;
}

.photo_step-upload .flow-photo-item-upload-text {
    text-transform: none;
    top: 85px;
}

.photo_step-upload-error {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    padding-top: 42px;
    color: #a4a9ad;
    font-size: 14px;
    line-height: 16px;
    letter-spacing: 0.6px;
    text-align: center;
}

.photo_step-box--secondary .photo_step-upload-error {
    color: #21303d;
    padding: 20px;
    top: 50%;
    transform: translateY(-50%);
}

.photo_step-upload-error-icon {
    margin: 0 auto 10px;
}

.photo_step-help_button,
.photo_step-skip_button {
    display: block;
    color: #21303d;
    font-size: 14px;
    line-height: 1em;
    text-transform: uppercase;
    letter-spacing: 1px;
    padding: 4px 0;
    margin: 20px auto 0;
    border: 0;
    border-bottom: 2px solid #1ece96;
    cursor: pointer;
    outline: none;
    background: none;
}

.__react_component_tooltip {
    margin: 0;
    background: none;
    padding: 0;
    border-radius: 0;
}

.__react_component_tooltip:after,
.__react_component_tooltip:before {
    display: none;
}

.__react_component_tooltip.show {
    opacity: 1;
}

@keyframes timestamp {
    0% {
        opacity: 0;
    }
    to {
        opacity: 1;
    }
}

@keyframes date {
    0% {
        max-height: 0;
    }
    to {
        max-height: 40px;
    }
}

@keyframes dotBounce {
    0% {
        transform: translateY(-5px);
    }
    to {
        transform: translateY(5px);
    }
}

@keyframes dots {
    0% {
        opacity: 0;
    }
    to {
        opacity: 1;
    }
}

@keyframes avatarWrap {
    0% {
        max-height: 0;
        padding: 0;
    }
    to {
        max-height: 36px;
        padding: 4px;
    }
}

@keyframes avatar {
    0% {
        transform: scale(0);
    }
    to {
        transform: scale(1);
    }
}

@keyframes bubble {
    0% {
        opacity: 0;
        transform: scale(0);
        margin: 0;
    }
    70% {
        opacity: 1;
        transform: scale(1);
        margin: -2px;
    }
    to {
        opacity: 1;
        transform: scale(1);
        margin: 0;
    }
}

@keyframes bubbleLoaded {
    0% {
        opacity: 0;
        transform: scale(0);
        margin: 0;
    }
    70% {
        opacity: 1;
        transform: scale(1);
        margin: -2px;
    }
    to {
        opacity: 1;
        transform: scale(1);
        margin: 0;
    }
}

@keyframes textLoaded {
    0% {
        opacity: 0;
    }
    to {
        opacity: 1;
    }
}

@keyframes thumbFadeIn {
    0% {
        opacity: 0;
    }
    to {
        opacity: 1;
    }
}

@keyframes mediaBubbleLoaded {
    0% {
        opacity: 0;
        transform: scale(0);
    }
    to {
        opacity: 1;
        transform: scale(1);
    }
}

@keyframes mediaCollapse {
    0% {
        max-height: 0;
    }
    to {
        max-height: 205px;
    }
}

@keyframes bubbleCollapse {
    to {
        height: 0;
    }
}

@keyframes bubbleCollapseSecond {
    to {
        height: 48px;
    }
}

@keyframes msg {
    0% {
        padding-bottom: 0;
    }
    to {
        padding-bottom: 26px;
    }
}

.chat,
.static_chat {
    position: relative;
    display: flex;
    flex-direction: column;
    overflow: hidden;
    width: 100%;
    flex: 1;
    justify-content: flex-end;
}

.chat--account,
.static_chat--account {
    background: #fff;
}

@-moz-document url-prefix() {
    .chat,
    .static_chat {
        height: calc(100vh - 60px);
    }
}

.chat-overlay,
.static_chat-overlay {
    position: fixed;
    top: 60px;
    bottom: 0;
    left: 0;
    right: 0;
}

.chat-container,
.static_chat-container {
    display: flex;
    align-items: stretch;
    height: 100%;
    flex: 1;
}

.chat-loading,
.static_chat-loading {
    margin: -3px;
    display: flex;
    position: relative;
    z-index: 2;
}

.chat-loading-dot,
.static_chat-loading-dot {
    width: 10px;
    height: 10px;
    border-radius: 50%;
    background: #dedede;
    margin: 0 3px;
}

.chat-window,
.static_chat-window {
    display: flex;
    flex-direction: column;
    width: 100%;
}

.chat-window-wrap,
.static_chat-window-wrap {
    background: #f7f7f7;
    padding-top: 10px;
    overflow-y: scroll;
    -webkit-overflow-scrolling: touch;
    will-change: scroll-position, contents;
}

.chat--account .chat-window-wrap,
.chat--account .static_chat-window-wrap {
    background: #fff;
}

.chat-window-inner,
.static_chat-window-inner {
    width: 630px;
    max-width: 100%;
    margin: 0 auto;
}

.chat-window > div:last-of-type,
.static_chat-window > div:last-of-type {
    overflow: hidden !important;
}

.chat-footer-info,
.static_chat-footer-info {
    display: flex;
    align-items: flex-start;
    margin-top: 13px;
    padding: 0 0 5px;
    letter-spacing: 0.48px;
}

.chat-footer-info-smile,
.static_chat-footer-info-smile {
    font-size: 14px;
    color: #a4a9ad;
}

.chat-footer-info-text,
.static_chat-footer-info-text {
    padding-left: 10px;
    flex: 1;
    color: #a4a9ad;
    font-size: 12px;
    line-height: 17px;
    margin: 0;
}

.chat-footer-info-text a,
.static_chat-footer-info-text a {
    color: #1ece96;
    text-decoration: none;
}

.chat-footer-info-text a:hover,
.static_chat-footer-info-text a:hover {
    color: #1ece96;
}

.chat-footer-inner,
.static_chat-footer-inner {
    padding: 15px;
    width: 630px;
    margin: 0 auto;
    max-width: 100%;
}

.chat-footer-overlay,
.static_chat-footer-overlay {
    position: fixed;
    top: 60px;
    bottom: 0;
    left: 0;
    right: 0;
    background: #f7f7f7;
    z-index: 10;
    overflow-y: auto;
    display: flex;
    flex-direction: column;
    opacity: 0;
}

@media (min-width: 768px) {
    .chat-footer-button,
    .static_chat-footer-button {
        width: 390px;
        max-width: 100%;
        margin: 0 auto;
    }
}

.chat-footer-msg,
.static_chat-footer-msg {
    background: #fff;
    border: 1px solid #e2e2e2;
    padding: 14px 20px 15px;
    display: flex;
    align-items: center;
    box-shadow: 1px 1px 5px rgba(0, 0, 0, 0.16);
}

@media (max-width: 1024px) {
    .chat-footer-msg:focus-within + .chat-footer-info,
    .static_chat-footer-msg:focus-within + .chat-footer-info {
        display: none;
    }
}

.chat-footer-msg-textfield,
.static_chat-footer-msg-textfield {
    font-size: 16px;
    line-height: 16px;
    color: #21303d;
    background: transparent;
    border: 0;
    width: calc(100% - 58px);
    outline: none;
    padding: 3px 0 2px;
    max-height: 147px;
    overflow: auto;
}

.chat-footer-msg-textfield:empty:before,
.static_chat-footer-msg-textfield:empty:before {
    content: attr(placeholder);
    display: block;
    color: #a4a9ad;
    line-height: 16px;
    font-size: 16px;
}

@media (min-width: 1200px) {
    .chat-footer-msg-textfield,
    .static_chat-footer-msg-textfield {
        max-height: 210px;
    }
}

.chat-footer-msg-button,
.static_chat-footer-msg-button {
    border: 0;
    background: transparent;
    padding: 16px 20px 16px 35px;
    margin: -14px -20px -15px 0;
    color: #1ece96;
    font-size: 23px;
    outline: none;
    transition: color 0.2s;
    flex-shrink: 0;
    align-self: flex-end;
}

.chat-footer-msg-button:hover,
.static_chat-footer-msg-button:hover {
    color: #3ce3ae;
    cursor: pointer;
}

.chat-footer-msg-button:disabled,
.static_chat-footer-msg-button:disabled {
    color: #e2e2e2;
}

.chat-msg,
.static_chat-msg {
    display: flex;
    padding-left: 15px;
    padding-right: 15px;
}

.chat-msg-date,
.static_chat-msg-date {
    text-align: center;
    color: hsla(0, 0%, 100%, 0.4);
    font-size: 0.857em;
    line-height: 14px;
    letter-spacing: 0.6px;
    padding-bottom: 12px;
    padding-top: 14px;
    margin-bottom: -20px;
}

.chat--account .chat-msg-date,
.chat--account .static_chat-msg-date {
    color: #a4a9ad;
}

.chat-msg-timestamp,
.static_chat-msg-timestamp {
    color: hsla(0, 0%, 100%, 0.4);
    font-size: 10px;
    letter-spacing: 0.6px;
    padding-top: 10px;
    line-height: 15px;
    overflow: hidden;
    margin-bottom: -20px;
    position: relative;
    z-index: 10;
}

.chat--account .chat-msg-timestamp,
.chat--account .static_chat-msg-timestamp {
    color: #a4a9ad;
}

.chat-msg-timestamp a,
.static_chat-msg-timestamp a {
    color: #21303d;
    text-decoration: underline;
}

.chat-msg--answer .chat-msg-timestamp,
.chat-msg--answer .static_chat-msg-timestamp {
    text-align: right;
}

.chat-msg-edit,
.static_chat-msg-edit {
    background: #21303d;
    border: 1px solid #f7f7f7;
    color: #f7f7f7;
    border-radius: 50%;
    width: 20px;
    height: 20px;
    position: absolute;
    bottom: 0;
    left: -10px;
    font-size: 10px;
    z-index: 3;
    display: none;
}

.chat-msg--answer .chat-msg-edit,
.chat-msg--answer .static_chat-msg-edit {
    display: block;
}

.chat-msg-edit-icon,
.static_chat-msg-edit-icon {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}

.chat-msg--answer .chat-msg-edit,
.chat-msg--answer .static_chat-msg-edit {
    background: #fff;
    border: 1px solid #ff412d;
    color: #ff412d;
}

.chat-msg--answer,
.static_chat-msg--answer {
    justify-content: flex-end;
}

.chat-msg-user,
.static_chat-msg-user {
    margin-right: 6px;
    overflow: hidden;
    align-self: flex-end;
    order: 1;
    flex-shrink: 0;
}

.chat-msg--answer .chat-msg-user,
.chat-msg--answer .static_chat-msg-user,
.static_chat-msg--answer .chat-msg-user,
.static_chat-msg--answer .static_chat-msg-user {
    order: 2;
    margin-right: 0;
    margin-left: 10px;
}

.chat-msg-no_sender_avatar,
.static_chat-msg-no_sender_avatar {
    width: 28px;
    height: 28px;
    margin: 0;
}

.chat-msg-avatar,
.static_chat-msg-avatar {
    width: 28px;
    height: 28px;
    background: #fff;
    border-radius: 50%;
    position: relative;
    overflow: hidden;
}

.chat--dark .chat-msg-avatar,
.chat--dark .static_chat-msg-avatar {
    background: transparent;
}

.chat-msg-avatar-link,
.static_chat-msg-avatar-link {
    align-self: flex-end;
    order: 1;
    flex-shrink: 0;
}

.chat-msg--answer .chat-msg-avatar-link,
.chat-msg--answer .static_chat-msg-avatar-link,
.static_chat-msg--answer .chat-msg-avatar-link,
.static_chat-msg--answer .static_chat-msg-avatar-link {
    order: 2;
}

.chat-msg-avatar-letter,
.static_chat-msg-avatar-letter {
    color: #a4a9ad;
    font-size: 14px;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}

.chat-msg-avatar-thumb,
.static_chat-msg-avatar-thumb {
    width: 28px;
    height: 28px;
    background: 50% no-repeat;
    background-size: cover;
}

.chat-msg-footer,
.static_chat-msg-footer {
    background: #fff;
    border-bottom-right-radius: 10px;
    padding: 13px;
    display: flex;
    align-items: center;
    border: 1px solid #efefef;
    border-top: 0;
}

.chat-msg-footer-avatar,
.static_chat-msg-footer-avatar {
    background: 50% no-repeat;
    background-size: cover;
    width: 46px;
    height: 46px;
    border-radius: 50%;
}

.chat-msg-footer-main,
.static_chat-msg-footer-main {
    padding-left: 12px;
}

.chat-msg-footer-name,
.static_chat-msg-footer-name {
    color: #1ece96;
    font-size: 14px;
    line-height: 14px;
    margin: 0 0 3px;
}

.chat-msg-footer-profile_link,
.static_chat-msg-footer-profile_link {
    color: #a4a9ad;
    text-transform: uppercase;
    text-decoration: none;
    font-size: 10px;
    line-height: 10px;
    margin: 0;
}

.chat-msg-footer-profile_link:hover,
.static_chat-msg-footer-profile_link:hover {
    color: #a4a9ad;
}

.chat-msg-bubble,
.static_chat-msg-bubble {
    outline: none;
}

.chat-msg-bubble-outer_wrap,
.static_chat-msg-bubble-outer_wrap {
    display: flex;
    flex-direction: column;
}

.chat-msg-bubble-outer_wrap + .chat-msg-bubble-outer_wrap .chat-msg-bubble-bg,
.chat-msg-bubble-outer_wrap
    + .chat-msg-bubble-outer_wrap
    .static_chat-msg-bubble-bg,
.chat-msg-bubble-outer_wrap
    + .static_chat-msg-bubble-outer_wrap
    .chat-msg-bubble-bg,
.chat-msg-bubble-outer_wrap
    + .static_chat-msg-bubble-outer_wrap
    .static_chat-msg-bubble-bg,
.static_chat-msg-bubble-outer_wrap
    + .chat-msg-bubble-outer_wrap
    .chat-msg-bubble-bg,
.static_chat-msg-bubble-outer_wrap
    + .chat-msg-bubble-outer_wrap
    .static_chat-msg-bubble-bg,
.static_chat-msg-bubble-outer_wrap
    + .static_chat-msg-bubble-outer_wrap
    .chat-msg-bubble-bg,
.static_chat-msg-bubble-outer_wrap
    + .static_chat-msg-bubble-outer_wrap
    .static_chat-msg-bubble-bg {
    border-top-left-radius: 0;
}

.chat-msg--answer
    .chat-msg-bubble-outer_wrap
    + .chat-msg-bubble-outer_wrap
    .chat-msg-bubble-bg,
.chat-msg--answer
    .chat-msg-bubble-outer_wrap
    + .chat-msg-bubble-outer_wrap
    .static_chat-msg-bubble-bg,
.chat-msg--answer
    .chat-msg-bubble-outer_wrap
    + .static_chat-msg-bubble-outer_wrap
    .chat-msg-bubble-bg,
.chat-msg--answer
    .chat-msg-bubble-outer_wrap
    + .static_chat-msg-bubble-outer_wrap
    .static_chat-msg-bubble-bg,
.chat-msg--answer
    .static_chat-msg-bubble-outer_wrap
    + .chat-msg-bubble-outer_wrap
    .chat-msg-bubble-bg,
.chat-msg--answer
    .static_chat-msg-bubble-outer_wrap
    + .chat-msg-bubble-outer_wrap
    .static_chat-msg-bubble-bg,
.chat-msg--answer
    .static_chat-msg-bubble-outer_wrap
    + .static_chat-msg-bubble-outer_wrap
    .chat-msg-bubble-bg,
.chat-msg--answer
    .static_chat-msg-bubble-outer_wrap
    + .static_chat-msg-bubble-outer_wrap
    .static_chat-msg-bubble-bg,
.static_chat-msg--answer
    .chat-msg-bubble-outer_wrap
    + .chat-msg-bubble-outer_wrap
    .chat-msg-bubble-bg,
.static_chat-msg--answer
    .chat-msg-bubble-outer_wrap
    + .chat-msg-bubble-outer_wrap
    .static_chat-msg-bubble-bg,
.static_chat-msg--answer
    .chat-msg-bubble-outer_wrap
    + .static_chat-msg-bubble-outer_wrap
    .chat-msg-bubble-bg,
.static_chat-msg--answer
    .chat-msg-bubble-outer_wrap
    + .static_chat-msg-bubble-outer_wrap
    .static_chat-msg-bubble-bg,
.static_chat-msg--answer
    .static_chat-msg-bubble-outer_wrap
    + .chat-msg-bubble-outer_wrap
    .chat-msg-bubble-bg,
.static_chat-msg--answer
    .static_chat-msg-bubble-outer_wrap
    + .chat-msg-bubble-outer_wrap
    .static_chat-msg-bubble-bg,
.static_chat-msg--answer
    .static_chat-msg-bubble-outer_wrap
    + .static_chat-msg-bubble-outer_wrap
    .chat-msg-bubble-bg,
.static_chat-msg--answer
    .static_chat-msg-bubble-outer_wrap
    + .static_chat-msg-bubble-outer_wrap
    .static_chat-msg-bubble-bg {
    border-top-left-radius: 15px;
    border-top-right-radius: 0;
}

.chat-msg-bubble-wrap,
.static_chat-msg-bubble-wrap {
    align-self: flex-start;
    max-width: 70%;
    min-width: 60px;
    position: relative;
}

.chat--dark .chat-msg-bubble-wrap,
.chat--dark .static_chat-msg-bubble-wrap {
    max-width: 90%;
}

@media (max-width: 768px) {
    .chat--dark .chat-msg-bubble-wrap,
    .chat--dark .static_chat-msg-bubble-wrap,
    .chat-msg-bubble-wrap,
    .static_chat-msg-bubble-wrap {
        max-width: 90%;
    }
}

.chat-msg-bubble-inner,
.static_chat-msg-bubble-inner {
    padding: 19px 20px;
    position: relative;
}

.chat-msg-bubble-bg,
.static_chat-msg-bubble-bg {
    background: #f7f7f7;
    border-radius: 15px;
    border-bottom-left-radius: 0;
    position: absolute;
    left: 0;
    top: 24px;
    bottom: 0;
    right: 0;
    z-index: 1;
}

.chat-msg-bubble-bg--secondary,
.static_chat-msg-bubble-bg--secondary {
    background-color: rgba(30, 206, 150, 0.2);
}

.chat--account .chat-msg-bubble-bg,
.chat--account .static_chat-msg-bubble-bg {
    background: #fff;
    top: 31px;
    border: 1px solid #efefef;
}

.chat-msg--20_doctor .chat-msg-bubble-bg,
.chat-msg--20_doctor .static_chat-msg-bubble-bg {
    border-bottom-right-radius: 0;
}

.chat-msg--photo_required .chat-msg-bubble-bg,
.chat-msg--photo_required .static_chat-msg-bubble-bg {
    border-color: transparent;
    background: #f7f7f7;
}

.chat--dark .chat-msg-bubble-bg,
.chat--dark .static_chat-msg-bubble-bg {
    background: #2f3d4c;
}

.fake_chat .chat-msg-bubble-bg,
.fake_chat .static_chat-msg-bubble-bg,
.flow-hint_sidebar-chat .chat-msg-bubble-bg,
.flow-hint_sidebar-chat .static_chat-msg-bubble-bg {
    top: 4px;
}

.flow-question-overlay .flow-payment-chat .chat-msg-bubble-bg,
.flow-question-overlay .flow-payment-chat .static_chat-msg-bubble-bg {
    background-color: #fff;
    border: 1px solid #e2e2e2;
}

.chat-msg--answer .chat-msg-bubble-wrap,
.chat-msg--answer .static_chat-msg-bubble-wrap,
.static_chat-msg--answer .chat-msg-bubble-wrap,
.static_chat-msg--answer .static_chat-msg-bubble-wrap {
    align-self: flex-end;
}

.chat-msg--answer .chat-msg-bubble .chat-msg-bubble-bg,
.chat-msg--answer .chat-msg-bubble .static_chat-msg-bubble-bg,
.chat-msg--answer .static_chat-msg-bubble .chat-msg-bubble-bg,
.chat-msg--answer .static_chat-msg-bubble .static_chat-msg-bubble-bg,
.static_chat-msg--answer .chat-msg-bubble .chat-msg-bubble-bg,
.static_chat-msg--answer .chat-msg-bubble .static_chat-msg-bubble-bg,
.static_chat-msg--answer .static_chat-msg-bubble .chat-msg-bubble-bg,
.static_chat-msg--answer .static_chat-msg-bubble .static_chat-msg-bubble-bg {
    background: #ff412d;
    border-bottom-left-radius: 15px;
    border-bottom-right-radius: 0;
    border: 0;
}

.chat--account .chat-msg--answer .chat-msg-bubble .chat-msg-bubble-bg,
.chat--account .chat-msg--answer .chat-msg-bubble .static_chat-msg-bubble-bg,
.chat--account .chat-msg--answer .static_chat-msg-bubble .chat-msg-bubble-bg,
.chat--account
    .chat-msg--answer
    .static_chat-msg-bubble
    .static_chat-msg-bubble-bg,
.chat--account .static_chat-msg--answer .chat-msg-bubble .chat-msg-bubble-bg,
.chat--account
    .static_chat-msg--answer
    .chat-msg-bubble
    .static_chat-msg-bubble-bg,
.chat--account
    .static_chat-msg--answer
    .static_chat-msg-bubble
    .chat-msg-bubble-bg,
.chat--account
    .static_chat-msg--answer
    .static_chat-msg-bubble
    .static_chat-msg-bubble-bg {
    background: #1ece96;
}

.chat-msg-main,
.static_chat-msg-main {
    order: 2;
    display: flex;
    flex-direction: column;
    width: 100%;
    position: relative;
}

.chat-msg--answer .chat-msg-main,
.chat-msg--answer .static_chat-msg-main,
.static_chat-msg--answer .chat-msg-main,
.static_chat-msg--answer .static_chat-msg-main {
    order: 1;
}

.chat-msg-main .chat-msg-bubble-inner,
.chat-msg-main .static_chat-msg-bubble-inner,
.static_chat-msg-main .chat-msg-bubble-inner,
.static_chat-msg-main .static_chat-msg-bubble-inner {
    padding-top: 44px;
}

.chat--account .chat-msg-main .chat-msg-bubble-inner,
.chat--account .chat-msg-main .static_chat-msg-bubble-inner,
.chat--account .static_chat-msg-main .chat-msg-bubble-inner,
.chat--account .static_chat-msg-main .static_chat-msg-bubble-inner {
    padding-top: 51px;
}

.fake_chat .chat-msg-main .chat-msg-bubble-inner,
.fake_chat .chat-msg-main .static_chat-msg-bubble-inner,
.fake_chat .static_chat-msg-main .chat-msg-bubble-inner,
.fake_chat .static_chat-msg-main .static_chat-msg-bubble-inner,
.flow-hint_sidebar-chat .chat-msg-main .chat-msg-bubble-inner,
.flow-hint_sidebar-chat .chat-msg-main .static_chat-msg-bubble-inner,
.flow-hint_sidebar-chat .static_chat-msg-main .chat-msg-bubble-inner,
.flow-hint_sidebar-chat .static_chat-msg-main .static_chat-msg-bubble-inner {
    padding-top: 24px;
}

.chat-msg-main .chat-msg-media:first-child,
.chat-msg-main .static_chat-msg-media:first-child,
.static_chat-msg-main .chat-msg-media:first-child,
.static_chat-msg-main .static_chat-msg-media:first-child {
    padding-top: 0;
}

.chat-msg-text,
.static_chat-msg-text {
    font-size: 14px;
    color: #21303d;
    line-height: 22px;
    letter-spacing: 1px;
    position: relative;
    z-index: 2;
}

.chat--account .chat-msg-text,
.chat--account .static_chat-msg-text {
    color: #21303d;
}

.chat--dark .chat-msg-text,
.chat--dark .static_chat-msg-text {
    color: #e2e2e2;
}

.chat--dark .chat-msg-text p,
.chat--dark .static_chat-msg-text p {
    font-size: inherit;
    line-height: inherit;
    margin-bottom: 25px;
}

.chat--dark .chat-msg-text p:last-child,
.chat--dark .static_chat-msg-text p:last-child {
    margin-bottom: 0;
}

.chat--dark .chat-msg-text a,
.chat--dark .static_chat-msg-text a {
    color: #fff;
    text-decoration: none;
}

.chat-msg-text a,
.static_chat-msg-text a {
    color: inherit;
}

.chat--account .chat-msg--answer .chat-msg-text,
.chat--account .chat-msg--answer .static_chat-msg-text,
.chat--account .static_chat-msg--answer .chat-msg-text,
.chat--account .static_chat-msg--answer .static_chat-msg-text,
.chat-msg--answer .chat-msg-text,
.chat-msg--answer .static_chat-msg-text,
.static_chat-msg--answer .chat-msg-text,
.static_chat-msg--answer .static_chat-msg-text {
    color: #fff;
}

.chat-empty,
.static_chat-empty {
    flex: 1;
    display: flex;
    align-items: center;
    justify-content: center;
}

.chat-empty-inner,
.static_chat-empty-inner {
    text-align: center;
    color: hsla(0, 0%, 100%, 0.4);
    font-size: 1.143em;
    line-height: 19px;
    letter-spacing: 0.7px;
    padding: 30px;
}

@keyframes scaleBounce {
    0% {
        transform: scale(0);
        opacity: 0;
    }
    60% {
        transform: scale(1.05);
        opacity: 1;
    }
    80% {
        transform: scale(0.95);
        opacity: 1;
    }
    to {
        transform: scale(1);
        opacity: 1;
    }
}

@keyframes stars {
    0% {
        max-width: 0;
        opacity: 0;
    }
    to {
        max-width: 162px;
        opacity: 1;
    }
}

.chat-assistant {
    margin: 0 0 36px;
    display: flex;
    justify-content: center;
    text-align: center;
}

@media (max-width: 768px) {
    .chat-assistant {
        margin-bottom: 16px;
    }
    .chat-assistant--no_stars {
        margin-bottom: 30px;
    }
}
/*
.chat-assistant-avatar {
    width: 100px;
    height: 100px;
    background: #fff;
    border-radius: 50%;
    overflow: hidden;
    margin: 0 auto;
    transform: scale(0);
    opacity: 0;
    animation: .6s scaleBounce forwards;
    animation-delay: 1.1s
}*/

.chat-assistant-name {
    color: #4e5862;
    font-weight: 600;
    margin-top: 15px;
    transform: scale(0);
    opacity: 0;
    animation: 0.6s scaleBounce forwards;
    animation-delay: 1.17s;
}

.chat-assistant-role {
    margin-top: 5px;
    text-transform: uppercase;
    color: #a4a9ad;
    transform: scale(0);
    opacity: 0;
    animation: 0.6s scaleBounce forwards;
    animation-delay: 1.24s;
}

.chat-edit {
    position: absolute;
    bottom: 14px;
    left: -90px;
    z-index: 3;
    align-items: center;
    background: none;
    border: 0;
    outline: none;
    display: none;
    cursor: pointer;
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.3s, visibility 0.3s;
}

@media (min-width: 768px) {
    .chat-msg--answer .chat-edit {
        display: flex;
    }
}

.chat-msg--answer:hover .chat-edit {
    opacity: 1;
    visibility: visible;
}

.chat-edit-text {
    text-transform: uppercase;
    padding-left: 6px;
}

.chat-edit-icon {
    color: #ff412d;
    border: 1px solid #ff412d;
    border-radius: 50%;
    background: #fff;
    width: 27px;
    height: 27px;
    font-size: 13.5px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.chat-loading {
    opacity: 0;
    will-change: opacity;
}

.chat-msg-bubble--loading .chat-loading {
    animation: dots 0.27s forwards;
    animation-delay: 0.09s;
}

.chat-loading-dot {
    will-change: transform;
    animation: dotBounce 0.27s infinite ease-in-out alternate backwards;
}

.chat-loading-dot:nth-child(2) {
    animation-delay: 67.5ms;
}

.chat-loading-dot:nth-child(3) {
    animation-delay: 0.135s;
}

.chat-msg-user {
    max-height: 0;
    will-change: max-height, padding;
    margin-bottom: 0;
    padding: 0;
    animation: avatarWrap 0.18s linear forwards;
    overflow: hidden;
}

.chat-msg-avatar {
    transform: scale(0);
    animation: avatar 0.27s cubic-bezier(0.185, 1.045, 0.35, 1.37) forwards;
    animation-delay: 0.72s;
}

.chat-msg-media {
    overflow: hidden;
    will-change: max-height;
}

.chat-msg-media--collapse {
    max-height: 0;
    animation: mediaCollapse 0.45s cubic-bezier(0.645, 0.045, 0.355, 1) forwards;
}

.chat-msg-media-thumb {
    opacity: 0;
    will-change: opacity;
}

.chat-msg-media--loaded .chat-msg-media-thumb {
    animation: 0.63s thumbFadeIn forwards;
}

.chat-msg-media-bubble-bg {
    opacity: 0;
    transform: scale(0);
    transform-origin: 50% 0;
    will-change: opacity, transform;
}

.chat-msg-media--loaded .chat-msg-media-bubble-bg {
    animation: mediaBubbleLoaded 0.27s cubic-bezier(0.445, 0.05, 0.55, 0.95)
        forwards;
}

.chat-msg-media--loaded .chat-msg-text {
    animation: textLoaded 0.36s cubic-bezier(0.455, 0.03, 0.515, 0.955) forwards;
    animation-delay: 0.36s;
}

.chat-msg {
    will-change: padding-bottom;
    padding-bottom: 0;
    animation: 0.36s msg cubic-bezier(0.645, 0.045, 0.355, 1) forwards;
}

.chat-msg-bubble {
    will-change: height;
}

.chat-msg-bubble--collapse_first {
    height: 48px;
    animation: bubbleCollapse 0.36s cubic-bezier(0.645, 0.045, 0.355, 1) reverse
        forwards;
}

.chat-msg-bubble--collapse.chat-msg-bubble--collapse_second {
    animation: bubbleCollapseSecond 0.36s cubic-bezier(0.645, 0.045, 0.355, 1)
        reverse;
}

.chat-msg-bubble--collapse.chat-msg-bubble--collapse_third {
    animation: bubbleCollapse 0.36s cubic-bezier(0.645, 0.045, 0.355, 1) reverse;
}

.chat-msg-bubble-bg {
    transform: scale(0);
    opacity: 0;
    margin: 0;
}

.chat-msg-bubble--loading .chat-msg-bubble-bg {
    animation: bubble 0.36s cubic-bezier(0.445, 0.05, 0.55, 0.95) forwards;
}

.chat-msg-bubble--loaded .chat-msg-bubble-bg {
    animation: bubbleLoaded 0.36s cubic-bezier(0.445, 0.05, 0.55, 0.95) forwards;
}

.chat-msg-bubble--collapse .chat-msg-bubble-bg {
    visibility: hidden;
}

.chat-msg-text {
    opacity: 0;
    will-change: opacity;
}

.chat-msg-bubble--loaded .chat-msg-text {
    animation: textLoaded 0.36s cubic-bezier(0.455, 0.03, 0.515, 0.955) forwards;
    animation-delay: 0.36s;
}

.chat-msg-date {
    max-height: 0;
    animation: 0.3s date forwards;
}

.chat-msg-timestamp {
    opacity: 0;
    animation: 0.5s timestamp forwards;
    animation-delay: 0.5s;
}

.pricing_options {
    background: #fff;
    border: 1px solid #efefef;
    margin-bottom: -1px;
}

@media (max-width: 768px) {
    .pricing_options {
        margin-left: -20px;
        margin-right: -20px;
        border-left: 0;
        border-right: 0;
    }
}

.pricing_options-item {
    cursor: pointer;
    display: block;
    outline: none;
    border: 0;
    background: transparent;
    height: 70px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    width: 100%;
    padding: 10px 23px 10px 20px;
}

.pricing_options-title {
    font-size: 14px;
    color: #21303d;
    letter-spacing: 0.56px;
}

.pricing_options-info {
    text-align: right;
}

.pricing_options-info-prefix {
    font-size: 10px;
    color: #a4a9ad;
    letter-spacing: 0.4px;
    margin-bottom: 4px;
    display: block;
}

.pricing_options-info-value {
    font-size: 15px;
    color: #21303d;
    letter-spacing: 0.56px;
    display: block;
}

.plan_box {
    background: #fff;
    border: 1px solid #efefef;
    padding: 34px 20px 30px;
    margin-bottom: 8px;
}

@media (max-width: 768px) {
    .plan_box {
        margin-left: -20px;
        margin-right: -20px;
    }
}

.plan_box-label {
    display: inline-block;
    line-height: 22px;
    padding: 0 8px;
    letter-spacing: 1px;
    background: #1ece96;
    color: #fff;
    text-transform: uppercase;
    font-size: 9px;
    margin-bottom: 15px;
    font-weight: 600;
}

.plan_box-header {
    font-size: 33px;
    line-height: 36px;
    font-weight: 600;
    color: #21303d;
    margin: 0 0 5px;
}

.plan_box-subheader {
    font-size: 14px;
    line-height: 18px;
    font-weight: 400;
    color: #21303d;
    margin: 0 0 10px;
}

.plan_box-thumb {
    width: auto;
    height: auto;
    margin: 0 auto;
}

.plan_box-price {
    height: 260px;
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    position: relative;
}

.plan_box-price-inner {
    padding: 0 0 35px 10px;
}

.plan_box-price-prefix {
    color: #727b83;
    font-size: 12px;
    letter-spacing: 0.48px;
    margin-bottom: 8px;
}

.plan_box-price-value {
    font-size: 32px;
    color: #21303d;
    letter-spacing: 0;
}

.plan_box-price-suffix {
    font-size: 16px;
    color: #727b83;
    letter-spacing: 1px;
    margin-left: 5px;
}

.plan_box-price-main {
    display: flex;
    align-items: baseline;
}

.plan_box-price-thumb {
    margin: 0;
    position: absolute;
    right: 0;
    bottom: 0;
    width: 265px;
    height: 265px;
}

.dob-error {
    font-size: 14px;
    margin-top: 0;
}

.dob-footer {
    margin-top: 30px;
}

.dob-month.form-item {
    flex: 35;
}

.dob-day.form-item {
    flex: 25;
}

.dob-year.form-item {
    flex: 30;
}

.ed_plan {
    border-top: 1px solid #e2e2e2;
}

.ed_plan,
.ed_plan-big_thumb {
    position: relative;
    background: #fff;
}

.ed_plan-big_thumb {
    width: 100%;
    height: 190px;
}

.ed_plan-big_thumb--expired {
    opacity: 0.5;
}

.ed_plan-big_thumb:after {
    height: 87px;
    content: "";
    background: #efefef;
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 1;
}

.ed_plan-big_thumb-text {
    color: #ff412d;
    font-size: 144px;
    text-transform: uppercase;
    font-weight: 600;
    line-height: 144px;
    z-index: 2;
    top: 18px;
}

.ed_plan-big_thumb-img,
.ed_plan-big_thumb-text {
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
}

.ed_plan-big_thumb-img {
    height: 140px;
    top: 30px;
    z-index: 3;
}

.ed_plan-my_plan {
    padding: 24px 20px 15px;
}

.ed_plan-my_plan--alone {
    padding-bottom: 30px;
}

.ed_plan-edit_button {
    position: absolute;
    top: 15px;
    right: 21px;
    z-index: 5;
}

.ed_plan-manage_plan {
    border: 0;
    outline: none;
    border-radius: 0;
    background: transparent;
    color: #1ece96;
    font-size: 12px;
    border-bottom: 1.5px solid #e2e2e2;
    padding: 4px 0;
    line-height: 12px;
    display: block;
    margin-top: 10px;
    cursor: pointer;
}

.ed_plan-header,
.ed_plan-manage_plan {
    font-weight: 600;
    text-transform: uppercase;
}

.ed_plan-header {
    color: #a4a9ad;
    font-size: 14px;
    line-height: 14px;
    margin-bottom: 20px;
}

.ed_plan--expired .ed_plan-header {
    color: #a4a9ad;
}

.ed_plan-header-link {
    display: block;
    text-decoration: none;
    position: relative;
    min-height: 16px;
}

.ed_plan-header-link:after {
    font-family: roman;
    font-style: normal;
    font-weight: 400;
    speak: none;
    display: inline-block;
    text-decoration: inherit;
    width: 1em;
    text-align: center;
    font-variant: normal;
    text-transform: none;
    line-height: 1em;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    position: absolute;
    right: 0;
    top: 50%;
    transform: translateY(-50%);
    content: "\E821";
    color: #a4a9ad;
    font-size: 16px;
}

.ed_plan--expired .ed_plan-header-link:after {
    color: #a4a9ad;
}

.ed_plan-second_header {
    color: #a4a9ad;
    text-transform: uppercase;
    font-weight: 600;
    font-size: 16px;
    line-height: 16px;
    padding: 22px 24px;
    margin: 0;
}

.ed_plan-product {
    display: flex;
    align-items: flex-start;
}

.flow-question .ed_plan-product {
    max-width: 320px;
    margin: 0 auto;
    padding-bottom: 30px;
}

.ed_plan-product-change_requested {
    padding-top: 10px;
    color: #4e5862;
    font-size: 14px;
    line-height: 18px;
}

.ed_plan-product-change_requested strong {
    color: #21303d;
    margin-bottom: 10px;
    display: block;
}

.ed_plan-product--secondary {
    align-items: center;
}

.ed_plan-product-thumb {
    width: 108px;
    height: 119px;
    flex-shrink: 0;
    position: relative;
    background: #ff412d;
    border-radius: 4px;
    margin-right: 30px;
}

.ed_plan--expired .ed_plan-product-thumb {
    opacity: 0.5;
}

.ed_plan-product-thumb:after {
    content: "";
    position: absolute;
    display: block;
    height: 56px;
    bottom: 0;
    left: 0;
    right: 0;
    background: #efefef;
    border-bottom-left-radius: 4px;
    border-bottom-right-radius: 4px;
}

.ed_plan-product-thumb img {
    display: block;
    margin: 0;
    width: 51px;
    height: auto;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    z-index: 2;
}

.ed_plan-product-details {
    padding: 5px 0 0;
}

.ed_plan-product-details-text {
    color: #4e5862;
    font-size: 14px;
    line-height: 18px;
    letter-spacing: 0.5px;
}

.ed_plan-product-details-get_off_button {
    margin-top: 10px;
}

.ed_plan-product-details-list {
    display: block;
    margin: 0;
    padding: 0;
    color: #4e5862;
    font-size: 14px;
    line-height: 14px;
}

.flow-question .ed_plan-product-details-list {
    color: #21303d;
}

.ed_plan--expired .ed_plan-product-details-list {
    color: #a4a9ad;
}

.ed_plan-product--secondary .ed_plan-product-details-list {
    color: #fff;
}

.ed_plan-product-details-list-item {
    display: block;
    margin: 0 0 10px;
    padding: 0;
}

.ed_plan-product-details-list-item > i {
    font-size: 12px;
    color: #1ece96;
    margin-right: 7px;
    vertical-align: middle;
    margin-top: -1px;
    display: inline-block;
}

.ed_plan--expired .ed_plan-product-details-list-item > i {
    color: #a4a9ad;
}

.ed_plan-product-details-list-item > i + span {
    display: inline-block;
    vertical-align: middle;
}

.ed_plan-product-details-list .ed_plan-product-details-list-item:last-child {
    margin: 0;
}

.ed_plan-refill {
    border-top: 1px solid #efefef;
    padding: 25px 25px 30px;
    position: relative;
}

.ed_plan-refill-header {
    color: #a4a9ad;
    text-transform: uppercase;
    font-size: 12px;
    font-weight: 600;
    margin: 0 0 10px;
}

.ed_plan-refill-date {
    color: #4e5862;
    text-transform: uppercase;
    font-weight: 600;
    font-size: 18px;
}

.ed_plan-refill-more_button {
    padding: 10px;
    margin: 0;
    border: 0;
    outline: none;
    color: #a4a9ad;
    font-size: 16px;
    position: absolute;
    top: 50%;
    right: 15px;
    transform: translateY(-50%);
    cursor: pointer;
    background: none;
}

.ed_plan-refill-button {
    margin-top: 15px;
}

.ed_plan-save_money {
    display: block;
    padding: 0;
    margin: 0;
    outline: none;
    background: none;
    color: #1ece96;
    font-size: 12px;
    font-weight: 600;
    text-transform: uppercase;
    border-radius: 0;
    border: 0;
    border-bottom: 1px solid #e2e2e2;
    margin-top: 10px;
    cursor: pointer;
}

.ed_plan-save_money i {
    font-size: 14px;
    margin: 0 4px 0 0;
}

.ed_plan-description {
    padding: 30px 25px;
    margin: 0;
}

.ed_plan-description-item {
    display: flex;
    justify-content: space-between;
    margin: 0 0 15px;
}

.ed_plan-description .ed_plan-description-item:last-child {
    margin: 0;
}

.ed_plan-description-header {
    color: #a4a9ad;
    font-size: 12px;
    text-transform: uppercase;
    font-weight: 600;
    margin: 0 10px 0 0;
}

.ed_plan-description-text {
    color: #4e5862;
    font-size: 14px;
    text-align: right;
}

.ed_plan-description--expired .ed_plan-description-text {
    color: #a4a9ad;
}

.ed_plan-description-refresh {
    color: #a4a9ad;
    margin: 0 7px 0 0;
    display: inline-block;
}

.ed_plan-expired {
    border-top: 1px solid #e2e2e2;
    margin: 0 25px;
    padding: 24px 0 40px;
    text-align: center;
}

.ed_plan-expired-thumb {
    margin: 0 auto 13px;
    transform: translateX(5px);
    width: 51px;
}

.ed_plan-expired-text {
    margin: 0;
    line-height: 20px;
    font-size: 14px;
    color: #21303d;
}

.ed_plan-expired-button {
    margin-top: 20px;
}

@keyframes confirmModalOpening {
    0% {
        opacity: 0;
        transform: translate(-50%);
    }
    to {
        opacity: 1;
        transform: translate(-50%, -50%);
    }
}

@keyframes confirmModalClosing {
    0% {
        opacity: 1;
        transform: translate(-50%, -50%);
    }
    to {
        opacity: 0;
        transform: translate(-50%);
    }
}

.confirm_modal {
    background: #fff;
    border-radius: 4px;
    width: 345px;
    max-width: 90%;
    overflow-x: hidden;
    overflow-y: auto;
    max-height: 90vh;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%);
    opacity: 0;
    outline: none;
    z-index: 20;
    text-align: center;
}

.confirm_modal--is_opening {
    animation: confirmModalOpening 0.3s forwards;
}

.confirm_modal--is_closing {
    animation: confirmModalClosing 0.3s forwards;
}

.confirm_modal-overlay {
    position: fixed;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
    background: transparent;
    transition: background 0.3s;
    outline: none;
    z-index: 20;
}

.confirm_modal-overlay--is_opening {
    background: rgba(29, 39, 51, 0.65);
}

.confirm_modal-close,
.confirm_modal-overlay--is_closing {
    background: transparent;
}

.confirm_modal-close {
    position: absolute;
    padding: 23px 25px;
    display: block;
    border: 0;
    border-radius: 0;
    font-size: 14px;
    margin: 0;
    color: #1ece96;
    top: 0;
    left: 0;
    outline: none;
    cursor: pointer;
}

.confirm_modal-close--align_right {
    right: 0;
    left: auto;
}

.confirm_modal-content {
    padding: 57px 28px 69px;
}

.confirm_modal-lottie,
.confirm_modal-smile {
    width: 120px;
    margin: 0 auto 35px;
}

.confirm_modal-header {
    text-transform: uppercase;
    color: #1ece96;
    font-size: 20px;
    line-height: 22px;
    margin: 0 0 15px;
    font-weight: 600;
}

.confirm_modal-header--secondary {
    color: #1d2733;
}

.confirm_modal-text {
    color: #21303d;
    font-size: 16px;
    line-height: 20px;
    margin: 0;
}

.confirm_modal-button {
    margin-top: 35px;
}

.confirm_modal-body-header {
    margin: 25px auto 0;
}

.confirm_modal-body-content {
    padding: 25px 22px 15px;
}

.confirm_modal-body-title {
    color: #21303d;
    font-size: 16px;
    text-transform: uppercase;
    font-weight: 600;
    line-height: 20px;
    margin: 0 0 20px;
}

.confirm_modal-body-text {
    color: #21303d;
    font-size: 14px;
    line-height: 20px;
    margin: 0 0 30px;
}

.confirm_modal-body-cancel_button {
    display: block;
    width: 100%;
    text-align: center;
    text-decoration: none;
    padding: 15px;
    margin-top: 5px;
    color: #a4a9ad;
    font-size: 12px;
    line-height: 12px;
    text-transform: uppercase;
}

.personalized_recommendation {
    background: #fff;
    padding: 25px 20px;
    display: flex;
    align-items: center;
    border-bottom: 1px solid #e2e2e2;
}

@media (max-width: 768px) {
    .personalized_recommendation {
        margin: 0 -20px;
    }
}

.personalized_recommendation-main {
    padding-right: 30px;
}

.personalized_recommendation-header {
    font-weight: 600;
    color: #727b83;
    font-size: 16px;
    letter-spacing: 0;
    margin: 0 0 15px;
}

.personalized_recommendation-text {
    font-size: 16px;
    line-height: 24px;
    letter-spacing: 0.04em;
    margin: 0;
}

.personalized_recommendation-thumb {
    margin: 0;
    flex-shrink: 0;
}

.shipment_frequency {
    background: #fff;
    padding: 20px 20px 30px;
    margin-bottom: 9px;
}

@media (max-width: 768px) {
    .shipment_frequency {
        margin: 0 -20px 9px;
    }
}

.shipment_frequency-header {
    font-weight: 600;
    color: #727b83;
    font-size: 16px;
    letter-spacing: 0;
    margin: 0 0 20px;
}

.testimonials-stars {
    display: flex;
    justify-content: center;
    margin-bottom: 8px;
}

.testimonials-stars i {
    font-size: 11px;
    color: #1ece96;
    margin: 0 3px;
}

.testimonials-quote {
    margin: 0;
    padding: 0;
    font-size: 12px;
    line-height: 18px;
    letter-spacing: 0.04em;
    text-align: center;
}

.testimonials-author,
.testimonials-quote {
    color: #4e5862;
    font-style: normal;
    font-weight: 200;
}

.testimonials-author {
    display: block;
    font-size: 10px;
    margin-top: 3px;
}

.testimonials-other {
    display: block;
    color: #727b83;
    text-align: center;
    margin: 15px auto 0;
    font-size: 10px;
    letter-spacing: 0.04em;
    font-weight: 200;
}

.answer-button-wrapper {
    margin: 21px;
}

.skip_photo {
    padding: 0 35px;
}

.skip_photo-thumb {
    margin: 24px 0 30px;
}

.skip_photo-header {
    font-size: 24px;
    line-height: 32px;
    letter-spacing: 0.04em;
    margin: 0 0 23px;
}

.skip_photo-content {
    margin-bottom: 40px;
}

.skip_photo-content p {
    font-size: 16px;
    line-height: 24px;
    color: #4e5862;
    margin: 0 0 20px;
}

.skip_photo-content p:last-child {
    margin-bottom: 0;
}

.skip_photo-cancel_button {
    margin-top: 5px;
}

.same_photo {
    padding: 50px 20px 40px;
}

.same_photo-header {
    text-align: left;
    font-size: 20px;
    line-height: 28px;
    letter-spacing: 0.04em;
    margin: 0 0 10px;
}

.same_photo-text {
    text-align: left;
    color: #4e5862;
    font-size: 16px;
    line-height: 24px;
    margin: 0;
}

.same_photo-thumb {
    width: 247px;
    height: auto;
    margin: 45px auto 50px;
}

.no_preference-thumb {
    margin: 0 auto 30px;
}

.no_preference-text {
    font-size: 18px;
    line-height: 24px;
    letter-spacing: 0.06em;
    margin: 0 0 25px;
}

.forgot_password {
    padding-top: 60px;
}

.forgot_password-thumb {
    position: absolute;
    left: 0;
    top: 0;
}

.forgot_password-header {
    font-size: 24px;
    letter-spacing: 0.04em;
    margin: 0 0 15px;
    color: #21303d;
    font-weight: 600;
}

.forgot_password-text {
    color: #727b83;
    font-size: 14px;
    line-height: 20px;
    margin: 0 0 40px;
}

.forgot_password-go_back {
    text-transform: uppercase;
    color: #1ece96;
    font-size: 10px;
    letter-spacing: 0.04em;
    margin: 15px auto 0;
    padding: 10px;
    display: block;
    border: 0;
    outline: none;
    background: none;
}

.camera {
    position: fixed;
    display: flex;
    flex-direction: column;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    background: #000;
    z-index: 20000;
}

@media (orientation: landscape) {
    .camera--face,
    .camera--id {
        flex-direction: row;
    }
}

.camera-tip {
    color: #fff;
    font-size: 18px;
    line-height: 20px;
    letter-spacing: 0.8px;
    position: absolute;
    text-align: center;
    z-index: 3;
    margin: 0;
    width: 100%;
    top: calc(((var(--vh, 1vh) * 22) - 40px) / 2);
}

.camera--face .camera-tip {
    top: calc((18% - 40px) / 2);
}

@media (orientation: portrait) {
    .camera--id .camera-tip {
        transform: rotate(90deg);
        transform-origin: top left;
        top: 0;
        left: calc(100% - (22vw - 40px) / 2);
        width: calc(100vh - 110px);
        width: calc((var(--vh, 1vh) * 100) - 110px);
    }
}

@media (orientation: landscape) {
    .camera--face .camera-tip {
        transform: rotate(-90deg);
        transform-origin: top left;
        top: 100%;
        left: calc((18% - 40px) / 2);
        width: 100vh;
        width: calc(var(--vh, 1vh) * 100);
    }
}

.camera-main {
    position: relative;
    flex: 1;
    width: 100%;
    overflow: hidden;
}

@media (orientation: landscape) {
    .camera--face .camera-main,
    .camera--id .camera-main {
        width: auto;
        height: 100%;
    }
}

.camera-main-webcam {
    display: block;
    position: absolute;
    object-fit: cover;
    position: relative;
    z-index: 1;
}

.camera--mirror .camera-main-webcam {
    transform: scaleX(-1);
}

.camera-main-mask {
    position: absolute;
    z-index: 2;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
}

@media (orientation: portrait) {
    .camera--id .camera-main-mask {
        transform: rotate(90deg);
        transform-origin: top left;
        top: 0;
        left: 100%;
        width: calc(100vh - 110px);
        width: calc((var(--vh, 1vh) * 100) - 110px);
        height: 100vw;
    }
}

@media (orientation: landscape) {
    .camera--face .camera-main-mask {
        transform: rotate(-90deg);
        transform-origin: top left;
        top: 100%;
        left: 0;
        width: 100vh;
        height: calc(100vw - 110px);
    }
}

.camera-bar {
    position: relative;
    height: 110px;
    width: 100%;
    flex-shrink: 0;
}

@media (orientation: landscape) {
    .camera--face .camera-bar,
    .camera--id .camera-bar {
        width: 110px;
        height: 100%;
    }
}

.camera-bar-button {
    position: absolute;
    outline: none;
    background: none;
    border: 0;
    padding: 0;
}

.camera-bar-button img {
    margin: 0 auto;
}

.camera-bar-button--photo {
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    height: 72px;
    width: 72px;
}

.camera-bar-button--photo img {
    width: 72px;
}

.camera-bar-button--rotate {
    left: 15px;
    top: 0;
    height: 100%;
    width: 50px;
}

@media (orientation: landscape) {
    .camera--id .camera-bar-button--rotate {
        left: auto;
        top: 15px;
        width: 100%;
        height: 50px;
    }
}

@media (orientation: landscape) {
    .camera--face .camera-bar-button--rotate {
        transform: rotate(-90deg) translateY(-15px);
        right: auto;
        top: 15px;
        width: 100%;
        height: 50px;
    }
}

.camera-bar-button--rotate img {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 38px;
    margin: 0;
}

.auto_complete {
    position: relative;
    display: flex;
    align-items: stretch;
    width: 100%;
}

.auto_complete-main {
    border: 1px solid #1dc28d;
    border-right: 0;
    background: #fff;
    height: 59px;
    flex: 1;
    display: flex;
    align-items: stretch;
}

.auto_complete-clear_button,
.auto_complete-icon {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 34px;
    height: 57px;
    background: none;
    border: 0;
    outline: none;
}

.auto_complete-clear_button i,
.auto_complete-icon i {
    color: #1d2733;
    font-size: 12px;
}

.auto_complete-icon i {
    font-size: 16px;
}

.auto_complete-input {
    border: 0;
    background: none;
    height: 57px;
    outline: none;
    color: #171717;
    font-size: 16px;
    width: 100%;
}

.auto_complete-input::placeholder {
    color: #727b83;
    text-transform: uppercase;
    letter-spacing: 0.06em;
}

.auto_complete-button {
    display: block;
    border: 0;
    outline: none;
    color: #fff;
    background: #1ece96;
    width: 78px;
    height: 59px;
    text-transform: uppercase;
    font-weight: 600;
    font-size: 14px;
    letter-spacing: 0.05em;
}

.auto_complete-list {
    position: absolute;
    top: 100%;
    left: 0;
    width: 100%;
    background: #fff;
    border: 1px solid #e2e2e2;
    padding: 7px 0;
    margin: 0;
    max-height: 200px;
    overflow-y: auto;
    z-index: 20;
}

.auto_complete-list li {
    display: block;
    margin: 0;
    padding: 0;
}

.auto_complete-list li.auto_complete__item--active {
    background: #f7f7f7;
}

.auto_complete-list li button {
    display: block;
    border: 0;
    outline: none;
    background: none;
    text-align: left;
    width: 100%;
    color: #a4a9ad;
    margin: 0;
    padding: 15px 34px;
    font-size: 16px;
    letter-spacing: 0.07em;
}

.auto_complete-list li button b {
    font-weight: 400;
    color: #21303d;
}

.medications-button {
    margin-top: 20px;
}

.medications-item {
    position: relative;
    display: block;
    margin: 20px 0 0;
    padding: 10px 50px 10px 10px;
    width: 100%;
    border-radius: 2px;
    text-align: left;
    outline: none;
    border: 0;
    background: #fff;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.04);
}

.medications-item + .medications-button {
    margin-top: 27px;
}

.medications-item-name {
    font-size: 16px;
    color: #21303d;
    line-height: 120%;
    letter-spacing: 0.06em;
    margin: 0 0 8px;
}

.medications-item-description {
    display: flex;
    color: #727b83;
    font-size: 12px;
    margin: 0;
    letter-spacing: 0.06em;
}

.medications-item-description-empty {
    text-transform: uppercase;
}

.medications-item-description-item {
    margin-right: 12px;
}

.medications-item-edit {
    position: absolute;
    top: 50%;
    right: 20px;
    transform: translateY(-50%);
}

.medications-modal {
    text-align: left;
    padding: 80px 15px 40px;
}

.medications-modal-header {
    text-align: center;
    color: #21303d;
    margin: 0 0 30px;
}

.medications-modal-remove_button {
    color: #e73737;
    margin-top: 10px;
}

.medications-modal-remove_button:not([disabled]):hover {
    color: #e73737;
}

.medications-modal .form-item {
    display: block;
    margin-bottom: 15px;
}

.medications-modal .form-item + .button {
    margin-top: 5px;
}

.sms {
    display: flex;
    justify-content: space-between;
}

.sms--has_background {
    background: #fff;
    padding: 16px 20px;
}

@media (max-width: 768px) {
    .sms--has_background {
        margin: 0 -20px 8px;
    }
}

.sms-content {
    padding-right: 15px;
}

.sms-header {
    font-size: 14px;
    line-height: 16px;
    font-weight: 400;
    letter-spacing: 0.02em;
    margin: 0 0 5px;
}

.sms--disabled .sms-header {
    color: #a4a9ad;
}

.sms-text {
    color: #4e5862;
    font-size: 12px;
    line-height: 16px;
    letter-spacing: 0.02em;
    margin: 0;
}

.sms--disabled .sms-text {
    color: #a4a9ad;
}

.sms-info {
    margin-top: 20px;
}

.sms-info-header {
    color: #21303d;
    font-weight: 400;
    font-size: 15px;
    letter-spacing: 0.02em;
    margin: 0 0 10px;
}

.sms-info-text {
    color: #4e5862;
    font-size: 12px;
    line-height: 16px;
    margin: 0;
    letter-spacing: 0.02em;
}

.sms-info-text--secondary {
    color: #1ece96;
}

.sms-info-error {
    color: #ff412d;
    font-size: 12px;
    line-height: 16px;
    margin: 0;
    letter-spacing: 0.02em;
}

.sms .switch {
    margin-top: 2px;
}

.flow_header-main {
    background: #fff;
    height: 86px;
}

.flow_header-main-left,
.flow_header-main-right {
    display: flex;
    align-items: stretch;
}

.flow_header-main-left,
.flow_header-main-right {
    width: 85px;
    flex-shrink: 0;
}

.flow_header-main-right {
    justify-content: flex-end;
    align-items: center;
}

@media (max-width: 768px) {
    .flow_header-main {
        height: 56px;
    }
}

.flow_header-progress {
    height: 4px;
    background: #e2e2e2;
}

.flow_header-progress-inner {
    background: linear-gradient(180deg, #61ade1 0%, #54c2d0 100%);
    height: 4px;
    transition: width 0.4s;
}

.flow_header-nav {
    align-self: stretch;
    display: flex;
    align-items: center;
}

.flow_header-nav-button {
    height: 100%;
    padding: 0 25px;
    position: relative;
    font-size: 17px;
    color: #1ece96;
    background: none;
    border: 0;
    cursor: pointer;
    outline: none;
}

.flow_header-main-center {
    position: relative;
}

.flow_header-main-center .flow_header-nav-button {
    position: absolute;
    top: 0;
    bottom: 0;
}

.flow_header-main-center .flow_header-nav-button.prev {
    left: 0;
    transform: translateX(-100%);
}

.flow_header-main-center .flow_header-nav-button.next {
    right: 0;
    transform: translateX(100%);
}

@media (max-width: 768px) {
    .flow_header-nav-button {
        padding: 0 20px;
    }
}

.flow_header-title {
    color: #a4a9ad;
    font-size: 15px;
    text-transform: uppercase;
    align-self: center;
}

@media (max-width: 768px) {
    .flow_header-title {
        font-size: 0.857em;
    }
}

.flow_header-info_button {
    color: #a4a9ad;
    font-size: 28px;
    padding: 30px;
    outline: none;
    border: none;
    background: none;
    cursor: pointer;
}

@media (max-width: 768px) {
    .flow_header-info_button {
        font-size: 24px;
        padding: 16px 18px;
    }
}

.no_internet {
    position: fixed;
    left: 0;
    right: 0;
    top: 86px;
    background: #1ece96;
    color: #fff;
    font-size: 1em;
    letter-spacing: 0.7px;
    line-height: 18px;
    text-align: center;
    padding: 4px 10px;
    z-index: 15;
}

@media (max-width: 768px) {
    .no_internet {
        top: 56px;
    }
}

.no_internet--no_header {
    top: 0;
}

@keyframes flowQuestionOutForward {
    0% {
        opacity: 1;
    }
    to {
        opacity: 0;
        z-index: 10;
    }
}

@keyframes flowQuestionInForward {
    0% {
        left: 100%;
        width: 100%;
    }
    to {
        left: 0;
        width: 100%;
    }
}

@keyframes flowQuestionOutBackward {
    0% {
        transform: translateX(0);
    }
    to {
        transform: translateX(100%);
    }
}

@keyframes flowQuestionInBackward {
    0% {
        opacity: 0;
    }
    to {
        opacity: 1;
    }
}

.flow-question {
    max-width: 100%;
    width: 600px;
    margin: 0 auto;
    padding: 60px 0 30px;
}

@media (max-width: 768px) {
    .flow-question {
        width: 100%;
        padding: 30px 20px;
    }
}

.flow-question--with_footer {
    height: 100%;
    display: flex;
    flex-direction: column;
}

.flow-question-main {
    flex: 1;
}

.flow-question-overlay {
    position: absolute;
    top: 90px;
    bottom: 0;
    left: 0;
    right: 0;
    background: #f7f7f7;
    z-index: 10;
    overflow-y: auto;
    -webkit-overflow-scrolling: touch;
    animation-delay: 0.1s;
    animation-duration: 0.4s;
    animation-fill-mode: forwards;
}

.flow-question-overlay--no_header {
    top: 0;
    background: #fff;
}

.flow-question-overlay--in {
    z-index: 11;
}

.flow-question-overlay--in.forward {
    left: 100%;
    animation-name: flowQuestionInForward;
}

.flow-question-overlay--in.backward {
    animation-name: flowQuestionInBackward;
}

.flow-question-overlay--out {
    z-index: 12;
    pointer-events: none;
}

.flow-question-overlay--out.forward {
    animation-name: flowQuestionOutForward;
}

.flow-question-overlay--out.backward {
    animation-name: flowQuestionOutBackward;
}

@media (max-width: 768px) {
    .flow-question-overlay {
        top: 60px;
    }
    .flow-question-overlay--no_header {
        top: 0;
    }
}

.flow-question-header {
    margin-bottom: 35px;
}

@media (max-width: 768px) {
    .flow-question-header {
        margin-bottom: 27px;
    }
}

.flow-question-header-category {
    color: #a4a9ad;
    font-size: 14px;
    line-height: 14px;
    font-weight: 600;
    text-align: center;
    margin: 0 0 22px;
    text-transform: uppercase;
}

.flow-question-header-title {
    color: #21303d;
    font-size: 22px;
    line-height: 29px;
    letter-spacing: 1.1px;
    margin-bottom: 8px;
}

.flow-question-header-category + .flow-question-header-title {
    text-align: center;
}

@media (max-width: 768px) {
    .flow-question-header-title {
        font-size: 18px;
        line-height: 24px;
        letter-spacing: 0.9px;
    }
}

.flow-question-header-description {
    color: rgba(33, 48, 61, 0.7);
    line-height: 22px;
    letter-spacing: 0.8px;
    font-size: 1.143em;
    margin-bottom: 8px;
    white-space: pre-line;
}

.flow-question-header-description p {
    font-size: inherit;
    line-height: inherit;
    letter-spacing: inherit;
}

.flow-question-header-description p:last-child {
    margin-bottom: 0;
}

@media (max-width: 768px) {
    .flow-question-header-description {
        font-size: 1em;
        line-height: 18px;
        letter-spacing: 0.7px;
    }
}

.flow-question-header-sections {
    margin-top: 20px;
}

.flow-question-header-section {
    margin-bottom: 5px;
}

.flow-question-header-section-header {
    font-size: 16px;
    line-height: 22px;
    font-weight: 600;
    margin: 0 0 3px;
}

.flow-question-header-section p {
    font-size: 16px;
    line-height: 22px;
    margin: 0 0 17px;
}

.flow-question-image img {
    display: block;
    max-width: 100%;
    height: auto;
    margin: 55px auto;
}

@media (max-width: 768px) {
    .flow-question-image img {
        margin: 40px auto;
    }
}

.flow-question-button {
    margin-top: 40px;
}

.flow-products {
    border: 1px solid #e2e2e2;
    background: #fff;
}

@media (max-width: 768px) {
    .flow-products {
        margin: 0 -20px;
        border-left: 0;
        border-right: 0;
    }
}

.flow-products-item {
    border: 0;
    border-bottom: 1px solid #e2e2e2;
    width: 100%;
    outline: none;
    appearance: none;
    position: relative;
    height: 150px;
    text-decoration: none;
    margin: 0;
    background: none;
    cursor: pointer;
    text-align: left;
    transition: background-color 0.3s;
}

.flow-products-item--is_active,
.flow-products-item:hover {
    background-color: #f7f7f7;
}

@media (max-width: 768px) {
    .flow-products-item {
        padding: 20px;
    }
}

.flow-products-info {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    display: flex;
    justify-content: space-between;
    padding: 20px 35px 20px 30px;
}

.flow-products-item--narrow .flow-products-info {
    padding-left: 20px;
    padding-right: 20px;
}

.flow-products-name,
.flow-products-price {
    color: #21303d;
    font-size: 1.143em;
    line-height: 19px;
    letter-spacing: 1.14px;
}

.flow-products-name strong,
.flow-products-price strong {
    font-weight: 600;
}

@media (max-width: 768px) {
    .flow-products-name,
    .flow-products-price {
        font-size: 1em;
        letter-spacing: 1px;
        line-height: 17px;
    }
}

.flow-products-price {
    text-align: right;
}

.flow-products-price-tilde {
    color: #727b83;
}

.flow-products-image {
    display: block;
    margin: 0;
    position: absolute;
    height: 85px;
    width: auto;
    left: 50%;
    bottom: 0;
    transform: translateX(calc(-50% + 50px));
}

.flow-products-no_preference {
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
    border: 0;
    border-bottom: 1px solid #e2e2e2;
    width: 100%;
    color: #21303d;
    font-size: 1.143em;
    line-height: 19px;
    letter-spacing: 1.14px;
    padding: 26px 30px;
    text-decoration: none;
    background: none;
    cursor: pointer;
    outline: none;
    text-align: left;
    transition: background-color 0.3s;
}

.flow-products-no_preference-left,
.flow-products-no_preference-right {
    display: block;
}

.flow-products-no_preference-right {
    width: 70px;
    text-align: right;
    flex-shrink: 0;
}

.flow-products-no_preference--is_active,
.flow-products-no_preference:hover {
    background-color: #f7f7f7;
}

@media (max-width: 768px) {
    .flow-products-no_preference {
        font-size: 1em;
        letter-spacing: 1px;
        line-height: 17px;
        padding: 20px;
    }
}

.flow-products .flow-products-item:last-child,
.flow-products .flow-products-no_preference:last-child {
    border-bottom: 0;
}

.flow-products-amount {
    display: flex;
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    height: 73px;
    overflow: hidden;
}

@media (max-width: 768px) {
    .flow-products-amount {
        justify-content: center;
    }
}

.flow-products-amount-image {
    height: 73px;
    width: auto;
    display: block;
    margin: 0 0 0 -61px;
}

.flow-products-amount--narrow .flow-products-amount-image {
    margin-left: -70px;
}

@media (max-width: 768px) {
    .flow-products-amount--mobile_narrow .flow-products-amount-image {
        margin-left: -80px;
    }
}

@media (max-width: 768px) {
    .flow-products-amount--mobile_wide .flow-products-amount-image {
        margin-left: -50px;
    }
}

.flow-products-amount .flow-products-amount-image:first-child {
    margin-left: 0;
    z-index: 20;
}

.flow-products-amount .flow-products-amount-image:nth-child(2) {
    z-index: 19;
}

.flow-products-amount .flow-products-amount-image:nth-child(3) {
    z-index: 18;
}

.flow-products-amount .flow-products-amount-image:nth-child(4) {
    z-index: 17;
}

.flow-products-amount .flow-products-amount-image:nth-child(5) {
    z-index: 16;
}

.flow-products-amount .flow-products-amount-image:nth-child(6) {
    z-index: 15;
}

.flow-products-amount .flow-products-amount-image:nth-child(7) {
    z-index: 14;
}

.flow-products-amount .flow-products-amount-image:nth-child(8) {
    z-index: 13;
}

.flow-products-amount .flow-products-amount-image:nth-child(9) {
    z-index: 12;
}

.flow-products-amount .flow-products-amount-image:nth-child(10) {
    z-index: 11;
}

.flow-products-label {
    position: absolute;
    display: block;
    top: 45px;
    right: 0;
    background: #85e4ca;
    text-transform: uppercase;
    font-weight: 600;
    font-size: 1em;
    letter-spacing: 1px;
    line-height: 22px;
    padding: 0 8px;
    color: #fff;
}

@keyframes hintSidebarOut {
    0% {
        right: 0;
    }
    to {
        right: -430px;
    }
}

@keyframes hintSidebarIn {
    0% {
        right: -430px;
    }
    to {
        right: 0;
    }
}

@keyframes hintSidebarOutMobile {
    0% {
        opacity: 1;
    }
    to {
        opacity: 0;
    }
}

@keyframes hintSidebarInMobile {
    0% {
        opacity: 0;
    }
    to {
        opacity: 1;
    }
}

@keyframes hintSidebarOverlayOut {
    0% {
        opacity: 1;
    }
    to {
        opacity: 0;
    }
}

@keyframes hintSidebarOverlayIn {
    0% {
        opacity: 0;
    }
    to {
        opacity: 1;
    }
}

.flow-hint_sidebar {
    width: 430px;
    position: absolute;
    top: 0;
    bottom: 0;
    right: 0;
    background: #fff;
    box-shadow: 0 2px 8px 0 rgba(0, 0, 0, 0.3);
    outline: none;
    right: -430px;
    z-index: 202;
}

.flow-hint_sidebar-inner {
    display: flex;
    flex-direction: column;
    max-height: 100%;
}

.flow-hint_sidebar--animation_in {
    animation: 0.6s hintSidebarIn forwards;
}

.flow-hint_sidebar--animation_out {
    animation: 0.6s hintSidebarOut forwards;
}

@media (max-width: 768px) {
    .flow-hint_sidebar {
        left: 0;
        width: 100%;
        transform: translateX(0);
        opacity: 0;
    }
    .flow-hint_sidebar--animation_in {
        animation: 0.4s hintSidebarInMobile forwards;
    }
    .flow-hint_sidebar--animation_out {
        animation: 0.4s hintSidebarOutMobile forwards;
    }
}

.flow-hint_sidebar-overlay {
    position: fixed;
    top: 0;
    right: 0;
    left: 0;
    bottom: 0;
    z-index: 200;
}

.flow-hint_sidebar-overlay:after {
    content: "";
    display: block;
    background: rgba(0, 0, 0, 0.25);
    position: absolute;
    z-index: 201;
    transition: opacity 0.4s;
    top: 0;
    right: 0;
    left: 0;
    bottom: 0;
}

.flow-hint_sidebar-overlay--animation_in:after {
    animation: 0.6s hintSidebarOverlayIn forwards;
}

.flow-hint_sidebar-overlay--animation_out:after {
    animation: 0.6s hintSidebarOverlayOut forwards;
}

.flow-hint_sidebar-header {
    position: relative;
    padding-left: 100px;
    padding-right: 75px;
    height: 100px;
    display: flex;
    align-items: flex-start;
    flex-shrink: 0;
}

.flow-hint_sidebar-header--secondary {
    height: 56px;
}

@media (max-width: 768px) {
    .flow-hint_sidebar-header {
        height: 56px;
        padding-left: 65px;
        padding-right: 65px;
    }
}

.flow-hint_sidebar-logo_wrapper {
    width: 84px;
    height: 100px;
    overflow: hidden;
    display: block;
    margin: 0;
    position: absolute;
    left: 0;
    top: 0;
}

.flow-hint_sidebar-logo_wrapper img {
    max-width: none;
    margin: -43px 0 0 -60px;
}

@media (max-width: 768px) {
    .flow-hint_sidebar-logo_wrapper {
        display: none;
    }
}

.flow-hint_sidebar-title {
    text-transform: uppercase;
    letter-spacing: 0.75px;
    color: #a4a9ad;
    font-size: 15px;
    line-height: 18px;
    padding-top: 36px;
}

@media (max-width: 768px) {
    .flow-hint_sidebar-title {
        text-align: center;
        flex: 1;
        font-size: 0.857em;
        letter-spacing: 0.6px;
        padding-top: 0;
        line-height: 14px;
        align-self: center;
    }
}

.flow-hint_sidebar-close_button {
    position: absolute;
    font-size: 28px;
    color: #727b83;
    padding: 10px;
    border: 0;
    margin: 0;
    display: block;
    top: 17px;
    right: 21px;
    background: none;
    cursor: pointer;
    outline: none;
}

@media (max-width: 768px) {
    .flow-hint_sidebar-close_button {
        top: 1px;
        right: 8px;
    }
}

.flow-hint_sidebar-close_button--secondary {
    font-size: 15px;
    color: #1ece96;
    top: 11px;
    right: 11px;
}

.flow-hint_sidebar-main {
    overflow-y: auto;
    -webkit-overflow-scrolling: touch;
    padding: 40px 55px;
}

@media (max-width: 768px) {
    .flow-hint_sidebar-main {
        padding: 35px 33px;
    }
}

.flow-hint_sidebar-main--secondary {
    padding: 0 45px;
}

.flow-hint_sidebar-main-header {
    text-align: center;
    color: #21303d;
    font-size: 18px;
    letter-spacing: 0.8;
    line-height: 22px;
    margin-bottom: 30px;
}

.flow-hint_sidebar-chat {
    margin-bottom: 4px;
}

.flow-hint_sidebar-chat .static_chat-msg {
    padding-left: 0;
    padding-right: 0;
    padding-bottom: 26px;
}

.flow-hint_sidebar-chat .static_chat-msg-bubble-wrap {
    max-width: 100%;
}

.flow-hint_sidebar-text {
    margin-top: 27px;
}

.flow-hint_sidebar-text-header {
    color: #21303d;
    text-transform: uppercase;
    font-weight: 600;
}

.flow-hint_sidebar-text-header,
.flow-hint_sidebar-text p {
    letter-spacing: 0.7px;
    line-height: 17px;
    margin-bottom: 15px;
    font-size: 1em;
}

.flow-hint_sidebar-text a {
    word-break: break-all;
}

.flow-hint_sidebar-player {
    position: relative;
    width: 100%;
    padding-bottom: 67%;
    margin-bottom: 25px;
}

.flow-hint_sidebar-player iframe {
    border: 0;
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
}

.flow-hint_sidebar-button {
    margin-bottom: 20px;
}

.flow-hint_sidebar-button--secondary {
    margin: 30px 0 0;
}

.flow-hint_sidebar-button + .ghost_button-wrap {
    padding-top: 15px;
}

.flow-hint_sidebar-additional_text {
    text-align: center;
    color: rgba(33, 48, 61, 0.7);
    font-size: 12px;
    line-height: 18px;
}

.flow-hint_sidebar-thumb {
    margin: 0 auto 32px;
}

.flow-hint_sidebar-heading {
    font-size: 24px;
    line-height: 32px;
    font-weight: 600;
    margin: 0 0 20px;
    color: #21303d;
}

.flow-hint_sidebar-paragraph {
    font-size: 14px;
    line-height: 22px;
    letter-spacing: 0.7px;
    color: #21303d;
}

.flow-photo-item {
    margin-bottom: 30px;
    position: relative;
    background: #fff;
    border-radius: 5px;
    border: 1px solid #e2e2e2;
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
    height: 235px;
}

@media (max-width: 768px) {
    .flow-photo-item {
        height: 170px;
    }
}

.flow-photo-item--has_error:before {
    content: "";
    display: block;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    position: absolute;
    background: #1d2733;
    z-index: 4;
}

.flow-photo-item-upload {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: #fff;
    z-index: 10;
    text-align: center;
}

.flow-photo-item-upload--center {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
}

.flow-photo-item-upload-text {
    text-transform: uppercase;
    color: rgba(33, 48, 61, 0.5);
    font-size: 12px;
    line-height: 12px;
    letter-spacing: 0.6px;
    position: absolute;
    top: 85px;
    left: 0;
    right: 0;
}

.flow-photo-item-upload--center .flow-photo-item-upload-text {
    position: static;
}

@media (max-width: 768px) {
    .flow-photo-item-upload-text {
        top: 59px;
    }
}

.flow-photo-item-upload-progress {
    position: absolute;
    top: 110px;
    left: 50%;
    transform: translateX(-50%);
    display: flex;
    align-items: center;
    width: 100%;
    padding: 0 20px;
}

@media (max-width: 768px) {
    .flow-photo-item-upload-progress {
        top: 84px;
    }
}

.flow-photo-item-upload-progress-bar {
    background: #efefef;
    border-radius: 4px;
    height: 8px;
    width: 100%;
}

.flow-photo-item-upload-progress-bar-inner {
    background: #1ece96;
    border-radius: 4px;
    height: 8px;
    transition: width 0.3s;
}

.flow-photo-item-upload-progress-text {
    padding-left: 8px;
    color: rgba(33, 48, 61, 0.5);
    font-size: 10px;
    line-height: 10px;
}

.flow-photo-item-upload-button {
    position: absolute;
    bottom: 18px;
    width: 202px;
    left: 50%;
    transform: translateX(-50%);
}

.flow-photo-item-upload--center .flow-photo-item-upload-button {
    position: static;
    margin-top: 18px;
    transform: none;
}

.flow-photo-placeholder {
    position: absolute;
    left: 0;
    width: 200px;
    margin: 0;
}

.flow-photo-placeholder--photo {
    bottom: 0;
}

@media (max-width: 768px) {
    .flow-photo-placeholder {
        width: 140px;
    }
}

.flow-photo-title {
    text-transform: uppercase;
    font-weight: 600;
}

.flow-photo-description,
.flow-photo-title {
    margin-bottom: 20px;
}

.flow-photo-description,
.flow-photo-title {
    display: block;
    color: #a4a9ad;
    font-size: 16px;
    letter-spacing: 0.6px;
}

.flow-photo-item--has_photo .flow-photo-description,
.flow-photo-item--has_photo .flow-photo-title {
    display: none;
}

@media (max-width: 768px) {
    .flow-photo-description,
    .flow-photo-title {
        font-size: 12px;
        margin-bottom: 10px;
    }
}

.flow-photo-background_image {
    position: absolute;
    z-index: 1;
    display: block;
    margin: 0;
    height: 100%;
    max-width: none;
    width: auto;
}

.flow-photo-item--has_photo .flow-photo-background_image {
    width: 100%;
    height: auto;
    filter: blur(10px);
}

.flow-photo-image {
    display: block;
    position: relative;
    z-index: 2;
    margin: 0;
    height: 100%;
    max-width: none;
    align-self: flex-end;
    width: auto;
}

.flow-photo-item--has_photo .flow-photo-image {
    width: auto;
    height: auto;
    max-width: 100%;
    max-height: 100%;
    align-self: center;
}

.flow-photo .flow-photo-item:last-child {
    margin-bottom: 0;
}

.flow-photo-button {
    display: block;
    width: 52px;
    height: 52px;
    border: 0;
    outline: none;
    color: #fff;
    border-radius: 50%;
    font-size: 24px;
    background: #1ece96;
    cursor: pointer;
    z-index: 5;
    padding: 0;
    text-align: center;
}

.flow-photo-button .icon-camera {
    display: block;
    transform: translateY(2px);
}

.flow-photo-button--hidden {
    visibility: hidden;
}

@media (max-width: 768px) {
    .flow-photo-button {
        width: 37px;
        height: 37px;
        font-size: 16px;
    }
}

.flow-photo-button--has_image {
    padding: 0;
}

.flow-photo-item--has_photo .flow-photo-button {
    display: none;
}

.flow-photo-button-image {
    width: 52px;
    height: 52px;
}

@media (max-width: 768px) {
    .flow-photo-button-image {
        width: 37px;
        height: 37px;
    }
}

.flow-photo-button-label {
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    top: 0;
    cursor: pointer;
    z-index: 4;
    display: flex;
    align-items: center;
    padding: 0 40px 0 230px;
    text-align: left;
}

@media (max-width: 768px) {
    .flow-photo-button-label {
        padding: 0 20px 0 157px;
    }
}

.flow-photo-button-label-inner {
    display: block;
}

.flow-photo-button-label--for_desktop {
    display: none;
}

@media (min-width: 1025px) {
    .flow-photo-button-label--for_desktop {
        display: flex;
    }
}

.flow-photo-button-label--for_mobile {
    display: none;
}

@media (max-width: 1024px) {
    .flow-photo-button-label--for_mobile {
        display: flex;
    }
}

.flow-photo-text {
    position: absolute;
    color: #a4a9ad;
    text-transform: uppercase;
    letter-spacing: 0.6px;
    line-height: 14px;
    bottom: 37px;
    left: 0;
    width: 100%;
    text-align: center;
    font-size: 0.857em;
    z-index: 5;
}

@media (max-width: 768px) {
    .flow-photo-text {
        bottom: 25px;
    }
}

.flow-photo-text--dark {
    color: hsla(0, 0%, 100%, 0.5);
    display: inline-block;
    padding-top: 5px;
}

.flow-photo-item--has_photo .flow-photo-text {
    color: #fff;
    bottom: 37px;
}

@media (max-width: 768px) {
    .flow-photo-item--has_photo .flow-photo-text {
        bottom: 17px;
    }
}

.flow-photo-item--has_error .flow-photo-text {
    color: #fff;
    bottom: 30px;
}

@media (max-width: 768px) {
    .flow-photo-item--has_error .flow-photo-text {
        bottom: 15px;
    }
}

.flow-photo-submit_button {
    margin-top: 30px;
}

@media (max-width: 768px) {
    .flow-photo-submit_button {
        margin-top: 20px;
    }
}

.flow-photo-security_icons {
    margin: 25px 0;
}

@media (max-width: 768px) {
    .flow-photo-security_icons {
        margin: -10px 0 20px;
    }
}

.flow-photo-error_image {
    position: absolute;
    width: 37px;
    height: 37px;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -37px);
}

.flow-pharmacy-item {
    background: #fff;
    margin-bottom: 20px;
    padding: 35px 20px;
    position: relative;
}

.flow-pharmacy-item--pharmacy {
    padding-top: 35px;
}

@media (max-width: 768px) {
    .flow-pharmacy-item {
        margin-left: -20px;
        margin-right: -20px;
        border-left: 0;
        border-right: 0;
    }
}

.flow-pharmacy .flow-pharmacy-item:last-child {
    margin-bottom: 0;
}

.flow-pharmacy-header {
    margin-bottom: 15px;
    display: flex;
    justify-content: space-between;
}

.flow-pharmacy-title {
    color: #21303d;
    font-weight: 600;
    font-size: 24px;
    letter-spacing: 0;
    line-height: 28px;
}

.flow-pharmacy-title--secondary {
    padding-left: 30px;
    margin-bottom: 22px;
}

.flow-pharmacy-discount {
    text-transform: uppercase;
    position: absolute;
    top: 22px;
    right: 0;
    height: 22px;
    line-height: 1em;
    background: #1ece96;
    color: #fff;
    font-size: 10px;
    letter-spacing: 1px;
    font-weight: 600;
    padding: 5px 10px 1px;
}

.flow-pharmacy-text {
    color: #21303d;
    font-size: 1.143em;
    letter-spacing: 1.14px;
    line-height: 19px;
}

@media (max-width: 768px) {
    .flow-pharmacy-text {
        font-size: 1em;
        letter-spacing: 1px;
        line-height: 17px;
    }
}

.flow-pharmacy-list {
    display: block;
    margin: 15px 0 50px;
    padding: 0;
}

.flow-pharmacy-list-item {
    display: block;
    margin: 0;
    color: rgba(33, 48, 61, 0.7);
    font-size: 16px;
    letter-spacing: 0.32px;
    line-height: 26px;
    padding-left: 13px;
    position: relative;
}

.flow-pharmacy-list-item:before {
    content: "";
    display: block;
    position: absolute;
    width: 5px;
    height: 5px;
    background: rgba(33, 48, 61, 0.7);
    border-radius: 50%;
    left: 0;
    top: 10px;
}

.flow-pharmacy-image {
    display: block;
    margin: 0 auto 30px;
    max-width: 100%;
    height: auto;
}

.flow-pharmacy-different_pharmacy_link {
    display: block;
    text-align: center;
    padding: 15px 0;
    color: #727b83;
    text-decoration: underline;
    font-size: 14px;
    letter-spacing: 0.6px;
}

.flow-pharmacy-address {
    color: #21303d;
    font-size: 16px;
    line-height: 22px;
    margin-bottom: 15px;
}

.flow-pharmacy-address-edit {
    margin-bottom: 30px;
}

.flow-question--payment {
    background: #fff;
}

.flow-payment .user_data_card {
    background: #fff;
    padding: 20px 35px 30px 20px;
    border: 0;
}

.flow-payment .user_data_card:after {
    color: #a4a9ad;
}

@media (max-width: 768px) {
    .flow-payment .user_data_card {
        margin: 0 -20px 8px;
        width: auto;
    }
}

.flow-payment .ed_plan-product {
    margin: 45px 0 30px;
}

.flow-payment-product_form {
    margin-top: -10px;
    margin-bottom: 30px;
}

.flow-payment-card {
    margin-bottom: 8px;
    background: #fff;
    padding: 20px 20px 25px;
}

@media (max-width: 768px) {
    .flow-payment-card {
        margin: 0 -20px 8px;
    }
}

.flow-payment-info {
    margin-bottom: 38px;
}

.flow-payment-info-old_price {
    display: block;
    font-size: 10px;
    font-weight: 600;
    letter-spacing: 0.4px;
    text-decoration: line-through;
    color: #a4a9ad;
    line-height: 10px;
    margin-bottom: 3px;
    text-decoration-color: #727b83;
    margin-top: -5px;
}

.flow-payment-info-wrap {
    margin-bottom: 8px;
    background: #fff;
    padding: 15px 25px 2px;
}

@media (max-width: 768px) {
    .flow-payment-info-wrap {
        margin: 0 -20px 8px;
    }
}

.flow-payment-info--highlighted {
    color: #1ece96;
}

.flow-payment-info-header {
    color: #21303d;
    font-size: 1.143em;
    text-transform: uppercase;
    letter-spacing: 1.14px;
    line-height: 34px;
    border-bottom: 1px solid hsla(208, 7%, 48%, 0.4);
    margin-bottom: 20px;
    position: relative;
}

.flow-payment-info-header-button {
    position: absolute;
    right: 0;
    font-size: 17px;
    color: #a4a9ad;
    top: 50%;
    transform: translateY(-50%);
}

.flow-payment-info-row {
    display: flex;
    justify-content: space-between;
    margin-bottom: 15px;
    letter-spacing: 1.14px;
    font-size: 14px;
}

.flow-payment-info-row--align_bottom {
    align-items: flex-end;
}

.flow-payment-info-row--summary {
    margin-top: 25px;
}

.flow-payment-info-row--indented {
    padding-left: 20px;
}

.flow-payment-info-row .flow-payment-info-col:first-child {
    padding-right: 10px;
}

.flow-payment-info-row .flow-payment-info-col:last-child {
    padding-left: 10px;
    text-align: right;
}

.flow-payment-info-row--bonus {
    color: #1ece96;
}

.flow-payment-info-additional {
    color: #a4a9ad;
    font-size: 14px;
    line-height: 20px;
    max-width: 306px;
    margin: 0 auto;
    text-align: center;
}

.flow-payment-info-cancelling {
    letter-spacing: 0.86px;
    color: #a4a9ad;
    font-size: 14px;
    line-height: 14px;
    margin: 14px 0;
}

.flow-payment-info .flow-payment-info-row:last-child {
    margin-bottom: 0;
}

.flow-payment-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 20px 20px 0;
    background: #fff;
}

@media (max-width: 768px) {
    .flow-payment-header {
        margin: 0 -20px;
    }
}

.flow-payment-header-title {
    font-size: 32px;
    line-height: 32px;
    color: #21303d;
    font-weight: 600;
}

.flow-payment-header-image {
    display: block;
    width: 115px;
    height: 115px;
}

.flow-payment-products-wrap {
    margin-bottom: 8px;
    background: #fff;
    padding: 20px 20px 5px;
}

@media (max-width: 768px) {
    .flow-payment-products-wrap {
        margin: 0 -20px 16px;
    }
}

.flow-payment-products-wrap > .flow-payment-product {
    border: 1px solid #e2e2e2;
}

@media (max-width: 768px) {
    .flow-payment-products-wrap > .flow-payment-product {
        margin: 0 0 16px;
    }
}

.flow-payment-product {
    display: flex;
    align-items: stretch;
    margin-bottom: 50px;
    background: #fff;
    margin: 0 0 16px;
    padding: 38px 25px 45px;
    position: relative;
}

.flow-payment-product + .flow-payment-product {
    margin-top: -9px;
}

@media (max-width: 768px) {
    .flow-payment-product {
        margin: 0 -20px 16px;
    }
}

.flow-payment-product-no_preference {
    letter-spacing: 1px;
    font-size: 1em;
    line-height: 19px;
}

.flow-payment-product-no_preference i {
    color: #1ece96;
}

@media (max-width: 768px) {
    .flow-payment-product-no_preference {
        margin: 15px auto 0;
    }
}

.flow-payment-product-main {
    padding-left: 20px;
    max-width: 220px;
    display: flex;
    flex-direction: column;
    justify-content: center;
}

.flow-payment-product-thumb {
    flex-shrink: 0;
    display: flex;
    justify-content: center;
    align-items: center;
}

.flow-payment-product-thumb img {
    width: 94px;
    height: 94px;
    display: block;
    margin: 0;
}

.flow-payment-product-name {
    color: #21303d;
    font-size: 18px;
    margin: 0 0 5px;
    letter-spacing: 0.72px;
}

.flow-payment-product-info {
    margin: 0;
    padding: 0;
    color: #727b83;
    font-size: 12px;
    letter-spacing: 0.48px;
}

.flow-payment-product-info li {
    display: block;
    margin: 0 0 5px;
    padding: 0;
}

.flow-payment-product-info i {
    color: #1ece96;
    margin-right: 5px;
}

.flow-payment-product-edit {
    position: absolute;
    top: 13px;
    right: 13px;
}

.flow-payment-pricing {
    margin-bottom: 40px;
}

.flow-payment-form--secondary {
    margin-top: 30px;
}

.flow-payment-form-inner {
    margin-top: 25px;
    padding: 0 20px;
}

.flow-payment-form-sms + .flow-payment-form-inner .flow-payment-button {
    margin-top: 0;
}

.flow-payment-form-top_buttons {
    display: none;
}

.flow-payment-form-top_buttons--is_visible {
    display: block;
}

.flow-payment-form-cc_form {
    display: none;
}

.flow-payment-form-top_buttons--is_visible + .flow-payment-form-cc_form {
    margin-top: 25px;
}

.payment_button + .flow-payment-form-cc_form {
    margin-top: 30px;
}

.flow-payment-form-cc_form--is_visible {
    display: block;
}

.flow-payment-form-header {
    margin-bottom: 25px;
}

.flow-payment-form-security_icons {
    margin-top: 30px;
    margin: 30px 0 15px;
}

.flow-payment-form-label {
    font-size: 14px;
    margin-bottom: 25px;
    line-height: 14px;
    color: #727b83;
    text-transform: uppercase;
    display: block;
}

.flow-payment-form-card_number {
    background: #fff;
    margin: 0 0 10px;
    padding: 20px 20px 25px;
    position: relative;
}

@media (max-width: 768px) {
    .flow-payment-form-card_number {
        margin: 0 -20px 8px;
    }
}

.flow-payment-form-sms {
    margin-top: 8px;
    margin-bottom: 30px;
}

.flow-payment-form-checkbox {
    margin-bottom: 40px;
    padding: 10px 5px 0;
}

.flow-payment-form-checkbox .checkbox-label {
    color: #727b83;
    text-transform: uppercase;
    font-size: 12px;
}

.flow-payment-form-checkbox .checkbox-label a {
    color: #a4a9ad;
}

.flow-payment-form-method_header {
    color: #21303d;
    font-size: 16px;
    text-transform: uppercase;
    font-weight: 600;
    margin: 0 0 15px;
}

.flow-payment-form-credit_card_button {
    height: 56px;
    border: 2px solid #ff412d;
    border-radius: 28px;
    display: block;
    width: 100%;
    text-transform: uppercase;
    color: #ff412d;
    font-size: 14px;
    font-weight: 600;
    background: #fff;
    outline: none;
    letter-spacing: 0.7px;
    cursor: pointer;
    margin-top: 19px;
}

.flow-payment-form-footer {
    display: flex;
    justify-content: space-between;
    margin: 35px 0 20px;
}

.flow-payment-form--secondary + .flow-payment-form-footer {
    justify-content: center;
}

@media (max-width: 768px) {
    .flow-payment-form-footer {
        display: block;
        margin: 30px 0 15px;
    }
}

.flow-payment-button {
    margin-top: 24px;
}

.flow-payment-chat {
    background: #fff;
    padding: 0 25px 25px;
    margin-bottom: 8px;
}

@media (max-width: 768px) {
    .flow-payment-chat {
        margin-left: -20px;
        margin-right: -20px;
    }
}

.flow-payment-info-wrap + .flow-payment-chat {
    margin-top: -8px;
}

.flow-payment-chat + .payment_button {
    margin-top: 30px;
}

.flow-payment-chat .static_chat-msg {
    padding: 0;
    margin-top: -30px;
}

.flow-payment-chat .chat-msg-bubble-wrap,
.flow-payment-chat .static_chat-msg-bubble-wrap {
    max-width: 100%;
}

.flow-payment .card-data-updated-msg {
    margin: 55px 0 -25px;
}

@keyframes flowQuestionTextLoadingAnimation {
    to {
        transform: rotate(1turn);
    }
}

.flow-question-text_field {
    position: relative;
}

.flow-question-text_field-input {
    outline: none;
    height: 59px;
    width: 100%;
    background: #fff;
    border: 1px solid #e2e2e2;
    display: block;
    padding-left: 12px;
    padding-right: 12px;
    color: #21303d;
    font-size: 1.143em;
    letter-spacing: 0.7px;
    -webkit-appearance: none;
    border-radius: 0;
    transition: border-color 0.3s;
}

.flow-question-text_field--has_error .flow-question-text_field-input,
.flow-question-text_field-input--has_error {
    border-color: #ff412d;
}

.flow-question-text_field-error {
    text-align: center;
    color: #ff412d;
    font-size: 1.143em;
    letter-spacing: 0.7;
    line-height: 19px;
    margin-top: 20px;
}

.flow-question-text_field--is_loading:after {
    content: "\E803";
    z-index: 2;
    font-size: 25px;
    position: absolute;
    display: block;
    right: 15px;
    top: calc(50% - 12.5px);
    color: #1ece96;
    animation: 1.5s linear flowQuestionTextLoadingAnimation infinite;
}

.flow-question-textarea {
    background: #fff;
    border: 1px solid #e2e2e2;
    height: 146px;
    width: 100%;
    resize: none;
    outline: none;
    padding: 25px 17px;
    color: #21303d;
    font-size: 1.429em;
    letter-spacing: 1.43px;
    line-height: 24px;
    display: block;
    -webkit-appearance: none;
    border-radius: 0;
}

@media (max-width: 768px) {
    .flow-question-textarea {
        width: calc(100% + 40px);
        margin: 0 -20px;
        border-left: 0;
        border-right: 0;
    }
}

.flow-choice_list {
    background: #fff;
    overflow: hidden;
}

.flow-choice_list-item {
    border: 1px solid #e2e2e2;
    border-bottom: 0;
    position: relative;
}

.flow-choice_list-item--is_active {
    border-color: #e2e2e2;
}

.flow-choice_list-item--is_active + .flow-choice_list-item {
    border-top-color: #e2e2e2;
}

@media (max-width: 768px) {
    .flow-choice_list-item {
        border-left: 0;
        border-right: 0;
    }
}

.flow-choice_list .flow-choice_list-item--is_active:last-child,
.flow-choice_list .flow-choice_list-item:last-child {
    border-bottom: 1px solid #e2e2e2;
}

.flow-choice_list-link {
    line-height: 19px;
    text-decoration: none;
    letter-spacing: 1.14px;
    color: #21303d;
    display: block;
    padding: 20px 60px 21px 20px;
    background: none;
    border: 0;
    width: 100%;
    text-align: left;
    cursor: pointer;
    transition: background-color 0.3s;
    outline: none;
}

@media (max-width: 768px) {
    .flow-choice_list-link {
        font-size: 1em;
        letter-spacing: 1px;
        line-height: 17px;
    }
}

.flow-choice_list-item--is_active .flow-choice_list-link,
.flow-choice_list-link:hover {
    color: #21303d;
    background-color: #f7f7f7;
}

.flow-choice_list-info {
    color: #a4a9ad;
    width: 28px;
    height: 28px;
    position: absolute;
    text-decoration: none;
    background: hsla(0, 0%, 94%, 0.48);
    border-radius: 50%;
    padding: 0;
    text-align: center;
    border: 1px solid #e2e2e2;
    right: 15px;
    top: 50%;
    transform: translateY(-50%);
    cursor: pointer;
    outline: none;
}

.flow-choice_list-info:hover {
    color: #a4a9ad;
}

@media (max-width: 768px) {
    .flow-choice_list {
        margin: 0 -20px;
    }
}

.flow-checkbox_list {
    background: #fff;
    border: 1px solid #e2e2e2;
}

@media (max-width: 768px) {
    .flow-checkbox_list {
        margin: 0;
        border-left: 0;
        border-right: 0;
        margin-left: -20px;
        margin-right: -20px;
    }
}

.flow-checkbox_list-main {
    position: relative;
}

.flow-checkbox_list-inner {
    max-height: 312px;
    overflow-y: scroll;
    -webkit-overflow-scrolling: touch;
}

.flow-checkbox_list-item {
    padding: 17px 12px;
    border-top: 1px solid #e2e2e2;
}

.flow-checkbox_list .checkbox-input:checked + .checkbox-label:before {
    border-color: #1ece96;
    background: #1ece96;
}

.flow-checkbox_list .checkbox-label {
    text-transform: none;
    font-size: 1.143em;
    letter-spacing: 1.14px;
    line-height: 19px;
}

.flow-checkbox_list .checkbox-label:after {
    color: #fff;
}

@media (max-width: 768px) {
    .flow-checkbox_list .checkbox-label {
        font-size: 1em;
        letter-spacing: 1px;
        line-height: 17ox;
    }
}

.flow-checkbox_list .flow-checkbox_list-item:first-child {
    border-top: 0;
}

.flow-personal_info-image {
    margin: 35px auto 33px;
    width: 268px;
    height: 71px;
}

@media (max-width: 768px) {
    .flow-personal_info-image {
        margin: 0 auto 20px;
    }
}

.flow-personal_info-sms {
    margin-top: 20px;
}

.flow-thank_you {
    border: 4px solid #f7f7f7;
}

.flow-thank_you img {
    display: block;
    width: 100%;
    height: auto;
    margin: 0;
}

.flow-be_notified-image {
    max-width: 450px;
    width: 100%;
    height: auto;
    display: block;
    margin: 0 auto 30px;
}

.flow-be_notified-button {
    margin-top: 20px;
}

@media (max-width: 768px) {
    .flow-be_notified-button {
        margin-top: 10px;
    }
}

.flow-help-button {
    margin-top: 20px;
}

@media (max-width: 768px) {
    .flow-help-button {
        margin-top: 10px;
    }
}

.flow-blood_pressure {
    margin-bottom: 40px;
    text-align: center;
    color: #21303d;
    font-size: 25px;
    letter-spacing: 1.25px;
    line-height: 1em;
}

.flow-blood_pressure > span {
    display: inline-block;
}

.flow-blood_pressure-diastolic,
.flow-blood_pressure-systolic {
    padding-top: 25px;
    position: relative;
}

.flow-blood_pressure-diastolic:before,
.flow-blood_pressure-systolic:before {
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
}

.flow-blood_pressure-systolic:before {
    content: "\E804";
    color: #1ece96;
    font-size: 13px;
    top: 0;
}

.flow-blood_pressure-diastolic:before {
    content: "\E806";
    color: #9ce0fd;
    font-size: 11px;
    top: 1px;
}

.flow-shipment_frequency-item {
    margin-bottom: 23px;
    border: 1px solid #e2e2e2;
    background: #fff;
    text-align: center;
    padding: 20px 20px 35px;
}

@media (max-width: 768px) {
    .flow-shipment_frequency-item {
        margin-left: -20px;
        margin-right: -20px;
        border-left: 0;
        border-right: 0;
    }
}

.flow-shipment_frequency .flow-shipment_frequency-item:last-child {
    margin-bottom: 0;
}

.flow-shipment_frequency-header {
    text-transform: uppercase;
    font-size: 1em;
    letter-spacing: 1px;
    line-height: 17px;
    font-weight: 600;
    margin-bottom: 34px;
}

.flow-shipment_frequency-price {
    font-size: 1.143em;
    font-weight: 600;
    line-height: 1em;
}

.flow-shipment_frequency-price strong {
    font-size: 40px;
    font-weight: 600;
    text-transform: uppercase;
    line-height: 1em;
}

.flow-shipment_frequency-text {
    margin: 10px 0 25px;
    color: #21303d;
    font-size: 1em;
    line-height: 17px;
    letter-spacing: 1px;
}

.flow-strength_preference-box,
.flow-strength_preference-frequency-box {
    border: 1px solid #e2e2e2;
    background: #fff;
    margin-bottom: 22px;
    padding: 40px 20px;
    text-align: center;
}

@media (max-width: 768px) {
    .flow-strength_preference-box,
    .flow-strength_preference-frequency-box {
        margin-left: -20px;
        margin-right: -20px;
        border-left: 0;
        border-right: 0;
    }
}

.flow-strength_preference .flow-strength_preference-box:last-child,
.flow-strength_preference .flow-strength_preference-frequency-box:last-child {
    margin-bottom: 0;
}

.flow-strength_preference-frequency-box {
    padding: 20px;
}

.flow-strength_preference-frequency-header {
    font-size: 40px;
    font-weight: 600;
    line-height: 1em;
    margin-bottom: 35px;
}

.flow-strength_preference-frequency-price {
    font-weight: 600;
    font-size: 18px;
    line-height: 22px;
    letter-spacing: 1px;
    margin-bottom: 20px;
}

.flow-strength_preference-frequency-price em {
    font-size: 26px;
    font-style: normal;
}

.flow-strength_preference-dose {
    font-size: 40px;
    font-weight: 600;
    line-height: 1em;
    margin-bottom: 5px;
}

.flow-strength_preference-dose_price {
    font-weight: 600;
    font-size: 1em;
    line-height: 17px;
    letter-spacing: 1px;
    margin-bottom: 10px;
}

.flow-strength_preference-dose + .flow-strength_preference-text {
    padding-top: 19px;
}

.flow-strength_preference-text {
    margin-bottom: 20px;
    font-size: 1em;
    line-height: 17px;
    letter-spacing: 1px;
}

.flow-email-button {
    margin-top: 20px;
}

.flow-personal_data {
    background: #fff;
}

@media (max-width: 768px) {
    .flow-personal_data {
        margin: 0 -20px;
    }
}

.flow-personal_data-name {
    color: #4e5862;
    font-weight: 600;
    font-size: 16px;
    line-height: 16px;
    padding: 25px 10px 18px;
    border-bottom: 1px solid #f7f7f7;
    text-align: center;
}

.flow-personal_data-inner {
    padding: 27px 20px 29px;
}

.flow-personal_data-header {
    color: #a4a9ad;
    text-transform: uppercase;
    font-size: 10px;
    margin: 0 0 10px;
}

.flow-personal_data-text {
    color: #21303d;
    font-size: 16px;
    letter-spacing: 1px;
    line-height: 22px;
    margin: 0 0 20px;
}

.page_start-login.no_animation,
.page_start-rules.no_animation,
.page_start-security.no_animation,
.page_start .ro_footer.no_animation {
    transform: none;
    animation: none;
    opacity: 1;
}

@keyframes pageStartSlideIn {
    0% {
        transform: translateY(50px);
        opacity: 0;
    }
    to {
        transform: translateY(0);
        opacity: 1;
    }
}

.page_start--page_start {
    background-color: #fff;
}

.page_start {
    display: flex;
    height: 100%;
}

@media (max-width: 768px) {
    .page_start {
        flex-direction: column;
    }
}

.page_start-brand {
    width: 570px;
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    align-items: flex-start;
    padding: 30px 75px 65px;
    position: relative;
}

.page_start-brand-inner {
    position: relative;
    z-index: 3;
}

@media (max-width: 1200px) {
    .page_start-brand {
        width: 450px;
        padding: 30px;
    }
}

@media (max-width: 900px) {
    .page_start-brand {
        width: 350px;
    }
}

@media (max-width: 768px) {
    .page_start-brand {
        width: 100%;
        padding: 25px 25px 35px;
        height: 134px;
    }
}

.page_start-brand-bg {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    background-repeat: no-repeat;
    background-size: contain;
}

@media (max-width: 768px) {
    .page_start-brand-bg {
        display: none;
    }
}

.page_start-brand--roman .page_start-brand-bg {
    background-position: 100% 0;
    background-size: cover;
}

.page_start-brand--zero .page_start-brand-bg {
    background: url("../../static/img/home/Hero.png");
    background-position: center center;
    background-size: cover;
    background-repeat: no-repeat;
}
.page_start-brand--zero.assistant-pg {
    min-height: 300px;
}
.page_start-brand--zero.assistant-pg .page_start-brand-bg_mobile,
.page_start-brand--zero.assistant-pg .page_start-brand-bg {
    background-image: url("../../static/img/home/telemedicine-bg.jpg");
}
@media (min-width: 1199px) {
    .page_start-brand {
        min-width: 48%;
    }
    .assistant-pg-main {
        display: flex;
        display: -webkit-flex;
        align-items: center;
    }
}
.page_start-brand-bg_mobile {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    background: url("/static/img/home/Hero.png");
    background-position: top center;
    background-size: cover;
    background-repeat: no-repeat;
    /*background-repeat: no-repeat;
    background-size: contain*/
}

@media (min-width: 769px) {
    .page_start-brand-bg_mobile {
        display: none;
    }
}

.page_start-brand--roman .page_start-brand-bg_mobile {
    background-position: center center;
    background-size: cover;
    background-repeat: no-repeat;
}

.page_start-brand--zero .page_start-brand-bg_mobile {
    background-position: center center;
    background-size: cover;
    background-repeat: no-repeat;
}

.page_start-brand--roman {
    background-color: #ff412d;
}

.page_start-brand--zero {
    background-color: #000;
}

.page_start-brand-logo {
    height: 20px;
    margin: 0 0 30px;
}

@media (max-width: 768px) {
    .page_start-brand-logo {
        margin: 0 0 10px;
    }
}

.page_start-brand-description {
    font-size: 20px;
    color: #fff;
    max-width: 345px;
    margin: 0;
}

@media (max-width: 900px) {
    .page_start-brand-description {
        font-size: 14px;
    }
}

.page_start-brand-ro {
    margin: 60px 0 0;
}

@media (max-width: 900px) {
    .page_start-brand-ro {
        margin-top: 30px;
    }
}

@media (max-width: 768px) {
    .page_start-brand-ro {
        display: none;
    }
}

.page_start-main {
    padding: 60px 30px 30px;
    flex: 1;
    overflow-y: auto;
    -webkit-overflow-scrolling: touch;
    background: #fff;
    border-top-left-radius: 8px;
    border-top-right-radius: 8px;
    position: relative;
    z-index: 5;
}

@media (max-width: 768px) {
    .page_start-main {
        margin-top: -8px;
        padding: 30px;
    }
}

.page_start-main-inner {
    max-width: 560px !important;
    margin: 0 auto;
}

.page_start-agreement {
    margin-top: 8px;
    display: flex;
    align-items: center;
    justify-content: center;
    transform: translateY(50px);
    opacity: 0;
    animation: 0.6s pageStartSlideIn forwards;
    animation-delay: 3.2s;
}

.page_start--promotion .page_start-agreement {
    animation-delay: 5s;
}

.page_start-get_started {
    margin-top: 40px;
    transform: translateY(50px);
    opacity: 0;
    animation: 0.6s pageStartSlideIn forwards;
    animation-delay: 3.35s;
}

.page_start--promotion .page_start-get_started {
    animation-delay: 5.15s;
}

@media (max-width: 768px) {
    .page_start-get_started {
        margin-top: 35px;
    }
}

.page_start-login {
    text-transform: uppercase;
    font-size: 12px;
    letter-spacing: 0.48px;
    line-height: 14px;
    color: #a4a9ad;
    margin: 30px 0 40px;
    text-align: center;
    display: block;
    opacity: 0;
    animation: 0.6s pageStartSlideIn forwards;
    animation-delay: 3.5s;
}

.page_start-login a {
    color: #1ece96;
    text-decoration: none;
}

@media (max-width: 768px) {
    .page_start-login {
        margin: 30px 0 35px;
    }
}

.page_start--promotion .page_start-login {
    animation-delay: 5.3s;
}

.page_start-security {
    transform: translateY(50px);
    opacity: 0;
    animation: 0.6s pageStartSlideIn forwards;
    animation-delay: 3.65s;
}

.page_start--promotion .page_start-security {
    animation-delay: 5.45s;
}

.page_start-rules {
    margin-top: 10px;
    padding: 0;
    text-align: center;
    line-height: 12px;
    opacity: 0;
    display: flex;
    justify-content: center;
    animation: 0.6s pageStartSlideIn forwards;
    animation-delay: 3.8s;
}

.page_start-rules li {
    display: block;
    margin: 0;
    padding: 0 10px;
    border-left: 1px solid #a4a9ad;
}

.page_start-rules li:first-child {
    border-left: 0;
}

.page_start--promotion .page_start-rules {
    animation-delay: 5.6s;
}

.page_start-rules-link {
    text-transform: uppercase;
    font-size: 12px;
    letter-spacing: 0.6px;
    line-height: 12px;
    color: #a4a9ad;
}

.page_start .ro_footer {
    opacity: 0;
    animation: 0.6s pageStartSlideIn forwards;
    animation-delay: 3.95s;
}

.page_start--promotion .ro_footer {
    animation-delay: 5.75s;
}

.start_simple {
    max-width: 460px;
    margin: 0 auto;
    padding: 100px 0 15px;
}

@media (max-height: 800px) {
    .start_simple {
        padding: 50px 0 15px;
    }
}

@media (max-width: 768px) {
    .start_simple {
        padding: 25px 0 50px;
    }
}

.start_simple-header {
    font-size: 32px;
    line-height: 36px;
    letter-spacing: 0.04em;
    font-weight: 200;
    margin: 0 0 22px;
}

.start_simple-subtitle {
    font-size: 16px;
    line-height: 28px;
    letter-spacing: 0.04em;
    margin: 0 0 28px;
}

.start_simple-list {
    display: block;
    margin: 0;
    padding: 0;
}

.start_simple-list-item {
    display: block;
    margin: 0 0 15px;
    font-size: 14px;
    line-height: 16px;
    letter-spacing: 0;
    display: flex;
    align-items: flex-start;
}

.start_simple-list-item--highlighted {
    color: #1ece96;
}

.start_simple-list-icon_wrap {
    width: 30px;
    flex-shrink: 0;
}

.start_simple-list-icon_wrap img {
    margin: 0;
}

.start_simple-list-icon_wrap i {
    font-size: 18px;
    color: #1ece96;
}

.start_simple-list-icon_wrap i.icon-check-second {
    font-size: 12px;
}

.start_simple-consent_box {
    margin: 45px auto 25px;
    padding: 13px 13px 8px;
    max-width: 330px;
    border-radius: 4px;
    border: 1px solid #e2e2e2;
}

.start_simple-consent_box + .start_simple-button {
    margin: 0 0 50px;
}

.start_simple-consent_box--has_error {
    border-color: #e73737;
}

.start_simple-consent_box-info {
    color: #727b83;
    font-size: 12px;
    letter-spacing: 0.04em;
    margin: 0 0 14px;
}

.start_simple-consent_box--has_error .start_simple-consent_box-info {
    color: #e73737;
}

.start_simple-consent_box .security_icons {
    margin-top: 12px;
}

.start_simple-consent_box .security_icons-item {
    margin: 0 13px;
}

.start_simple-consent_box .security_icons-text {
    font-size: 9px;
    letter-spacing: 0.05em;
    color: #a4a9ad;
}

.start_simple-consent_box .security_icons-icon {
    color: #a4a9ad;
}

.start_simple-consent_box .security_icons-icon.icon-lock {
    font-size: 14px;
    margin-right: 8px;
}

.start_simple-consent_box .security_icons-icon.icon-hippa {
    font-size: 22px;
    margin-right: 5px;
}

.start_simple-sign_in {
    display: block;
    color: #a4a9ad;
    font-size: 12px;
    letter-spacing: 0.04em;
    text-transform: uppercase;
    text-decoration: none;
}

.start_simple-sign_in b {
    font-weight: 400;
    color: #1ece96;
}

@media (min-width: 769px) {
    .start_simple-sign_in {
        position: absolute;
        top: 25px;
        right: 30px;
    }
}

@media (max-width: 768px) {
    .start_simple-sign_in {
        text-align: center;
        margin-bottom: 20px;
    }
}

.start_simple-links {
    display: flex;
    justify-content: center;
    margin: 35px 0 0;
    padding: 0;
    font-size: 10px;
    letter-spacing: 0.05em;
    line-height: 10px;
    text-transform: uppercase;
}

.start_simple-links li {
    display: block;
    margin: 0 0 0 10px;
    padding: 0;
    padding-left: 10px;
    border-left: 1px solid #a4a9ad;
}

.start_simple-links li:first-child {
    padding-left: 0;
    margin-left: 0;
    border: 0;
}

.start_simple-links a {
    color: #a4a9ad;
}

.start_simple-button {
    margin: 50px 0;
}

@media (max-width: 768px) {
    .start_simple-button {
        margin-bottom: 25px;
    }
}

.start_otc {
    max-width: 460px;
    margin: 0 auto;
    padding: 100px 0 15px;
}

@media (max-height: 800px) {
    .start_otc {
        padding: 50px 0 16px;
    }
}

@media (max-width: 768px) {
    .start_otc {
        padding: 0 0 50px;
    }
}

.start_otc-logo {
    width: 68px;
    height: 68px;
    margin: 0 auto 16px;
}

.start_otc-product_image {
    width: 240px;
    height: 180px;
    margin: 0 auto 20px;
}

.start_otc-headline {
    font-size: 36px;
    line-height: 1;
    text-align: center;
}

.start_otc-coupon_text {
    font-size: 16px;
    color: #e73737;
    text-align: center;
    margin-bottom: 16px;
}

.start_otc-hint_text {
    line-height: 12px;
    font-size: 12px;
    text-align: center;
    color: #727b83;
    margin-bottom: 32px;
}

.start_otc-header {
    font-size: 32px;
    line-height: 36px;
    letter-spacing: 0.04em;
    font-weight: 200;
    margin: 0 0 22px;
}

.start_otc-login {
    margin: 20px 0;
}

@media (max-width: 768px) {
    .start_otc-login {
        margin: 20px 0 30px;
    }
}

@media (max-width: 768px) {
    .start_otc-security .security_icons {
        margin: 0;
    }
}

.start_otc-button {
    margin-bottom: 20px;
}

.page_final {
    max-width: 340px;
    margin: 0 auto;
    padding-top: 25px;
}

@media (max-width: 768px) {
    .page_final {
        padding-top: 0;
    }
}

.page_final-header {
    text-transform: uppercase;
    text-align: center;
    margin-bottom: 25px;
}

.page_final-form {
    margin-bottom: 35px;
}

.page_final-security {
    margin-bottom: 20px;
}

.page_final-security-img {
    width: 268px;
    margin: 0 auto 18px;
}

.page_final-security-text {
    color: #a4a9ad;
    text-align: center;
    margin-bottom: 12px;
    text-transform: uppercase;
}

.page_final-security-link {
    text-transform: uppercase;
    text-align: center;
    display: block;
}

.page_final-photo {
    display: flex;
}

.page_final-photo-text {
    width: 205px;
    flex-shrink: 0;
}

.page_final-photo-text p {
    color: #a4a9ad;
    margin-bottom: 20px;
}

.page_final-photo-text p:last-child {
    margin-bottom: 0;
}

.page_final-button {
    margin-top: 55px;
}

.page_final-security_icons {
    margin-top: 40px;
}

.error {
    width: 375px;
    margin: 0 auto;
    padding: 60px 23px;
    font-family: canada-type-gibson, sans-serif;
}

@media (max-width: 768px) {
    .error {
        max-width: 100%;
        padding: 30px 20px;
    }
}

.robot {
    text-align: center;
    margin-bottom: 50px;
}

@media (max-width: 768px) {
    .robot {
        margin-bottom: 16px;
    }
}

.robot__icon {
    width: 142px;
    height: 142px;
    display: block;
    margin: 0 auto 10px;
}

.robot__name {
    color: #21303d;
    font-size: 16px;
    line-height: 19px;
    margin-bottom: 5px;
}

.robot__name,
.robot__role {
    letter-spacing: 0.8px;
    text-transform: uppercase;
}

.robot__role {
    color: rgba(33, 48, 61, 0.5);
    font-size: 12px;
    line-height: 14px;
    margin-bottom: 8px;
}

.robot__stars {
    display: block;
    width: 113px;
    height: auto;
    margin: 0 auto;
}

.chat__msg {
    display: flex;
    align-items: flex-end;
}

.chat__msg__avatar {
    display: block;
    width: 28px;
    height: 28px;
    margin: 0 10px 0 0;
    flex-shrink: 0;
}

.chat__msg__main {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
}

.chat__msg__bubble {
    background: #f7f7f7;
    border-radius: 15px;
    border-bottom-left-radius: 0;
    padding: 20px;
}

.chat__msg__bubble + .chat__msg__bubble {
    margin-top: 2px;
    border-top-left-radius: 0;
}

@media (max-width: 768px) {
    .chat__msg__bubble {
        max-width: 100%;
    }
}

.chat__msg__bubble p {
    margin: 0;
    color: #21303d;
    font-size: 14px;
    line-height: 22px;
    letter-spacing: 0.7px;
}

.chat__msg__bubble p a {
    color: inherit;
    text-decoration: underline;
}

.chat__action {
    margin: 25px 25px 0 38px;
}

.chat__action .button--secondary {
    background: #1ece96;
    border-radius: 30px;
    border: 1px solid #1ece96;
    color: #fff;
    cursor: pointer;
    display: inline-block;
    outline: none;
    position: relative;
    text-align: center;
    text-decoration: none;
    text-transform: uppercase;
    font-weight: 600;
    transition: background-color 0.3s;
}

.chat__action .button--secondary[disabled] {
    color: #fff;
    background: #e2e2e2;
    border-color: #e2e2e2;
    cursor: default;
}

.chat__action .button--secondary:not([disabled]):hover {
    background-color: rgba(30, 206, 150, 0.95);
    color: #fff;
}

.page_form {
    max-width: 340px;
    margin: 0 auto;
    padding: 25px 0;
}

.page_form-header {
    text-align: center;
    text-transform: uppercase;
    color: #21303d;
    margin-bottom: 15px;
}

.page_form-button {
    margin-top: 20px;
}

.page_form-links {
    margin-top: 20px;
    text-align: center;
}

.page_form-links-item {
    display: block;
    margin-bottom: 30px;
}

.page_form-links .page_form-item:last-child {
    margin-bottom: 0;
}

@keyframes pageAbandonmentFlowSlideIn {
    0% {
        transform: translateY(50px);
        opacity: 0;
    }
    to {
        transform: translateY(0);
        opacity: 1;
    }
}

@keyframes pageAbandonmentFadeIn {
    0% {
        opacity: 0;
    }
    to {
        opacity: 1;
    }
}

@keyframes pageAbandonmentFadeOut {
    0% {
        opacity: 1;
    }
    to {
        opacity: 0;
    }
}

@keyframes pageAbandonmentHideInput {
    0% {
        opacity: 1;
    }
    99% {
        opacity: 0;
    }
    to {
        opacity: 0;
        display: none;
    }
}

.page_abandonment_flow {
    padding: 50px 0;
    max-width: 100%;
    width: 600px;
    margin: 0 auto;
}

@media (max-width: 768px) {
    .page_abandonment_flow {
        width: 100%;
    }
}

.page_abandonment_flow-sign_in_button {
    opacity: 0;
    animation: 0.6s pageAbandonmentFadeIn forwards;
    animation-delay: 3.5s;
}

.page_abandonment_flow-wrap {
    background-color: #fff;
}

.page_abandonment_flow-robot_header {
    text-transform: uppercase;
    text-align: center;
    font-size: 0.857em;
    line-height: 1em;
    letter-spacing: 5%;
    color: #a4a9ad;
    margin-bottom: 24px;
    opacity: 0;
    animation: 1.5s pageAbandonmentFadeIn forwards;
}

.page_abandonment_flow-input {
    margin: 8px 0 45px;
    opacity: 0;
    animation: 0.6s pageAbandonmentFlowSlideIn forwards;
    animation-delay: 3s;
}

.page_abandonment_flow-input .flow-question-text_field-input--is_hidden {
    animation: 0.6s pageAbandonmentHideInput forwards;
}

.page_abandonment_flow-link {
    display: block;
    font-size: 12px;
    padding: 5px;
    text-decoration: underline;
    color: #a4a9ad;
    text-align: center;
    text-transform: uppercase;
    opacity: 0;
    animation: 0.6s pageAbandonmentFlowSlideIn forwards;
    animation-delay: 3s;
}

.page_abandonment_flow .fake_chat {
    margin-top: 30px;
}

.page_abandonment_flow .fake_chat.fade_out {
    animation: 0.5s pageAbandonmentFadeOut forwards;
}

.member_login-header {
    color: #1d2733;
    font-size: 24px;
    line-height: 30px;
    font-weight: 600;
    margin: 0 0 5px;
}

.member_login-text {
    color: #727b83;
    font-size: 16px;
    line-height: 24px;
    letter-spacing: 0.64px;
    margin: 0 0 10px;
}

.member_login-thumb {
    max-width: 252px;
    margin: 0 auto;
}

.member_login-form {
    margin-top: 50px;
}

.member_login-form-error {
    font-size: 14px;
    line-height: 20px;
    color: #e73737;
    margin: 0 0 15px;
}

.member_login-form-header {
    color: #727b83;
    font-size: 16px;
    line-height: 24px;
    letter-spacing: 0.64px;
    margin: 0 0 15px;
}

.member_login-form-forgot_password {
    text-transform: uppercase;
    color: #a4a9ad;
    text-decoration: underline;
    padding: 10px;
    margin-top: 15px;
    font-size: 10px;
    letter-spacing: 0.4px;
    background: none;
    display: block;
    text-align: center;
    border: 0;
    outline: none;
    width: 100%;
}

#custom-select select {
    appearance: none;
    -webkit-appearance: none;
    -moz-appearance: none;
}

#custom-select select, #custom-select::after {
  height: 59px;
}
 
#custom-select::after {
  content: "\25bc"; /* HTML symbol */
  /* Reposition */
  position: absolute;
  top: 0;
  right: 0;
  padding: 0 10px;
  line-height: 59px; /* Vertical center text */
}