body {
    font-family: 'Raleway', sans-serif;
    color      : #213053;
    margin     : 0;
}

header {
    display        : flex;
    align-items    : center;
    justify-content: space-between;
    padding        : 20px;
    background     : transparent;
    position       : fixed;
    top            : 0;
    left           : 0;
    right          : 0;
    z-index        : 1;
    transition     : background 0.25s ease,
        box-shadow 0.25s ease;
}

.header__logo {
    height: 30px;
}

a {
    text-decoration: none;
    color          : #213053;
}

header a {
    font-size   : 15px;
    font-weight : 600;
    margin-right: 25px;
}

.header__scrolled {
    background-color: #fff;
    box-shadow      : 0 12px 34px -11px rgb(65 62 101 / 10%);
}

button {
    font-family     : 'Raleway', sans-serif;
    font-size       : 15px;
    color           : #fff;
    background-color: #23a030;
    border          : none;
    border-radius   : 15px;
    cursor          : pointer;
    box-shadow      : 0 16px 36px rgb(52 213 68 / 22%);
    padding         : 15px;
    transition      : background-color 0.3s ease-in;
}

button:hover {
    background-color: #f6980c;
    box-shadow      : 0 16px 36px rgba(246 152 12 / 20%);
}

.about {
    display            : flex;
    align-items        : center;
    justify-content    : space-around;
    padding-top        : 200px;
    padding-bottom     : 115px;
    background         : url('img/back.png') no-repeat;
    background-position: center;
    background-size    : cover;
    position           : relative;
}

.about .orb-canvas {
    position: absolute;
    top     : 0;
    left    : 0;
    height  : 100%;
}

.about h1 {
    font-size  : 70px;
    line-height: 76px;
}

.about p {
    font-size  : 18px;
    line-height: 30px;
    opacity    : 0.8;
}

.about button {
    font-size    : 18px;
    border-radius: 20px;
    padding      : 20px 25px;
    margin-top   : 20px;
}

.about__info {
    max-width: 550px;
}

.about__image {
    width: 500px;
}

.about__sun-image {
    width    : 100px;
    height   : 100px;
    animation: rotation 10s linear infinite;
    position : absolute;
}


.features {
    background-color: #fff;
    padding         : 115px 60px;
}

.cards {
    display              : grid;
    grid-gap             : 50px;
    grid-template-columns: 1fr 1fr 1fr;
}

.card {
    padding      : 35px 40px 25px 40px;
    border       : 1px solid #d9e4e6;
    border-radius: 5px;
}

.card__logo {
    width           : 100px;
    height          : 100px;
    font-size       : 32px;
    font-weight     : 700;
    background-color: #eaeff9;
    border-radius   : 50%;
    display         : flex;
    align-items     : center;
    justify-content : center;
}

.card:nth-child(1) .card__logo {
    color: #ffb406;
}

.card:nth-child(2) .card__logo {
    color: #ad1714;
}

.card:nth-child(3) .card__logo {
    color: #22a030;
}

.card h3 {}

.card p {
    font-size  : 16px;
    line-height: 22px;
    opacity    : 0.8;
}

.features__border {
    width : 100%;
    margin: 50px 0;
    border: 1px solid #E6EAF4;
}

.features__feedback {
    display    : flex;
    align-items: center;

}

.features__feedback-left {
    margin-right: 10px;
}

.features__feedback-left h2 {
    font-size: 48px;
}

.features__feedback-left p {
    font-size  : 18px;
    line-height: 26px;
    opacity    : 0.7;
}

.features__feedback-right {
    display    : flex;
    align-items: center;
}

.features__box {
    padding      : 30px 40px 25px 40px;
    border-radius: 25px;
    color        : #fff;
}

.features__box h3 {
    margin       : 0px;
    margin-bottom: 20px;
    font-size    : 48px;
}

.features__box p {}

.features__savings-box {
    background-color: #dc5e26;
    box-shadow      : 0 6px 0 rgb(221 95 38 / 20%);
    margin-right    : 30px;
}

.features__rate-box {
    background-color: #1D263A;
    box-shadow      : 0 6px 0 rgb(29 38 58 / 20%);
}

.features__rate-box .stars {
    color: #ff7039;
}

.promo {
    display: flex;
}

.promo__image {
    background : #fff url(img/promo.jpg) 50% 50%/cover no-repeat;
    flex-shrink: 0;
    width      : 50%;
}

