:root {
    --very-big-text: 56px;
    --big-text: 32px;
    --medium-text: 24px;
    --small-text: 16px;
    --intro-text:54px;
    --cta-text: 21px;
    --cta-padding:1vw 2vw;
}

*{
    font-family: 'Open Sans', sans-serif;
    box-sizing:border-box;
}

html,body{
    margin:0;
    padding:0;
}

.msgDialog{
    position: fixed;
    top:0;
    left:0;
    width:100%;
    height: 100%;
    background: rgba(0,0,0,.8);
    z-index:10000;
    display:none;
}

.wgp{
	display: inline-flex;
	padding: 6px 10px;
	border-right: 1px solid #fff;
	text-align: center;
	text-decoration: none;
	color: #fff;
}

.msgDialog .msgHolder{
    position:absolute;
    background: #ffffff;
    border-radius:25px;
    color:#000;
    padding:50px;
    top:200px;
    left:0;
    right:0;
    bottom:0;
    width:max-content;
    height: max-content;
    margin:0 auto;
    text-align: center;
}


.msgDialog .message{
    padding:30px 0;
}


.msgDialog .msgHolder button{
    border-radius:100px;
    padding:10px 30px;
    border: 0;
    background: #ffd800;
    border-radius: 100px;
    font-size: 23px;
    text-transform: uppercase;
    cursor: pointer;
    box-shadow: 1px 1px 0px 0px rgba(0,0,0,.5);
    border:5px solid #fff;
}


.visible{
    display: block !important;
}


section{
    display: block;
    width:100%;
}

section .wrapper{
    margin:0 auto;
    width:100%;
    max-width: 1200px;
}

section .wrapper > div{
    padding:20px;
}

section .wrapper .header header{
    display:grid;
    grid-template-columns: 1fr 1fr;
    grid-template-rows: auto auto;

    position:relative;
    background-color:#0072a7;
    background-image: url( 'img/topbg.png');
    background-repeat:no-repeat;
    background-position: bottom right;
    border-radius:60px;
    padding:40px;
    height:500px;

}

section .wrapper .header header .img{

    position: absolute;
    width: 53%;
    height: 100%;
    right: 0;
    bottom: -30px;

    background-image: url( 'img/laptop.png');
    background-repeat:no-repeat;
    background-position: center bottom;
    background-size:contain;

    pointer-events: none;
}

.logo{
    display: block;
    background: url('img/sprite.png') no-repeat -15px -189px;
    width: 237px;
    height: 74px;
}

header .intro{
    font-size: var(--intro-text);
    color:#fff;
    font-weight: 100;
    text-shadow: 1px 1px 0px #474747;
    letter-spacing: 0;
}

header menu .mobile-handler{
    display:none;
    position:absolute;
    top:0;
    right:0;
    background: url('img/sprite.png') no-repeat -84px -129px;
    width: 18px;
    height: 14px;
}


header menu ul{
    list-style-type: none;
    margin: 0;
    padding: 0;
    display: flex;
    justify-content: flex-end;
    align-content: center;
    align-items: center;
    flex-wrap: nowrap;
    position: relative;
}

header menu ul li{
    display: inline-flex;
    padding: 6px 10px;
    border-right: 1px solid #fff;
    text-align: center;
}

header menu ul li:last-child{
    border:none;
}


header menu ul li a{
    color:#fff;
    text-decoration: none;
}


h3{
    display: block;
    font-size: 35px;
    font-weight: 100;
    position: relative;
    padding-bottom: 15px;
}

h3:after{
    content:' ';
    display: block;
    width:100%;
    max-width: 150px;
    position: absolute;
    left:0;
    bottom:0;
    height:2px;
    background: #0085c3;

}



.scylla-options{
    display:grid;
    width: 100%;
    grid-template-columns: repeat(auto-fit,200px);
    grid-gap: 20px;
    margin-top:50px;
}


.scylla-options > div{
    display: grid;
    background: #f5f6f7;
    border-radius:15px;
    padding:20px;
    grid-template-columns: auto;
    grid-template-rows: auto auto;
    gap: 20px;
    height: 100%;
    /*
    grid-template-areas:
            ". ."
            "desc desc";
    grid-row: 1;
    */
    text-align: center;
}


