@charset "UTF-8";

/*! normalize.css v8.0.0 | MIT License | github.com/necolas/normalize.css */
html {
    line-height: 1.15;
    -webkit-text-size-adjust: 100%
}

body {
    margin: 0
}

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

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

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

a {
    background-color: transparent
}

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

b,
strong {
    font-weight: bolder
}

small {
    font-size: 80%
}

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

sub {
    bottom: -.25em
}

sup {
    top: -.5em
}

img {
    border-style: none
}

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

button,
input {
    overflow: visible
}

button,
select {
    text-transform: none
}

[type=button],
[type=reset],
[type=submit],
button {
    -webkit-appearance: button;
    -moz-appearance: button;
    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
}

fieldset {
    padding: .35em .75em .625em
}

legend {
    color: inherit;
    display: table;
    max-width: 100%;
    white-space: normal
}

progress {
    vertical-align: baseline
}

textarea {
    overflow: auto
}

[type=checkbox],
[type=radio],
legend {
    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;
    -moz-appearance: textfield;
    appearance: textfield;
    outline-offset: -2px
}

[type=search]::-webkit-search-decoration {
    -webkit-appearance: none;
    appearance: none
}

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

details {
    display: block
}

summary {
    display: list-item
}

[hidden],
template {
    display: none
}

/*!
 * Selectr 2.4.13
 * http://mobius.ovh/docs/selectr
 *
 * Released under the MIT license
 */
@-webkit-keyframes spin {
    0% {
        transform: rotate(0) translate3d(0, -50%, 0)
    }

    to {
        transform: rotate(360deg) translate3d(0, -50%, 0)
    }
}

@keyframes spin {
    0% {
        transform: rotate(0) translate3d(0, -50%, 0)
    }

    to {
        transform: rotate(360deg) translate3d(0, -50%, 0)
    }
}

.selectr-container li,
.selectr-option,
.selectr-tag {
    list-style: none
}

.selectr-container {
    position: relative
}

.selectr-hidden {
    position: absolute;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    width: 1px;
    height: 1px;
    margin: -1px;
    padding: 0;
    border: 0
}

.selectr-visible {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    opacity: 0;
    z-index: 11
}

.selectr-desktop.multiple .selectr-visible {
    display: none
}

.selectr-desktop.multiple.native-open .selectr-visible {
    top: 100%;
    min-height: 200px !important;
    height: auto;
    opacity: 1;
    display: block
}

.selectr-container.multiple.selectr-mobile .selectr-selected {
    z-index: 0
}

.selectr-selected {
    position: relative;
    z-index: 1;
    box-sizing: border-box;
    width: 100%;
    padding: 7px 28px 7px 14px;
    cursor: pointer;
    border: 1px solid #999;
    border-radius: 3px;
    background-color: #fff
}

.selectr-selected::before {
    position: absolute;
    top: 50%;
    right: 10px;
    width: 0;
    height: 0;
    content: '';
    transform: rotate(0) translate3d(0, -50%, 0);
    border-width: 4px 4px 0;
    border-style: solid;
    border-color: #6c7a86 transparent transparent
}

.selectr-container.native-open .selectr-selected::before,
.selectr-container.open .selectr-selected::before {
    border-width: 0 4px 4px;
    border-style: solid;
    border-color: transparent transparent #6c7a86
}

.selectr-label {
    display: none;
    overflow: hidden;
    width: 100%;
    white-space: nowrap;
    text-overflow: ellipsis
}

.selectr-placeholder {
    color: #6c7a86
}

.selectr-tags {
    margin: 0;
    padding: 0;
    white-space: normal
}

.has-selected .selectr-tags {
    margin: 0 0 -2px
}

.selectr-tag {
    position: relative;
    float: left;
    padding: 2px 25px 2px 8px;
    margin: 0 2px 2px 0;
    cursor: default;
    color: #fff;
    border: 0;
    border-radius: 10px;
    background: #acb7bf
}

.selectr-container.multiple.has-selected .selectr-selected {
    padding: 5px 28px 5px 5px
}

.selectr-options-container {
    position: absolute;
    z-index: 10000;
    top: calc(100% - 1px);
    left: 0;
    display: none;
    box-sizing: border-box;
    width: 100%;
    border-width: 0 1px 1px;
    border-style: solid;
    border-color: transparent #999 #999;
    border-radius: 0 0 3px 3px;
    background-color: #fff
}

.selectr-container.has-selected .selectr-clear,
.selectr-container.notice .selectr-notice,
.selectr-container.open .selectr-options-container,
.selectr-input-container.active,
.selectr-input-container.active .selectr-clear,
.selectr-input-container.active .selectr-input-clear {
    display: block
}

.selectr-input-container {
    position: relative;
    display: none
}

.selectr-clear,
.selectr-input-clear,
.selectr-tag-remove {
    position: absolute;
    top: 50%;
    right: 22px;
    width: 20px;
    height: 20px;
    padding: 0;
    cursor: pointer;
    transform: translate3d(0, -50%, 0);
    border: 0;
    background-color: transparent;
    z-index: 11
}

.selectr-clear,
.selectr-input-clear {
    display: none
}

.selectr-selected .selectr-tag-remove {
    right: 2px
}

.selectr-clear::after,
.selectr-clear::before,
.selectr-input-clear::after,
.selectr-input-clear::before {
    position: absolute;
    top: 5px;
    left: 9px;
    width: 2px;
    height: 10px;
    content: ' ';
    background-color: #6c7a86
}

.selectr-tag-remove::after,
.selectr-tag-remove::before {
    position: absolute;
    left: 9px;
    content: ' ';
    top: 4px;
    width: 3px;
    height: 12px;
    background-color: #fff
}

.selectr-clear:before,
.selectr-input-clear::before,
.selectr-tag-remove::before {
    transform: rotate(45deg)
}

.selectr-clear:after,
.selectr-input-clear::after,
.selectr-tag-remove::after {
    transform: rotate(-45deg)
}

.selectr-input,
.selectr-notice {
    box-sizing: border-box
}

.selectr-input {
    top: 5px;
    left: 5px;
    width: calc(100% - 30px);
    margin: 10px 15px;
    border: 1px solid #999;
    padding: 7px 30px 7px 9px;
    border-radius: 3px
}

.selectr-notice {
    display: none;
    width: 100%;
    padding: 8px 16px;
    border-top: 1px solid #999;
    border-radius: 0 0 3px 3px;
    background-color: #fff
}

.input-tag,
.taggable .selectr-label {
    width: auto
}

.selectr-container.notice .selectr-selected {
    border-radius: 3px 3px 0 0
}

.selectr-options {
    position: relative;
    top: calc(100% + 2px);
    display: none;
    overflow-x: auto;
    overflow-y: scroll;
    max-height: 200px;
    margin: 0;
    padding: 0
}

.selectr-container.notice .selectr-options-container,
.selectr-container.open .selectr-input-container,
.selectr-container.open .selectr-options {
    display: block
}

.selectr-option {
    position: relative;
    display: block;
    padding: 5px 20px;
    cursor: pointer;
    font-weight: 400
}

.has-selected .selectr-placeholder,
.selectr-empty,
.selectr-option.excluded {
    display: none
}

.selectr-options.optgroups>.selectr-option {
    padding-left: 25px
}

