/*
*
* Zimhosting CSS framework
*
* @author Emile Z.
*
* CSS style desktop
*
*/

/*
*
* Page body parameter
*
*/

body{
    background-color: rgb(160, 160, 160);
  	background-repeat: no-repeat;
  	background-attachment: fixed;
  	background-size: cover;
    font-family: serif;
  	margin: 0px;
	}



/*
*
* Title font setting
*
*/

@font-face {
    font-family: 'Rocket Wildness';
    src: url('../../../ressources/font/ROCKET WILDNESS.ttf') format('truetype'),
    url('../../../ressources/font/ROCKET WILDNESS.otf') format('truetype'),
    url('../../../ressources/font/ROCKET WILDNESS.woff') format('woff');
    font-weight: normal;
    font-style: normal;
    }



.p-vertical{
    padding:15px 0;
    }



/*
*
* Main element and page font settings
*
*/

ul{
    list-style-type: none;
    padding-left: 0;
    margin:0;
    }
hr{
    margin:0;
    color:white;
    }
h1{
    font-family: Rocket Wildness,Times,serif;
    font-size : 31px;
    color:white;
    }
h2{
    font-family: Rocket Wildness,Times,serif;
    font-size : 28px;
    color:white;
    }
h3{
    font-family: Rocket Wildness,Times,serif;
    font-size : 26px;
    color:white;
    }

h4{
    font-family: Rocket Wildness,Times,serif;
    font-size : 24px;
    color:white;
    }

h5{
    font-family: Rocket Wildness,Times,serif;
    font-size : 20px;
    color:white;
    }

p{
    font-size : 16px;
    color:white;
    }
a{
   text-decoration:none;
   color:white;
   }
a:hover{
    text-decoration:underline;
    color:white;
    }
form{
    margin:0 0 15px 0;
    color:white;
    }
button{
    margin:0 0 15px 0;
    color:white;
    }



/*
*
* Configuration of main element and fonts of the page in responsive version
*
*/

@media screen and (max-width: 1001px) {
    hr{
    margin: 0 auto;
    }
    h1{
    text-align: center;
    }
    h2{
    text-align: center;
    }
    h3{
    text-align: center;
    }
    h4{
    text-align: center;
    }
    h5{
    text-align: center;
    }
    p{
    text-align: center;
    }
    form{
    text-align: center;
    }
    .center{
    text-align: center;
    }
    }



/*
*
* Form fields setting
*
*/

input{
	vertical-align:middle;
	}
input::placeholder {
    color: white;
    }
input[type=text] {
    width:350px;
    height:30px;
    font-size:15px;
    background-color:transparent;
    color:white;
    border: hidden;
    border-bottom-style:solid;
    border-width: 1px;
    }
input[type=email] {
    width:350px;
    height:30px;
    font-size:15px;
    background-color:transparent;
    color:white;
    border: hidden;
    border-bottom-style:solid;
    border-width: 1px;
    }
input[type=password] {
    width:350px;
    height:30px;
    font-size:15px;
    background-color:transparent;
    color:white;
    border: hidden;
    border-bottom-style:solid;
    border-width: 1px;
    }
input[type='radio']{
    width:15px;
    height:15px;
    border:1px solid rgb(255, 255, 255);
    border-radius:50%;
    outline:none;
    }	  
input[type='radio']:checked {
    background:rgb(255, 255, 255);
    }
input[type='checkbox'] {
	width:15px;
	height:15px;
	border:1px solid rgb(255, 255, 255);
	border-radius:20%;
	outline:none;
	}	  
input[type='checkbox']:checked {
	background:rgb(255, 255, 255);
	}
select {
	width:350px;
	font-size:15px;
	background-color:transparent;
	color:white;
	border: hidden;
	border-bottom-style:solid;
	border-width: 1px;
	}
input[type=button] {
	height:30px;
	font-size:15px;
	background-color:transparent;
	color:white;
	border: solid;
	border-color: white;
	border-width: 1px;
	}
input[type=button]:hover {
	background-color:white;
    cursor:pointer;
	color:black;
	}
button{
    height:30px;
    font-size:15px;
    background-color:transparent;
    color:white;
    border: solid;
    border-color: white;
    border-width: 1px;
    }
button:hover {
    background-color:white;
    cursor:pointer;
    color:black;
    }
input[type=submit] {
	height:30px;
	font-size:15px;
	background-color:transparent;
	color:white;
	border: solid;
	border-width: 1px;
	border-color: white;
	}
input[type=submit]:hover {
	background-color:white;
    cursor:pointer;
	color:black;
	}
input[type=search] {
    height:30px;
    font-size:15px;
    background-color:transparent;
    color:white;
    border: hidden;
    }
textarea {
	width:350px;
	height:250px;
	font-size:15px;
	background-color:transparent;
	color:white;
	border: hidden;
	border-bottom-style:solid;
	border-top-style:solid;
	border-width: 1px;
	}
textarea::placeholder {
  	color: white;
    }



/*
*
* Configuring the title Presentation Header
*
*/

