/* Homepage */
#homepage-wrapper{
    height: calc(100vh - 4rem);
    width: calc(100vw - 4rem);
    padding: 2rem;
    background-repeat: no-repeat;
    background-attachment: fixed;
    background-position: center center;
    background-size: cover;
}
#homepage{
    height: calc(100% - 2rem);
    width: 100%;
    padding:0;
    margin:0;
    text-align: center;
    color: white;
    background: rgba(81, 104, 124, 0.849);
    overflow:auto;
}
#homepage h1{
    margin-top: 25vh;
    margin-bottom: 2rem;
    font-size: 6rem;
}
#homepage a{
    color: white;
    padding: 1rem;
    margin: 1rem;
    border: 1px solid white;
    text-decoration: none;
    display: inline-block;
    width: 9rem;
    -webkit-transition: background 0.5s ease-in;
    -moz-transition: background 0.5s ease-in;
    -o-transition: background 0.5s ease-in;
    -ms-transition: background 0.5s ease-in;
    transition: background 0.5s ease-in;
}
#homepage a:focus,
#homepage a:visited,
#homepage a:active{
    color: white;
    text-decoration: none;
}
#homepage a:hover{
    background: rgb(127, 157, 184);
    text-decoration: none;
}

#homepage-footer{
    height:2rem;
    width: 100%;
    color: white;
    background: rgba(81, 104, 124, 0.849);
    overflow:auto;
    text-align: center;
}
#homepage-footer a{
    color: white;
    text-decoration: none;
}
#homepage-footer a:focus,
#homepage-footer a:hover,
#homepage-footer a:visited,
#homepage-footer a:active{
    color: white;
    text-decoration: none;
}

/* Site */
#main-wrapper{
    /*min-height: calc(100vh - 15.75rem);*/
    padding-top: 2rem;
    padding-bottom: 2rem;
    background-repeat: no-repeat;
    background-attachment: fixed;
    background-position: center center;
    background-size: cover;
    min-width: 65rem;
}
main{
    padding: 1rem;
    margin: 0 5rem;
    background: rgba(240,248,255,0.9);
    min-height: calc(100vh - 15.75rem);
}
main h1{
    margin-top: 0;
}

#header, #footer{
    width: 100%;
    min-width: 65rem;
    color: white;
    background: rgb(81, 104, 124);
    overflow:auto;
    text-align: center;
}

#header{
    min-height: 5.75rem;
}
#header .icon{
    fill: currentColor;
    display: inline-block;
    font-size: inherit;
    height: 1em;
    overflow: visible;
    vertical-align: -.125em;
    margin-right: 1rem;
}
#header h1{
    margin-bottom:0;
    font-size: 3rem;
    margin-top: 0.6rem;
    float: left;
    margin-left: 5rem;
}
#header a{
    color: white;
    padding: 0.75rem;
    margin: 0.75rem;
    border: 1px solid white;
    text-decoration: none;
    display: inline-block;
    width: 7rem;
    -webkit-transition: background 0.5s ease-in;
    -moz-transition: background 0.5s ease-in;
    -o-transition: background 0.5s ease-in;
    -ms-transition: background 0.5s ease-in;
    transition: background 0.5s ease-in;
}
#links-wrap{
    float:right;
    padding-top: 0.5rem;
    padding-right: 5rem;
}

#header a:focus,
#header a:visited,
#header a:active{
    color: white;
    text-decoration: none;
}
#header a:hover{
    background: rgb(127, 157, 184);
    text-decoration: none;
}

.active-link,
.active-link:focus,
.active-link:visited,
.active-link:active,
.active-link:hover{
    background: rgb(127, 157, 184);
    text-decoration: none;
}

#footer{
    height:4rem;
}
#footer span{
    line-height: 3.5;
}
#footer a{
    color: white;
    text-decoration: none;
}
#footer a:focus,
#footer a:visited,
#footer a:active{
    color: white;
    text-decoration: none;
}
#footer a:hover{
    color: white;
    text-decoration: underline;
}

/* events */
.event-group{
    padding-left: 0.5rem;
}
.event-group-header{
    padding: 0.7rem 1rem;
    background: rgb(50, 64, 77);
    color:aliceblue;
}
.event-group-header h2{
    margin: 0;
}
.event-group-body{
    padding-left: 1.5rem;
    padding-right: 1.75rem;
}
.event-fiche{
    display: table;
    width: 100%;
    border: 1px solid #6c7f90;
    margin-bottom: 0.5rem;
    background: white;
    -webkit-transition: background 0.3s ease-in;
    -moz-transition: background 0.3s ease-in;
    -o-transition: background 0.3s ease-in;
    -ms-transition: background 0.3s ease-in;
    transition: background 0.3s ease-in;
}
.event-fiche,
.event-fiche:hover,
.event-fiche:focus,
.event-fiche:visited,
.event-fiche:active{
    color: rgb(67, 90, 108);
    text-decoration: none;
}
.event-fiche:hover{
    background: aliceblue;
    border-color: rgb(127, 157, 184);
}

.event-fiche-date{
    display: table-cell;
    background: rgb(127, 157, 184);
    padding: 0.5rem 1rem;
    color:white;
    width: 7rem;
    vertical-align: top;
}
.event-fiche-content{
    display: table-cell;
    padding: 0.5rem 1rem;
    vertical-align: top;
    width: calc(100% - 7rem);
    position: relative;
}
.event-fiche-content span{
    display: table-cell;
    padding: 0.5rem 1rem;
    vertical-align: top;
}
.event-fiche-content .type-1{
    font-weight: bold;
}
.event-fiche-content .type-2-name{
    font-weight: bold;
}

