@import url('https://fonts.googleapis.com/css2?family=Funnel+Sans:ital,wght@0,300..800;1,300..800&family=WindSong:wght@400;500&family=Libre+Bodoni:ital,wght@0,400..700;1,400..700&family=Quicksand:wght@300..700&display=swap');

body {
    margin:0;
  font-family: "Quicksand", sans-serif;
  font-optical-sizing: auto;
    font-size:16px;
    line-height:1.6;
    color:#555;
    background-color:#1f2935;
background-image: url('https://lasikuu.net/ylston/k/22bbg.png');
}
* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}
:root {
    --leveys:66%;
}
p {
    margin:20px 0;
}
a {color:#96774a;font-weight:bold;text-decoration:none;}
a:hover {color:#b19162;}

ol {
    margin:30px 50px;
}
ol li {
  padding-left: 10px;
}

/* -------------------- LEISKA -------------------- */

.otsikko {
    margin:0 auto;
    width:calc(var(--leveys) - 60px);
  font-family: "Libre Bodoni", serif;
  font-weight: 400;
  font-style: normal;
  color:#d6aa6d;
  padding:50px 0;
  text-transform:uppercase;
  text-shadow:1px 1px 3px #321b00;
  display:flex;
    align-items: center;
    letter-spacing:0.5px;
}

.otsikko-linkki {
    flex:1;
    text-align:center;
    font-size:1em;
}
.otsikko-linkki a:hover {
  color:#d6aa6d;
    transition: all 0.2s ease-out;
}
.otsikko-ots {
    flex:2;
    text-align:center;
    font-size:2em;
    
}

.container {
    width:var(--leveys);
    margin:0 auto;
background-color: #ddd3c4;
    border:8px solid #d6cab7;
    border-radius:2px;
    padding:40px 90px 70px 90px;
  position: relative; /* make pseudo-elements relative to this container */
  z-index: 0;         /* base stacking */
}
.container ul {
    margin:20px 0;
    list-style-image: url('22bullet.png');
    line-height:1.6;
}
.container ul li {
    margin-left:40px;
    padding-left:5px;
}
.container ul li li {
    margin:-20px 0 -20px 40px;
    
}
.corner-images {
  position: absolute;
 top:5px;
 left:5px;
  width: calc(100% - 10px);
  height: calc(100% - 10px);
  pointer-events: none; /* prevents hover issues */
  z-index: 0;           /* behind the grid */
}

/* Each corner is a pseudo-element of the corner-images container */
.corner-images::before,
.corner-images::after,
.corner-images::nth-child(1) {
  /* We'll use ::before, ::after, and two more using separate background trick */
}

/* Clean solution using multiple backgrounds instead of fake spans */
.corner-images {
  background-image: 
    url('https://lasikuu.net/ylston/k/squiggle.png'),  /* top-left */
    url('https://lasikuu.net/ylston/k/squiggle-tr.png'),  /* top-right */
    url('https://lasikuu.net/ylston/k/squiggle-bl.png'),  /* bottom-left */
    url('https://lasikuu.net/ylston/k/squiggle-br.png');  /* bottom-right */
  background-position: top left, top right, bottom left, bottom right;
  background-repeat: no-repeat;

  /* Optional: rotate each corner by using separate rotated image files */
}
.nimmari {
color:#4a5561;
    margin-right:30px;
    font-family: "WindSong", cursive;
    font-size:35px;
    letter-spacing:-25px;
    text-shadow:1px 1px 2px #ccc;
    padding:0 5px;
}

.footer {
    width:var(--leveys);
    margin:30px auto 60px auto;
    text-align:center;
    font-size:11px;
    font-family: "Libre Bodoni", serif;
    text-transform:uppercase;
    color:#c9bca9;
    opacity:0.5;
}
.footer a {}

/* -------------------- PONILISTA -------------------- */

.grid-container {
    margin:-10px auto;
    display: grid;
    grid-template-columns: 1fr 1fr 1fr 1fr;
}
.grid-item {
    display: block;
    text-align:center;
    padding:10px 5px;
    transition: transform 0.2s, box-shadow 0.2s;
    transition: opacity 0.1s ease;
}
.grid-item img {
    margin:5px auto;
    box-shadow:1px 1px 4px #9f927e;
    border-radius:8px;
}
.grid-item:hover {
    /*transform: translateY(-0.5rem);*/
    opacity: 0.8; 
}
.grid-item h3 {
    margin: 0;
    font-size:15.5px;
    color:#96774a;
  font-family: "Quicksand", sans-serif;
}
.grid-item p {
    margin:-2px 0 0 0;
    font-weight:normal;
    font-size:14.5px;
    color:#666;
}
.ika {
    font-size:13px;
    padding:0 2px;
    font-style:italic;
    opacity:0.5;
}


/* -------------------- HEPPASIVU -------------------- */
.ptflex {
    width:95%;
    margin:40px auto 20px auto;
    display:flex;
    align-items: center;
}
.ptflex-item {
    padding:0 40px;
}
.ptflex-item:first-child {
    flex:2;
    font-size:108%;
}
.ptflex-item:last-child img {
    box-shadow:1px 1px 8px #c9bca9;
    border-radius:4px;

}
.ptflex-item:last-child img:hover {
    opacity:0.9;
    transition: all 0.2s ease-out;
}
.ptflex-item:last-child {
    flex:1;
}
.ptflex-item ul {
    margin:20px 0;
    list-style-image: url('22bullet.png');
}
.ptflex-item ul li {
    margin-left:-20px;
    padding-left:5px;
}




.meriitit {
    padding:0 15px;
    float:right;
    color:#bdaf9b;
    font-size:0.8em;
    padding-top:7px;
}
.meriitit a {
    opacity:0.6;
    color:#bdaf9b;
    text-decoration:none;
}
.geno {
    color:#bdaf9b;
    font-size:0.8em;
}
.pt { /*perustiedot p:ss채*/
    margin:0px auto;
    font-weight:bold;
    font-size:110%;
}
.sukutaulu {
    width:100%;
    margin:25px auto;
    border-collapse:collapse;
    border-radius:2px;
    background-color: #e4dbce;
    border-top:4px solid #c9bca9;
    border-bottom:4px solid #c9bca9;
    box-shadow:1px 1px 5px #c9bca9;
    font-size:15px;
}
.sukutaulu a {
  padding-left: 4px;
}
.sukutaulu td {
    padding:10px 15px;
    line-height:1.3;
    border-bottom:1px solid #c9bca9;
    text-align:center;
}
.sukutaulu td small {
}
.sukutaulu td small a {
  padding-left: 0;
    font-weight:normal;
    color:#555;
}
.sukutaulu4 {
    width:100%;
    margin:25px auto;
    border-collapse:collapse;
    border-radius:2px;
    background-color: #e4dbce;
    border-top:4px solid #c9bca9;
    border-bottom:4px solid #c9bca9;
    box-shadow:1px 1px 5px #c9bca9;
    font-size:14px;
}
.sukutaulu4 a {
  padding-left: 2px;
}
.sukutaulu4 td {
    padding:7px 10px;
    line-height:1.2;
    background-color:#e9dfcf;
    border-bottom:1px solid #c9bca9;
    text-align:center;
}
.sukutaulu4 td small a {
  padding-left: 0;
    font-weight:normal;
    color:#555;
}
.info {
    margin:0 2px;
    padding:0 2px;
    color:#bdaf9b;
    font-size:0.6em;
    border:1px solid #d5cabb;
    border-radius:3px;
    text-transform:uppercase;
}
.lista {
    width:100%;
    margin:20px auto;
    border-collapse:collapse;
    border-bottom:4px solid #c9bca9;
    box-shadow:1px 1px 5px #c9bca9;
    font-size:14.5px;
}
.lista th {
color:#596146;
    font-size:100%;
    background-color:#c9bca9;
    padding:6px 12px;
    text-align:left;
    
}
.lista td {
    padding:6px 12px;
    border-bottom:1px solid #c9bca9;
    background-color: #e4dbce;
}
.valkka {
    margin:25px auto;
    border-bottom:1px solid #c9bca9;
}
.kg {
    margin:10px 5px;
    box-shadow:1px 1px 8px #c9bca9;
    border-radius:3px;
}
.kg:hover {
    opacity:0.9;
    transition: all 0.2s ease-out;
}

/* -------------------- HOVER INFO -------------------- */

.tooltip {
    position: relative;
    display: inline-block;
    cursor: help;
    font-size: 80%;
    color:#bdaf9b;
}

.tooltip .tooltiptext {
    visibility: hidden;
    width: 240px;
    font-size: 12px;
    line-height: 1.3;
    background-color: black;
    color: #fff;
    text-align: center;
    border-radius: 6px;
    padding: 8px;
    position: absolute;
    z-index: 1;
    font-family: "Quicksand", sans-serif;
}

.tooltip:hover .tooltiptext {
    visibility: visible;
}



/* -------------------- KUVAREUNAT -------------------- */

.ptkuva {
    margin:10px 12px 5px 12px;
    box-shadow:1px 1px 6px #9f927e;
    border-radius:4px;

}
.ptkuva:hover {
    opacity:0.8;
    box-shadow:1px 1px 6px #9f927e;
    transition: all 0.2s ease-out;
}


/* -------------------- SCROLLBAR -------------------- */

/* width */
::-webkit-scrollbar {
    width: 14px;
}

/* Track */
::-webkit-scrollbar-track {
    background-color:#1f2935;
}

/* Handle */
::-webkit-scrollbar-thumb {
    background-color:#1f2935;
    border:2px solid #d6cab7;
    border-radius:10px;
}

/* Handle on hover */
::-webkit-scrollbar-thumb:hover {
background-color: #4a5561;
}

/* -------------------- RESPONSIVE -------------------- */

@media (max-width: 1600px) {
    .grid-container {
        grid-template-columns: 1fr 1fr 1fr;
    }
    .ptflex {
        flex-direction:column-reverse;
    }
}
@media (max-width: 1400px) {
    .grid-container {
        grid-template-columns: 1fr 1fr;
    }
    .ptflex {
        flex-direction:column-reverse;
    }
}

/* -------------------- HOOT -------------------- */

h1, h2, h3 {
color:#4a5561;
  font-family: "Libre Bodoni", serif;
    
}
h1 {
margin:30px 0;
border-bottom:3px solid #c9bca9;
}

h2 {
margin:25px 0;
font-size:1.5em;

}
h3 {
font-size:110%;
opacity:0.8;
}