header{
    padding: 2px 0;
    text-align: center;
    background-color: rgba(182, 182, 182);
    }
@supports (-webkit-backdrop-filter: none) or (backdrop-filter: none) {
    header{
    background-color: rgba(182, 182, 182, 0.8);
    -webkit-backdrop-filter: blur(5px);
    backdrop-filter: blur(5px);
    }
    }



/*
*
* Navigation bar
*
*/

nav{
    top: 0px;
    position: sticky;
    z-index: 100;
    background-color: rgb(51, 50, 48);
    }
#nav{
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    }
.topnav{
    display: flex;
    }
.nav{
    color: white;
    display: inline-block;
    position: sticky;
    padding: 14px 0;
    font-size: 14px;
    cursor: pointer;
    top: 0px;
    }
.nav:hover{
    background-color:white;
    color:black;
    }
.nav a{
    text-decoration:none;
    padding:14px;
    }
.nav a:hover{
    color:black;
    }
.burger{
    position: relative; 
    width: 20px;
    height: 28px; 
    transition: transform 0.5s;
    }
.burger span {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translateX(-50%) translateY(-50%); 
    display: block;
    width: 18px;
    height: 1px;
    background-color: #FFF;
    }
.burger span::before, .burger span::after {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    display: block;
    width: 18px;
    height: 1px;
    background-color: #FFF;
    transition: transform 0.5s;
    }
.burger span::before{
    transform: translateY(-6px);
    }
.burger span::after {
    transform: translateY(6px); 
    }
.opened span {
    background: transparent;
    }
.opened span::before {
    transform: translateY(0) rotate(45deg);
    }
.opened span::after {
    transform: translateY(0) rotate(-45deg);
    }
.topnav-burger{
    padding:8px 12px;
    }
.topnav-burger:hover{
    background-color: rgb(255, 255, 255);
    cursor: pointer;
    }
a .topnav-burger:hover .burger span,a .topnav-burger:hover .burger span::before,a .topnav-burger:hover .burger span::after {
    background-color: black;
    }
a:hover .burger.opened span{
    background-color: transparent;
    }
#searchbox{
    width: 350px;
    margin: 0px;
    padding:6px;
    }
#navdisplay{
    width:100%;
    display: none;
    }
.navdisplay{
    padding:15px;
    display: block;
    background-color: rgb(192, 192, 192);
    }
.navdisplay:hover{
    background-color: white;
    color:black;
    }
@media screen and (min-width: 1001px) {
    .nav-active{
    margin:0 0 0 20px;
    }
    .topnav-inactive{
    display:none;
    }
    }
@media screen and (max-width: 1000px) {
    .nav-active{
    display:none;
    }
    #searchbox{
    display:none;
    }
    }



/*
*
* Vertical menu setting
*
*/

@media screen and (min-width: 1000px){
    .aside{
    padding:30px 0;
    min-width:240px;
    left:0;
    width: 10%;
    height: 100%;
    position: fixed;
    overflow: auto;
    background-color: rgb(44, 44, 44);
    }
    .right-container{
    margin: 10px 21%;
    padding:10px 30px;
    width: 80%;
    height: 80%;
    position: fixed;
    overflow: auto;
    }
    .aside li{
    padding:15px;
    display: block;
    }
    .aside li:hover{
    background-color: white;
    color: black;
    }
    .aside li:hover a{
    color: black;
    }
    .aside a{
    text-decoration: none;
    }
    }
@media screen and (max-width: 1001px){
    .aside li{
    text-align:center;
    padding:8px;
    }
    }



/*
*
* Width Parameter Class
*
*/

@media screen and (min-width: 1001px) {
    .fs-small{
    width:15%;
    }
    .fs-medium{
    width:35%;
    }
    }
@media screen and (max-width: 1001px) {
    .fs-small{
    width:95%;
    }
    .fs-medium{
    width:95%;
    }
    }
.fs-large{
    width:95%;
    }



/*
*
* Setting up the home form class
*
*/

@media screen and (min-width: 1001px) {
    .form{
    margin: 8em auto;
    padding:25px 35px;
    text-align: center;
    width: 750px;
    background-color: rgba(182, 182, 182);
    box-shadow: 2px 2px 2px rgb(31, 31, 31);
    }
    }
@media screen and (max-width: 1001px) {
    .form{
    margin: 10em auto;
    padding:35px 25px;
    text-align: center;
    width: 100%;
    background-color: rgba(182, 182, 182);
    box-shadow: 2px 2px 2px rgb(31, 31, 31);
    }
    }
@supports (-webkit-backdrop-filter: none) or (backdrop-filter: none) {
    .form{
    background-color: rgba(182, 182, 182, 0.8);
    -webkit-backdrop-filter: blur(5px);
    backdrop-filter: blur(5px);
    }
    }



/*
*
* Parameter of the container class and content large and content small class and animation
*
*/

.container{
    display: flex;
    flex-wrap: wrap;
    justify-content: space-around;
    }
