@charset "UTF-8";
.cars-list,
.courses-list,
.header-list,
.person-info-list {
    margin: 0;
    padding: 0;
    list-style: none;
}
.clearfix:after {
    content: "";
    display: block;
    clear: both;
}
.sr-only {
    position: absolute;
    width: 1px;
    height: 1px;
    margin: -1px;
    padding: 0;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    border: 0;
}
.sr-only-focusable:active,
.sr-only-focusable:focus {
    position: static;
    width: auto;
    height: auto;
    margin: 0;
    overflow: visible;
    clip: auto;
}
.ellipsis {
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
}
*,
:after,
:before {
    box-sizing: border-box;
}
html {
    font-size: 62.5%;
}
body {
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    color: var(--base-text-color);
    background: var(--base-background-color);
    font: var(--base-font-size) / var(--base-line-height) var(--base-font-family);
    min-width: var(--base-min-width);
}
img {
    max-width: 100%;
    min-height: 1px;
    height: auto;
}
.gm-style img {
    max-width: none;
}
.container {
    padding: 0 1.5rem;
    margin: 0 auto;
    max-width: 101rem;
}
.h,
.h1,
.h2,
.h3,
.h4,
.h5,
.h6,
h1,
h2,
h3,
h4,
h5,
h6 {
    font-family: var(--headings-font-family);
    font-weight: 700;
    margin: 0 0 0.5em;
    color: var(--headings-color);
}
.h1,
h1 {
    font-size: var(--headings-sizes-h1);
}
.h2,
h2 {
    font-size: var(--headings-sizes-h2);
}
.h3,
h3 {
    font-size: var(--headings-sizes-h3);
}
.h4,
h4 {
    font-size: var(--headings-sizes-h4);
}
.h5,
h5 {
    font-size: var(--headings-sizes-h5);
}
.h6,
h6 {
    font-size: var(--headings-sizes-h6);
}
p {
    margin: 0 0 1em;
}
a {
    color: var(--base-link-color);
}
a:focus {
    text-decoration: none;
}
fieldset,
form {
    margin: 0;
    padding: 0;
    border-style: none;
}
input[type="email"],
input[type="password"],
input[type="search"],
input[type="tel"],
input[type="text"],
textarea {
    -webkit-appearance: none;
    appearance: none;
    box-sizing: border-box;
    font-family: var(--form-font-family);
    border-radius: 0;
    border: 0.1rem solid var(--form-element-border-color);
    padding: var(--form-element-padding);
}
input[type="email"]:focus,
input[type="password"]:focus,
input[type="search"]:focus,
input[type="tel"]:focus,
input[type="text"]:focus,
textarea:focus {
    border-color: var(--form-element-focus-border-color);
}
input[type="email"]::-webkit-input-placeholder,
input[type="password"]::-webkit-input-placeholder,
input[type="search"]::-webkit-input-placeholder,
input[type="tel"]::-webkit-input-placeholder,
input[type="text"]::-webkit-input-placeholder,
textarea::-webkit-input-placeholder {
    color: var(--placeholder-color);
}
input[type="email"]::-moz-placeholder,
input[type="password"]::-moz-placeholder,
input[type="search"]::-moz-placeholder,
input[type="tel"]::-moz-placeholder,
input[type="text"]::-moz-placeholder,
textarea::-moz-placeholder {
    opacity: 1;
    color: var(--placeholder-color);
}
input[type="email"]:-moz-placeholder,
input[type="password"]:-moz-placeholder,
input[type="search"]:-moz-placeholder,
input[type="tel"]:-moz-placeholder,
input[type="text"]:-moz-placeholder,
textarea:-moz-placeholder {
    color: var(--placeholder-color);
}
input[type="email"]:-ms-input-placeholder,
input[type="password"]:-ms-input-placeholder,
input[type="search"]:-ms-input-placeholder,
input[type="tel"]:-ms-input-placeholder,
input[type="text"]:-ms-input-placeholder,
textarea:-ms-input-placeholder {
    color: var(--placeholder-color);
}
input[type="email"].placeholder,
input[type="password"].placeholder,
input[type="search"].placeholder,
input[type="tel"].placeholder,
input[type="text"].placeholder,
textarea.placeholder {
    color: var(--placeholder-color);
}
select {
    border-radius: 0;
}
textarea {
    resize: vertical;
    vertical-align: top;
}
button,
input[type="button"],
input[type="file"],
input[type="reset"],
input[type="submit"] {
    -webkit-appearance: none;
    appearance: none;
    border-radius: 0;
    cursor: pointer;
    font-family: var(--form-font-family);
}
.btn {
    position: relative;
    display: inline-flex;
    justify-content: center;
    min-width: 34rem;
    padding: 2.1rem 0;
    font-size: 2.083rem;
    font-family: var(--black);
    border-color: transparent;
    border-radius: 0.9rem;
    letter-spacing: 0.05rem;
    text-decoration: none;
    overflow: hidden;
}
.btn:before {
    position: absolute;
    left: -36px;
    top: -20px;
    bottom: -20px;
    margin-top: auto;
    margin-bottom: auto;
    content: "";
    width: 36px;
    height: 100%;
    background-color: hsla(0, 0%, 100%, 0.6);
    transform: skew(-40deg);
    animation: move 2s ease-out 5s infinite;
    transition: all 8s;
}
.btn-orange {
    background-color: var(--color-orange);
}
.btn-border,
.btn-orange {
    color: var(--color-white);
}
.btn-border {
    transition: color 0.4s ease, background-color 0.4s ease;
    min-width: 20rem;
    font-size: 1.458rem;
    border: 0.2rem solid var(--color-white);
    background-color: var(--color-black);
    letter-spacing: 0.04rem;
}
.btn-border:focus,
.btn-border:hover {
    color: var(--color-black);
    background-color: var(--color-white);
}
.btn-red {
    padding: 1.7rem;
    min-width: 25rem;
    font-size: 2.083rem;
    font-family: var(--regular);
    color: var(--color-white);
    background-color: var(--color-red);
}
@keyframes move {
    0% {
        left: -75px;
    }
    to {
        left: 120%;
    }
}
:root {
    --phone: 480px;
    --tablet: 768px;
    --desktop: 980px;
    --widescreen: 1200px;
    --color-white: #fff;
    --color-black: #000;
    --color-title: #19191a;
    --color-grey: #949494;
    --color-text-grey: #787878;
    --color-blue: #39f;
    --color-orange: #f39200;
    --color-red: red;
    --light-grey: #656565;
    --color-grey1: #f5f5ff;
    --color-grey2: #929292;
    --color-black1: #151515;
    --color-input: #7f7f7f;
    --black: "Gotham Pro Black";
    --regular: "Gotham Pro Regular";
    --medium: "Gotham Pro Medium";
    --peace: "Peace Sans";
    --italic: "o";
    --font-sans-serif: "Gotham Pro Regular", sans-serif;
    --font-serif: "Times New Roman", Times, Baskerville, Georgia, serif;
    --base-background-color: var(--color-white);
    --base-font-family: var(--font-sans-serif);
    --base-font-size: 1.6rem;
    --base-line-height: 1.2;
    --base-text-color: var(--color-black);
    --base-min-width: 320px;
    --base-link-color: var(--color-blue);
    --btn-color: var(--color-white);
    --btn-background: var(--color-blue);
    --btn-padding: 0.4em 0.7em;
    --btn-font-size: 1.6rem;
    --btn-font-family: var(--font-sans-serif);
    --form-font-family: var(--font-sans-serif);
    --form-element-padding: var(--btn-padding);
    --form-element-border-color: var(--color-grey);
    --form-element-focus-border-color: var(--color-black);
    --placeholder-color: var(--color-grey);
    --headings-font-family: var(--font-sans-serif);
    --headings-color: var(--base-text-color);
    --headings-sizes-h1: 3rem;
    --headings-sizes-h2: 2.7rem;
    --headings-sizes-h3: 2.4rem;
    --headings-sizes-h4: 2.1rem;
    --headings-sizes-h5: 1.7rem;
    --headings-sizes-h6: 1.5rem;
}
@font-face {
    font-family: Gotham Pro Regular;
    src: url(../fonts/GothamPro.woff) format("woff");
    font-weight: 400;
    font-style: normal;
}
@font-face {
    font-family: Gotham Pro Medium;
    src: url(../fonts/GothamPro-Medium.woff) format("woff");
    font-weight: 400;
    font-style: normal;
}
@font-face {
    font-family: Peace Sans;
    src: url(../fonts/Peace\Sans.woff2) format("woff2");
    font-weight: 400;
    font-style: normal;
    font-stretch: normal;
    unicode-range: u+000d-f6d4;
}
@font-face {
    font-family: Gotham Pro Black;
    src: url(../fonts/GothamPro-Black.woff) format("woff");
    font-weight: 400;
    font-style: normal;
}
@font-face {
    font-family: o;
    src: url(../fonts/o\Italic.woff2) format("woff2");
    font-weight: 400;
    font-style: italic;
    font-stretch: normal;
    unicode-range: u+0020-fb04;
}
@font-face {
    font-family: icomoon;
    src: url(../fonts/icomoon.woff?81j2os) format("woff");
    font-weight: 400;
    font-style: normal;
    font-display: block;
}
i {
    font-family: icomoon !important;
    speak: never;
    font-style: normal;
    font-weight: 400;
    font-variant: normal;
    text-transform: none;
    line-height: 1;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}