.selectr-optgroup {
    font-weight: 700;
    padding: 0
}

.selectr-optgroup--label {
    font-weight: 700;
    margin-top: 10px;
    padding: 5px 15px
}

.selectr-match {
    text-decoration: underline
}

.selectr-option.selected {
    background-color: #ddd
}

.selectr-option.active {
    color: #fff;
    background-color: #5897fb
}

.selectr-option.disabled {
    opacity: .4
}

.selectr-container.inverted .selectr-options-container,
.selectr-container.open .selectr-selected {
    border-color: #999 #999 transparent;
    border-radius: 3px 3px 0 0
}

.selectr-container.open .selectr-selected::after {
    transform: rotate(180deg) translate3d(0, 50%, 0)
}

.selectr-disabled {
    opacity: .6
}

.has-selected .selectr-label {
    display: block
}

.taggable .selectr-selected {
    padding: 4px 28px 4px 4px
}

.taggable .selectr-selected::after {
    display: table;
    content: " ";
    clear: both
}

.taggable .selectr-tags {
    float: left;
    display: block
}

.taggable .selectr-placeholder {
    display: none
}

.input-tag {
    float: left;
    min-width: 90px
}

.selectr-tag-input {
    border: 0;
    padding: 3px 10px;
    width: 100%;
    font-family: inherit;
    font-weight: inherit;
    font-size: inherit
}

.selectr-input-container.loading::after {
    position: absolute;
    top: 50%;
    right: 20px;
    width: 20px;
    height: 20px;
    content: '';
    transform: translate3d(0, -50%, 0);
    transform-origin: 50% 0 0;
    -webkit-animation: .5s linear 0s normal forwards infinite running spin;
    animation: .5s linear 0s normal forwards infinite running spin;
    border-width: 3px;
    border-style: solid;
    border-color: #aaa #ddd #ddd;
    border-radius: 50%
}

.selectr-container.open.inverted .selectr-selected {
    border-color: transparent #999 #999;
    border-radius: 0 0 3px 3px
}

.selectr-container.inverted .selectr-options-container {
    border-width: 1px 1px 0;
    background-color: #fff;
    top: auto;
    bottom: calc(100% - 1px)
}

.selectr-container :-ms-input-placeholder,
.selectr-container ::-moz-placeholder,
.selectr-container ::-webkit-input-placeholder {
    color: #6c7a86;
    opacity: 1
}

.selectr-container :-ms-input-placeholder {
    color: #6c7a86;
    opacity: 1
}

.selectr-container ::-ms-input-placeholder {
    color: #6c7a86;
    opacity: 1
}

.selectr-container :-ms-input-placeholder,
.selectr-container ::-moz-placeholder,
.selectr-container ::-webkit-input-placeholder,
.selectr-container ::placeholder {
    color: #6c7a86;
    opacity: 1
}

html {
    box-sizing: border-box
}

*,
::after,
::before {
    box-sizing: inherit
}

.btn,
body {
    font-size: 16px;
    line-height: 19px
}

body {
    display: flex;
    flex-direction: column;
    margin: 0;
    min-width: 1042px;
    min-height: 100vh;
    font-family: "Tahoma", "Arial", sans-serif;
    font-weight: 400;
    padding: 0;
    color: #000;
    background-color: #f3ece6
}

a {
    text-decoration: none
}

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

.visually-hidden {
    position: absolute;
    width: 1px;
    height: 1px;
    margin: -1px;
    border: 0;
    padding: 0;
    white-space: nowrap;
    -webkit-clip-path: inset(100%);
    clip-path: inset(100%);
    clip: rect(0 0 0 0);
    overflow: hidden
}

.btn {
    background-color: transparent;
    border: 0;
    cursor: pointer;
    display: inline-block;
    vertical-align: top;
    box-sizing: border-box;
    padding: 14px 26px;
    text-align: center;
    text-decoration: none;
    color: inherit;
    border: 1px solid rgba(255, 255, 255, .206041);
    border-radius: 25px;
    transition: all .3s ease-out
}

.btn:hover,
.sign-up__field-avatar label:hover {
    border: 1px solid rgba(255, 255, 255, .4741)
}

.btn--disabled,
.btn:disabled {
    opacity: .63;
    pointer-events: none
}

.btn:focus {
    outline: 0;
    opacity: .9
}

.btn--big,
.btn--medium,
.btn--white {
    color: #2b51a6;
    background-color: #fff;
    border-color: #fff
}

.btn--medium:hover,
.btn--white:hover {
    border-color: transparent;
    opacity: .7
}

.btn--big,
.btn--medium {
    padding: 19px 33px;
    border-color: transparent;
    border-radius: 30px
}

.btn--big {
    padding: 24px 38px;
    font-size: 18px;
    line-height: 22px;
    border-color: #2b51a6;
    border-radius: 38px;
    box-shadow: 0 8px 14px rgba(0, 10, 32, .0727751)
}

.btn--big:hover {
    transform: translateY(-4px);
    border-color: #2b51a6
}

.btn--small {
    padding: 10px 23px
}

.btn--flex {
    display: flex;
    justify-content: center;
    align-items: center
}

.btn .icon {
    margin-left: 6px
}

.avatar {
    transition: opacity .3s ease-out;
    display: block;
    width: 74px;
    height: 74px;
    background-color: #fff;
    border-radius: 50%;
    overflow: hidden
}

.avatar:hover {
    opacity: .7
}

.avatar:active,
.avatar:focus {
    opacity: .6;
    outline: 0
}

.avatar img {
    display: block;
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    -o-object-position: center;
    object-position: center
}

.logo {
    transition: opacity .3s ease-out;
    display: inline-block;
    vertical-align: top
}

.logo:hover {
    opacity: .7
}

.logo:active,
.logo:focus {
    opacity: .6;
    outline: 0
}

.logo img {
    display: block;
    max-width: 100%;
    height: auto
}

.category-tile {
    display: flex;
    flex-direction: column;
    align-items: center;
    color: inherit;
    font-size: 18px;
    line-height: 22px
}

.category-tile__image,
.category-tile__label {
    transition: opacity .3s ease-out
}

.category-tile__image {
    display: block;
    margin-bottom: 14px;
    width: 101px;
    height: 101px;
    border-radius: 50%;
    overflow: hidden;
    opacity: .58
}

.category-tile__image img {
    display: block;
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    -o-object-position: center;
    object-position: center
}

.category-tile__label {
    opacity: .34
}

.category-tile:hover .category-tile__image,
.category-tile:hover .category-tile__label {
    opacity: 1
}

.category-tile__qty {
    margin-left: -2px;
    font-weight: 700;
    font-size: 12px;
    line-height: 14px
}

.category-tile--small {
    flex-direction: row;
    color: #2b51a6;
    font-size: 17px;
    line-height: 21px
}

.category-tile--small .category-tile__image {
    margin-bottom: 0;
    margin-right: 8px;
    width: 41px;
    height: 41px
}

.category-tile--active .category-tile__image,
.category-tile--active .category-tile__label,
.category-tile--small .category-tile__image,
.category-tile--small .category-tile__label {
    opacity: 1
}

.category-tile--default,
.category-tile--small {
    transition: opacity .3s ease-out
}

.category-tile--default:hover,
.category-tile--small:hover {
    opacity: .7
}

