body{
    margin: 0;
    min-height: 100vh;
    background: #333;
    display: flex;
    justify-content: center;
    align-items: center;
    font-size: 12px;
}

.flag{
    position: relative;
    font-size: calc(30em / 60);
    width: 60em;
    aspect-ratio: 2/1;
    background: #00247D;
    display: flex;
    justify-content: center;
    align-items: center;
    overflow: hidden;
}

.horizontal{
    position: absolute;
    width: 10em;
    height: 100%;
    padding: 0 2em;
    box-sizing: border-box;
    background: #fff;
}

.horizontal div{
    position: absolute;
    width: 6em;
    height: 100%;
    background: #C8102E;
    z-index: 2;
}

.vertical{
    position: absolute;
    width: 100%;
    height: 10em;
    padding: 2em 0;
    box-sizing: border-box;
    background: #fff;
    z-index: 1;
}

.vertical div{
    width: 100%;
    height: 6em;
    background: #C8102E;
}

.diagonal{
    position: absolute;
    width: 150%;
    height: 6em;
    background: #fff;
    padding: 1em;
    display: grid;
    box-sizing: border-box;
}

.diagonal div:first-child{
    grid-row: 1;
    grid-column: 2;
    background: #C8102E;
}

.diagonal div:last-child{
    grid-row: 2;
    grid-column: 1;
    background: #C8102E;
}

.left{
    transform: rotate(26.5deg);
}
.right{
    transform: rotate(calc(180deg - 26.5deg));
}