@import url('https://fonts.googleapis.com/css2?family=BBH+Bogle&family=Darker+Grotesque:wght@300..900&display=swap');

body {
    background-color: #273338;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='32' viewBox='0 0 16 32'%3E%3Cg fill='%23ffffff' fill-opacity='0.03'%3E%3Cpath fill-rule='evenodd' d='M0 24h4v2H0v-2zm0 4h6v2H0v-2zm0-8h2v2H0v-2zM0 0h4v2H0V0zm0 4h2v2H0V4zm16 20h-6v2h6v-2zm0 4H8v2h8v-2zm0-8h-4v2h4v-2zm0-20h-6v2h6V0zm0 4h-4v2h4V4zm-2 12h2v2h-2v-2zm0-8h2v2h-2V8zM2 8h10v2H2V8zm0 8h10v2H2v-2zm-2-4h14v2H0v-2zm4-8h6v2H4V4zm0 16h6v2H4v-2zM6 0h2v2H6V0zm0 24h2v2H6v-2z'/%3E%3C/g%3E%3C/svg%3E");
    background-attachment: fixed;
    margin: auto;
    font-family: "Darker Grotesque", sans-serif;
    font-optical-sizing: auto;
    font-weight: 400;
    font-style: normal;

}

.otsikko {  
    font-family: "BBH Bogle", sans-serif;
    font-weight: 400;
    font-style: normal;
    text-align: center;
    letter-spacing: 5px;
    color: #dad6cb;
    font-size: 38px;
    margin-top: 15px;
    text-shadow: #07193b 0px 0px 3px;
}

/* Navigaatio*/
*, :before, :after {
	 box-sizing: border-box;
}

.unstyled {
	 list-style: none;
	 padding: 0;
	 margin: 0;
}

.unstyled a {
	 text-decoration: none;
}

.list-inline {
	 overflow: hidden;
}

.list-inline li {
	 float: left;
}

.sidebar {
	position: fixed;
	left: 0;
	top: 0;
	bottom: 0;
	width: 18em;
	background-color: #1c2529;
    color: white;
    border-right: #00000010 4px solid;
}

.logo {
    width: 100%;
}

.sivuteksti {
    padding: 20px;
    text-align: center;
    font-size: 15px;
    color: #ffffffb0;
}

.main-nav ul {
	 border-top: solid 1px #ffffff33;
}

.main-nav li {
	 border-bottom: solid 1px #ffffff33;
}

.main-nav a {
	 padding: 1.1em 0;
	 color: #dfdbd9;
	 font: 400 1.125em 'Source Sans Pro', Helvetica, Arial, sans-serif;
	 text-align: center;
}

.main-nav a:hover {
	 color: #fff;
}

.list-hover-slide li {
	 position: relative;
	 overflow: hidden;
}

.list-hover-slide a {
	 display: block;
	 position: relative;
	 z-index: 1;
	 transition: 0.35s ease color;
}

.list-hover-slide a:before {
	 content: '';
	 display: block;
	 z-index: -1;
	 position: absolute;
	 left: -100%;
	 top: 0;
	 width: 100%;
	 height: 100%;
     border-right: #9A9483 solid 3px;
	 background: #ffffff10;
	 transition: 0.35s ease left;
}

.list-hover-slide a.is-current:before, .list-hover-slide a:hover:before {
	 left: 0;
}

/* Tekstit */
section {
    background-color: #c0b4b0;
    width: 70%;
    margin: auto;
    padding: 45px;
    text-align: justify;
    letter-spacing: 1px;
    line-height: 1.8;
    font-size: 17px;
    border-top: #ffffff6c 4px solid;
    border-right: #ffffff6c 4px solid;
}

footer {
    background-color: #1c2529;
    color: white;
    margin: auto;
    width: 70%;
    height: 200px;
    padding: 30px;
    text-align: center;
    text-transform: uppercase;
    font-size: 12px;
    letter-spacing: 3px;

}

/* Otsikot ja koristeet */
h1 {
    letter-spacing: 1.5px;
    text-align: left;
    font-size: 18px;
    color: #273338;
    text-transform: uppercase;
    border-bottom: #0000002f 1px solid;
}

.huomio {
    text-align: left;
    text-transform: uppercase;
    font-size: 14px;
    letter-spacing: 2px;
    padding: 8px;
    line-height: 1.6;
    font-weight: 500;
}

strong {
    font-weight: 600;
}

footer a {
    color: white;
}

a {
    color:#000000;
}

a:hover {
    color: #C7BEA2;
}

.yhteys {
    text-align: center;
}


/* Koristekuvat */
.column {
    float: left;
    width: 33.33%;
    padding: 5px;
}

.column img {
    padding: 5px;
    background-color: rgba(255, 255, 255, 0.6);
    border: #273338bb 3px solid;
}

.row::after {
  content: "";
  clear: both;
  display: table;
}

/* Kilpailusivu */
.laatikon {
    flex: 1;
    padding: 15px;
    height: auto;
    color: #000000;
    text-shadow: #484c52 0px 0px 1px;
    text-align: justify;
    box-sizing: border-box;
}

.kilpailut {
      display: flex;
      gap: 10px;
      padding: 5px;
    }

.laatikko {
    background-color: rgb(255, 255, 255);
    flex: 1;
    padding: 15px;
    height: auto;
    color: #000000;
    text-shadow: #484c52 0px 0px 1px;
    text-align: justify;
    box-sizing: border-box;
    font-size: 13px;
}

/* Infon table */
table {
    margin: 0;
    padding: 0;
    width: 100%;
    table-layout: fixed;
    border-radius: 8px;
    border: #D9CFC7 1px dashed;
    background-color: #f9f8f648;
    text-align: center;
}

table tr {
    border: 1px solid #ddd;
    padding: .35em;
}

table th, table td {
    padding: .3125em;
}

table th {
    font-size: .85em;
    letter-spacing: .1em;
    text-transform: uppercase;
    font-weight: normal;
    padding: .35em;
}

/* Valiot */
.valiot {
    margin: 0;
    padding: 10px;
    width: 100%;
    table-layout: fixed;
    text-align: left;
    border: none;
}

.valiot td {
    padding: 0;
}

.valiot th {
    letter-spacing: 1px;
    text-transform: uppercase;
    font-weight: normal;
    padding: 0;
}

/* Mobiili */
@media all and (max-width: 1400px) {
    .otsikko {
        max-width: 100%;
	font-size: 25px;
	margin: auto;
	padding: 10px;
    }

    .logo {
        max-width: 100%;
    }

    .sidebar {
        width: 100%;
        height: auto;
        position: relative;
    }

    .sidebar a {
        text-align: center;
        float: none;
    }

    .column img {
        max-width: 100%;
    }


    table {
        border: 0;
    }

    table caption {
        font-size: 1.3em;
    }
  
    table thead {
        border: none;
        clip: rect(0 0 0 0);
        height: 1px;
        margin: -1px;
        overflow: hidden;
        padding: 0;
        position: absolute;
        width: 1px;
    }
  
    table tr {
        border-bottom: 3px solid #ddd;
        display: block;
        margin-bottom: .625em;
    }
  
    table td {
        border-bottom: 1px solid #ddd;
        display: block;
        font-size: .8em;
        text-align: right;
    }
  
    table td::before {
        content: attr(data-label);
        float: left;
        font-weight: bold;
        text-transform: uppercase;
    }
  
    table td:last-child {
        border-bottom: 0;
    }

  section {
       	width: 100%;
    }

    footer {
        width: 100%;
    }
}