.scylla-options > div .title{
    font-size: var(--small-text);
    align-self: center;
}

.scylla-options > div .desc{
    grid-area: desc;
    width:100%;
}


.scylla-options > .bandwidth img{
    width:63px;
    height:33px;
    background: url('img/sprite.png') no-repeat -262px -40px;
    width: 63px;
    height: 33px;
}

.scylla-options > .implementation img{
    width:38px;
    height:39px;
    background: url('img/sprite.png') no-repeat -374px -40px;
    width: 38px;
    height: 39px;
}

.scylla-options > .wp img{
    width:50px;
    height:50px;
    background: url('img/sprite.png') no-repeat -465px -32px;
    width: 50px;
    height: 50px;
}

.scylla-options > .seo img{
    width:50px;
    height:50px;
    width: 50px;
    height: 50px;
}


.scylla-options > .quality img{
    width:62px;
    height:44px;
    background: url('img/sprite.png') no-repeat -577px -33px;
    width: 62px;
    height: 44px;
}




.scylla-packages{
    margin-top:50px;
    overflow-x: scroll;
    grid-template-columns: 1fr !important;
}

/*
.scylla-packages::-webkit-scrollbar {
    display: none;
}

.scylla-packages {
    -ms-overflow-style: none;
    scrollbar-width: none;
}
*/



.scylla-packages > div{
    display: grid;
    background: #f5f6f7;
    border-radius:15px;
    gap: 20px;
    height: 100%;
    text-align: center;
    grid-template-columns: repeat(5, 1fr);
}


.scylla-packages > div > div{
    min-width: 150px;
    border-radius:15px;
    border: 2px solid #dddddd;
    padding:10px;
    position:relative;
}



.scylla-packages > div .ribbon {
    width: 120px;
    background: #298eea;
    position: absolute;
    top: 0px;
    right: -35px;
    text-align: center;
    text-transform: uppercase;
    padding: 4px 0;
    color: #fff;
    -ms-transform: rotate(45deg);
    transform: rotate(45deg);
    font-size: 11px;
    font-weight: 700;
}


















section .wrapper .try > div{
    position:relative;
    width:100%;
    height: min(500px, 60vw);
    overflow: hidden;
}

section .wrapper .try > div .original{
    position: absolute;
    top:0;
    left:0;
    width:100%;
    height: 100%;
    z-index:10;
}


section .wrapper .try > div .demo{
    position: absolute;
    top:0;
    left:0;
    width:100%;
    height: 100%;
    z-index:20;
}

section .wrapper .try .info{
    position: absolute;
}



section .wrapper .try .demo .info{
    left:30px;
    top:30px;
}


section .wrapper .try .demo .info .logo-holder{
    background: #ffffff;
    border-radius:100px;
    display:inline-flex;
    padding:10px;
}


section .wrapper .try .demo .info .logo{
    background: url('img/sprite.png') no-repeat -24px -311px;
    width: 134px;
    height: 43px;
}

section .wrapper .try .demo .info .size{
    display:block;
    color:#fff;
    font-size: var(--big-text);
    padding-top:15px;
    font-weight: 100;
    text-shadow: 1px 1px 0px #474747;
}






section .wrapper .try .original .info{
    right:30px;
    top:30px;
    z-index:30;
}


section .wrapper .try .original .info .logo-holder{
    background: #ffffff;
    border-radius:100px;
    display:inline-flex;
    padding:10px;
}

section .wrapper .try .original .info .logo-holder .orig{
    font-size: var(--big-text);
    color:#252525;
    font-weight: 100;
    text-transform: uppercase;
}

section .wrapper .try .original .info .size{
    display:block;
    color:#fff;
    font-size: var(--big-text);
    padding-top:15px;
    font-weight: 100;
    text-shadow: 1px 1px 0px #474747;
    text-align: right;
}










section .wrapper .try > div .original,
section .wrapper .try > div .demo{
    overflow: hidden;
    pointer-events: none;
}


section .wrapper .try > div .original img,
section .wrapper .try > div .demo img{
    display: block;
    vertical-align: middle;
}


section .wrapper .try > div .upload{
    position: absolute;
    bottom:30px;
    right:30px;
    width: 500px;
    height: auto;
    z-index:30;
    background: rgba(255,255,255,.5);
    padding:30px;
    padding:10px;
}