.category-tile--default:active,
.category-tile--default:focus,
.category-tile--small:active,
.category-tile--small:focus {
    opacity: .6;
    outline: 0
}

.category-tile--default .category-tile__image,
.ticket-card__categories a:hover {
    opacity: 1
}

.search {
    position: relative
}

.search input {
    width: 431px;
    height: 47px;
    padding: 13px 35px 13px 47px;
    font-size: 16px;
    line-height: 19px;
    color: #fff;
    text-align: center;
    background-color: rgba(255, 255, 255, .2);
    border: 1px solid rgba(255, 255, 255, .206041);
    border-radius: 24px;
    box-shadow: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none
}

.search input::-webkit-input-placeholder {
    color: rgba(255, 255, 255, .5);
    font-size: 16px;
    line-height: 19px
}

.search input::-moz-placeholder {
    color: rgba(255, 255, 255, .5);
    font-size: 16px;
    line-height: 19px
}

.search input:-ms-input-placeholder,
.search input::-ms-input-placeholder {
    color: rgba(255, 255, 255, .5);
    font-size: 16px;
    line-height: 19px
}

.search input::-webkit-input-placeholder {
    color: rgba(255, 255, 255, .5);
    font-size: 16px;
    line-height: 19px
}

.search input::-moz-placeholder {
    color: rgba(255, 255, 255, .5);
    font-size: 16px;
    line-height: 19px
}

.search input:-ms-input-placeholder {
    color: rgba(255, 255, 255, .5);
    font-size: 16px;
    line-height: 19px
}

.search input::-ms-input-placeholder {
    color: rgba(255, 255, 255, .5);
    font-size: 16px;
    line-height: 19px
}

.search input::placeholder {
    color: rgba(255, 255, 255, .5);
    font-size: 16px;
    line-height: 19px
}

.search input:focus {
    background-color: rgba(255, 255, 255, .1);
    border: 1px solid rgba(255, 255, 255, .4741);
    outline: 0
}

.search input:focus+.search__icon {
    top: 13px;
    left: 14px
}

.search__icon,
.search__icon::before {
    position: absolute;
    top: 12px;
    left: 172px;
    width: 22px;
    height: 22px
}

.search__icon::before {
    content: "";
    top: 0;
    left: 0;
    background: url(../img/search.svg) no-repeat left top
}

.search__close-btn {
    display: none;
    position: absolute;
    width: 17px;
    height: 17px;
    top: 15px;
    right: 13px;
    cursor: pointer
}

.search__close-btn::after {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 17px;
    height: 17px;
    background: url(../img/close.svg) no-repeat left top
}

.search__close-btn--active {
    display: block
}

.search--active .search__icon,
.search--active.search--small .search__icon {
    top: 13px;
    left: 14px
}

.search--small,
.search--small input {
    width: 246px
}

.search--small .search__icon {
    top: 14px;
    left: 80px
}

input[type=search]::-webkit-search-cancel-button {
    -webkit-appearance: none;
    appearance: none
}

.ticket-card,
.ticket-card__img {
    flex-grow: 1
}

.ticket-card {
    display: flex;
    flex-direction: column;
    color: #000;
    background-color: #fff
}

.ticket-card__img {
    position: relative;
    padding-top: 124.9%
}

.ticket-card__img img {
    position: absolute;
    top: 0;
    left: 0;
    display: block;
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    -o-object-position: center top;
    object-position: center top
}

.ticket-card__info {
    position: relative;
    flex: none;
    padding: 8px 7px 15px 8px
}

.ticket-card__label {
    font-weight: 700;
    text-transform: uppercase;
    font-size: 10px;
    line-height: 12px;
    letter-spacing: 1px;
    position: absolute;
    top: 0;
    right: 14px;
    transform: translateY(-50%);
    display: inline-block;
    vertical-align: top;
    margin: -2px 0 0;
    padding: 5px 7px;
    color: #fff;
    background-color: #000;
    border-radius: 13px
}

.ticket-card__categories {
    display: flex;
    flex-wrap: wrap;
    margin-bottom: 3px
}

.ticket-card__categories a {
    text-transform: uppercase;
    font-size: 12px;
    line-height: 14px;
    letter-spacing: 1.2px;
    margin: 0 5px 4px 0;
    color: inherit;
    opacity: .66;
    transition: opacity .3s ease-out
}

.ticket-card__categories a::after {
    content: ","
}

.ticket-card__categories a:last-child::after {
    display: none
}

.ticket-card__header {
    display: flex;
    align-items: center;
    margin-bottom: 7px
}

.ticket-card__title {
    margin: 0 10px 0 0;
    font-weight: 700;
    font-size: 14px;
    line-height: 17px
}

.ticket-card__title a {
    transition: opacity .3s ease-out;
    display: block;
    color: inherit
}

.ticket-card__del:hover,
.ticket-card__title a:hover {
    opacity: .7
}

.ticket-card__del:active,
.ticket-card__del:focus,
.ticket-card__title a:active,
.ticket-card__title a:focus {
    opacity: .6;
    outline: 0
}

.ticket-card__price {
    margin: 0 5px 0 auto;
    text-transform: uppercase;
    font-size: 16px;
    line-height: 19px;
    white-space: nowrap;
}

.ticket-card__desc {
    margin: 0;
    font-size: 14px;
    line-height: 17px;
    opacity: .66
}

.ticket-card__desc p {
    margin: 0;
    max-height: 32px;
    overflow: hidden
}

.ticket-card__del {
    background-color: transparent;
    border: 0;
    cursor: pointer;
    transition: opacity .3s ease-out;
    margin-top: -8px;
    padding: 13px;
    width: 100%;
    text-align: center;
    font-size: 13px;
    line-height: 16px;
    color: inherit;
    background-color: rgba(0, 0, 0, .08)
}

.ticket-card--color01 {
    background-color: #f8bc7f
}

.ticket-card--color01 .ticket-card__del {
    color: rgba(0, 0, 0, .5);
    background-color: rgba(0, 0, 0, .08)
}

.ticket-card--color02 {
    color: #fff;
    background-color: #534326
}

.ticket-card--color02 .ticket-card__del,
.ticket-card--color03 .ticket-card__del,
.ticket-card--color04 .ticket-card__del {
    color: rgba(255, 255, 255, .5);
    background-color: rgba(255, 255, 255, .08)
}

.ticket-card--color03 {
    color: #fff;
    background-color: #81756b
}

.ticket-card--color04 {
    color: #fff;
    background-color: #524b4a
}

.ticket-card--color05 {
    background-color: #97adc3
}

.ticket-card--color05 .ticket-card__del,
.ticket-card--color06 .ticket-card__del,
.ticket-card--color07 .ticket-card__del,
.ticket-card--color08 .ticket-card__del {
    color: rgba(0, 0, 0, .5);
    background-color: rgba(0, 0, 0, .08)
}

.ticket-card--color06 {
    background-color: #e0d8df
}

.ticket-card--color07 {
    background-color: #dfe2db
}

.ticket-card--color08 {
    background-color: #d9b48c
}

.ticket-card--color09 {
    color: #fff;
    background-color: #6a3310
}

