:root {
    --hexagon-height: 238px;
    --hexagon-max-width: 270px;
    --background-main: var(--grey-2);
    --background-default: var(--line-color);
    --text-main-font-size: 80px;
    --text-default-font-size: 66px;
    --white-el-up-width: 34px;
    --white-el-up-height: 20px;
    --white-el-up-transform: rotate(59deg) skewX(20deg);
    --white-el-down-width: 34px;
    --white-el-down-height: 10px;
    --white-el-down-transform: skewX(20deg);
    --white-el-up-right: 44px;
    --white-el-down-right: 70px;
}

.hexagon-main, .hexagon-default {
    position: relative;
    height: var(--hexagon-height);
    width: 100%;
    max-width: var(--hexagon-max-width);
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
}

.hexagon-main, .hexagon-main:before, .double:after, .hexagon-default, .hexagon-default::before {
    -webkit-clip-path: polygon(25% 0%, 75% 0%, 100% 50%, 75% 100%, 25% 100%, 0% 50%);
    clip-path: polygon(25% 0%, 75% 0%, 100% 50%, 75% 100%, 25% 100%, 0% 50%);
}

.hexagon-main {
    background: var(--background-main);
}

.hexagon-default {
    background: var(--background-default);
}

.hexagon-main:before, .hexagon-default:before, .double:after {
    position: absolute;
    content: '';
}

.hexagon-main:before, .hexagon-default:before {
    background: white;
}

.hexagon-main:before {
    top: 9px;
    left: 9px;
    height: calc(100% - 18px);
    width: calc(100% - 18px);
}

.hexagon-default:before {
    top: 1px;
    left: 1px;
    height: calc(100% - 2px);
    width: calc(100% - 2px);
}

.double:after {
    top: 18px;
    left: 18px;
    height: calc(100% - 36px);
    width: calc(100% - 36px);
    background: var(--background-main);
}

.text {
    z-index: 333;
}

.hexagon-main .text span {
    font-size: var(--text-main-font-size);
    font-family: "Jost";
    font-weight: 600;
}

.hexagon-main .text div {
    margin-top: -20px;
}

.hexagon-main .text.text-letters {
	margin-top: -25px;
}

.hexagon-default .text {
    color: var(--grey-1);
}

.hexagon-default .text span {
    font-size: var(--text-default-font-size);
    font-weight: 600;
}

.hexagon-default .text div {
    font-size: 23px;
}

.white-el-up, .white-el-down {
    background-color: white;
    position: absolute;
    z-index: 2323232;
}

.white-el-up {
    top: 9px;
    width: var(--white-el-up-width);
    height: var(--white-el-up-height);
    transform: var(--white-el-up-transform);
    right: var(--white-el-up-right);
}

.white-el-down {
    bottom: -1px;
    width: var(--white-el-down-width);
    height: var(--white-el-down-height);
    transform: var(--white-el-down-transform);
    right: var(--white-el-down-right);
}

.hexagon-default.medium {
    transform: scale(.55);
}

.hexagon-default.medium > .text div {
	font-size: 24px;
	font-weight: 700;
}

.hexagon-default.small {
    transform: scale(.45);
}

.hexagon-default.small > .text div {
	font-size: 24px;
	font-weight: 700;
}

.hexagon-main .hover {
    position: absolute;
    z-index: 22222232;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 0 20%;
    opacity: 0;
    visibility: hidden;
    transition: .3s all ease-in-out;
    color: var(--basic-white);
    background-color: var(--primary-blue);
    text-align: center;
}

.hexagon-main:hover .hover {
    opacity: 1;
    visibility: visible;
}

.rw {
    position: relative;
    flex: 0 0 auto;
    width: 20%;
}

.rw .hexagon-default {
    position: absolute;
}

.rw:nth-of-type(odd):not(:first-of-type) {
    margin-left: -35px;
}

.rw:nth-of-type(even) {
    margin: -10% 0 0 -3%;
}