section .wrapper .try > div .upload form{
    position: relative;
    text-align: right;
    height:72px;
    padding:10px;
    background: #fff;
    border-radius: 100px;
    box-shadow: 1px 1px 0px 0px rgba(0,0,0,.5);
    margin-bottom:12px;
    display:none;

}

section .wrapper .try > div .upload form.visible{
    display:block;
}


section .wrapper .try > div .upload button,
section .wrapper .try > div .upload input[type=submit]{
    border:0;
    background: #ffd800;
    border-radius:100px;
    font-size: 23px;
    text-transform: uppercase;
    padding:10px 15px;
    position: absolute;
    z-index:10;
    right:10px;
    cursor:pointer;
}

section .wrapper .try > div .upload input[type=text]{
    border:none;
    background: none;
    outline: none;
    color:#5e5f5f;
    font-size: 16px;
    position: absolute;
    width: 80%;
    height: 100%;
    top: 0;
    left: 0;
    display: inline-flex;
    align-items: center;
    padding-left: 30px;
    cursor: pointer;
    transition: .2s;
    z-index: 1;
    cursor: text;
}

section .wrapper .try > div .upload input[type=text]::placeholder{
    color: #474848;
}

section .wrapper .try > div{
    background: #4e4e4e;
}


section .wrapper .try .holder{
    background: #4e4e4e;
    text-align: center;
    width: max-content;
    margin: 0 auto;
    left: 0;
    right: 0;
    height: 100%;
    position: relative;
    max-width: 100%;
}


section .wrapper .try > div .upload .tabs{
    margin:0 auto;
    display: grid;
    grid-template-columns: 1fr 1fr;
    grid-template-rows: auto;
    grid-gap: 0;
    width: max-content;
}

section .wrapper .try > div .upload .tabs a{
    display: block;
    background: #fff;
    border-radius: 100px;
    color:#535353;
    text-decoration: none;
    width: 100%;
    padding:10px 20px;
    box-shadow: 1px 1px 0px 0px rgba(0,0,0,.5);
}


section .wrapper .try > div .upload .tabs a:nth-child(1){
    border-top-right-radius: 0px;
    border-bottom-right-radius: 0px;
}


section .wrapper .try > div .upload .tabs a:nth-child(2){
    border-top-left-radius: 0px;
    border-bottom-left-radius: 0px;
}


section .wrapper .try > div .upload .tabs a.current{
    background: #5e5f5f;
    color:#fff;
}




section .wrapper .try > div.formats{
    width:100%;
    max-width: 100%;
    height:auto;
    display:grid;
    grid-template-columns: 1fr 1fr 1fr 1fr;
    grid-gap:20px;
    background: #f5f6f7;
    padding:50px;
}

section .wrapper .try > div.formats > div{
    width:100%;
    height:200px;
    overflow: hidden;
    position: relative;
    border-radius:15px;
    box-shadow: 1px 1px 0px 0px rgba(0,0,0,.2);
    cursor: pointer;
    transition:.2s;
}

section .wrapper .try > div.formats > div:hover{
    transform:scale(1.03);
}




section .wrapper .try > div.formats > div img{
    width:100%;
    height:auto;
    position:absolute;
    top:0;
    left:0;
}



section .wrapper .try > div.formats > div .label{
    position: absolute;
    bottom:0;
    left:0;
    width:100%;
    height: max-content;
    background:#fafafa;
    padding:20px;
}


section .wrapper .try > div.formats > div.current .label{
    background: #ffd800;
}



section .wrapper .try > div.formats > div .label span{
    display:block;
    font-size: 16px;
    font-weight: 500;
}

section .wrapper .try > div.formats > div .label span + span{
    font-size: 12px;
    font-weight: 100;
}




label[for=file-upload]{
    position:absolute;
    width:100%;
    height:100%;
    top:0;
    left:0;
    display: inline-flex;
    align-items: center;
    padding-left:30px;
    cursor:pointer;
    transition: .2s;
    z-index:1;
}

label:hover[for=file-upload]{
    color: red;
}


.handler{
    position:absolute;
    width:3px;
    height:100%;
    background: #fff;
    left:50%;
    z-index:25;
}