@media screen and (min-width: 1001px) {
    .container{
    width: 85%;
    margin:2% auto;
    }
    }
@media screen and (max-width: 1001px) {
    .container{
    width: 90%;
    margin:2% auto;
    }
    }

.content-large{
    width: 100%;
    margin:2% auto;
    }
@media screen and (min-width: 1001px) {
    .content-small{
    width: 750px;
    margin:2% auto;
    }
    }
@media screen and (max-width: 1001px) {
    .content-small{
    width: 100%;
    margin:2% auto;
    }
    }

.animation-content{
    animation-name: content;
    animation-duration: 0.7s;
    }
@keyframes content{
    from{
        opacity: 0;
        margin:4% auto;
    }
    100%{
        opacity: 100%;
        margin:2% auto;
    }
    }



/*
*
* App item setting
*
*/

@media screen and (min-width: 1651px) {
    .app-center{
    margin:0 auto;
    width:1450px;
    }
    .boxapp{
    display: flex;
    flex-wrap: wrap;
    justify-content: start;
    }
    }
@media screen and (min-width: 1251px) and (max-width: 1650px) {
    .app-center{
    margin:0 auto;
    width:1100px;
    }
    .boxapp{
    display: flex;
    flex-wrap: wrap;
    justify-content: start;
    }
    }
@media screen and (min-width: 1001px) and (max-width: 1250px) {
    .app-center{
    margin:0 auto;
    width:750px;
    }
    .boxapp{
    display: flex;
    flex-wrap: wrap;
    justify-content: start;
    }
    }
@media screen and (min-width: 1px) and (max-width: 1000px) {
    .app-center{
    margin:0 auto;
    }
    .boxapp {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-around;
    }
    }
.siteapp{
    padding: 30px;
    }
.app{
    margin:10x;
    padding: 18px;
    text-align:center;
    display: inline-block;
    vertical-align: middle;
    transition:all 0.3s;
    background-color: rgba(182, 182, 182);
    box-shadow: 2px 2px 2px rgb(31, 31, 31);
    }
@supports (-webkit-backdrop-filter: none) or (backdrop-filter: none) {
    .app{
    background-color: rgba(182, 182, 182, 0.8);
    -webkit-backdrop-filter: blur(5px);
    backdrop-filter: blur(5px);
    }
    }
.app-hover:hover{
    box-shadow: 4px 4px 4px rgb(31, 31, 31);
    }



/*
*
* Popup dialog container setting and animation
*
*/

.pop-up-container{
    z-index: 101;
    position: fixed;
    width: 100%;
    opacity: 0;
    top:-150px;
    }
.pop-up-container-form{
    z-index: 101;
    position: fixed;
    width: 100%;
    top:150px;
    }
.pop-up-element{
    padding:12px;
    }
.pop-up-element-form{
    margin: 0 auto;
    width:180px;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-around;
    }
@media screen and (min-width: 1001px) {
    .pop-up{
    margin: 0 auto;
    padding:15px 25px;
    text-align: center;
    width: 750px;
    background-color: rgba(182, 182, 182);
    box-shadow: 2px 2px 2px rgb(31, 31, 31);
    }
    .pop-up-form{
    margin: 0 auto;
    padding:15px 25px;
    text-align: center;
    width: 550px;
    background-color: rgba(182, 182, 182);
    box-shadow: 2px 2px 2px rgb(31, 31, 31);
    }
    }
@media screen and (max-width: 1001px) {
    .pop-up{
    margin: 0 auto;
    padding:25px 15px;
    text-align: center;
    width: 87%;
    background-color: rgba(182, 182, 182);
    box-shadow: 2px 2px 2px rgb(31, 31, 31);
    }
    .pop-up-form{
    margin: 0 auto;
    padding:25px 15px;
    text-align: center;
    width: 84%;
    background-color: rgba(182, 182, 182);
    box-shadow: 2px 2px 2px rgb(31, 31, 31);
    }
    }

.animation-pop-up{
    animation-name: pop-up-alert;
    animation-duration: 3s;
    }
.animation-pop-up-form{
    animation-name: pop-up-form-alert;
    animation-duration: 0.5s;
    }
@keyframes pop-up-alert{
    from{
        top:50px;
        opacity: 0;
    }
    15%{
        opacity: 100%;
    }
    85%{
        opacity: 100%;
    }
    99%{
        top:50px;
        opacity: 0;
    }
    100%{
        top:-150px;
    }
    }
@keyframes pop-up-form-alert{
    from{
        top:0;
        opacity: 0;
    }
    100%{
        top:150px;
    }
    }



/*
*
* Footer element setting
*
*/

footer{
	position:fixed;
	width:100%;
	bottom:0;
	padding: 5px 0px;
	}
footer a{
	color: white;
    text-decoration: none;
    cursor: pointer;
	}
footer a:hover{
    text-decoration: none;
    }
.footer{
	display: flex;
	flex-wrap: wrap;
	width: 100%;
 	}
.footer li{
	display: inline-block;
	padding:0 10px;
 	}