html, body{
    font-family: 'Inter', Arial, Helvetica, sans-serif;
    min-height: 100vh;
    height: 100%;
    margin: 0;
    padding: 0;
}

h1{
    font-family: 'Inter', sans-serif;
    font-size: 32px;
}

html{
    background-color: #111111;
}

h3{
    color: white;
    margin: 0;
    padding: 0;
    font-size: 20px;
}

h1{
    color: white;
    margin: 0;
    padding: 0;
    font-size: 20px;
}

h2{
    font-size: 25px;
    color: white;
    margin: 0;
    padding: 0;
}

p{
    font-size: 20px;
    margin: 0;
    padding: 0;
}

main{
    margin: 0 5% 0 5%
}

/**************
    HEADER
**************/

header{
    background: linear-gradient(to bottom, #393939, transparent);
}

.header-container{
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: center;
    height: 150px;
    width: 100%;
}

#name > p{
    font-size: 40px;
}

.header-container > div{
    margin: 10px;
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
}

.header-container > div > a{
    text-decoration: none;
}


.header-container > div > a > div > p{
    padding: 0;
    margin: 0;
}

.header-container > a > div > h1{
    padding: 0;
    margin: 0;
}

.kjop-billett{
    padding: 3px;
    border: solid 2px #2589D9;
    border-radius: 5px;
}

.kjop-billett:hover{
    background-color: #2589D9;
}

.name_container > p{
    font-size: 5px;
    margin: 0;
    padding: 0;
    cursor: pointer;
}

#name{
    display: flex;
    flex-direction: row;
    font-weight: bold;
    font-size: 15px;
    margin: 0;
    padding: 0;
}

#name > p{
    cursor: pointer;
    margin: 0;
    padding: 0;
    transition: transform 0.1s ease-in-out;
}

#name > p:hover{
    cursor: pointer;
    transform: translateY(-10px);
}

/*
HAMBURGER MENU
*/

.fa-bars{
    color: white;
}

.menu-container{
    margin-left: 50px;
}

nav{
    display: none;
}

input#hamburger-menu {
    display: none;
}

input#hamburger-menu:checked ~ nav{
    display: flex;
    align-items: center;
    justify-content: center;
    width: 200px;
    height: 200px;
    margin-top: 50px;
    background-color: #565555;
    position: absolute;
    left: 70%;
    top: 15%;
    transform: translate(-50%, -50%);
    border-radius: 5px;
}

label[for=hamburger-menu] {
    display: inline-block;
    width: 100%;
    margin: 16px 0;
    font-size: 2em;
    text-align: right;
}

nav > ul > li > a:hover{
    color:  white;
}
 
nav > ul {
    list-style-type: none;
    margin: 0;
    padding: 0;
    display: flex;
    flex-direction: column;
}

nav > ul > li{
    width: 100%;
    text-align: center;
}

nav > ul > li > a {
    display: inline-block;
    text-decoration: none;
    padding: 4px 10px;
    color: white;
    text-align: center;
    margin: 3px 0;
    font-size: 20px;
    
}


/**************
  INDEX MAIN
**************/

.backround-img-left{
    position: absolute;
    top: 200px;
    left: -40px;
    transform: translate(-50%, -50%);
    z-index: -1;
    width: 250px;
    height: auto;
}

.backround-img-right{
    position: absolute;
    top: 650px;
    left: 110%;
    transform: translate(-50%, -50%);
    z-index: -1;
    width: 250px;
    height: auto;
}

main{
    display: flex;
    margin-top: 50px;
    align-items: center;
    flex-direction: column;
}

.index-main > hr{
    width: 80%;
}

.index-main > div > h1{
    padding: 0;
    margin: 0;
    color: white;
}

.index-main > div > p{
    margin: 0;
    padding: 0;
    color: white;
}

.info-main{
    width: 80%;
}

.opening-container{
    margin: 25px 0 25px 0;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
}

.dager-container{
    display: grid;
    grid-template-columns: auto auto;
}

.dag{
    display: flex;
    margin-left: 25px;
    margin-right: 25px;
    margin-top: 25px;
    flex-direction: column;
    align-items: center;
    justify-content: center;
}

.opening-container > div > h2, h3, p{
    color: white;
}