.event-type-3,
.event-type-4{
    min-height: 7rem;
    height:0; /* fix for firefox */
}

.event-type-3 img,
.event-type-4 img{
    height: 5rem;
}
.event-type-5 img{
    /*min-height: 5rem;*/
    max-height: 8rem;
    max-width: 35rem;
}

.type-2-location,
.type-4-location{
    float: left;
    padding-top: 0 !important;
    margin-top: -0.5rem;
}
.event-fiche-content .type-3-name{
    font-weight: bold;
}
.event-fiche-content .type-3-icon{
    position: absolute;
    top: 0;
    right: 0;
}
.event-fiche-content .type-4-name{
    font-weight: bold;
}
.event-fiche-content .type-4-icon{
    position: absolute;
    top: 0;
    right: 0;
}
.event-fiche-content .type-5{
    padding: 0 !important;
}

.events-group-link{
    color: #0a6cc5;
    text-decoration: none;
}
.events-group-link:active,
.events-group-link:hover,
.events-group-link:focus{
    text-decoration: underline;
}
.events-group-link:visited{
    color: #8d71a1;
    text-decoration: none;
}

/* event details */
#event-details table{
    padding: 0 1rem 1rem 1rem;
    /*width: 600px;
    max-width: 90vw;*/
    width: 90%;
}
#event-details h2{
    margin: 0.5rem 0;
}
#event-details iframe{
    max-width: 90vw;
}


.detail-3,
.detail-4{
    float: right;
    height: 4rem;
}
.detail-5{
    max-height: 6rem;
    max-width: 35rem;
}

/* links */
.link-group{
    border: 1px solid #6c7f90;
    margin-bottom: 1rem;
    padding: 0.5rem 1rem;
    background: white;
    position: relative;
}
.link-group-header{
    width: calc(100% - 7rem);
}
.link-group-header h2{
    margin: 0;
}
.link-group-body{
    width: calc(100% - 7rem);
}
.link-group-body ul{
    list-style: none;
    padding-left: 1rem;
}

.link-group-body a{
    color: #0a6cc5;
    text-decoration: none;
}
.link-group-body a:active,
.link-group-body a:hover,
.link-group-body a:focus{
    text-decoration: underline;
}
.link-group-body a:visited{
    color: #8d71a1;
    text-decoration: none;
}

.link-icon{
    position: absolute;
    top: 0;
    right: 0;
    display: table-cell;
    padding: 0.5rem 1rem;
    vertical-align: top;
}
.link-icon img{
    height: 5rem;
}

/*Page message*/
.page-message-none{
    font-weight: bold;
}
.page-message-red{
    background-color: red;
    font-weight: bold;
    color: white;
}
.page-message-dark{
    background: rgb(50, 64, 77);
    font-weight: bold;
    color: aliceblue;
}
.page-message-medium{
    background: rgb(81, 104, 124);
    font-weight: bold;
    color: white;
}
.page-message-light{
    background: rgb(127, 157, 184);
    font-weight: bold;
    color: white;
}

/* smaller width */
@media(max-width:1200px){
    #links-wrap{
        padding: 0;
        float: none;
    }
    #header h1{
        padding: 0;
        margin: 0;
        float: none;
    }
    main{
        margin: 0 2.5rem;
    }
}

/* mobile */
@media(max-width:900px){
    /* general */
    html,body{
        background: #51687c;
    }
    #main-wrapper{
        background-image: none !important;
        min-width: 0;
        padding:0;
    }
    #header, #footer{
        min-width: 0;
    }
    #header h1{
        font-size: 2.25rem;
    }
    #header a{
        padding: 0.5rem 0;
    }
    main{
        margin: 0;
        padding:0;
        background: #e0eaf2 !important;
    }
    .mobile-main{
        padding: 1rem;
    }

    /* homepage */
    #homepage-wrapper{
        background-image: none !important;
        min-width: 0;
    }
    #homepage{
        background-image: url(https://admin.furryfandom.be/images/background/paw.png) !important;
        background-repeat: no-repeat;
        background-position: center center;
        background-size: contain;
    }
    #homepage h1 {
        margin-top: 1rem;
        margin-bottom: 1rem;
        font-size: 3rem;
    }
    #homepage-links{
        font-size: 1.5rem;
    }

    /* events */
    .event-group{
        padding-left:0;
    }
    .event-group-header h2 {
        text-align: center;
    }
    .event-group-body p{
        text-align: center;
    }
    .event-type-5 img {
        max-width: 100%;
        max-height: 6rem;
    }
    .event-fiche-date{
        padding: 0.5rem;
        width: 5.5rem;
    }
    .type-2-name,
    .type-4-name{
        max-width: calc(100vw - 14rem);
    }
    .event-type-3 img,
    .event-type-4 img {
        height: 2rem;
    }
    .event-type-3,
    .event-type-4{
        min-height: 0 !important;
    }
    .event-fiche-content span {
        padding: 0.5rem;
    }

    /*links*/
    .link-group{
        border-bottom: 3px solid #51687c;
        margin-bottom: 0 !important;
    }
    .link-icon img {
        height: 3rem;
    }
    .link-group-body {
        width: calc(100% - 3rem);
    }
    .link-group-body li{
        padding-bottom: 0.3rem;
        line-height: 1.3;
    }
    .link-group-body a:after {
        content:"\A";
        white-space:pre;
    }
}