.ticket-card--color09 .ticket-card__del,
.ticket-card--color10 .ticket-card__del {
    color: rgba(255, 255, 255, .5);
    background-color: rgba(255, 255, 255, .08)
}

.ticket-card--color10 {
    color: #fff;
    background-color: #878c6e
}

.ticket-card--color11 {
    background-color: #d69b02
}

.ticket-card--color11 .ticket-card__del {
    color: rgba(0, 0, 0, .5);
    background-color: rgba(0, 0, 0, .08)
}

.ticket-card--color12 {
    color: #fff;
    background-color: #78914f
}

.ticket-card--color12 .ticket-card__del {
    color: rgba(255, 255, 255, .5);
    background-color: rgba(255, 255, 255, .08)
}

.ticket-card--color13 {
    background-color: #dcdedf
}

.ticket-card--color13 .ticket-card__del {
    color: rgba(0, 0, 0, .5);
    background-color: rgba(0, 0, 0, .08)
}

.ticket-card--color14 {
    color: #fff;
    background-color: #594535
}

.ticket-card--color14 .ticket-card__del {
    color: rgba(255, 255, 255, .5);
    background-color: rgba(255, 255, 255, .08)
}

.ticket-card--color15 {
    background-color: #eeddc2
}

.ticket-card--color15 .ticket-card__del,
.ticket-card--color16 .ticket-card__del {
    color: rgba(0, 0, 0, .5);
    background-color: rgba(0, 0, 0, .08)
}

.ticket-card--color16 {
    background-color: #978b8e
}

.switch {
    display: flex
}

.switch__item {
    flex: none
}

.switch__button {
    display: block;
    padding: 14px 17px;
    font-size: 16px;
    line-height: 19px;
    color: rgba(255, 255, 255, .62);
    border: 1px solid rgba(255, 255, 255, .206041);
    transition: color .3s ease-out, border-color .3s ease-out, background-color .3s ease-out;
    cursor: pointer
}

.switch__item:first-child .switch__button {
    padding-left: 25px;
    border-radius: 30px 0 0 30px
}

.switch__item:last-child .switch__button {
    padding-right: 25px;
    border-radius: 0 30px 30px 0
}

.switch__button:hover,
.switch__item:first-child .switch__button:hover {
    color: #fff;
    border-color: rgba(255, 255, 255, .4741)
}

input:checked+.switch__button {
    color: #2b51a6;
    background-color: #fff;
    border-color: #fff;
    pointer-events: none
}

.switch__item:first-child input:checked+.switch__button:hover {
    color: #2b51a6
}

.switch__item:not(:first-child) .switch__button {
    margin-left: -1px
}

.comment-card {
    margin: 0;
    font-size: 15px;
    line-height: 18px;
    padding: 26px 26px 22px;
    color: #000;
    background-color: #fff;
    border-radius: 8px
}

.comment-card__header {
    display: flex;
    align-items: center;
    margin-bottom: 12px
}

.comment-card__avatar {
    margin-right: 15px;
    width: 46px;
    height: 46px
}

.comment-card__author {
    margin: 0
}

.comment-card__content p {
    margin: 0 0 7px
}

.comment-card__delete {
    background-color: transparent;
    border: 0;
    cursor: pointer;
    transition: opacity .3s ease-out;
    position: relative;
    padding: 0 0 0 15px;
    font-size: 13px;
    line-height: 24px;
    color: rgba(0, 0, 0, .37)
}

.comment-card__delete:hover {
    opacity: .7
}

.comment-card__delete:active,
.comment-card__delete:focus {
    opacity: .6;
    outline: 0
}

.comment-card__delete::before {
    content: "";
    position: absolute;
    top: 50%;
    left: 0;
    transform: translateY(-50%);
    margin-top: 1px;
    width: 10px;
    height: 10px;
    background-image: url(../img/del.svg);
    background-repeat: no-repeat;
    background-size: contain;
    background-position: center
}

.announce-card {
    transition: opacity .3s ease-out;
    display: block;
    padding: 29px 26px;
    min-height: 154px;
    color: #000;
    background-color: #fff
}

.announce-card:hover,
.pagination a:hover {
    opacity: .7
}

.announce-card:active,
.announce-card:focus,
.pagination a:active,
.pagination a:focus {
    opacity: .6;
    outline: 0
}

.announce-card__title {
    font-weight: 700;
    font-size: 30px;
    line-height: 36px;
    margin: 0 0 21px
}

.announce-card__info {
    display: flex;
    align-items: center
}

.announce-card__price {
    font-weight: 400;
    font-size: 26px;
    line-height: 31px;
    margin: 0 12px 0 0
}

.announce-card__type {
    margin: 0;
    font-weight: 700;
    text-transform: uppercase;
    font-size: 10px;
    line-height: 12px;
    letter-spacing: 1px;
    padding: 5px 9px;
    color: #fff;
    background-color: #000;
    border-radius: 11px
}

.pagination,
.pagination a {
    display: flex;
    justify-content: center;
    align-items: center
}

.pagination {
    margin: 0;
    padding: 0;
    list-style: none;
    flex-wrap: wrap;
    font-size: 20px;
    line-height: 24px;
    color: #2b51a6
}

.pagination li {
    margin: 0 5px;
    flex: none
}

.pagination a {
    transition: opacity .3s ease-out;
    flex-direction: column;
    text-align: center;
    color: inherit;
    min-width: 40px;
    height: 40px;
    border-radius: 50%
}

.pagination a.active {
    color: #fff;
    background-color: #2b51a6
}

.icon {
    width: 26px;
    height: 26px;
    background-size: 26px 26px;
    background-position: left top;
    background-repeat: no-repeat
}

.icon--vk {
    background-image: url(../img/vk.svg)
}

.header,
.header__wrapper {
    display: flex
}

.header {
    flex-direction: column;
    background-color: #2b51a6
}

.header__wrapper {
    width: 1042px;
    margin: 0 auto;
    flex-wrap: wrap;
    align-items: center;
    min-height: 89px;
    padding: 0 36px;
    font-size: 16px;
    line-height: 19px
}

.header__logo {
    margin-right: 88px;
    padding-bottom: 10px
}

.header__user-menu {
    display: none;
    width: 350px;
    margin-right: 36px
}

.header__list {
    margin: 0;
    padding: 0;
    list-style: none;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between
}

.header__item a {
    padding: 35px 14px;
    color: rgba(255, 255, 255, .47)
}

.header__item a:hover {
    color: #fff
}

.header__avatar {
    width: 58px;
    height: 58px;
    margin-left: auto
}

.header__input {
    transition: opacity .3s ease-out;
    margin-left: auto;
    margin-top: 4px;
    color: #fff
}

.header__input:hover,
.page-footer__nav a:hover {
    opacity: .7
}

.header__input:active,
.header__input:focus,
.page-footer__nav a:active,
.page-footer__nav a:focus {
    opacity: .6;
    outline: 0
}

.header--logged .header__wrapper {
    padding-right: 30px
}

.header--logged .header__logo {
    margin-right: 100px
}

.header--logged .header__avatar,
.header--logged .header__user-menu {
    display: block
}

.header--logged .search input {
    width: 246px;
    padding-left: 50px;
    border: 0
}

.header--logged .search__icon {
    top: 14px;
    left: 80px
}

.header--logged .search--active .search__icon {
    top: 13px;
    left: 14px
}

