@charset "utf-8";
/* CSS Document */

@media(min-width: 320px) and (max-width: 768px) {
    h1 {
        font-size: 48px;
    }
    h2 {
        font-size: 44px;
    }
    h3 {
        font-size: 40px;
    }
    h4 {
        font-size: 36px;
    }
    h5 {
        font-size: 26px;
    }

    /* */
    .size_0 {
        font-size: 12px;
    }
    .size_01 {
        font-size: 14px;
    }
    .size_02 {
        font-size: 16px;
    }
    .size_03 {
        font-size: 18px;
    }
    .size_04 {
        font-size: 20px;
    }
    .size_05 {
        font-size: 24px;
    }
    .size_06 {
        font-size: 28px;
    }
    .size_07 {
        font-size: 32px;
    }
    .size_08 {
        font-size: 36px;
    }
    .size_09 {
        font-size: 40px;
    }
    .size_10 {
        font-size: 42px;
    }
    .size_11 {
        font-size: 46px;
    }
    .size_12 {
        font-size: 50px;
    }

    /* */
    .btn-xlarge {
        font-size: 18px;

        padding: 14px 50px;
    }
    .btn-large {
        font-size: 18px;

        padding: 12px 30px;
    }
    .btn-medium {
        font-size: 16px;

        padding: 12px 30px;
    }

    /* */
    .truncate-small, .truncate-medium, .truncate-large {
        min-height: auto;
    }

    /* */
    .padding-s {
        padding-top: 20px;
        padding-bottom: 20px;
    }
    .padding-m {
        padding-top: 40px;
        padding-bottom: 40px;
    }
    .padding-l {
        padding-top: 60px;
        padding-bottom: 60px;
    }
    .padding-xl {
        padding-top: 60px;
        padding-bottom: 60px;
    }

    .margin-s {
        margin-top: 20px;
        margin-bottom: 20px;
    }
    .margin-m {
        margin-top: 40px;
        margin-bottom: 40px;
    }
    .margin-l {
        margin-top: 60px;
        margin-bottom: 60px;
    }

    /* */
    .navigation {
        height: 90px;

        padding: 0;
    }
        .navigation h1 {
            font-size: 30px;

            margin-top: 15px;
        }
        .navigation .logo img {
            margin-top: 0;
        }

        .navigation .navigation-panel {
            display: none;
        }
        .navigation .logo {
            margin: 5px 0 0;
        }

    .navigation-mobile {
        background: #fff;

        position: absolute;
        top: 88px;
        left: -999px;

        z-index: 90;

        width: 100%;
        height: 100vh;

        padding: 0px 30px;

        transition: left 0.4s;
    }
        .navigation-mobile.active {
            left: 0;

            transition: left 0.4s;
        }

        /* */
        .navigation-mobile-icon {
            position: relative;

            width: 100%;
            height: 70px;

            transform: rotate(0deg);

            transition: 0.5s ease-in-out;

            cursor: pointer;
        }
            .navigation-mobile-icon img {
                width: 25px;
            }
            .navigation-mobile-icon span {
                background: #333333;
                border-radius: 25px;

                position: absolute;
                right: 10px;

                display: block;

                width: 18px;
                height: 3px;

                opacity: 1;

                transform: rotate(0deg);

                transition: 0.25s ease-in-out;
            }
                .navigation-mobile-icon span:nth-child(1) {
                    top: 30px;
                }
                .navigation-mobile-icon span:nth-child(2), .navigation-mobile-icon span:nth-child(3) {
                    top: 36px;
                }
                .navigation-mobile-icon span:nth-child(4) {
                    top: 42px;
                }
                .navigation-mobile-icon.open span:nth-child(1) {
                    top: 36px;
                    right: 30px;

                    width: 0px;
                }
                .navigation-mobile-icon.open span:nth-child(2) {
                    transform: rotate(45deg);
                }
                .navigation-mobile-icon.open span:nth-child(3) {
                    transform: rotate(-45deg);
                }
                .navigation-mobile-icon.open span:nth-child(4) {
                    top: 36px;
                    right: 30px;

                    width: 0px;
                }

        .navigation-mobile ul {
            margin: 0;
            padding: 0;

            list-style: none;
        }
        .navigation-mobile li {
            margin: 0;
            padding: 0;

            display: block;
        }
        .navigation-mobile li a {
            font-size: 18px;
            font-weight: 500;

            margin: 0;
            padding: 15px 0;

            display: block;
        }
            .navigation-mobile li a:hover {
                background: #fff;
                color: #3C3C4F;
            }

        .navigation-mobile li a i {
            font-size: 20px;

            display: block;
            margin-top: -20px;
            margin-right: -5px;
        }
        .navigation-mobile hr {
            border-top: 2px solid #e5e5e5;
        }

        .logo_text a:hover {
            text-decoration: none !important;
        }

    /* */
    .container-padding-s {
        padding: 20px;
    }
    .container-padding-m {
        padding: 20px;
    }
    .container-padding-l {
        padding: 40px;
    }

    /* */
    .background-stripe-img img {
        height: 100%;

        top: 0;
    }
    .background-stripe-img h1 {
        font-size: 52px;
    }
    .background-stripe-img h2 {
        font-size: 18px;

        margin-top: 0;
    }

    /* */
    .full-img-section {
        position: relative;
    }
        .full-img-section img {
            width: 100%;
        }

    /* */
    .image-with-text.small img {
        height: 250px;
    }
    .image-with-text.large img {
        height: 400px;
    }
    .image-with-text .grad {
        height: 75px;
    }

    /* */
    .filter-panel .filter-panel-content {
        width: 300px;
    }

    /* */
    .footer-bar .logo_text div {
        font-size: 14px;
        margin-left: 0;
    }
    .footer-bar .logo_text a {
        font-size: 20px;
    }
}

