/* Подключаем шрифт, если еще не подключен */
@import url("https://fonts.googleapis.com/css2?family=Montserrat:wght@600;700&display=swap");

.faq {
    padding: 100px 0 100px 0;
    background-color: #333;
}

.faq__inner-wrap {
    padding: 40px 15px;
}

.faq__title {
    font-weight: 700;
    margin-bottom: 60px;
}

.faq__category-title {
    font-family: "Montserrat", sans-serif;
    font-weight: 500;
    text-transform: uppercase;
    color: #ffffff;
}

.accordion.arrow-right .card {
    border: none;
    margin-bottom: 1rem;
    background-color: transparent;
}

.accordion.arrow-right .card-header a {
    background-color: #7651e6;
    color: #000000;
    border-radius: 10px;
    font-family: "Montserrat", sans-serif;
    font-size: 20px;
    font-weight: 600;
    line-height: 1.2;
    display: block;
    position: relative;
    transition: all 0.2s ease;
    text-decoration: none;
}

.accordion:not(.accordion-alternate) .card-header a {
    color: rgb(255, 255, 255);
}

.accordion.arrow-right .card-header a[aria-expanded="true"] {
    border-bottom-right-radius: 0px;
    border-bottom-left-radius: 0px;
}

.accordion.arrow-right .card-header a:before {
    position: absolute;
    content: " ";
    right: 20px;
    top: calc(50% + 2px);
    width: 10px;
    height: 10px;
    border-color: #ffffff;
    border-top: 2px solid;
    border-right: 2px solid;
    transform: translate(-50%, -50%) rotate(135deg);
    transition: all 0.2s ease;
}

