html, body {
    width: 100%;
    height: 100%;
    margin: 0;
    padding: 0;
    min-height: 100vh;
}

body {
    font-family: 'Helvetica', sans-serif !important;
    font-size: 14px;
}

.mainContainer {
    padding-bottom: 0px;
}

.fontHelveticaNueBold {
    font-family: 'HelveticaNeue-Bold', sans-serif;
    font-size:30px;
}
.fontHelveticaNue {
    font-family: 'HelveticaNeue', sans-serif;
}
.fontHelveticaBold {
    font-family: 'Helvetica-Bold', sans-serif;
}
.fontSize12 {
    font-size: 12px;
}



.sidepanel  {
    width: 377px;
    position: fixed;
    z-index: 6;
    height: 100%;
    top: 0;
    right: 0;
    background-color: #191919;
    overflow-x: hidden;
    transition: 0.5s;
    transform: translate(377px, 0);
}

.sidepanel a {
    padding: 8px 8px 8px 0px;
    color: #f3f3f3;
    display: block;
    transition: 0.3s;
}

.sidepanel p {
    color: #f3f3f3;
}

.sidepanel .contact {
    padding-bottom: 24px;
}

.sidepanel a:hover {
    color: #f1f1f1;
}

.sidepanel .logo {
    width: auto;
    height: 30px;
}

td {
	width: 200px;
    height: 80px;
}

.sidepanel .vivimConsorci {
    padding-top:51px;
    padding-right: 54px;
}

.sidepanel .vivimFinacament {
    padding-top:40px;
    padding-right: 54px;
}

.sidepanel  .closeNavBtn {
    cursor: pointer;
    background: url("../images/logos/close-off.svg") no-repeat;
    background-size: 24px 24px;
    border: none;
    position: fixed;
    top: 34px;
    right: 28px;
}

.sidePanelClosed .closeNavBtn {display:none}

.openNavBtn {
    cursor: pointer;
    background: url("../images/logos/menu-off.svg") no-repeat;
    background-size: 52px 54px;
    height: 54px;
    width: 52px;
    padding: 10px 15px;
    border: none;
}

.openNavBtn:hover {
    background: url("../images/logos/menu-over.svg") no-repeat;
}

.enlargePlayerBtn {
    cursor: pointer;
    background: url("../images/logos/enlarge-off.svg") no-repeat;
    background-size: 52px 54px;
    height: 54px;
    width: 52px;
    padding: 10px 15px;
    border: none;
    position: absolute;
    right: 0px;
    top: 0px;
    z-index: 1;
}

.enlargePlayerBtn:hover {
    background: url("../images/logos/enlarge-over.svg") no-repeat;
}

.mutePlayerBtn {
    cursor: pointer;
    background: url("../images/logos/sound-off.svg") no-repeat;
    background-size: 52px 54px;
    height: 54px;
    width: 52px;
    padding: 10px 15px;
    border: none;
    position: absolute;
    right: 0px;
    bottom: 0px;
    z-index: 1;
}

.fullScreen .mutePlayerBtn { position:fixed; }
.fullScreen .mutedPlayerBtn { position:fixed; }

.mutePlayerBtn:hover {
    background: url("../images/logos/sound-over.svg") no-repeat;
}

.mutedPlayerBtn {
    cursor: pointer;
    background: url("../images/logos/mute-off.svg") no-repeat;
    background-size: 52px 54px;
    height: 54px;
    width: 52px;
    padding: 10px 15px;
    border: none;
    position: absolute;
    right: 0px;
    bottom: 0px;
    z-index: 1;
}

.mutedPlayerBtn:hover {
    background: url("../images/logos/mute-over.svg") no-repeat;
}

.closeNavBtn {
    cursor: pointer;
    background: url("../images/logos/close-off.svg") no-repeat;
    background-size: 24px 24px;
    height: 24px;
    width: 24px;
    padding: 10px 15px;
    border: none;
}

.closeNavBtn:hover {
    background: url("../images/logos/close-over.svg") no-repeat;
}


.formbtn {
    background: url("../images/logos/form-off.svg") no-repeat 15px center white;
    border: 1px solid #292929;
    color: #292929;
    padding: 20px 15px 20px 56px;
    text-align: left;
    -webkit-transition-duration: 0.4s;
    transition-duration: 0.4s;
    margin: 5px 5px !important;
    text-decoration: none;
    cursor: pointer;
    width:275px;
}

.formbtn:hover {
    background: url("../images/logos/form-over.svg") no-repeat 15px center #292929;
    color: white;
}

.camerabtn {
    background: url("../images/logos/camera-off.svg") no-repeat 15px center white;
    border: 1px solid #292929;
    color: #292929;
    padding: 20px 32px 20px 60px;
    text-align: left;
    -webkit-transition-duration: 0.4s;
    transition-duration: 0.4s;
    margin: 5px 5px !important;
    text-decoration: none;
    cursor: pointer;
}

.camerabtn:hover {
    background: url("../images/logos/camera-over.svg") no-repeat 15px center #292929;
    color: white;
}

.cameraBtnSelected {
    background-color:#292929 !important;
    color: white;
}

.camerabtn360 {
    background: url("../images/logos/360-off.svg") no-repeat 10px center white
}
.camerabtn360:hover {
    background: url("../images/logos/360-over.svg") no-repeat 10px center #292929;
    color: white;
}

.camerabtnMobile {
    border: 1px solid #292929;
    color: #292929;
    padding: 10px;
    -webkit-transition-duration: 0.4s;
    transition-duration: 0.4s;
    margin: 5px 5px !important;
    cursor: pointer;
}

