@font-face {
    font-family: Edu;
    src: url(../font/Edu-VIC-WA-NT.woff2) format('woff2')
}

@font-face {
    font-family: ComicNeue;
    src: url(../font/ComicNeue.woff2) format('woff2')
}

* {
    box-sizing: border-box;
    transition: all 300ms ease-out;
}

body {
    font-size: calc(.5rem + 1vw);
    font-family: ComicNeue, Arial, sans-serif
}

h1,
h2,
h3,
h4,
h5,
h6 {
    font-family: Edu, sans-serif, Arial, Helvetica, Times, serif
}

.link {
    background-image: linear-gradient(90deg, red, #00f);
    background-size: 0 3px;
    background-repeat: no-repeat;
    background-position: left bottom;
    transition: background-size .5s ease;
    text-decoration: none;
    color: #000;
    font-weight: 900
}

.link:hover {
    background-size: 100% 3px;
    cursor: pointer
}

h1.link {
    display: inline-block
}

div.main {
    max-width: 1150px;
    margin: auto
}

div.grid-box {
    display: grid;
    place-items: center;
    grid-template-columns: repeat(2, 1fr)
}

.grid-box p {
    padding: 10px;
    line-height: 2rem
}

div.img-box {
    display: grid;
    place-items: center;
    width: 90%;
    margin: 0 auto
}

img {
    max-width: 100%
}

div.p-box {
    width: 120px
}

.p-box img {
    border-radius: 50% 50%
}

@media screen and (max-width:1200px) {
    body {
        font-size: 1rem
    }

    div.grid-box {
        grid-template-columns: 1fr
    }

    .grid-box p {
        padding: 0;
        line-height: 1.5rem
    }

    div.box-swap {
        display: flex;
        flex-direction: column-reverse
    }
}