* {
    padding: 0;
    margin: 0;    
    box-sizing: border-box;
    color: grey;
    font-family: 'Work Sans', sans-serif;
}

body{
    overflow: hidden;
}

:not(:defined) > * {
    display: none;
  }

#header{
    width: 100%;
    height: 12dvh;
    box-shadow: 0 0 5px black;
    background-color: #ffffff;
    display: flex;
    justify-content: center;
    align-items: center; 
    
}

#logo{
    width: auto;
    height: 150%;
    
}

#arrow{
    width: auto;
    height: 5vh;
    margin: auto;    
}

#headerTitle {
    font-size: 5vw;
    font-family: 'Roboto Condensed', sans-serif;
    font-weight: bold;
    color: #f7f7f7;
    text-align: center;    
}

#model-viewer{
    width:100%;
    height:80dvh;
    display: flex;
    justify-content:center;
    align-items: center;
}

.slider {
    width: 100%;
    text-align: center;
    overflow: hidden;
    position: absolute;
    bottom: 16px;
    display: flex;
    justify-content:center;
    align-items: center;
}

.slides {
    display: flex;
    overflow-x: auto;
    scroll-snap-type: x mandatory;
    scroll-behavior: smooth;
    -webkit-overflow-scrolling: touch;
}

.slide {
    scroll-snap-align: start;
    flex-shrink: 0;
    width: 20vw;
    height: 20vw;
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
    background-color: #fff;
    margin: 5px;
    border-radius: 10px;
    display: inline-block;
    border: 1px solid #ffffff;
    cursor: pointer;
    opacity: 80%; 
    font-size: 75%;
    text-align: center; 
    color: black;
    font-weight: bold;
    box-shadow: #d1d1d1 0 0 10px inset;
    overflow: hidden;
}

.slide.selected {
    border: 2px solid #000000;
}

.slide:focus {
    outline: none;
}

.slide:focus-visible {
    outline: 1px solid #000000;
}

table{
    border-collapse: collapse;
    width: 100%;
}
td{
    width: 25%;
    text-align: center;
}
#tdcentrale{
    width: 50%;
    text-align: center;
}

.footer{
    width: 100%;
    height: 8dvh;
    box-shadow: 0 0 3px black;
    background-color: #000000;
    display: flex;
    justify-content: center;
    align-items: center;
    margin: auto;
}

#coop{
    background-color: #e32126;
}
#crai{
    background-color: #026937;
}
#craiextra{
    background-color: #323E48;
}
#ete{
    background-color: #e53138;
}
#pam{
    background-color: #009639;
}
#sigma{
    background-color: #0e4687;
}
#ibis{
    background-color: #b7151f;
}
#ibis_styles{
    background-color: #4DA833;
}
#mercure{
    background-color: #010101;
}
#tremil{
    background-color: #2c2f7b;
}
#novotel{
    background-color: #1e23ac;
}
#bestwestern{
    background-color: #124380;
}
#bestwestern_plus{
    background-color: #8e3144;
}

#ar-button {
    background-image: url(../assets/img/augmented-reality-icon.png);
    background-repeat: no-repeat;
    background-size: 20px 20px;
    background-position: 12px 50%;
    background-color: #fff;
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
    white-space: nowrap;
    bottom: 132px;
    padding: 0px 16px 0px 40px;
    font-family: Roboto Regular, Helvetica Neue, sans-serif;
    font-size: 14px;
    color:#000000;
    height: 36px;
    line-height: 36px;
    border-radius: 12px;
    border: 1px solid #DADCE0;
}

#ar-button:active {
    background-color: #E8EAED;
}

#ar-button:focus {
    outline: none;
}

#ar-button:focus-visible {
    outline: 1px solid #4285f4;
}

#info-button{
    width: 15vw;
    height: 15vw;
    background-image: url(../assets/img/tape-measure.png);
    background-color: #fff;
    background-repeat: no-repeat;
    background-size: 50%;
    background-position: 50% 50%;
    border-radius: 100%;
    border: none;
    position: absolute;
    top: 22px;
    right: 22px;
    box-shadow: #d1d1d1 0 0 10px inset;
}