.cameraBtnSelected {
    background-color:#292929 !important;
    color: white;
}

* {
    box-sizing: border-box;
}

.flex-container {
    display: flex;
    flex-wrap: wrap;
}

.flex-container-align-center {
    align-items: center;
}

.flex-item-left {
    padding: 0px 40px;
    flex: 30%;
}

.flex-item-right {
    padding: 20px 100px 60px 100px;
    flex: 70%;
}

.flex-button-container {
    display: flex;
    flex-direction: column;
    padding-top: 40px;
}

.flex-button-container-item {
    flex: 30%;
    flex-grow: 0;
    width: 275px;
}

.buttonsFullScreen .flex-button-container-item {
    flex: 30%;
    flex-grow: 0;
    width: unset;
}

.overlay {
    position: fixed;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-color: rgba(0,0,0,0.5);
    z-index: 2;
    cursor: pointer;
}

.header {
    justify-content: space-between;
    display: flex;
    width: 100%;
}

.header-container {
    margin: 0;
    overflow: hidden;
}
.vivimLogo {
    width: 176px;
    margin: 24px 39px;
}
.vivimLogoSidepanel {
    width: 143px;
    height: 48px;
    margin-bottom: 59px;
}

h1 {
    font-size: 30px;
    margin-bottom: 24px;
}

h2 {
    font-size: 1em;
}

.navbar-button {
    margin: 10px 14px;
    text-align: right;
}


.sidePanelOpen{ 
    transform: translate(0, 0);
    
}

.sidePanelClosed{
    transform: translate(377px, 0);
    
}
.overlayOpen{ 

    display:block;
}

.overlayClosed{

    display:none;
}

.playerContainer {
    position: relative;
    height: 0;
    max-height: 100px;
    padding-top: 56.25%;
}

.fullScreen .playerContainer {
    position:absolute;
    left:0;
    top:0;
    width:100%;
    height:100%;
    max-height: unset;

}
.iframePlayer {
    background-color: #292929;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

.buttonsFullScreen {
    position:absolute;
    left:30px;
    top:40%;
    display:none;
}

.fullScreenPlayerButton {
    position: absolute;
    right: 0px;
    top: 0px;
    z-index: 1;
}

.fullScreen {
    overflow: hidden;
}


.buttonsNormal { display:flex;}
.fullScreen .buttonsNormal { display:none;}
.flex-container-footer {display:flex;}
.fullScreen .flex-container-footer { display:none;}
.fullScreen .buttonsFullScreen { display:flex;}
.fullScreen .iframePlayer {height: 100vh;}

.fullScreen .enlargePlayerBtn {
    transform: rotate(180deg);
}

.flex-container-footer {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    background-color: #292929;
    color: #828282;
    padding: 16px;
    position: fixed;
    bottom: 0;
    left: 0;
    right: 0;
    z-index: 5;
}

.disabled {
    pointer-events: none;
    cursor:none;
}

[hidden] {
    display: none;
}

.buttonsFullScreenMobile {
    display:none;
    position: absolute;
    top: 0px;
    left: 0px;
    z-index: 4;
}

.noscroll { 
    overflow: hidden;
}

@media (max-width: 1232px){
    .flex-item-right, .flex-item-left {
        flex: 100%;
    }
    .flex-item-right {
        padding: 20px 0px;
    }

    .flex-container-footer {
        position:relative;
    }
    .fullScreen .buttonsFullScreen {
        position:absolute;
        top:20px;
    }
    .form {
        margin-top: 0px;
    }
    body {
        margin: 0px !important;
    }
}

@media (max-width: 1023px) {
    .fullScreen .buttonsFullScreen {
        display:none !important;
    }
    .buttonsFullScreenMobile {
        display: flex;
        flex-direction: column;
    }
    .buttonsNormal {
        display: none;
    }
}

@media (max-width: 400px) {
    .sidePanelOpen {
        width: 100%;
    }
}

@media only screen and (orientation: landscape) {
    #warning-message {
        display: none;
    }
}

#warning-message {
    display: none;
}


@media only screen and (min-width: 1232px)  {
    .mainContainer{
        padding-bottom: 59px;
    }
}





@media only screen and (orientation: portrait) and (max-width: 600px)  {
    body {
        overflow: hidden;
    }
    
    #warning-message {
        position: fixed;
        display: block;
        height: 100%;
        width: 100%;
        z-index: 9999;
        color: #fff;
        margin: 0;
        padding: 0;
        top:0;
        left:0;
        background-color: #212121;
    }
    .warning-message-text {
        height: 100%;
        width: 100%;
        text-align: center;
        font-family: RobotoRegular;
        font-size: 1.5rem;
        color: #fff;
    }
    .image {
        background: #212121;
        width: 100%;
        height: 100%;
    }
    
    .image-contain {
        object-fit: contain;
        object-position: center;
    }
}

.align-items-center {
    align-items: center!important;
}

.justify-content-center {
    justify-content: center!important;
}
.d-flex {
    display: flex!important;
}

@media only screen and (hover: none) and (pointer: coarse){

    .fullScreen .buttonsFullScreen {
        display:none !important;
    }
    .buttonsFullScreenMobile {
        display: flex;
        flex-direction: column;
    }
    .buttonsNormal {
        display: none;
    }
}

.footerImageList {
    list-style-type: none;
    padding: 0px;
    margin:0px;
}

.footerImageList li {
    display: inline-block;
    padding: 0 12px;
}

.footerImageList li img {
    height:24px;
}