.handler > span{
    position: absolute;
    top: 50%;
    width: 23px;
    height: 34px;
    border-radius: 5px;
    background: #fff;
    margin-left: -10px;
    margin-top: -10px;
    cursor: pointer;
    background: url(img/sprite.png) no-repeat -37px -118px #fff;
}



.mobile-demo{
    position: absolute;
    top:0;
    left:0;
    width:100%;
    height:100%;
    padding:20px;
    z-index:1000;
    background: #dadada;
    border-radius:20px;
    color:#000;
    display:none;
}

.mobile-demo p{
    color: #000;
    font-size: var(--medium-text);
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    margin: auto;
    width: 80%;
    height: 100%;
    display: flex;
    align-items: center;
    font-style: italic;
    font-weight: 600;
}




section .wrapper .contact > div{
    border-radius:25px;
    background: #f5f6f7;
    padding:30px;
    display: grid;
    grid-template-columns: 1fr 1fr;
    grid-gap: 30px;
}


section .wrapper .contact form input[type=text]{
    border:0;
    background: #ffffff;
    padding:20px;
    border-radius:100px;
    box-shadow: 1px 1px 0px 0px rgba(0,0,0,.2);
    display:block;
    width:100%;
    font-size: var(--small-text);
    margin-bottom:10px;
    outline: none;
}

section .wrapper .contact form input[type=text]::placeholder{
    font-size: var(--small-text);
}



section .wrapper .contact form button{

    background: #ffd800;
    padding:10px 40px;
    border-radius:100px;
    box-shadow: 1px 1px 0px 0px rgba(0,0,0,.2);
    border:7px solid #fff;
    text-transform: uppercase;
    font-size: var(--medium-text);
    font-weight: 500;
}




section .wrapper .footer > div{
    border-radius:25px;
    background: #222325;
    padding:30px;
    color:#fff;
}

section .wrapper .footer .logo {
    background: url('img/sprite.png') no-repeat -24px -371px;
    width: 134px;
    height: 43px;
}

.red{
    color:#de0245;
    text-decoration: none;
}


.red:hover{
    text-decoration: underline;
}

@media (max-width: 740px) {


    :root {
        --very-big-text: 56px;
        --big-text: 32px;
        --medium-text: 24px;
        --small-text: 16px;
        --intro-text:40px;
        --cta-text: 21px;
        --cta-padding:1vw 2vw;
    }

    header menu .mobile-handler{
        display: block;
    }


    section .wrapper .header header{
        display:block;
        height:auto;
    }

    section .wrapper .header header menu{
        position: absolute;
        right:50px;
        top:30px;
    }

    section .wrapper .header header menu.visible ul{
        display:block;
        position:absolute;
        top:0px;
        right:0px;
        background: #fff;
        padding:20px;
    }


    section .wrapper .header header menu.visible ul li{
        border-right: none;
        border-bottom: 1px solid #ccc;
        display:block;
        width: min-content;
        white-space: nowrap;
        padding: 0;
    }

    section .wrapper .header header menu.visible ul li a{
        display:block;
        color:#000;
        padding:10px;
    }

    section .wrapper .header header menu.visible ul li:last-child{
        border: none;
    }



    section .wrapper .header header menu ul{
        display:none;
    }

    section .wrapper .header header .intro{
        margin-top:30px;
    }


    section .wrapper .header header .img{
        display:none;
    }


    .scylla-options {
        grid-template-columns: 1fr;
    }

    section .wrapper .contact > div{
        grid-template-columns: 1fr;
    }

    section .wrapper .try > div .upload{
        width: 86% !important;
    }

    section .wrapper .try > div .upload form{
        height:42px;
    }

    section .wrapper .try > div .upload button{
        font-size: 18px;
    }


    section .wrapper .try > div .original,
    section .wrapper .try > div .demo{
        display:none;
    }


    .mobile-demo{
        display:block;
    }


    section .wrapper .try > p{
        display:none;
    }

    section .wrapper .try > div.formats,
    section .wrapper .try > div .original,
    section .wrapper .try > div .demo{
        display:none;
    }



}


@media (max-width: 600px) {

    section .wrapper .try > div.formats,
    section .wrapper .try > div .original,
    section .wrapper .try > div .demo{
        display:none;
    }

    .mobile-demo{
        display:block;
    }

    section .wrapper .try > p{
        display:none;
    }


}