@font-face {
    font-family: 'Fantasque Sans Mono';
    src: url('fonts/fantasquesansmono-regular.otf') format('opentype');
    font-weight: 400;
    font-style: normal;
}

@font-face {
    font-family: 'Fantasque Sans Mono';
    src: url('fonts/fantasquesansmono-bold.otf') format('opentype');
    font-weight: 700;
    font-style: normal;
}

@font-face {
    font-family: 'Fantasque Sans Mono';
    src: url('fonts/fantasquesansmono-italic.otf') format('opentype');
    font-weight: 400;
    font-style: italic;
}

@font-face {
    font-family: 'Fantasque Sans Mono';
    src: url('fonts/fantasquesansmono-bolditalic.otf') format('opentype');
    font-weight: 700;
    font-style: italic;
}

body {
    margin: 0;
    min-height: 9169px;
    background-color: #131313;
    font-family: 'Fantasque Sans Mono', monospace;
}

/* О шрифте */
.about {
    position: absolute;
    left: 0;
    top: 892px;
    width: 1920px;
}

.about h2 {
    position: absolute;
    left: 76px;
    top: 0;
    margin: 0;
    font-size: 80px;
    font-weight: 700;
    line-height: 84px;
    color: #B1FF00;
}

.about p {
    position: absolute;
    left: 76px;
    top: 123px;
    width: 993px;
    margin: 0;
    font-size: 48px;
    font-weight: 400;
    line-height: 1.2;
    color: #FFFFFF;
}

/* Начертания шрифта */
.font-styles {
    position: absolute;
    top: 1503px;
    left: 389px;
    width: 1256px;
    margin: 0;
    display: grid;
    grid-template-columns: repeat(2, 498px);
    column-gap: 260px;
    row-gap: 100px;
}

.style-card {
    position: relative;
    width: 498px;
    height: 211px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #FFFFFF;
    font-family: 'Fantasque Sans Mono', monospace;
    font-size: 64px;
    background-color: #C38BFF;
    background-image: linear-gradient(
        to right,
        #C38BFF 0%,
        #C38BFF calc(100% - 72px),
        #E7D0FF calc(100% - 72px),
        #E7D0FF 100%
    );
}

.bold-card {
    font-weight: 700;
}

.italic-card {
    font-style: italic;
}

.bold-italic-card {
    font-weight: 700;
    font-style: italic;
    font-size: 64px;
    padding-right: 72px;
    box-sizing: border-box;
}

.style-card::before {
    content: "";
    position: absolute;
    width: 112px;
    height: 137px;
    right: 100%;
    top: 50%;
    transform: translateY(-50%);
    background-color: #FFFFFF;
    background-image: url('images/card-decor.svg');
    background-repeat: no-repeat;
    background-position: center;
    background-size: 112px 137px;
}

.style-card::after {
    content: "";
    position: absolute;
    width: 60px;
    height: 20px;
    right: 44px;
    bottom: 36px;
    background: linear-gradient(
        to right,
        #FFFFFF 0,
        #FFFFFF 40px,
        #B1FF00 40px,
        #B1FF00 60px
    );
}

/* SVG-графика */
.hero-graphic {
    position: absolute;
    left: 0;
    top: 0;
    width: 1920px;
    height: 1221px;
    display: block;
}

.features-graphic {
    position: absolute;
    left: 0;
    top: 2200px;
    width: 1920px;
    height: 1037px;
    display: block;
}

.alphabet-graphic {
    position: absolute;
    left: 81px;
    top: 3435px;
    width: 1762px;
    height: 1101px;
    display: block;
}

.charging-graphic {
    position: absolute;
    left: 68px;
    top: 4734px;
    width: 1768px;
    height: 284px;
    display: block;
}

.languages-graphic {
    position: absolute;
    left: 0;
    top: 5216px;
    width: 1920px;
    height: 1661px;
    display: block;
}

.glyphs-graphic {
    position: absolute;
    left: 67px;
    top: 7075px;
    width: 1769px;
    height: 1475px;
    display: block;
}

.footer-graphic {
    position: absolute;
    left: 0;
    top: 8748px;
    width: 1920px;
    height: 421px;
    display: block;
}