.header--logged .header__input {
    display: none
}

.header__item--active a {
    color: #fff;
    background-color: rgba(255, 255, 255, .05)
}

.page-footer {
    margin-top: 40px;
    padding: 45px 0 58px;
    color: #fff;
    background-color: #2b51a6
}

.page-footer__col,
.page-footer__wrapper {
    display: flex
}

.page-footer__wrapper {
    margin: 0 auto;
    align-items: flex-start;
    justify-content: space-between;
    padding: 0 37px;
    width: 1042px
}

.page-footer__col {
    flex: none;
    flex-direction: column;
    width: 300px
}

.page-footer__col:nth-child(2) {
    align-items: center
}

.page-footer__col:last-child {
    align-items: flex-end
}

.page-footer__logo-academy {
    display: inline-block;
    vertical-align: top;
    margin: 2px 0 38px;
    width: 132px;
    opacity: .635417;
    transition: opacity .3s ease-out
}

.form__field--price.form__field--fill::before,
.form__field--price.form__field--focus::before,
.page-footer__logo-academy:hover {
    opacity: 1
}

.page-footer__logo-academy svg {
    display: block;
    max-width: 100%;
    fill: none
}

.page-footer__copyright {
    margin: 0;
    font-size: 15px;
    line-height: 18px;
    opacity: .56
}

.page-footer__nav {
    list-style: none;
    margin: 12px 0 0;
    padding: 0 10px 0 0;
    text-align: right;
    font-size: 16px;
    line-height: 19px
}

.page-footer__nav li {
    margin-bottom: 19px
}

.page-footer__nav a {
    transition: opacity .3s ease-out;
    display: block;
    color: inherit
}

.page-content {
    flex-grow: 1;
    display: flex;
    flex-direction: column
}

.sign-up {
    width: 1042px;
    margin: 71px auto 0
}

.sign-up__form {
    margin: 0 auto;
    width: 520px;
    min-height: 616px;
    padding: 47px 82px 52px 70px;
    border-radius: 33px
}

.sign-up__title {
    margin: 0;
    font-weight: 400;
    text-transform: uppercase;
    font-size: 22px;
    line-height: 27px;
    letter-spacing: 1.4px;
    display: flex;
    flex-wrap: wrap
}

.sign-up__title h2 {
    position: relative;
    margin: 0 32px 0 0;
    padding-bottom: 12px;
    font: inherit;
    color: #fff
}

.login__title h2::before,
.sign-up__title h2::before {
    content: "";
    position: absolute;
    left: 0;
    bottom: 0;
    width: 100%;
    height: 1px;
    background-color: #fff
}

.sign-up__link {
    color: rgba(255, 255, 255, .55)
}

.sign-up__link:hover {
    color: #fff
}

.sign-up__avatar-container {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    margin-bottom: 29px;
    margin-top: 47px
}

.sign-up__avatar-container.uploaded {
    margin-top: 24px;
    margin-bottom: 12px
}

.form__field span,
.sign-up__avatar,
.sign-up__avatar-container.uploaded .sign-up__text-upload,
.sign-up__text-another {
    display: none
}

.sign-up__avatar-container.uploaded .sign-up__avatar,
.sign-up__avatar-container.uploaded .sign-up__text-another {
    display: block
}

.sign-up__field-avatar label {
    display: inline-block;
    width: 190px;
    min-height: 49px;
    padding: 14px 10px;
    color: #fff;
    text-align: center;
    border: 1px solid rgba(255, 255, 255, .206041);
    border-radius: 30px;
    cursor: pointer;
    transition: all .3s ease-out
}

.sign-up__avatar-container.uploaded label {
    width: 243px
}

.sign-up__avatar {
    width: 88px;
    height: 88px;
    margin-right: 25px;
    border-radius: 50%;
    overflow: hidden
}

.sign-up__avatar img,
.ticket-form__avatar img {
    -o-object-fit: cover;
    object-fit: cover;
    height: 100%;
    width: 100%
}

.form-group .sign-up__field {
    margin-bottom: 26px;
    margin-left: 4px
}

.form-group:last-of-type .sign-up__field {
    margin-bottom: 40px
}

.sign-up__button {
    width: 186px;
    min-height: 59px;
    padding: 19px 10px 21px;
    margin-bottom: 32px
}

.login {
    width: 1042px;
    margin: 71px auto 0
}

.login__form {
    margin: 0 auto;
    width: 520px;
    min-height: 380px;
    padding: 47px 82px 52px 70px;
    border-radius: 33px
}

.login__title {
    margin: 0;
    font-weight: 400;
    text-transform: uppercase;
    font-size: 22px;
    line-height: 27px;
    letter-spacing: 1.4px;
    display: flex;
    flex-wrap: wrap
}

.login__title h2 {
    position: relative;
    margin: 0 0 24px;
    padding-bottom: 12px;
    font: inherit;
    color: #fff
}

.login__link {
    margin-right: 32px;
    color: rgba(255, 255, 255, .55)
}

.login__link:hover {
    color: #fff
}

.form-group .login__field {
    margin-bottom: 26px;
    margin-left: 4px
}

.form-group:last-of-type .login__field {
    margin-bottom: 40px
}

.login__button {
    width: 120px;
    min-height: 59px;
    padding: 19px 10px 21px;
    margin-bottom: 32px
}

.form {
    background-color: #2b51a6
}

.form__field {
    position: relative;
    flex-grow: 1
}

.form__field label {
    position: absolute;
    top: 10px;
    left: 0;
    font-size: 16px;
    line-height: 19px;
    color: rgba(255, 255, 255, .62)
}

.form__field input {
    width: 100%;
    height: 44px;
    padding: 12px 0;
    font-size: 16px;
    line-height: 19px;
    color: #fff;
    background-color: transparent;
    border: 0;
    border-radius: 0;
    border-bottom: 1px solid rgba(255, 255, 255, .26);
    transition: border-color .3s ease-out;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none
}

.form__field input:focus,
.form__field textarea:focus {
    outline: 0;
    border-bottom: 1px solid rgba(255, 255, 255, .47)
}

.form__field input:focus+label,
.form__field textarea:focus+label {
    opacity: 0;
    pointer-events: none
}

.form__field input:-webkit-autofill {
    -webkit-box-shadow: 0 0 0 50px #2b51a6 inset;
    -webkit-text-fill-color: #fff;
    padding-left: 10px
}

.form__field input[type=password] {
    padding-top: 4px;
    font-size: 22px;
    letter-spacing: 2px
}

.form__field textarea {
    width: 100%;
    height: 124px;
    padding: 0;
    font-size: 15px;
    line-height: 25px;
    color: #fff;
    background-color: transparent;
    border: 0;
    border-bottom: 1px solid rgba(255, 255, 255, .26);
    transition: border-color .3s ease-out;
    resize: none
}

.form__field--fill label {
    opacity: 0;
    pointer-events: none
}

.form__field--invalid input {
    color: #f98c24;
    border-color: #f98c24
}

.form__field--invalid span {
    display: block;
    margin-top: 7px;
    font-size: 10px;
    line-height: 12px;
    font-weight: 700;
    letter-spacing: 1px;
    text-transform: uppercase;
    color: #f98c24
}

input:invalid,
textarea:invalid {
    box-shadow: none;
    outline: 0
}