@media(min-width: 769px ) and (max-width: 1024px) {
    h1 {
        font-size: 40px;
    }
    h2 {
        font-size: 36px;
    }
    h3 {
        font-size: 34px;
    }
    h4 {
        font-size: 28px;
    }
    h5 {
        font-size: 26px;
    }

    /* */
    .size_0 {
        font-size: 12px;
    }
    .size_01 {
        font-size: 14px;
    }
    .size_02 {
        font-size: 16px;
    }
    .size_03 {
        font-size: 18px;
    }
    .size_04 {
        font-size: 20px;
    }
    .size_05 {
        font-size: 24px;
    }
    .size_06 {
        font-size: 28px;
    }
    .size_07 {
        font-size: 32px;
    }
    .size_08 {
        font-size: 36px;
    }
    .size_09 {
        font-size: 40px;
    }
    .size_10 {
        font-size: 42px;
    }
    .size_11 {
        font-size: 46px;
    }
    .size_12 {
        font-size: 50px;
    }

    /* */
    .btn-xlarge {
        font-size: 18px;

        padding: 14px 50px;
    }
    .btn-large {
        font-size: 18px;

        padding: 12px 30px;
    }
    .btn-medium {
        font-size: 16px;

        padding: 12px 30px;
    }

    /* */
    .padding-s {
        padding-top: 20px;
        padding-bottom: 20px;
    }
    .padding-m {
        padding-top: 40px;
        padding-bottom: 40px;
    }
    .padding-l {
        padding-top: 60px;
        padding-bottom: 60px;
    }
    .padding-xl {
        padding-top: 60px;
        padding-bottom: 60px;
    }

    .margin-s {
        margin-top: 20px;
        margin-bottom: 20px;
    }
    .margin-m {
        margin-top: 40px;
        margin-bottom: 40px;
    }
    .margin-l {
        margin-top: 60px;
        margin-bottom: 60px;
    }
}

@media(min-width: 1025px) and (max-width: 1639px) {
    .container {
		max-width: 1480px;
	}

    /* */
    h1 {
		font-size: 114px;
	}
	h2 {
		font-size: 102px;
	}
	h3 {
		font-size: 72px;
	}
	h4 {
		font-size: 56px;
	}
	h5 {
		font-size: 32px;
	}

    /* */
    .size_02 {
        font-size: 16px;
    }

    /* */
    .padding-xl {
        padding-top: 120px;
        padding-bottom: 120px;
    }
    .padding-l {
        padding-top: 80px;
        padding-bottom: 80px;
    }
    .padding-m {
        padding-top: 60px;
        padding-bottom: 60px;
    }
    .margin-l {
        padding-top: 80px;
        padding-bottom: 80px;
    }
    .margin-m {
        padding-top: 60px;
        padding-bottom: 60px;
    }

    /* */
    .background-stripe-img {
        background-attachment: inherit;
    }
        .background-stripe-img h1 {
            font-size: 92px;
        }
}

@media (min-width: 1640px){
	.container {
		max-width: 1560px;
	}
}