div[data-letter="L"] .medium {
    top: -90%;
    right: -35px;
}

div[data-letter="L"] .small {
    bottom: -88%;
    right: -46px;
}

div[data-letter="E"] .hexagon-default, div[data-letter="P"] .hexagon-default {
    bottom: -38%;
    left: 0px;
}

div[data-letter="O"] .hexagon-default {
    top: -115%;
    left: 0px;
}

div[data-letter="I"] .medium {
    top: -90%;
    right: 30px;
}

div[data-letter="I"] .small {
    top: -115%;
    right: -98px;
}

.hex-holder {
    padding: 300px 0 200px;
    max-width: 1400px;
    margin: auto;
}

.hex-holder > div {
    display: flex;
    justify-content: center;
}


@media (min-width: 1200px) and (max-width: 1399px) {
    .hexagon-main, .hexagon-default {
        height: 200px;
    }

    .white-el-up {
        right: 33px;
    }

	div[data-letter="I"] .small {
		top: -115%;
		right: -78px;
	}
}

@media (min-width: 900px) and (max-width: 1199px) {
    .hexagon-main, .hexagon-default {
        height: 180px;
    }

	.hexagon-default.small {
		transform: scale(.35);
	}

    .white-el-up {
        right: 25px;
    }

    .hexagon-default .text span {
        font-size: 55px;
    }

    .hexagon-default .text div {
        font-size: 18px;
    }

    .hexagon-main .text div {
        font-size: 15px;
    }

    .white-el-down {
        right: 60px;
    }

	div[data-letter="I"] .small {
		top: -115%;
		right: -48px;
	}

	.rw {
		width: 22%;
	}
}

@media (max-width: 899px) {
    .rw {
        width: 100%;
        display: flex;
        justify-content: center;
    }

    .hex-holder > div {
        display: block;
    }

    .hex-holder {
        padding: 30px 0 100px;
        max-width: 400px;
        margin: auto;
    }

    .hexagon-main, .hexagon-main::before, .double::after, .hexagon-default, .hexagon-default::before {
        clip-path: polygon(50% 0, 100% 25%, 100% 75%, 50% 100%, 0 75%, 0 25%);
    }

    .rw:nth-of-type(2n) {
        margin: 0 0 0 25%;
        width: calc(100% - 25%);
    }

    .rw:nth-of-type(odd) {
        width: 80%;
    }

    .hexagon-main, .hexagon-default {
        width: 158px;
        height: 175px;
    }

    .rw:nth-of-type(2n+1):not(:first-of-type) {
        margin-left: 0;
    }

    .rw:not(:first-of-type) {
        margin-top: -25px;
    }

    .white-el-down {
        top: auto;
        bottom: 7px;
        transform: rotate(29deg) skewX(15deg);
        left: 46px;
        background: white;
        height: 11px;
    }

    .white-el-up {
        top: auto;
        bottom: 25px;
        transform: rotate(150deg) skewX(23deg);
        right: -2px;
    }

    .hexagon-main .hover {
        padding: 0 10%;
    }

    .hexagon-main .text span {
        font-size: 40px;
        margin-bottom: 10px;
        display: block;
    }

    div[data-letter="L"] .medium {
        top: 26px;
        right: -76px;
    }

    div[data-letter="L"] .small {
        bottom: -45px;
        left: -55px;
    }

    div[data-letter="E"] .hexagon-default, div[data-letter="P"] .hexagon-default {
        bottom: 0;
        left: -90px;
        width: 130px;
        height: 166px;
    }

    div[data-letter="O"] .hexagon-default {
        top: 20px;
        left: auto;
        right: -67px;
        width: 110px;
        height: 140px;
    }

    div[data-letter="I"] .medium {
        top: -25px;
        right: -77px;
    }

    div[data-letter="I"] .small {
        top: 60px;
        right: -115px;
    }

    .hexagon-default .text span {
        font-size: 34px;
    }

    .hexagon-default .text div {
        font-size: 14px;
    }
}
