html {
    font-weight: 400;
    font-size: 19px;
    line-height: 1.5;
    font-family: Source Sans Pro, sans-serif;
    background: #fff;
    color: #000
}

body,
html {
    width: 100%;
    height: 100%
}

body {
    position: relative
}

* {
    padding: 0;
    margin: 0;
    border: 0;
    box-sizing: border-box
}

a {
    background: 0 0
}

:active,
:hover,
a:active,
a:hover {
    outline: 0
}

a {
    color: #2dbe98;
    text-decoration: none;
    cursor: pointer
}

a:hover {
    color: #005e8e;
    text-decoration: none
}

a,
a:visited {
    text-decoration: none
}

audio,
canvas,
iframe,
img,
svg,
video {
    vertical-align: middle
}

audio,
canvas,
img,
svg,
video {
    max-width: 100%;
    height: auto;
    box-sizing: border-box
}

img {
    border: 0;
    margin-left: auto;
    margin-right: auto;
    display: block
}

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

address,
blockquote,
dl,
fieldset,
figure,
ol,
p,
pre,
ul {
    margin: 0 0 25px 0
}

*+address,
*+blockquote,
*+dl,
*+fieldset,
*+figure,
*+ol,
*+p,
*+pre,
*+ul {
    margin-top: 25px
}

button {
    cursor: pointer
}

ol,
ul {
    padding-left: 35px
}

blockquote {
    border-left: 5px solid rgba(0, 0, 0, .05);
    padding: 20px;
    font-size: 1.2em;
    font-style: italic;
    margin: 0 0 1.5em;
    position: relative
}

table {
    margin-top: 20px;
    margin-bottom: 30px;
    width: 100%
}

caption,
td,
th {
    font-weight: 400;
    text-align: left;
    padding: 6px 15px 6px 0
}

caption {
    margin: 20px 0;
    font-size: 16px
}

th {
    border-top: 1px solid #ededed;
    font-weight: 700;
    text-transform: uppercase
}

td {
    border-top: 1px solid #ededed
}

thead th {
    border: none
}

@media (max-width:540px) {
    blockquote {
        font-size: .9em
    }

    table {
        overflow-x: auto;
        display: block;
        position: relative;
        padding-bottom: 15px
    }

    table::-webkit-scrollbar {
        width: 5px;
        height: 3px
    }

    table::-webkit-scrollbar-button {
        display: none
    }

    table::-webkit-scrollbar-track {
        background: #52545f
    }

    table::-webkit-scrollbar-track-piece {
        background-color: #ddd
    }

    table::-webkit-scrollbar-thumb {
        width: 10px;
        background: #52545f;
        cursor: pointer;
        -webkit-transition: background .2s ease-in-out;
        transition: background .2s ease-in-out
    }

    table::-webkit-scrollbar-corner {
        background-color: #999
    }

    table::-webkit-resizer {
        background-color: #666
    }
}

::selection {
    background: #0a2d50;
    color: #fff;
    text-shadow: none
}

.tm-header-page {
    background-color: #f2f5fa;
    position: relative;
    padding: 160px 0 0
}

.tm-header-page__time {
    text-transform: uppercase;
    line-height: 1em;
    letter-spacing: .125em;
    font-weight: 600;
    font-size: 16px
}

.tm-shapes {
    color: #fff;
    left: 0;
    right: 0;
    bottom: -1px;
    -webkit-transform: scaleX(-1);
    transform: scaleX(-1);
    margin-top: 50px
}

.tm-shapes svg {
    height: 50px;
    width: calc(100% + 1.3px);
    position: relative;
    left: 50%;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
    min-width: 100%;
    fill: currentColor
}

.tm-author {
    border-radius: 8px;
    background-color: rgba(240, 242, 245, .4);
    display: flex;
    align-items: center;
    padding: 30px 40px 35px 30px
}

.tm-author__image-column {
    min-width: 110px
}

.tm-author__content {
    padding-left: 30px;
    height: 100%
}

.tm-author__name {
    font-size: 18px;
    letter-spacing: .2em;
    font-weight: 600;
    text-transform: uppercase;
    margin-bottom: 10px
}

.tm-author__image {
    width: 110px;
    height: 110px;
    overflow: hidden;
    border-radius: 50%
}

@media (max-width:480px) {
    .tm-header-page {
        background-color: #f2f5fa;
        position: relative;
        padding: 90px 0 0
    }

    .tm-author {
        flex-wrap: wrap
    }

    .tm-author__content,
    .tm-author__image-column {
        width: 100%
    }

    .tm-author__image-column {
        display: flex;
        justify-content: center
    }

    .tm-author__content {
        padding-left: 0;
        padding-top: 30px
    }

    .tm-author__name {
        text-align: center
    }
}