.accordion.arrow-right .card-header a[aria-expanded="true"]:before {
    top: calc(50% + 4px);
    transform: translate(-50%, -50%) rotate(-45deg);
}
.accordion:not(.accordion-alternate) .card-header a.collapsed {
    background-color: white !important;
    padding: 30px;
    border-radius: 10px;
    font-family: Montserrat;
    font-size: 20px;
    font-weight: 600;
    line-height: 24.38px;
    text-align: left;
    text-underline-position: from-font;
    text-decoration-skip-ink: none;
    background-color: #000;
}
.accordion .card {
    border: none;
    margin-bottom: 16px;
    margin-bottom: 1rem;
    background-color: transparent;
}
.accordion .card-header {
    padding: 0;
    border: none;
    background: none;
}
.accordion .card-header a {
    font-size: 16px;
    font-weight: normal;
    padding: 1rem 1.25rem 1rem 2.25rem;
    display: block;
    border-radius: 4px;
    position: relative;
}
.accordion .card-header a:hover {
    text-decoration: none;
}
.accordion .card-header a:hover.collapsed {
    color: #7651e6 !important;
}
.accordion:not(.accordion-alternate) .card-header a {
    background-color: #7651e6;
    color: #fff;
}
.accordion:not(.accordion-alternate) .card-header a.collapsed {
    background-color: #f1f2f4;
    color: #4c4d4d;
}
.accordion .card-header a:before {
    position: absolute;
    content: " ";
    left: 20px;
    top: calc(50% + 2px);
    width: 9px;
    height: 9px;
    border-color: #ccc;
    border-top: 2px solid;
    border-right: 2px solid;
    -webkit-transform: translate(-50%, -50%) rotate(-45deg);
    transform: translate(-50%, -50%) rotate(-45deg);
    -webkit-transition: all 0.2s ease;
    transition: all 0.2s ease;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
}
.accordion .card-header a.collapsed:before {
    top: calc(50% - 2px);
    -webkit-transform: translate(-50%, -50%) rotate(135deg);
    transform: translate(-50%, -50%) rotate(135deg);
}
.accordion .card-body {
    line-height: 26px;
}
.accordion.arrow-right .card-header a {
    padding-left: 1.25rem;
}
.accordion.arrow-right .card-header a:before {
    right: 15px;
    left: auto;
}
.accordion.accordion-alternate .card {
    margin: 0;
}
.accordion.accordion-alternate .card-header a {
    padding-left: 1.4rem;
    border-top: 1px solid #e4e9ec;
    border-radius: 0px;
}
.accordion.accordion-alternate .card:first-of-type .card-header a {
    border-top: 0px;
}
.accordion.accordion-alternate .card-header a:before {
    left: 6px;
}
.accordion.accordion-alternate .card-header a.collapsed {
    color: #4c4d4d;
}
.accordion.accordion-alternate .card-body {
    padding: 0rem 0 1rem 1.25rem;
}
.accordion.accordion-alternate.arrow-right .card-header a {
    padding-left: 0;
}
.accordion.accordion-alternate.arrow-right .card-header a:before {
    right: 0px;
    left: auto;
}
.accordion.toggle .card-header a:before {
    content: "-";
    border: none;
    font-size: 20px;
    height: auto;
    top: calc(50% + 2px);
    width: auto;
    -webkit-transform: translate(-50%, -50%) rotate(180deg);
    transform: translate(-50%, -50%) rotate(180deg);
}
.accordion.toggle .card-header a.collapsed:before {
    content: "+";
    top: calc(50% - 1px);
    -webkit-transform: translate(-50%, -50%) rotate(0deg);
    transform: translate(-50%, -50%) rotate(0deg);
}
.accordion.accordion-alternate.style-2 .card-header a {
    padding-left: 0px;
}
.accordion.accordion-alternate.style-2 .card-header a:before {
    right: 2px;
    left: auto;
    -webkit-transform: translate(-50%, -50%) rotate(135deg);
    transform: translate(-50%, -50%) rotate(135deg);
    top: 50%;
}
.accordion.accordion-alternate.style-2 .card-header a.collapsed:before {
    -webkit-transform: translate(-50%, -50%) rotate(45deg);
    transform: translate(-50%, -50%) rotate(45deg);
}
.accordion.accordion-alternate.style-2 .card-body {
    padding-left: 0px;
}
.accordion.accordion-alternate.popularRoutes .card-header .nav {
    margin-top: 3px;
}
.accordion.accordion-alternate.popularRoutes .card-header .nav a {
    font-size: 14px;
}
.accordion.accordion-alternate.popularRoutes .card-header a {
    padding: 0px 8px 0px 0px;
    border: none;
    font-size: inherit;
}
.accordion.accordion-alternate.popularRoutes .card-header a:before {
    content: none;
}
.accordion.accordion-alternate.popularRoutes .card-header h5 {
    cursor: pointer;
}
.accordion.accordion-alternate.popularRoutes .card-header h5:before {
    position: absolute;
    content: " ";
    right: 0px;
    top: 24px;
    width: 10px;
    height: 10px;
    opacity: 0.6;
    border-top: 2px solid;
    border-right: 2px solid;
    -webkit-transform: translate(-50%, -50%) rotate(-45deg);
    transform: translate(-50%, -50%) rotate(-45deg);
    -webkit-transition: all 0.2s ease;
    transition: all 0.2s ease;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
}
.accordion.accordion-alternate.popularRoutes .card-header h5.collapsed:before {
    top: 24px;
    -webkit-transform: translate(-50%, -50%) rotate(135deg);
    transform: translate(-50%, -50%) rotate(135deg);
}
.accordion.accordion-alternate.popularRoutes .card-body {
    padding: 0;
}
.accordion.accordion-alternate.popularRoutes .card {
    border-bottom: 2px solid #e4e9ec;
    padding: 15px 0px;
}
.accordion.accordion-alternate.popularRoutes .routes-list {
    margin: 1rem 0px 0px 0px;
    padding: 0px;
    list-style: none;
}
.accordion.accordion-alternate.popularRoutes .routes-list a {
    color: inherit;
    display: -ms-flexbox !important;
    display: flex !important;
    -ms-flex-align: center !important;
    align-items: center !important;
}
.accordion.accordion-alternate.popularRoutes .routes-list a:hover {
    color: #ffffff;
    text-decoration: underline;
}

.faq-purple-body {
    background-color: #7651e6;
    color: white;
    border-bottom-right-radius: 10px;
    border-bottom-left-radius: 10px;
}

.faq-purple-body .card-body {
    padding: 0 1.25rem 1.5rem 1.25rem;
    line-height: 26px;
    font-family: "Montserrat", sans-serif;
}

.faq__content-text * {
    color: #ffffff !important;
    background-color: transparent !important;
}
.faq__content-text ul {
    margin: 0;
}

.faq__content-text ul li::marker {
    color: #f26dc4;
}