.form__switch:not(:first-child) {
    flex: none;
    margin-left: 47px
}

.form__field--price {
    position: relative
}

.form__field--price::before {
    content: "₽";
    position: absolute;
    top: 12px;
    left: 0;
    font-size: 22px;
    line-height: 26px;
    opacity: 0
}

.form__field--price label {
    top: 17px
}

.form__field--price input[type=number] {
    padding-left: 19px;
    font-size: 22px;
    -webkit-appearance: textfield;
    appearance: textfield;
    -moz-appearance: textfield
}

.form__field--price input[type=number]::-webkit-inner-spin-button,
.form__field--price input[type=number]::-webkit-outer-spin-button {
    display: none;
    -webkit-appearance: none;
    appearance: none
}

.field-category-field,
.form .selectr-container {
    width: 100%
}

.form .selectr-container.multiple.has-selected .selectr-selected,
.form .selectr-container.open .selectr-selected,
.form .selectr-selected {
    box-sizing: border-box;
    padding: 13px 52px 16px 28px;
    height: 49px;
    font-size: 16px;
    line-height: 19px;
    color: #fff;
    white-space: nowrap;
    text-overflow: ellipsis;
    background-color: transparent;
    border: 1px solid rgba(255, 255, 255, .206041);
    border-radius: 25px;
    overflow: hidden;
    transition: opacity .3s ease-out, border-color .3s ease-out
}

.form .selectr-container.multiple.has-selected .selectr-selected--hidden,
.form .selectr-container.open .selectr-selected--hidden,
.form .selectr-selected--hidden {
    position: absolute;
    top: 0;
    left: 0;
    opacity: 0
}

.form .selectr-selected:focus {
    outline: 0
}

.form .selectr-container.open .selectr-selected::before,
.form .selectr-selected::before {
    border: 0;
    right: 28px;
    margin-top: -1px;
    width: 7px;
    height: 14px;
    background-image: url(../img/arr.svg);
    background-repeat: no-repeat;
    background-size: contain;
    background-position: center
}

.error__item a:hover,
.form .selectr-placeholder {
    color: #fff
}

.form .selectr-container.inverted .selectr-options-container,
.form .selectr-options-container {
    margin: 6px 0;
    background-color: #2b51a6;
    border: 1px solid rgba(255, 255, 255, .21);
    border-radius: 21px;
    transition: border-coor .3s ease-out
}

.form .selectr-options {
    font-size: 16px;
    line-height: 19px;
    overflow-y: auto
}

.form .selectr-option {
    padding: 13px 27px 14px;
    border-bottom: 1px solid rgba(255, 255, 255, .21);
    transition: background-color .3s ease-out, border-coor .3s ease-out
}

.form .selectr-option:first-child {
    border-radius: 21px 21px 0 0
}

.form .selectr-option:last-child {
    border-bottom: 0;
    border-radius: 0 0 21px 21px
}

.form .selectr-option.active {
    background-color: transparent
}

.form .selectr-option:hover {
    background-color: rgba(216, 216, 216, .21)
}

.form .selectr-option.selected {
    position: relative;
    background-color: transparent
}

.form .selectr-option.selected::before {
    content: "";
    position: absolute;
    top: 50%;
    left: 10px;
    transform: translateY(-50%);
    width: 8px;
    height: 8px;
    background-color: #fff;
    border-radius: 50%
}

.form .selectr-tag,
.form .selectr-tags {
    white-space: nowrap;
    background-color: transparent
}

.form .selectr-tags {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    display: flex;
    box-sizing: border-box;
    height: 49px;
    font-size: 16px;
    line-height: 19px;
    color: #fff;
    text-overflow: ellipsis;
    border: 1px solid rgba(255, 255, 255, .206041);
    border-radius: 25px;
    overflow: hidden;
    transition: opacity .3s ease-out, border-color .3s ease-out;
    padding: 13px 52px 16px 28px
}

.form .selectr-tag {
    margin: 0 4px 0 0;
    padding: 0
}

.form .selectr-tag::after {
    content: ",";
    display: inline;
    font-size: 16px;
    line-height: 19px;
    color: #fff
}

.form .selectr-tag:last-child::after {
    display: none
}

.form .selectr-tag-remove {
    display: none
}

.form .selectr-container:hover .selectr-selected:not(.selectr-selected--hidden) {
    border-color: rgba(255, 255, 255, .4741);
    opacity: 1
}

.form .selectr-options-container:hover,
.form .selectr-options-container:hover .selectr-option {
    border-color: rgba(255, 255, 255, .4741)
}

.ui-kit--dark {
    color: #fff;
    background-color: #2b51a6
}

.ui-kit__wrapper {
    width: 1042px;
    margin: 0 auto;
    display: flex
}

.ui-kit__col {
    box-sizing: border-box;
    flex-grow: 1;
    padding: 0 20px
}

.ui-kit__row {
    display: flex
}

.ui-kit__element {
    margin: 20px;
    width: 100%
}

.ui-kit__element--select {
    width: 222px
}

.ui-kit__headline {
    margin: 0;
    font-weight: 700;
    font-size: 30px;
    line-height: 36px;
    color: #2b51a6
}

.ui-kit__subtitle,
.ui-kit__title {
    margin: 0;
    font-weight: 400;
    font-size: 26px;
    line-height: 31px;
    color: #2b51a6
}

.ui-kit__subtitle {
    text-transform: uppercase;
    font-size: 22px;
    line-height: 27px;
    letter-spacing: 1.4px
}

.ui-kit__lead {
    margin: 0;
    font-size: 18px;
    line-height: 22px
}

.ui-kit__text {
    margin: 0;
    font-size: 15px;
    line-height: 18px
}

.ui-kit__note {
    margin: 0;
    font-size: 14px;
    line-height: 17px
}

.ui-kit__chat-answer {
    margin: 0;
    font-size: 13px;
    line-height: 15px
}

.ui-kit__label {
    text-transform: uppercase;
    letter-spacing: 1.2px
}

.ui-kit__chat,
.ui-kit__label {
    margin: 0;
    font-size: 12px;
    line-height: 14px
}

.ui-kit__highlight {
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 1px
}

.ui-kit__chat-time,
.ui-kit__highlight {
    margin: 0;
    font-size: 10px;
    line-height: 12px
}

.html-not-found {
    background: #1b2d37 url(../img/bg-404.png) no-repeat center;
    background-size: cover;
    height: 100%
}

@media (-webkit-min-device-pixel-ratio:1.5),
(min-resolution:144dpi),
(min-resolution:1.5dppx) {
    .html-not-found {
        background-image: url(../img/bg-404@2x.png);
        background-size: cover
    }
}

.html-server {
    background: #1b2d37 url(../img/bg-500.png) no-repeat center;
    background-size: cover;
    height: 100%
}

@media (-webkit-min-device-pixel-ratio:1.5),
(min-resolution:144dpi),
(min-resolution:1.5dppx) {
    .html-server {
        background-image: url(../img/bg-500@2x.png);
        background-size: cover
    }
}

.body-not-found,
.body-server {
    background-color: transparent
}

.error {
    width: 1042px;
    margin: 0 auto;
    padding-top: 119px;
    padding-left: 131px;
    color: #fff
}

