/*******************************************************

                       GLOBAL

 *******************************************************/
*{
    box-sizing : border-box;
}

html{
    font-size : 62.5%;
}

body{
    margin: 0 auto;
    text-align: center;
    font-size : 2rem;
    color : #666;
    font-family : 'Shadows Into Light', verdana, helvetica, sans-serif;
}

a{
    transition : color 500ms;
    color : #2e4053;
    text-decoration : none;
    padding: 15px;
}

a:hover{
    color : #2980b9;
}

ul{
    list-style-type : none;
    margin : 0;
    padding : 0;
}

h1{
    font-family : 'Quicksand', verdana, helvetica, sans-serif;
    color : #222;
    white-space : nowrap;
    text-transform : uppercase;
    font-size : 3rem;
}

h2{
    color : #DDD
}

h3{
    color : #999
}

.info{
    background : #bbf;
    padding : 5px 10px;
    border : 1px solid #aaf;
}

/*******************************************************

                        GENERIC

 *******************************************************/

.content{
    margin:0 auto;
    width:90%;
    max-width:1200px;
}

.flex{
    display:flex;
    justify-content: space-between;
}

.flex-row{
    flex-direction: column;
}

.flex-row> * + *{
    margin-top:1rem;
}

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

.flex-wrap > *{
    white-space: nowrap;
}

.text-right{
    text-align: right;
}

.flex-right, .flex-end{
    justify-content: flex-end;
}

.float-right{
    float: right;
}

.text-left{
    text-align: left;
}

.flex-left, .flex-start{
    justify-content: flex-start;
}

.float-left{
    float: left;
}

.full{
    width:100%
}

.hidden{
    display:none
}

.price{
    text-align: right
}

/*******************************************************

                        TABLES

 *******************************************************/
table {
    width: 100%
}

th{
    text-align:left;
}

caption{
    font-size: 2rem;
    font-weight: bold;
    padding:2rem 1rem
}

td{
    padding:5px;
}

#now-coding{
    margin-left:20px;
}


/*******************************************************

                        FORMS

 *******************************************************/
.form{
    margin:0 auto;
    max-width: 800px;
}

.form fieldset{
    padding: 2rem;
    border :2px solid #ddd
}

.form legend{
    padding: 0 1rem;
}
.form ul{
    list-style-type: none;padding:0;margin:0
}

.form li{
    line-height: 3rem;display: flex;
}

.form li + li{
    margin-top:1rem
}

.form li label:first-child{
    display: inline-block;
    font-weight: bolder;
    width:30%;
    text-align: right;
    padding-right: 3rem;
}

.form input:not([type=radio]),
.form textarea,
.form button:not(.button){
    width: 70%;
    padding:.5rem 1rem;
    border:#aaa;
    background-color: #eee;
    color: #777;
}
.form input:focus,
.form textarea:focus,
.form button:focus{
    outline: none
}
.form .button{
    width: auto;
}

/*******************************************************

                        BUTTONS

 *******************************************************/
.button{
    background-color: #2A3;
    padding:.5rem 3rem;
    color:white;
    font-weight: bold;
    border:none;
}
.button:hover{
    background-color: #181;
}

#tasks_list li:hover .description{
    display: block;
}

.tooltip{
    padding: 1rem;
    border: 1px solid #fecece;
    background-color: #dbffed;
    border-radius: 10px;
    margin: 1rem 3rem;
    position: absolute;
}

thead tr th{
    background-color: #36f4e9;
    padding: 20px;
}

tbody tr:nth-child(odd){
    background-color: aliceblue;
}

div#ptiPopup{
    width: 70%;
    height: 70%;
    position: absolute;
    background: white;
    top: 15%;
    left: 15%;
    box-shadow: 5px 5px 10px;
    border: 1px solid;
    border-radius: 15px;
    overflow: auto;
    padding: 15px;
}

#contact-details{
    margin: 0 auto;
    text-align: center;
    padding: 20px;
    background-color: lightgrey;
    margin-top: 20px;
}
p.mail{
    text-decoration: underline;
}
.fullname{
    text-decoration: overline underline grey;
}