.promo__right {
    background-color: #dd5f26;
    padding         : 160px 60px;
}

.promo__right-card {
    background-color: #fff;
    padding         : 30px 40px;
    font-size       : 20px;
    line-height     : 22px;
    font-weight     : 500;
    border-radius   : 25px;
}

.promo__right-card h2 {}

.promo__right-card p {
    opacity: 0.8;
}

.promo__right-card p::before {
    display         : inline-block;
    content         : '';
    width           : 10px;
    height          : 10px;
    border-radius   : 50%;
    background-color: #ec6b29;
    margin-right    : 10px;
}

.promo__right-btnContainer {
    display        : flex;
    justify-content: center;
}

.promo__right-btnContainer button {
    background-color: #107b1c;
    margin          : 20px 0 0 0;
    font-size       : 18px;
    padding         : 15px 30px;
    font-weight     : 600;

}

.promo__right-btnContainer button i {
    font-size: 15px;
    margin   : 0 0 0 5px;
}

.form__containter {
    width: 550px;
}

.form {
    background-color: #1D263A;
    color           : #fff;
    padding-top     : 115px;
    padding-bottom  : 115px;
    text-align      : center;
    display         : flex;
    align-items     : center;
    justify-content : center;
}

.form h1 {
    font-size: 48px;
}

.form p {
    font-size: 18px;
    opacity  : 0.65;
}

.form__group {
    display       : flex;
    flex-direction: column;
    text-align    : left;
}

.form form {
    display   : grid;
    grid-gap  : 20px;
    margin-top: 60px;
}

.form label {
    font-size    : 18px;
    font-weight  : 600;
    margin-bottom: 15px;
}

.form input,
.form select {
    font-size    : 18px;
    color        : #213053;
    height       : 60px;
    padding      : 0 20px;
    border-radius: 15px;
    border       : none;
}

input {
    outline: none;
}

select {
    appearance: none;
}

.form__submit {
    font-size  : 18px;
    font-weight: 600;
    margin-top : 40px;
}

footer {
    padding    : 90px 20px;
    font-size  : 16px;
    font-weight: 600;
}

.footer__container {
    display        : flex;
    justify-content: center;
}

.footer__group {
    margin-right: 80px;
}

.footer__group h3 {
    font-size    : 16px;
    opacity      : 0.7;
    margin-bottom: 30px;
}

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

.footer__links a {
    margin-bottom: 15px;
}

.footer__copyright {
    margin-top: 40px;
    text-align: center;
    opacity   : 0.5;
}

@keyframes rotation {
    0% {
        transform: rotate(0deg)
    }

    100% {
        transform: rotate(360deg)
    }
}

@media screen and (max-width: 1050px) and (min-width: 720px) {
    .about {
        padding: 115px 20px;
    }

    .about h1,
    .form h1 {
        font-size  : 36px;
        line-height: 40px;
    }

    .about__image {
        width: 280px;
    }

    .about__sun-image {
        width : 75px;
        height: 75px;
    }

    .footer__group {
        margin-right: 40px;
    }
}

@media screen and (max-width: 719px) and (min-width: 320px) {
    header {
        padding: 10px;
    }

    .header__logo {
        height: 20px;
    }

    .about {
        padding       : 50px 10px;
        flex-direction: column;
    }

    .about h1,
    .form h1 {
        font-size  : 36px;
        line-height: 40px;
    }

    .about__images {
        order: 1;
    }

    .about__info {
        order: 2;
    }

    .about__image {
        width: 280px;
    }

    .about__sun-image {
        width : 75px;
        height: 75px;
    }

    .features {
        padding: 50px 10px;
    }

    .cards {
        grid-template-columns: auto;
    }

    .features__feedback {
        flex-direction: column;
    }

    .features__feedback-left {
        margin-right: 0px;
    }

    .features__feedback-left h2 {
        font-size: 36px;
    }

    .features__feedback-right {
        flex-direction: column;
    }

    .features__box h3 {
        font-size: 36px;
    }

    .features__savings-box {
        margin-right : 0px;
        margin-bottom: 30px;
    }

    .promo {
        flex-direction: column;
    }

    .promo__image {
        order : 2;
        width : 100%;
        height: 500px;
    }

    .promo__right {
        order  : 1;
        padding: 50px 10px;
    }

    .form {
        padding: 50px 10px;
    }

    footer {
        padding: 50px 10px;
    }

    .footer__container {
        flex-direction: column;
    }

}