.error__title {
    font-weight: 700;
    font-size: 30px;
    line-height: 36px;
    margin: 0 0 17px
}

.error__subtitle {
    font-weight: 400;
    text-transform: uppercase;
    font-size: 22px;
    line-height: 27px;
    letter-spacing: 1.4px;
    margin: 0 0 31px
}

.error__list {
    padding: 0;
    list-style: none;
    margin: 0 0 36px
}

.error__item:not(:last-child) {
    margin-bottom: 21px
}

.error__item a {
    font-size: 16px;
    line-height: 19px;
    color: rgba(255, 255, 255, .66)
}

.error__search {
    margin-bottom: 122px
}

.categories-list {
    width: 1042px;
    margin: 0 auto;
    padding: 55px 0 25px
}

.categories-list__item,
.categories-list__wrapper {
    display: flex
}

.categories-list__wrapper {
    list-style: none;
    flex-wrap: wrap;
    padding: 0 30px;
    margin: 0
}

.categories-list__item {
    flex: none;
    flex-direction: column;
    align-items: center;
    margin: 0 5px 20px;
    width: 150px
}

.tickets-list {
    margin-bottom: 70px
}

.tickets-list__wrapper {
    width: 1042px;
    margin: 0 auto;
    padding: 0 26px
}

.tickets-list__header {
    display: flex;
    align-items: center;
    padding: 15px 0;
    color: #2b51a6
}

.tickets-list__link,
.tickets-list__title {
    margin: 0;
    font-weight: 400;
    text-transform: uppercase;
    font-size: 22px;
    line-height: 27px;
    letter-spacing: 1.4px
}

.tickets-list__link {
    margin: 0 0 0 auto;
    color: inherit;
    opacity: .5;
    transition: opacity .3s ease-out
}

.tickets-list__link:hover {
    opacity: 1
}

.tickets-list ul,
.tickets-list__item {
    display: flex
}

.tickets-list ul {
    padding: 0;
    list-style: none;
    flex-wrap: wrap;
    margin: 0
}

.tickets-list__item {
    flex-direction: column;
    margin: 0 9px 9px 0;
    width: calc(25% - 6.75px)
}

.tickets-list__item:nth-child(4n) {
    margin-right: 0
}

.tickets-list__btn {
    margin: 47px auto 44px;
    padding: 26px 38px;
    min-width: 289px
}

.tickets-list__btn span {
    position: relative;
    padding-left: 20px
}

.tickets-list__btn span::before {
    content: "+";
    position: absolute;
    top: 50%;
    left: -9px;
    transform: translateY(-50%);
    font-size: 26px
}

.tickets-list__pagination {
    margin-top: 59px
}

.ticket-form {
    display: flex;
    flex-direction: column;
    align-items: center;
    padding: 53px 0
}

.ticket-form__wrapper {
    width: 1042px;
    margin: 0 auto
}

.ticket-form__title {
    font-weight: 400;
    font-size: 22px;
    line-height: 27px;
    letter-spacing: 1.4px;
    margin: 0 0 26px;
    text-align: center;
    text-transform: uppercase;
    color: #2b51a6
}

.ticket-form__tile {
    box-sizing: border-box;
    margin: 0 auto;
    padding: 50px 52px 47px;
    width: 580px;
    color: #fff;
    background-color: #2b51a6;
    border-radius: 8px
}

.ticket-form__content {
    margin-bottom: 53px
}

.ticket-form__row {
    display: flex;
    align-items: flex-end;
    margin-bottom: 41px
}

.ticket-form__row:last-child,
.ticket__data p:last-child,
.ticket__desc p:last-child {
    margin-bottom: 0
}

.ticket-form__avatar-container {
    display: flex;
    flex-wrap: wrap;
    align-items: flex-end;
    margin-bottom: 25px
}

.ticket-form__avatar-container.uploaded {
    margin-top: 24px;
    margin-bottom: 40px
}

.ticket-form__avatar,
.ticket-form__avatar-container.uploaded .ticket-form__text-upload,
.ticket-form__text-another {
    display: none
}

.ticket-form__avatar-container.uploaded .ticket-form__avatar,
.ticket-form__avatar-container.uploaded .ticket-form__text-another {
    display: block
}

.ticket-form__field-avatar label {
    margin-bottom: 4px;
    display: inline-block;
    min-width: 178px;
    min-height: 49px;
    padding: 14px 19px;
    color: #fff;
    text-align: center;
    border: 1px solid rgba(255, 255, 255, .206041);
    border-radius: 30px;
    cursor: pointer;
    transition: all .3s ease-out
}

.ticket-form__field-avatar input:focus+label,
.ticket-form__field-avatar label:hover {
    border: 1px solid rgba(255, 255, 255, .4741)
}

.ticket-form__avatar {
    margin-top: -25px;
    width: 140px;
    height: 175px;
    margin-right: 25px;
    background-color: #534326;
    border-radius: 8px;
    overflow: hidden
}

.ticket-form__field {
    margin-bottom: 26px;
    margin-left: 4px
}

.ticket-form__field:last-of-type {
    margin-bottom: 40px
}

.ticket {
    padding-top: 54px
}

.ticket__wrapper {
    width: 1042px;
    margin: 0 auto;
    padding: 0 36px
}

.ticket__content {
    display: flex;
    padding-bottom: 61px;
    border-bottom: 1px solid rgba(43, 81, 166, .23)
}

.ticket__img {
    flex: none;
    margin-right: 48px;
    width: 385px;
    height: 482px;
    background-image: url(../img/blank.png);
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
    border-radius: 28px;
    overflow: hidden
}

.ticket__img img {
    display: block;
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    -o-object-position: center top;
    object-position: center top
}

.ticket__title {
    font-weight: 700;
    font-size: 30px;
    line-height: 36px;
    margin: 0 0 19px;
    color: #2b51a6
}

.ticket__header {
    display: flex;
    align-items: center;
    margin-bottom: 20px
}

.ticket__price {
    font-weight: 400;
    font-size: 26px;
    line-height: 31px;
    margin: 0 13px 0 0
}

.ticket__action {
    margin: 0;
    font-weight: 700;
    text-transform: uppercase;
    font-size: 10px;
    line-height: 12px;
    letter-spacing: 1px;
    padding: 4px 8px;
    border: 1px solid #000;
    border-radius: 11px
}

.ticket__desc {
    margin: 0;
    font-size: 15px;
    max-width: 425px;
    line-height: 26px
}

.ticket__desc p {
    margin: 0 0 25px
}

.ticket__data {
    margin-bottom: 25px;
    font-size: 13px;
    line-height: 26px
}

.ticket__data p {
    margin: 0 0 4px
}

.ticket__data a {
    transition: opacity .3s ease-out;
    color: #2b51a6
}

.ticket__data a:hover {
    opacity: .7
}

.ticket__data a:active,
.ticket__data a:focus {
    opacity: .6;
    outline: 0
}

.ticket__tags {
    margin: 0;
    padding: 0;
    list-style: none;
    display: flex;
    align-items: center;
    flex-wrap: wrap
}

.ticket__tags li {
    margin: 0 30px 20px 0
}

.ticket__comments {
    margin: 0 auto;
    padding-top: 45px;
    width: 580px;
    position: relative
}