div.infoContainer{
    position: absolute;
    width: 70vw;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    background-color: #f7f7f7;
    border-radius: 16px;
    display: flex;
    flex-direction: column;
    padding-bottom: 35px;
    z-index: 9999;
    border: 1px solid #dddddd;
    box-shadow: #dddddd 0 0 10px inset;
    overflow-y: scroll;
    max-height: 55vh;
}

.infoTitle{
    width: 100%;
    height: 10vh;
    display: flex;
    justify-content: center;
    align-items: center;
    border-radius: 16px;
    box-shadow: inset 0 0 20px 5px rgba(0, 0, 0, 0.1), 0px 4px 3px rgba(0, 0, 0, 0.1)
}

h2.infoTitle{
    color: #fff;
    text-align: center;
    font-size: larger;
}

h2#infoPanel{
    color: #000;
    text-align: center;
    font-size: larger;
    margin-top: 20px;
    margin-bottom: 10px;
}

p#infoPanel{
    color: #000;
    text-align: center;
    font-size: larger;
}

#footerText {
    font-size: 1em;
    font-family: 'Work Sans', sans-serif;
    color: #f7f7f7;
    margin: auto;
}

/*CSS Mobile*/
@media screen and (max-width: 576px){
    #info-button{
        width: 15vw;
        height: 15vw;
    }

    div.infoContainer{
        width: 70vw;
    }

    .infoTitle{
        width: 100%;
        height: 10vh;
    }
    
    h2.infoTitle{
        color: #fff;
        text-align: center;
        font-size: larger;
    }
    
    h2#infoPanel{
        font-size: larger;        
    }
    
    p#infoPanel{
        font-size: larger;
    }

    #footerText {
        font-size: 1em;
    }

    .slide{
        font-size: 3.25vw;
    } 
}

/*CSS Tablet Stretto*/
@media screen and (min-width: 576px) and (max-width: 768px){
    #info-button{
        width: 12vw;
        height: 12vw;
    }

    div.infoContainer{
        width: 70vw;
    }

    .infoTitle{
        width: 100%;
        height: 10vh;
    }
    
    h2.infoTitle{
        color: #fff;
        text-align: center;
        font-size: x-large;
    }
    
    h2#infoPanel{
        font-size: x-large;        
    }
    
    p#infoPanel{
        font-size: x-large;
    }

    #footerText {
        font-size: 1.5em;
    }

    .slide{
        font-size: 3.25vw;
    } 
}

/*CSS Tablet Largo*/
@media screen and (min-width: 768px) and (max-width: 992px){
    #info-button{
        width: 12vw;
        height: 12vw;
    }

    div.infoContainer{
        width: 70vw;
    }

    .infoTitle{
        width: 100%;
        height: 10vh;
    }
    
    h2.infoTitle{
        color: #fff;
        text-align: center;
        font-size: x-large;
    }
    
    h2#infoPanel{
        font-size: x-large;        
    }
    
    p#infoPanel{
        font-size: x-large;
    }

    #footerText {
        font-size: 1.5em;
    }

    .slide{
        font-size: 3.25vw;
        width: 15vw;
        height: 15vw;
    } 
}

/*CSS Tablet Largo*/
@media screen and (min-width: 992px){
    #info-button{
        width: 7vw;
        height: 7vw;
    }

    div.infoContainer{
        width: 70vw;
    }

    .infoTitle{
        width: 100%;
        height: 10vh;
    }
    
    h2.infoTitle{
        color: #fff;
        text-align: center;
        font-size: x-large;
    }
    
    h2#infoPanel{
        font-size: x-large;        
    }
    
    p#infoPanel{
        font-size: x-large;
    }

    #footerText {
        font-size: 1.25em;
    }

    .slide{
        font-size: 1.5vw;
        width: 10vw;
        height: 10vw;
    } 
}

#info-button:active{
    -webkit-animation: rotate-diagonal-1 0.4s ease-in-out ;
	        animation: rotate-diagonal-1 0.4s ease-in-out ;
}