.icon-vk-alternitive:before {
    content: "";
}
.icon-whatsapp:before {
    content: "";
}
.icon-instagram:before {
    content: "";
}
.icon-youtube:before {
    content: "";
}
.header {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    margin: auto;
    padding-top: 1.2rem;
}
.header-wrap {
    position: relative;
    display: grid;
    grid-template-columns: repeat(3, 1fr);
}
.header-burger {
    position: absolute;
    top: 0;
    right: 0;
    display: none;
    justify-content: center;
    align-items: center;
    width: 2.5rem;
    height: 1.9rem;
    border: none;
    padding: 0;
    background-color: initial;
    z-index: 9;
}
.header-burger:after,
.header-burger:before,
.header-burger span {
    display: inline-block;
    width: 2.5rem;
    height: 0.5rem;
    background-color: #19191a;
}
.header-burger:after,
.header-burger:before {
    position: absolute;
    left: 0;
    right: 0;
    margin: auto;
    content: "";
}
.header-burger:before {
    top: 0;
}
.header-burger:after {
    bottom: 0;
}
.main-active .header-burger:after,
.main-active .header-burger:before {
    top: 0;
    bottom: 0;
    transform-origin: center;
}
.main-active .header-burger:before {
    transform: rotate(45deg);
}
.main-active .header-burger:after {
    transform: rotate(-45deg);
}
.main-active .header-burger span {
    opacity: 0;
}
.header-list {
    display: flex;
    align-items: flex-start;
    margin-left: 1.2rem;
    font-size: 3.3rem;
    padding-top: 5.5rem;
}
.header-list li {
    margin-right: 0.5rem;
}
.header-list a {
    text-decoration: none;
    color: var(--color-orange);
    transition: opacity 0.4s ease;
}
.header-list a:hover {
    opacity: 0.7;
}
.header-logo {
    display: flex;
    align-items: center;
    flex-direction: column;
    text-decoration: none;
    padding-top: 1rem;
}
.header-logo-text {
    margin-top: 0.4rem;
    font-size: 2.1rem;
    font-family: var(--black);
    color: var(--color-black);
}
.header-logo img {
    max-width: 11rem;
}
.header-contacts {
    padding-top: 5.6rem;
    text-align: right;
}
.header-phone {
    display: block;
    margin-bottom: 0.6rem;
    font-size: 2.1rem;
    font-family: var(--black);
    text-decoration: none;
    color: var(--color-black);
}
.header-time {
    font-size: 1.25rem;
}
.header-nav {
    transition: padding 0.4s ease, width 0.4s ease;
    position: fixed;
    top: 0;
    width: 0;
    height: 100vh;
    padding: 2rem 0;
    background-color: var(--color-black);
    overflow: hidden;
    z-index: 1;
}
.main-active .header-nav {
    width: calc(100vw - 5.5rem);
    padding: 2rem 1.5rem;
}
.header-nav ul {
    padding-left: 0;
    margin-bottom: 0;
    list-style: none;
}
.header-nav li {
    margin-bottom: 2rem;
}
.header-nav a {
    text-decoration: none;
    color: var(--color-white);
}
.banner {
    display: flex;
    padding: 22.3rem 0 0.7rem;
    background: url(../images/banner-image.jpg) no-repeat bottom;
    background-size: cover;
    height: 100vh;
    min-height: 80rem;
    max-height: 80rem;
}
.banner .container {
    display: flex;
    flex-direction: column;
    flex: 1 1;
}
.banner .title {
    margin: 0 auto;
    max-width: 63rem;
    text-align: center;
    font-size: 2.9rem;
    font-family: var(--black);
    line-height: 1.25;
}
.banner .title span {
    font-size: 2.9rem;
}
.banner .btn {
    margin-top: auto;
    margin-bottom: 0;
    min-width: 29rem;
    font-size: 1.7rem;
    padding: 1.95rem 0;
}
.banner-wrap {
    display: flex;
    flex-direction: column;
    flex: 1 1;
    align-items: center;
    margin: 0 auto;
}
.info {
    padding: 4rem 0 3rem;
    background: url(../images/info.jpg) no-repeat top;
    background-size: cover;
}
.info-wrap {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    grid-gap: 2rem;
    margin-bottom: 9.4rem;
}
.info-item {
    text-align: center;
}
.info-pic {
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 1.7rem;
    min-height: 7rem;
}
.info-name {
    margin-bottom: 2.1rem;
    font-size: 2rem;
    color: var(--color-white);
}
.info-desc {
    font-size: 1.667rem;
    color: var(--color-grey);
}
.info-video-title {
    position: relative;
    text-align: center;
    color: var(--color-white);
    font-family: var(--black);
    font-size: 2rem;
    letter-spacing: 0.04rem;
    margin: auto auto 5.9rem -0.6rem;
}
.info-video-title:after {
    width: 3.6rem;
    height: 5.6rem;
    content: "";
    position: absolute;
    bottom: -4.3rem;
    background: url(../images/arrow-white.png) no-repeat 50%;
}
.info-video-wrap {
    display: flex;
    justify-content: center;
    margin-bottom: 6.8rem;
}
.info-video-link {
    display: inline-flex;
    margin: 0 auto;
    max-width: 61rem;
    max-height: 34.3rem;
}
.btn-wrap {
    display: flex;
    justify-content: center;
}
.person {
    margin-bottom: 5.6rem;
}
.person-heading {
    margin-bottom: 7.1rem;
    text-align: center;
    color: var(--color-white);
    font-size: 1.667rem;
}
.person-heading p {
    line-height: 1.4;
}
.person-title {
    margin-bottom: 4.7rem;
    color: var(--color-white);
    font-size: 3.75rem;
    font-family: var(--black);
}
.person-info {
    display: grid;
    margin: 0 auto;
    max-width: 93rem;
    grid-template-columns: 49% 1fr;
    background-color: var(--color-white);
    border: 0.2rem solid var(--color-orange);
    border-radius: 0.8rem;
}
.person-info-pic {
    display: flex;
    align-items: flex-end;
    padding-top: 3.4rem;
    padding-left: 0.7rem;
}
.person-info-desc {
    padding: 7.8rem 2rem 2rem 0.8rem;
}
.person-info-title {
    margin-bottom: 2.9rem;
    letter-spacing: 0.09rem;
}
.person-info-list {
    letter-spacing: 0.04rem;
    line-height: 1.5;
}
.person-info-list li {
    margin-bottom: 0.1rem;
}
.cars {
    padding-top: 8rem;
    padding-bottom: 6.6rem;
}
.cars-title {
    margin-bottom: 8.7rem;
    text-align: center;
    font-size: 3.75rem;
    font-family: var(--black);
    color: var(--color-title);
}
.cars-wrap {
    margin-left: 0.6rem;
    border: 0.2rem solid var(--color-orange);
    border-radius: 1.3rem;
    overflow: hidden;
    background-color: var(--color-black);
    color: var(--color-white);
}
.cars-item {
    margin-bottom: 1rem;
    padding-bottom: 0.4rem;
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    border-bottom: 0.2rem solid var(--color-white);
}
.cars-item:last-child {
    padding-bottom: 0;
    margin-bottom: -0.8rem;
    border-bottom: none;
}
.cars-name {
    margin-bottom: 2.4rem;
    font-size: 2.5rem;
    font-family: var(--black);
    color: var(--color-white);
}
.cars-name span {
    color: var(--color-orange);
}
.cars-desc {
    padding: 5.5rem 0 0 7.5rem;
}
.cars-list {
    letter-spacing: 0.04rem;
}
.cars-list li {
    margin-bottom: 0.1rem;
}
.lessons {
    padding: 4.3rem 0 14.6rem;
    background: url(../images/black-bg.jpg) no-repeat top;
    background-size: cover;
}
.lessons-heading {
    margin-bottom: 8.3rem;
    text-align: center;
    font-size: 1.667rem;
    font-family: var(--medium);
    color: var(--color-text-grey);
}
.lessons-video {
    display: block;
    margin: 0 auto;
    max-width: 61rem;
    max-height: 34.3rem;
}
.lessons-title {
    margin-bottom: 2.7rem;
    color: var(--color-orange);
    font-size: 3.33rem;
    font-family: var(--black);
}
.lessons-item {
    margin-bottom: 10rem;
    text-align: center;
}
.lessons-item:nth-child(3) {
    margin-bottom: 11.8rem;
}
.lessons-item:nth-child(3) .lessons-item-heading {
    margin-bottom: 4.7rem;
}
.lessons-item:nth-child(4) {
    margin-bottom: 13.2rem;
}
.lessons-item:nth-child(4) p {
    position: relative;
    padding-bottom: 9.3rem;
}
.lessons-item:nth-child(4) p:before {
    width: 18.6rem;
    height: 6.7rem;
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    margin: auto;
    bottom: 0;
    background: url(../images/arrows.png) no-repeat 50%;
}
.lessons-item:nth-child(4) .lessons-item-heading {
    margin-bottom: 5rem;
}
.lessons-item-heading {
    margin-bottom: 7.1rem;
    font-size: 1.667rem;
    color: var(--color-text-grey);
}
.lessons-subtitle {
    margin-bottom: 2.9rem;
    color: var(--color-white);
    font-size: 2.5rem;
    font-family: var(--black);
}
.lessons .btn-border {
    min-width: 22.5rem;
    font-family: var(--regular);
    letter-spacing: 0.1rem;
}
.areas {
    padding-top: 1rem;
}
.areas-heading {
    margin-bottom: 15rem;
    text-align: center;
    font-size: 2.1rem;
    font-family: var(--medium);
    color: var(--color-black);
}
.areas-title {
    margin-bottom: 2.9rem;
    font-size: 3.33rem;
    font-family: var(--black);
    color: var(--color-black);
}
.areas-pic {
    position: relative;
    max-width: 98rem;
    margin: 0 auto 17.5rem;
}
.areas .point-1 {
    position: absolute;
    bottom: -9rem;
    left: 32.7rem;
    padding-top: 10rem;
    max-width: 26rem;
    font-size: 1.667rem;
    font-family: var(--medium);
    text-align: center;
}
.areas .point-1:before {
    width: 6.6rem;
    height: 8.9rem;
    content: "";
    position: absolute;
    top: 0;
    left: 11.4rem;
    background: url(../images/arrow-1.png) no-repeat 50%;
}
.areas .point-2 {
    position: absolute;
    right: 11rem;
    bottom: -3.5rem;
    max-width: 20.2rem;
    font-size: 1.667rem;
    text-align: center;
    font-family: var(--medium);
}
.areas .point-2:after {
    width: 7.7rem;
    height: 11.2rem;
    content: "";
    position: absolute;
    top: -6.9rem;
    left: 18.7rem;
    background: url(../images/arrow-2.png) no-repeat 50%;
}
.areas-video {
    display: block;
    margin: 0 auto;
    max-width: 61rem;
    max-height: 34.3rem;
}
.areas-video-wrap {
    margin-bottom: 7.2rem;
    text-align: center;
}
.courses {
    padding: 3.7rem 0 9.8rem;
    background: url(../images/black-bg1.jpg) no-repeat top;
    background-size: cover;
}
.courses-heading {
    margin-bottom: 10rem;
    text-align: center;
    font-size: 1.667rem;
    font-family: var(--medium);
    color: var(--color-white);
}
.courses-title {
    margin-bottom: 5rem;
    color: var(--color-orange);
    font-family: var(--black);
    font-size: 3.33rem;
}
.courses-wrap {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    grid-gap: 11.6rem 5.6rem;
    max-width: 90rem;
    margin: 0 auto 16.1rem;
}
.courses-item {
    text-align: center;
}
.courses-item:first-child .courses-box {
    padding-bottom: 10rem;
}
.courses-item:first-child .courses-price {
    bottom: 4.6rem;
}
.courses-item:nth-child(4) .courses-box {
    padding-top: 3rem;
}
.courses-item:nth-child(5) .courses-box {
    padding-top: 3.5rem;
}
.courses-item:nth-child(5) .courses-desc {
    margin-bottom: 8.8rem;
}
.courses-item:last-child .courses-price {
    position: static;
}
.courses-item:last-child .courses-price-first {
    margin-bottom: 4.6rem;
}
.courses-item:last-child .courses-price-last {
    margin-left: -1rem;
    margin-right: -1rem;
}
.courses-item:last-child .courses-box {
    padding-top: 3.4rem;
}
.courses-item:last-child .courses-box p {
    margin-bottom: 2rem;
}
.courses-item:last-child .courses-time {
    margin-bottom: 1.9rem;
}
.courses .it {
    font-family: var(--italic);
}
.courses-list {
    margin-bottom: 5.3rem;
}
.courses-box {
    position: relative;
    margin-bottom: 5.9rem;
    font-size: 1.667rem;
    padding: 2.2rem 2rem 0;
    border-radius: 1.3rem;
    min-height: 40rem;
    border: 0.2rem solid var(--color-orange);
    color: var(--color-white);
}
.courses-box p {
    margin-bottom: 2.3rem;
}
.courses-time {
    display: block;
    margin-bottom: 3.4rem;
    font-weight: 400;
    color: var(--color-white);
    letter-spacing: 0.05rem;
}
.courses-price-old,
.courses-time {
    font-size: 3.33rem;
    font-family: var(--peace);
}
.courses-price-old {
    position: relative;
    display: inline-block;
    margin-left: -4.2rem;
    padding: 0 1.3rem;
    color: var(--light-grey);
}
.courses-price-old:before {
    top: 0;
    bottom: 0;
    content: "";
    width: 100%;
    height: 0.2rem;
    background-color: var(--color-red);
}
.courses-price,
.courses-price-old:before {
    position: absolute;
    left: 0;
    right: 0;
    margin: auto;
}
.courses-price {
    bottom: 2.6rem;
    font-size: 3.33rem;
    color: var(--color-white);
}
.courses-desc,
.courses-price {
    display: block;
    font-family: var(--peace);
    font-weight: 400;
}
.courses-desc {
    margin-bottom: 2.8rem;
    font-size: 2.083rem;
    letter-spacing: 0.1px;
    color: var(--color-grey1);
}
.courses-btn {
    font-size: 2.083rem;
    color: var(--color-orange);
    background-color: initial;
    border: none;
    transition: color 0.4s ease;
}
.courses-btn:focus,
.courses-btn:hover {
    color: var(--color-white);
}
.sertificate {
    text-align: center;
}
.sertificate-heading {
    margin-bottom: 3.7rem;
    font-size: 1.25rem;
    color: var(--color-grey2);
}
.sertificate-title {
    margin-bottom: 1.7rem;
    font-size: 2.083rem;
    font-family: var(--regular);
    color: var(--color-white);
}
.sertificate-pic {
    margin: 0 auto 6.8rem;
    max-width: 73.2rem;
    max-height: 55.8rem;
}
.sertificate .btn-border {
    min-width: 22.5rem;
    font-family: var(--regular);
    border-radius: 1rem;
    letter-spacing: 0.1rem;
}
.packs {
    padding: 3.9rem 0 5.3rem;
}
.packs-title {
    margin-bottom: 6.3rem;
    text-align: center;
    font-size: 3.3rem;
    font-family: var(--black);
    color: var(--color-title);
}
.packs-pic {
    margin: 0 auto 3.8rem;
    max-width: 48.8rem;
    max-height: 34.3rem;
}
.packs-desc {
    text-align: center;
    font-size: 1.667rem;
}
.packs-desc p {
    margin-bottom: 2.3rem;
}
.packs .btn-orange {
    padding: 2rem 0;
    min-width: 22.2rem;
    font-size: 1.667rem;
    font-family: var(--regular);
}
.packs-wrap {
    display: flex;
    flex-wrap: wrap;
    grid-gap: 4.3rem;
    justify-content: center;
}
.packs-col {
    max-width: calc(33.333% - 2rem);
    flex: 1 0;
    text-align: center;
}
.packs-img {
    margin-left: auto;
    margin-right: auto;
    max-width: 28rem;
    max-height: 28rem;
    display: flex;
    align-items: flex-end;
    justify-content: center;
    margin-bottom: 3rem;
}
.faq {
    padding: 5rem 0 5.5rem;
    background-color: var(--color-black1);
}
.faq-heading {
    text-align: center;
    margin-bottom: 7.7rem;
}
.faq-title {
    font-size: 3.33rem;
    font-family: var(--black);
    color: var(--color-orange);
}
.faq-tabs {
    padding-left: 2.6rem;
}
.faq-tabs-item {
    cursor: pointer;
}
.faq-tabs-item.active .faq-tabs-title {
    margin-bottom: 1.4rem;
}
.faq-tabs-item.active .faq-tabs-title:after,
.faq-tabs-item.active .faq-tabs-title:before {
    background-color: var(--color-red);
}
.faq-tabs-item.active .faq-tabs-desc {
    margin-bottom: 4.8rem;
    max-height: 40rem;
    padding-top: 1.5rem;
    padding-bottom: 1.9rem;
}
.faq-tabs-title {
    margin-bottom: 1.9rem;
    position: relative;
    padding-left: 2.7rem;
    color: var(--color-white);
    font-size: 2.083rem;
}
.faq-tabs-title:before {
    width: 0.5rem;
    height: 1.7rem;
    left: 0.7rem;
}
.faq-tabs-title:after {
    width: 1.7rem;
    height: 0.5rem;
    left: 0.1rem;
    top: 0.6rem;
}
.faq-tabs-title:after,
.faq-tabs-title:before {
    content: "";
    position: absolute;
    background-color: var(--color-orange);
}
.faq-tabs-desc {
    background-color: var(--color-white);
    border-top-right-radius: 1rem;
    border-bottom-left-radius: 1rem;
    border-bottom-right-radius: 1rem;
    padding-left: 1.7rem;
    padding-right: 3rem;
    max-height: 0;
    max-width: 93.7%;
    margin-left: 1.6rem;
    overflow: hidden;
}
.partners {
    padding: 6.5rem 0 6.3rem;
}
.partners-heading {
    margin-bottom: 14rem;
    text-align: center;
}
.partners-title {
    font-size: 3.333rem;
    color: var(--color-black);
    font-family: var(--peace);
    font-weight: 400;
}
.partners-wrap {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    grid-gap: 2rem;
    margin-bottom: 16rem;
}
.partners-item {
    display: flex;
    justify-content: center;
}
.recalls {
    padding: 5rem 0 5.7rem;
    background: url(../images/recalls.jpg) no-repeat top;
    background-size: cover;
}
.recalls-heading {
    margin-bottom: 2.4rem;
    text-align: center;
}
.recalls-title {
    color: var(--color-orange);
    font-size: 3.33rem;
    font-family: var(--black);
}
.recalls-item {
    max-width: 87rem;
    margin: 0 auto 2.8rem;
}
.recalls-content {
    margin-bottom: 2.6rem;
    padding: 2rem;
    background-color: var(--color-white);
    border-top-left-radius: 1rem;
    border-bottom-left-radius: 1rem;
    border-top-right-radius: 1rem;
    min-height: 12rem;
}
.recalls-content p {
    margin-bottom: 2.2rem;
    letter-spacing: 0.035rem;
}
.recalls-content p:last-child {
    margin-bottom: 0;
}
.recalls-author {
    margin-right: -0.4rem;
    font-size: 1.667rem;
    color: var(--color-white);
    text-align: right;
}
.footer {
    padding: 4.7rem 0;
}
.footer-wrap {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    align-items: center;
}
.footer-list {
    display: flex;
    justify-content: center;
    padding-top: 1.5rem;
    margin-left: 0;
}
.footer-contacts {
    text-align: right;
}
.modal {
    padding: 5rem 2rem 6.2rem;
    max-width: 50rem;
    width: 100%;
    background-color: var(--color-black);
    border: 0.2rem solid var(--color-orange);
    border-radius: 1.3rem;
}
.modal-cost {
    color: var(--color-white);
}
.modal-img {
    margin-bottom: 2.5rem;
    max-width: 24.8rem;
    margin-left: auto;
    margin-right: auto;
}
.modal-title {
    margin-bottom: 4.4rem;
    color: var(--color-white);
    font-size: 2rem;
    text-align: center;
}
.modal-price,
.modal-title {
    font-family: var(--black);
}
.modal p {
    margin-bottom: 6rem;
    font-size: 1.667rem;
    font-family: var(--regular);
    color: var(--color-white);
    text-align: center;
}
.modal-form {
    max-width: 25rem;
    margin: 0 auto;
}
.modal input {
    margin-bottom: 2.5rem;
    width: 100%;
    border: none;
    min-height: 5.2rem;
    font-size: 1.667rem;
    font-family: var(--regular);
}
.modal input,
.modal input::placeholder {
    color: var(--color-input);
}
.modal .btn-red {
    margin-top: 1.7rem;
    border: none;
    border-radius: 0;
    font-family: var(--black);
}
.modal .fancybox-close-small {
    color: var(--color-white);
}
.text-center {
    text-align: center;
}
@media (max-width: 1199px) {
    .header-logo img {
        max-width: 12rem;
    }
    .banner {
        padding-top: 23.3rem;
        min-height: 70rem;
        max-height: 70rem;
    }
}
@media (max-width: 979px) {
    .info-wrap {
        grid-template-columns: repeat(2, 1fr);
    }
    .person-info-desc {
        padding: 2.8rem 3rem 3rem 2rem;
    }
    .cars-desc {
        padding: 3.5rem 0 0 2.5rem;
    }
    .lessons-heading {
        margin-bottom: 4rem;
    }
    .lessons-item {
        margin-bottom: 4rem;
    }
    .lessons-item:nth-child(3) {
        margin-bottom: 4rem;
    }
    .lessons-item:nth-child(4) {
        margin-bottom: 4rem;
    }
    .areas-heading {
        margin-bottom: 5rem;
    }
    .areas-pic {
        max-width: 71rem;
    }
    .areas .point-1 {
        left: 20.7rem;
        bottom: -11rem;
    }
    .courses-heading {
        margin-bottom: 5rem;
    }
    .courses-wrap {
        grid-template-columns: repeat(2, 1fr);
        grid-gap: 8rem 2rem;
        margin-bottom: 10rem;
    }
    .packs-col {
        max-width: calc(50% - 2rem);
    }
    .packs-img {
        min-height: 28rem;
    }
    .partners-heading {
        margin-bottom: 8rem;
    }
    .partners-wrap {
        margin-bottom: 10rem;
    }
}
@media (max-width: 767px) {
    .btn {
        padding-left: 2rem;
        padding-right: 2rem;
        min-width: 3rem;
        font-size: 1.6rem;
    }
    .header-wrap {
        grid-template-columns: 1fr;
    }
    .header-burger {
        display: flex;
    }
    .header-list {
        order: 2;
        margin-left: 0;
        padding-top: 0;
        justify-content: center;
        margin-bottom: 2rem;
        display: none;
    }
    .header-logo {
        margin-bottom: 4rem;
        order: 1;
    }
    .header-contacts {
        text-align: center;
        order: 3;
        padding-top: 0;
    }
    .header-phone {
        font-size: 1.8rem;
    }
    .header-time {
        font-size: 1rem;
    }
    .banner {
        padding-top: 37.3rem;
        background-position: bottom;
    }
    .banner .title {
        margin-bottom: 3rem;
        font-size: 1.8rem;
    }
    .banner .title span {
        font-size: 1.8rem;
    }
    .banner-wrap {
        flex: 0 0;
    }
    .info {
        padding-top: 2rem;
    }
    .info-wrap {
        margin-bottom: 5rem;
        grid-template-columns: 1fr;
    }
    .person-title {
        font-size: 2.5rem;
    }
    .person-info {
        grid-template-columns: 1fr;
    }
    .cars-title {
        font-size: 2.5rem;
        margin-bottom: 4rem;
    }
    .cars-item {
        margin-bottom: 2rem;
        grid-template-columns: 1fr;
    }
    .cars-pic img {
        width: 100%;
        object-fit: cover;
        max-height: 35rem;
    }
    .cars-desc {
        padding: 4rem;
    }
    .lessons-title {
        font-size: 2.5rem;
    }
    .areas-title {
        font-size: 2rem;
    }
    .areas-pic {
        margin-bottom: 5rem;
    }
    .areas .point-1 {
        display: none;
    }
    .areas .point-2 {
        display: none;
    }
    .courses-title {
        font-size: 2.5rem;
    }
    .courses-wrap {
        grid-template-columns: 1fr;
        grid-gap: 5rem 2rem;
    }
    .courses-box {
        margin-bottom: 3rem;
    }
    .packs-title {
        font-size: 2.5rem;
    }
    .packs-col {
        max-width: 100%;
    }
    .packs-img {
        min-height: 0;
    }
    .faq-heading {
        margin-bottom: 4rem;
    }
    .faq-title {
        font-size: 2.5rem;
    }
    .faq-tabs {
        padding-left: 0;
    }
    .footer-wrap {
        grid-template-columns: 1fr;
    }
    .footer-logo {
        order: 1;
        margin: 0 auto;
    }
    .footer-list {
        order: 2;
    }
    .footer-contacts {
        order: 3;
        text-align: center;
    }
}
@media (max-width: 479px) {
    .header-logo-text {
        font-size: 1.2rem;
    }
    .header-logo img {
        max-width: 7.3rem;
    }
    .banner {
        padding-top: 24rem;
        height: 100vh;
        min-height: 0;
        background-image: url(../images/inst.jpg);
        background-color: #161617;
        background-repeat: no-repeat;
        background-position: 50%;
        background-size: cover;
    }
    .banner .btn {
        min-width: 20rem;
        font-size: 1.2rem;
    }
    .cars-desc {
        padding: 2rem;
    }
}
@media (-ms-high-contrast: active), (-ms-high-contrast: none), (hover: hover) and (pointer: fine) {
    a:hover {
        text-decoration: none;
    }
}