.atraction-cards{
    display: flex;
    flex-direction: column;
    margin: 25px 0 25px 0;
    align-items: center;
    justify-content: center;
}

.atraction-cards > a{
    text-decoration: none;
}

.cards{
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    background-color: #565555;
    padding: 20px;
    margin: 25px 0 25px 0;
    border-radius: 5px;
    width: 300px;
    height: 350px;
    overflow: hidden;
}

.cards > p{
    font-size: 15px;
}

.card-info{
    height: 50%;
}

.card-foto{
    height: 175px;
    width: 250px;
    overflow: hidden;
    border-radius: 5px;
}

.card-foto > img{
    overflow: hidden;
    width: 250px;
    height: auto;
}

/***************
SALG
***************/



#billett-main{
    min-height: 900px;
}

#billett-salg > p{
    width: 90%;
}

#billett-salg{
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    
}

.billett-info{
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 50px 0 100px 0;
    width: 90%;
}

#antall-billetter{
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    width: 70px;
}

#antall-billetter > input{
    height: 30px;
    padding: 2px;
    margin: 3px;
    border-radius: 5px;
    background-color: #393939;
    font-size: 20px;
    color: white;
    border: none;
}

.priser{
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    height: 240px;
}

.priser > p{
    height: 30px;
    border: 2px;
    margin: 3px;
}

#fields{
    display: flex;
    flex-direction: row;
    justify-content: center;
}

#fields > p{
    height: 30px;
    padding: 5px;
}

#email{
    margin-top: 20px;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
}

#email > p{
    width: 90%;
}

#email > input{
    background-color: #393939;
    border-radius: 5px;
    width: 300px;
    height: 20px;
    color: white;
    font-size: 20px;
    margin: 5px;
    border: none;
    padding: 5px;
}

#email > label{
    font-weight: bold;
    width: 200px;
    height: 20px;
    color: white;
    border: none;
    padding: 5px;
}

#email > button{
    margin: 10px;
    border-radius: 5px;
    width: 100px;
    height: 40px;
    color: white;
    background-color: transparent;
    border: solid 2px #2589D9;
    padding: 5px;
}

#billett-salg > div > label{
    color: white;
}

/***************
KONTAKT SIDE
***************/

#kontakt-main{
    display: grid;
    grid-template-columns: repeat(1, 1fr);
    grid-template-rows: repeat(3, 1fr);
    place-items: center;
}

.div1 { grid-area: 1 / 1 / 1 / 2; }
.div2 { grid-area: 2 / 1 / 2 / 2; }
.div3 { grid-area: 3 / 1 / 3 / 2; }

#google{
    width: 350;
    height: 200px;
    border: 0;
}

#contacttext{
    width: 80%;
}

#contacttext > p{
    margin-bottom: 20px;
}

#contacttext > h2{
    display: flex;
    align-items: center;
    justify-content: center;
}

#kontakt-form{
    width: 80%;
    margin: 0;
}

#kontakt-form > form {
    display: grid;
    grid-template-columns: repeat(1, 1fr);
    grid-template-rows: repeat(8, 1fr);
    grid-column-gap: 0px;
    grid-row-gap: 0px;
}

#input1 { grid-area: 1 / 1 / 2 / 2; }
#input2 { grid-area: 2 / 1 / 2 / 3; }
#input3 { grid-area: 3 / 1 / 3 / 3; }
#input4 { grid-area: 4 / 1 / 4 / 3; }
#input5 { grid-area: 5 / 1 / 8 / 3; }
#input6 { grid-area: 8 / 1 / 9 / 3; }

#kontakt-form > form > input{
    background-color: #393939;
    color: white;
    font-size: 20px;
    margin: 5px;
    border-radius: 5px;
    border: none;
}

#kontakt-form > form > textarea{
    background-color: #393939;
    color: white;
    margin: 5px;
    border-radius: 5px;
    border: none;
    font-size: 15px;
}

#kontakt-form > form > button{
    background-color: transparent;
    border: solid 2px #2589D9;
    color: white;
    border-radius: 5px;
    margin: 5px;
}

#kontakt-form > form > button:hover{
    background-color: #2589D9;
}

/****************
Attraksjon side
****************/

#attraksjon-main{
    min-height: 900px;
}

#attraksjoner-info{
    width: 80%;
}

#attraksjoner-info > h2{
    text-align: center;
    margin-bottom: 20px;
}