.tm-footer {
    margin-top: 80px;
    background-color: #1b1b42;
    color: #fff;
    position: relative;
    overflow: hidden;
    position: relative;
    padding-top: 120px;
    padding-bottom: 120px
}

.tm-footer__content {
    max-width: 650px;
    font-size: 10px;
    padding-bottom: 65px;
    color: #fff
}

.tm-footer__copyright {
    color: #fff;
    font-size: 17px;
    padding-top: 65px;
    border-top: 1px solid rgba(255, 255, 255, .4)
}

.tm-footer .tm-shapes {
    color: #fff;
    left: 0;
    right: 0;
    bottom: auto;
    -webkit-transform: scaleY(-1);
    transform: scaleY(-1);
    position: absolute;
    top: 0;
    margin-top: 0
}

@media (max-width:480px) {
    .tm-footer {
        margin-top: 50px;
        padding-top: 90px;
        padding-bottom: 50px
    }

    .tm-footer__content {
        padding-bottom: 35px
    }

    .tm-footer__copyright {
        padding-top: 35px
    }
}

.tm-centered-content {
    max-width: 840px;
    width: 100%;
    margin: 0 auto;
    padding-left: 20px;
    padding-right: 20px;
    box-sizing: border-box;
    position: relative;
    z-index: 2
}

.tm-centered-content_big {
    max-width: 1240px
}

h1 {
    font-weight: 700;
    text-align: center;
    font-size: 40px
}

h2,
h3,
h4,
h5,
h6 {
    font-weight: 600
}

h1,
h2,
h3,
h4,
h5,
h6 {
    line-height: 1.1;
    margin-bottom: 20px
}

h2 {
    font-size: 32px
}

h3 {
    font-size: 29px
}

h4 {
    font-size: 24px
}

h5,
h6 {
    font-size: 20px
}

.text-center {
    text-align: center
}

.tm-content-btn_centered {
    margin: 0 auto
}

.tm-content-btn {
    position: relative;
    text-decoration: none;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 464px;
    height: 82px;
    border: 3px solid #ce4444;
    border-radius: 30px 30px 30px 30px;
    background: linear-gradient(rgba(255, 66, 66, .94) 45%, #af3a3a);
    box-shadow: 0 0 2px 0 #333;
    color: #fff;
    font-family: Tahoma;
    font-size: 22px;
    text-shadow: 1px 1px 1px #000;
    padding: 8px 12px;
    text-align: center;
    font-weight: 700
}

.tm-content-btn:active,
.tm-content-btn:focus,
.tm-content-btn:hover {
    border-color: #ce4444;
    background: linear-gradient(rgba(255, 255, 255, .85) 45%, #ddb3b3);
    box-shadow: 0 0 2px 0 #333
}

@media (max-width:540px) {
    .tm-content-btn {
        width: 100%;
        font-size: 18px;
        line-height: 1.1;
        height: 52px
    }

    h1 {
        font-size: 32px
    }

    h2 {
        font-size: 24px
    }

    h3 {
        font-size: 22px
    }

    h4 {
        font-size: 20px
    }
}

.tm-margin-small-bottom {
    margin-bottom: 15px
}

.tm-margin-standart-bottom {
    margin-bottom: 25px
}

.tm-margin-default-bottom {
    margin-bottom: 30px
}

.tm-margin-xdefault-bottom {
    margin-bottom: 40px
}

.tm-margin-medium-bottom {
    margin-bottom: 50px
}

.tm-margin-large-bottom {
    margin-bottom: 65px
}

.tm-margin-xlarge-bottom {
    margin-bottom: 80px
}

.tm-margin-2xlarge-bottom {
    margin-bottom: 100px
}

.tm-margin-3xlarge-bottom {
    margin-bottom: 140px
}

.tm-margin-4xlarge-bottom {
    margin-bottom: 160px
}

@media (max-width:1440px) {
    .tm-margin-2xlarge-bottom {
        margin-bottom: 80px
    }

    .tm-margin-3xlarge-bottom {
        margin-bottom: 90px
    }

    .tm-margin-4xlarge-bottom {
        margin-bottom: 120px
    }
}

@media (max-width:980px) {

    .tm-margin-2xlarge-bottom,
    .tm-margin-3xlarge-bottom,
    .tm-margin-4xlarge-bottom,
    .tm-margin-xlarge-bottom {
        margin-bottom: 60px
    }
}

@media (max-width:767px) {

    .tm-margin-2xlarge-bottom,
    .tm-margin-3xlarge-bottom,
    .tm-margin-4xlarge-bottom,
    .tm-margin-large-bottom,
    .tm-margin-medium-bottom,
    .tm-margin-xdefault-bottom,
    .tm-margin-xlarge-bottom {
        margin-bottom: 30px
    }
}