:root{
    --color01: rgba(109,141,245,1.00);
    --color02: rgba(25,69,168,1.00);
    --color03: rgba(9,37,110,1.00);
    --color04: rgba(226,232,245,1.00);
    --color05: rgba(255,244,31,1.00);
    --color06: rgba(225,214,14,1.00);
}

html,body{
    margin:0;
    padding: 0;
    height:100vh;
    width: 100%;
    overflow-x: hidden;
    font-family: Switzer;
    font-weight: 300;
    color: var(--color04);
    background-image: linear-gradient(35deg, var(--color03) 0%, var(--color02) 99%);
}

#wrap {
    display: flex;
    width:100%;
    height: auto;
    overflow-y: auto;
    align-items: center;
    flex-direction: column;
    justify-content: flex-start;
    text-align: center;
}

#wrap h1,
#wrap h2,
#wrap h3,
#wrap h4,
#wrap h5,
#wrap h6{
    width:100%;
    height:auto;
    text-overflow: clip;
    text-wrap:wrap;
    overflow-x: hidden;
    margin:0;
    font-style:italic;
}
#wrap p{ 
    margin:6px 0px;
    font-style: italic;
}

#wrap h1{     font-size: min(12vw, 80px); letter-spacing: -2px; line-height: min(11vw, 75px); font-weight: 900; }
#wrap h2{     font-size: min(10vw, 68px); letter-spacing: -1px; line-height: min(10.2vw, 68px);font-weight: 800; }
#wrap h3{     font-size: min(8vw, 55px);  letter-spacing: -0px; line-height: min(8.3vw, 62px);font-weight: 700; }
#wrap h4{     font-size: min(6vw, 40px);  letter-spacing: -0px; line-height: min(5.4vw, 46px);font-weight: 600; }
#wrap h5{     font-size: min(4vw, 32px);  letter-spacing: -0px; line-height: min(4.8vw, 39px);font-weight: 600; }
#wrap h6{     font-size: min(3vw, 28px); letter-spacing: 1px; line-height: min(4.2vw, 37px);font-weight: 500; }
#wrap p{      font-size: min(2vw, 26px); letter-spacing: 2px; line-height: min(3.5vw, 36px);font-weight: 200; }
#wrap small{  font-size: min(1.3vw, 16px); letter-spacing: 2px; line-height: min(2vw, 24px);font-weight: 400; }

#wrap header.slide,
#wrap section.slide{
    display: none;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    width:100%;
    height:auto;
    min-height: 100vh;
    min-height: 100lvh;
    box-sizing: border-box;
}

#wrap header.slide{
    background-size:cover;
    background-attachment: fixed;
    background-position: center;
    background-image: url("/imgs/bg01.png");
}

#wrap .slide .xbtn{
    width:auto;
    height:45px;
    line-height: 45px;
    font-size: min( 3.0vw, 15px);
    padding: 0px min(3.0vw, 20px);
    font-weight: 500;
    letter-spacing: 1px;
    margin:4px 0px;
    font-style: oblique;
    color: var(--color02);
    background-color: var(--color05);
    -webkit-appearance:none;
    text-decoration: none;
    box-shadow: inset 0px -20px 4px var(--color06);
    transition:all 0.2s;
    outline:none;
    border:0;
    border-radius: 100px;
}

#wrap .slide .xbtn:hover{
    box-shadow: inset 0px -30px 5px var(--color06);    
    cursor: pointer;
}

#wrap .slide .slidewrp {
    width: min(80%, 850px);
    height: auto;
}

#wrap .slide .slidewrp .pagebotwrap{
    display: flex;
    width:90%;
    height: auto;
    flex-direction: row;
    justify-content: center;
    flex-wrap:wrap;
    gap: 0px 10px;
    margin:20px auto;
}

#wrap header h1{text-transform: uppercase; }

#x_etusivu:checked ~ #wrap .etusivu{ display:flex; }
#x_ravintola:checked ~ #wrap .ravintola{ display:flex; }
#x_kotiin:checked ~ #wrap .kotiin{ display:flex; }
#x_yritys:checked ~ #wrap .yritys{ display:flex; }

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

#menuwrap{
    position: fixed;
    top:20px;
    left:0px;
    right:0px;
    padding: 0px;
    margin: 0px auto;
    display:flex;
    width:auto;
    gap:0px 10px;
    z-index: 9912;
    text-align: center;
    flex-direction: row;
    align-items: center;
    justify-content: center;
    transition: all 0.2s;
    translate: 0px 0px;
}

#x_etusivu:checked ~ #menuwrap {
    translate: 0px -100px;
}

#menuwrap label{
    width:auto;
    height:44px;
    line-height: 44px;
    font-size: min(3vw, 18px); 
    letter-spacing: 0px;
    font-weight: 400;
    padding: 0px min(25px, 4vw);
    box-shadow: inset 0px -15px 5px var(--color02);
    background-color: var(--color01);
    border-radius: 100px;
    transition: all 0.2s;
}

#menuwrap label:hover,
#menuwrap label:focus {
    box-shadow: inset 0px -30px 5px var(--color02);
}