.accordion{
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    width: 80%;
    padding: 0;
}

.accordion > li{
    list-style: none;
    width: 100%;
    margin: 20px;
    padding: 10px;
    border-radius: 5px;
    background: #393939;
    box-shadow: 6px 6px 10px -1px rgba(37, 137, 217, 0.3),
                -6px -6px 10px -1px rgba(255, 255, 255, 0.3);
}

.accordion > li > label{
    display: flex;
    align-items: center;
    color: white;
    font-weight: bold;
    padding: 10px;
    font-size: 20px;
}

.accordion_label::before{
    content: '+';
    margin-right: 10px;
    font-size: 25px;
    font-weight: 600;
}

input[type="radio"]{
    display: none;
}

.accordion .content{
    padding: 0 10px;
    line-height: 26px;
    max-height: 0;
    overflow: hidden;
    transition: max-height 0.5s, padding 0.5s;
}

.accordion input[type="radio"]:checked + label + .content{
    max-height: 800px;
    padding: 10px 10px 10px;
}

.accordion input[type="radio"]:checked + .accordion_label::before{
    content: '-';
}

.attraksjon-halvt-kort{
    height: 500px;
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
    border-radius: 5px;
    margin: 20px 0 20px 0;
}

.attraksjon-halvt-kort > div{
    width: 100%;
    overflow: hidden;
    height: 100%;
    display: flex;
    flex-direction: column;
    text-align: center;
    align-items: center;
    justify-content: center;
    border-radius: 5px;
    
}

.attraksjon-halvt-kort > div > p{
    width: 90%;
    text-align: left;
}

#en{
    background-color: #c64f48;
}

#to{
    background-color: #47434a;
}

#tre{
    background-color: #3F3937;
}


/***********
   FOOTER
***********/