.ticket__subtitle {
    font-weight: 400;
    text-transform: uppercase;
    font-size: 22px;
    line-height: 27px;
    letter-spacing: 1.4px;
    margin: 0 0 29px;
    text-align: center;
    color: #2b51a6
}

.ticket__comment-form {
    margin-bottom: 33px
}

.ticket__warning {
    margin: 0 auto 60px;
    max-width: 410px;
    text-align: center
}

.ticket__message,
.ticket__warning p {
    margin: 0 0 30px;
    font-weight: 700;
    font-size: 16px;
    line-height: 22px;
    color: #2b51a6
}

.ticket__warning .btn {
    padding-top: 26px;
    padding-bottom: 26px;
    width: 262px
}

.ticket__message {
    margin: 70px auto;
    max-width: 235px;
    text-align: center
}

.ticket__message p {
    margin: 0
}

.ticket .comments-list li {
    margin-bottom: 28px
}

.ticket .comment-card {
    padding-bottom: 26px
}

.comment-form {
    padding: 19px 28px 22px;
    color: #fff;
    background-color: #2b51a6;
    border-radius: 8px
}

.comment-form__header {
    display: flex;
    align-items: center;
    margin-bottom: 16px;
    font-weight: 700;
    font-size: 15px;
    line-height: 26px
}

.comment-form__avatar {
    margin-right: 15px;
    width: 46px;
    height: 46px
}

.comment-form__author {
    margin: 0
}

.comment-form textarea {
    height: 96px;
    border-bottom-width: 2px
}

.comment-form textarea:focus {
    border-bottom-width: 2px
}

.comment-form__field {
    margin-bottom: 18px
}

.comment-form__button {
    padding: 14px 23px
}

.comments-list {
    margin: 0;
    padding: 0;
    list-style: none
}

.comments-list li {
    margin-bottom: 17px
}

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

.comments {
    flex-grow: 1;
    display: flex;
    flex-direction: column;
    padding: 50px 0
}

.comments__header {
    margin-bottom: 17px
}

.comments__wrapper {
    flex-grow: 1;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    margin: 0 auto;
    width: 580px
}

.comments__block {
    margin-bottom: 48px;
    width: 100%
}

.comments__message {
    margin: 0;
    max-width: 200px;
    text-align: center;
    font-weight: 700;
    font-size: 16px;
    line-height: 22px;
    color: #2b51a6
}

.search-results {
    margin-bottom: 45px;
    padding: 25px 0
}

.search-results__wrapper {
    width: 1042px;
    margin: 0 auto;
    padding: 0 26px
}

.search-results__label {
    margin: 0 0 29px;
    font-weight: 700;
    font-size: 15px;
    line-height: 18px;
    color: #2b51a6
}

.search-results__item,
.search-results__list {
    display: flex
}

.search-results__list {
    padding: 0;
    list-style: none;
    flex-wrap: wrap;
    margin: 0
}

.search-results__item {
    flex-direction: column;
    margin: 0 9px 9px 0;
    width: calc(25% - 6.75px)
}

.search-results__item:nth-child(4n) {
    margin-right: 0
}

.message,
.search-results__message {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    text-align: center
}

.search-results__message {
    min-height: 390px;
    font-weight: 700;
    font-size: 16px;
    line-height: 22px;
    color: #2b51a6
}

.search-results__message p {
    margin: 0 0 12px
}

.message {
    flex-grow: 1;
    margin: 0 auto;
    padding: 40px;
    max-width: 342px
}

.message__text {
    margin-bottom: 27px;
    font-weight: 700;
    font-size: 15px;
    line-height: 24px;
    color: #2b51a6
}

.chat__message-title p,
.message__text p {
    margin: 0
}

.message__link {
    margin-bottom: 83px;
    padding: 26px;
    width: 100%
}

.chat-button {
    transition: opacity .3s ease-out;
    width: 54px;
    height: 52px;
    background: url(../img/chat.svg) no-repeat center;
    background-size: 54px 52px;
    cursor: pointer;
    border: 0;
    position: fixed;
    bottom: 52px;
    left: calc(50% + 426px);
}

.chat-button:hover {
    opacity: .7
}

.chat-button:active,
.chat-button:focus {
    opacity: .6;
    outline: 0
}

.chat {
    width: 300px;
    height: 360px;
    padding: 10px 7px 19px;
    background-color: #2b51a6;
    border: 1px solid #24448d;
    border-radius: 8px;
    box-shadow: -2px 3px 4px rgba(17, 33, 70, .5);
    position: fixed;
    bottom: 50px;
    left: calc(50% + 190px);
    z-index: 3
}

.chat--open {
    visibility: visible;
    opacity: 1
}

.chat__subtitle {
    color: #fff;
    font-weight: 400;
    font-size: 16px;
    line-height: 19px;
    margin: 0 18px 14px
}

.chat__conversation {
    list-style: none;
    height: 176px;
    background-color: #fff;
    border-radius: 8px;
    margin: 0 0 18px;
    padding: 10px 46px 10px 20px;
    overflow-y: auto;
    overflow-x: hidden
}

.chat__message {
    margin-bottom: 17px
}

.chat__message:last-child {
    margin-bottom: 0
}

.chat__message-title {
    color: #979797;
    opacity: .5;
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    margin-bottom: 4px
}

.chat__message-author {
    margin: 0;
    font-size: 12px;
    line-height: 14px
}

.chat__message-time {
    margin: 0;
    font-size: 10px;
    line-height: 12px
}

.chat__message-content p {
    margin: 0;
    font-size: 13px;
    line-height: 15px;
    color: #000
}

.chat__form {
    margin: 0;
    height: 103px;
    position: relative
}

.chat__form-message {
    margin: 0;
    font-size: 12px;
    line-height: 14px;
    width: 100%;
    height: 100%;
    padding: 10px 46px 9px 20px;
    border: 0;
    border-radius: 8px;
    resize: none;
    color: #000;
    overflow: auto;
    outline: 0
}

.chat__form-message::-webkit-input-placeholder {
    color: #979797;
    opacity: .5
}

.chat__form-message::-moz-placeholder {
    color: #979797;
    opacity: .5
}

.chat__form-message:-ms-input-placeholder,
.chat__form-message::-ms-input-placeholder {
    color: #979797;
    opacity: .5
}

.chat__form-message::-webkit-input-placeholder {
    color: #979797;
    opacity: .5
}

.chat__form-message::-moz-placeholder {
    color: #979797;
    opacity: .5
}

.chat__form-message:-ms-input-placeholder {
    color: #979797;
    opacity: .5
}

.chat__form-message::-ms-input-placeholder {
    color: #979797;
    opacity: .5
}

.chat__form-message::placeholder {
    color: #979797;
    opacity: .5
}

.chat__form-button {
    transition: opacity .3s ease-out;
    position: absolute;
    width: 19px;
    height: 22px;
    right: 12px;
    bottom: 12px;
    background: url(../img/chat-submit.svg) no-repeat left top;
    background-size: 19px 22px;
    border: 0;
    cursor: pointer;
    z-index: 4
}

.chat__form-button:hover {
    opacity: .7
}

.chat__form-button:active,
.chat__form-button:focus {
    opacity: .6;
    outline: 0
}

/* custom styles */

.help-block {
    color: #FFA500;
}