@-webkit-keyframes rotate-diagonal-1 {
    0% {
      -webkit-transform: rotate3d(1, 1, 0, 0deg);
              transform: rotate3d(1, 1, 0, 0deg);
    }
    50% {
      -webkit-transform: rotate3d(1, 1, 0, -180deg);
              transform: rotate3d(1, 1, 0, -180deg);
    }
    100% {
      -webkit-transform: rotate3d(1, 1, 0, -360deg);
              transform: rotate3d(1, 1, 0, -360deg);
    }
}
@keyframes rotate-diagonal-1 {
    0% {
      -webkit-transform: rotate3d(1, 1, 0, 0deg);
              transform: rotate3d(1, 1, 0, 0deg);
    }
    50% {
      -webkit-transform: rotate3d(1, 1, 0, -180deg);
              transform: rotate3d(1, 1, 0, -180deg);
    }
    100% {
      -webkit-transform: rotate3d(1, 1, 0, -360deg);
              transform: rotate3d(1, 1, 0, -360deg);
    }
}

div.infoContainer.fade-in{
    -webkit-animation: fade-in-fwd 0.6s cubic-bezier(0.390, 0.575, 0.565, 1.000) both;
    animation: fade-in-fwd 0.6s cubic-bezier(0.390, 0.575, 0.565, 1.000) both;
}

@-webkit-keyframes fade-in-fwd {
    0% {
      -webkit-transform: translateZ(-80px), translateX(-50%);
              transform: translateZ(-80px), translateX(-50%);
      opacity: 0;
    }
    100% {
      -webkit-transform: translateZ(0), translateX(-50%);
              transform: translateZ(0), translateX(-50%);
      opacity: 1;
    }
}
@keyframes fade-in-fwd {
    0% {
      -webkit-transform: translateZ(-80px), translateX(-50%);
              transform: translateZ(-80px), translateX(-50%);
      opacity: 0;
    }
    100% {
      -webkit-transform: translateZ(0), translateX(-50%);
              transform: translateZ(0), translateX(-50%);
      opacity: 1;
    }
}
  

div.infoContainer.fade-out{
    -webkit-animation: fade-out-bck 0.7s cubic-bezier(0.250, 0.460, 0.450, 0.940) both;
    animation: fade-out-bck 0.7s cubic-bezier(0.250, 0.460, 0.450, 0.940) both;
} 
  
@-webkit-keyframes fade-out-bck {
    0% {
      -webkit-transform: translateZ(0), translateX(-50%);
              transform: translateZ(0), translateX(-50%);
      opacity: 1;
    }
    100% {
      -webkit-transform: translateZ(-80px), translateX(-50%);
              transform: translateZ(-80px), translateX(-50%);
      opacity: 0;
    }
}
@keyframes fade-out-bck {
    0% {
      -webkit-transform: translateZ(0), translateX(-50%);
              transform: translateZ(0), translateX(-50%);
      opacity: 1;
    }
    100% {
      -webkit-transform: translateZ(-80px), translateX(-50%);
              transform: translateZ(-80px), translateX(-50%);
      opacity: 0;
    }
}

#form{
    height: 80vh;
    width: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
}

form{
    display: flex;
    flex-direction: column;
    align-items: center;
    margin: 10px;
}

#fileToUpload{
    margin: 25px;
}

#btnSubmit{
    margin-bottom: 25px;
}

#btnDelete {
    box-shadow: inset 0px 1px 0px 0px #f5978e;
    background: linear-gradient(to bottom, #f24537 5%, #c62d1f 100%);
    background-color: #f24537;
    border-radius: 6px;
    border: 1px solid #d02718;
    display: inline-block;
    cursor: pointer;
    color: #ffffff;
    font-family: Arial;
    font-size: 75%;
    font-weight: bold;
    padding: 6px 24px;
    text-decoration: none;
    text-shadow: 0px 1px 0px #810e05;
}
#btnDelete:hover {
	background:linear-gradient(to bottom, #c62d1f 5%, #f24537 100%);
	background-color:#c62d1f;
}
#btnDelete:active {
	position:relative;
	top:1px;
}