footer{
    margin-top: 0px;
    padding: 10px 15%;
    background: linear-gradient(to top, #393939, transparent);
    color: black;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    height: 350px;
}

.footer-container > div{
    display: flex;
    align-items: center;
}

.footer-container > div > a{
    text-decoration: none;
}

footer > div > p{
    margin: 0;
    font-size: 10px;
}

.footer-info > p{
    font-size: 15px;
    text-align: center;
    margin: 5px;
}



@media (min-width: 1000px){

    /**********
    HEADER 800px
    **********/
    header{
        background: linear-gradient(to bottom, #393939, transparent);
    }

    .header-container{
        display: flex;
        flex-direction: row;
        align-items: center;
        justify-content: center;
        height: 150px;
    }
    
    .header-container > div{
        display: flex;
        flex-direction: row;
        justify-content: center;
        align-items: center;
        margin: 0;
    }
    
    .header-container > div > a{
        text-decoration: none;
    }
    
    .header-container > div > a > img{
        transition: transform 0.5s;
    }

    .header-container > div > a > img:hover{
        transform: scale(1.1);
    }
    
    .header-container > div > a > div > p{
        padding: 0;
        margin: 0;
    }
    
    .header-container > a > div > h1{
        padding: 0;
        margin: 0;
    }
    
    .name_container > p{
        font-size: 16px;
        margin: 0;
        padding: 0;
        cursor: pointer;
    }
    
    #name{
        display: flex;
        flex-direction: row;
        font-weight: bold;
        font-size: 35px;
        margin: 0;
        padding: 0;
    }
    
    #name > p{
        cursor: pointer;
        margin: 0;
        padding: 0;
        transition: transform 0.1s ease-in-out;
    }
    
    #name > p:hover{
        cursor: pointer;
        transform: translateY(-10px);
    }
    

    label[for=hamburger-menu] {
        display: none;
    }

    nav{
        margin-top: 0;
        display: block;
    }

    nav > ul{
        flex-direction: row;
        justify-content: left;
        align-items: center;
        height: 64px;

    }

    nav > ul > li > a{
        width: 100px; 
        margin: 0 0 0 20px;
        font-size: 20px;
        transition: transform 0.3s ease;
    }

    nav > ul > li > a:hover{
        transform: scale(1.2);
    }

    #menu-container{
        width: 450px;
        justify-content: right;
    }

    #logo-container{
        width: 450px;
        justify-content: left;
    }

    /**************
      Index Main
    **************/

    .index-main > hr{
        width: 900px;
    }

    .dager-container{   
        display: flex;
        flex-direction: row;
        justify-content: space-between;
    }

    .opening-container > div > h2{
        margin: 0 0 20px 0;
    }

    .opening-container{
        margin: 0;
        padding: 20px 0 20px 0;
    }

    .backround-img-left{
        top: 400px;
        left: -30px;
        width: 600px;
        height: auto;
    }

    .backround-img-right{
        top: 900px;
        left: 100%;
        width: 600px;
        height: auto;
    }

    .atraction-cards{
        display: flex;
        flex-direction: row;
        width: 250px;
    }

    .cards{
        width: 250px;
        margin: 10px;
    }

    .atraction-cards > a{
        transition: transform 0.5s;
    }
    
    .atraction-cards > a:hover{
        transform: scale(1.1);
    }

    .info-main{
        width: 900px;
        padding: 20px 0 20px 0;
    }

    .dag{
        margin-top: 0;
    }

    /****************
    BILLETT SALG
    ****************/

    .billett-info{
        width: 900px;
    }

    #billett-salg > p{
        width: 900px;
    }

    #confirm-main > div{
        width: 900px;
        margin: 20px 0 20px 0;
    }

    #confirmation-info{
        text-align: center;
    }

    #confirmation-info > h2{
        margin: 20px;
    }

    #confirmation-info > p{
        margin: 20px;
    }

    #email > button{
        font-size: 20px;
        width: 150px;
        transition: transform 0.5s;
    }

    #email > p{
        display: flex;
        justify-content: center;
        width: 900px;
    }

    #email > button:hover{
        background-color: #2589D9;
        transform: scale(1.2);
    }

    /****************
    Attraksjon side
    ****************/

    .accordion{
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: center;
        width: 900px;
        padding: 0;
    }

    #attraksjoner-info{
        width: 900px;
    }

    .attraksjon-halvt-kort{
        height: 300px;
        width: 900px;
        display: flex;
        align-items: center;
        justify-content: center;
        flex-direction: row;
        background-color: #2589D9;
        margin: 10px;
        border-radius: 5px;
    }
    
    .attraksjon-halvt-kort > div{
        width: 50%;
        overflow: hidden;
        height: 100%;
        display: flex;
        flex-direction: column;
        text-align: center;
        align-items: center;
        justify-content: center;
        border-radius: 5px;
    }


    .attraksjon-halvt-kort > div > p{
        width: 70%;
        text-align: left;
    }

    /***********
    KONTAKT OSS
    ***********/

    #google{
        width: 900px;
        height: 400px;
        border: 0;
    }
    
    .map-embed{
        margin: 20px 0 20px 0;
    }
    
    #contacttext{
        width: 900px;
        align-items: center;
        justify-content: center;
        text-align: center;
    }
    
    #contacttext > p{
        margin-bottom: 20px;
    }
    
    #contacttext > h2{
        display: flex;
        align-items: center;
        justify-content: center;
    }

    #kontakt-form{
        width: 900px;
        margin: 0;
    }

    #kontakt-form > form {
        display: grid;
        grid-template-columns: repeat(2, 1fr);
        grid-template-rows: repeat(8, 1fr);
        grid-column-gap: 0px;
        grid-row-gap: 0px;
        height: 400px;
    }
    
    #input1 { grid-area: 1 / 1 / 2 / 2; }
    #input2 { grid-area: 1 / 2 / 2 / 3; }
    #input3 { grid-area: 2 / 1 / 3 / 3; }
    #input4 { grid-area: 3 / 1 / 4 / 3; }
    #input5 { grid-area: 4 / 1 / 7 / 3; }
    #input6 { grid-area: 7 / 1 / 8 / 3; }

     /**********
    FOOTER 800px
    **********/

    footer{
        margin-top: 0px;
        padding: 10px 15%;
        background: linear-gradient(to top, #393939, transparent);
        color: black;
        display: flex;
        flex-direction: row;
        justify-content: center;
        align-items: center;
        height: 200px;
    }

    .footer-container > div{
        margin: 50px;
        width: 400px;
    }
    
    footer > div > p{
        margin: 0;
        font-size: 10px;
    }
    
    .footer-info > p{
        font-size: 15px;
        text-align: center;
        margin: 5px;
    }

}

