@charset "UTF-8";
/* copyright Sanni Saari All rights reserved */

body, html {
    background-color: black;
	font-family: "Oxygen", Helvetica, sans-serif;
	font-style: normal;
    height: 100%;
  background: url(img/poly.gif) no-repeat center fixed;
  background-size: cover;
    z-index: -2;
}

 .pallo {
        position: absolute;
        width: 2px;
        height: 2px;
        background: black;
    
 }       
 
a:link{
    text-decoration: none;
    color: #999;
    cursor: pointer;
}

a:visited {
    text-decoration: none;
    color: #999;
}
a:hover {
    text-decoration: none;
    color: #ff52ff;
    cursor: pointer;
}
a:active {
    text-decoration: none;
    color: #999;
}


.closebtn {
    position: absolute;
    top: 20px;
    right: 45px;
    font-size: 60px;
}

 
/* Hide the images by default */
.photot {
    z-index: 2;
    padding:0 0 3% 0;
}

.row {

  display: -ms-flexbox; /* IE10 */
  display: flex;
  -ms-flex-wrap: wrap; /* IE10 */
  flex-wrap: wrap;
  padding: 0 4px;
}

/* Create four equal columns that sits next to each other */
.column {
  -ms-flex: 25%; /* IE10 */
  flex: 25%;
  max-width: 25%;
  padding: 0 4px;
  text-align:center;
  color: #999;
  
}

.column img {
  margin: 2%;
  vertical-align: middle;
  
}

/* Create four equal columns that sits next to each other */
.columnhiiri {
  -ms-flex: 25%; /* IE10 */
  flex: 25%;
  max-width: 25%;
  padding: 2%;
  text-align:center;

  
}

.columnhiiri img {
  margin: 2%;
  vertical-align: middle;

  
}

.columnhiirikuva img:hover {
  transform: scaleX(-1);
}

.center {

  transform: translate(-50%, -50%);
  font-size: 18px;
}


/* Responsive layout - makes the two columns stack on top of each other instead of next to each other */
@media screen and (max-width: 2500px) {
  .column {
    -ms-flex: 100%;
    flex: 100%;
    max-width: 100%;
  }
}

.navisivu
{
    /* The image used */
    

    /* Full height */
    height: 100%; 

    /* Center and scale the image nicely */
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;

}

h1 {
	display: none;
	color: whitesmoke;
	font-size: 3em;
	text-align: center;

}

h2 {
	 text-align: left;
     font-size: 1em ;
	 color: #999;
}



h3, h5
{
	color: whitesmoke;
    font-size: 2.2em;
    font-weight: bold;
    letter-spacing: -1px;
    line-height: 1;
}


h4
{
    font-style: italic;
    color: #ff52ff;
	text-align: center;
    font-size: 1.2em
}


.galleryItem {

 float: left;
  width: 40%;
 margin:  2% 2% 2% 2%; 
 
}
 
.galleryItem h3 {
 text-transform: uppercase;
  color: #fff;
  text-align: center;
  -webkit-animation: glow 1s ease-in-out infinite alternate;
  -moz-animation: glow 1s ease-in-out infinite alternate;
  animation: glow 1s ease-in-out infinite alternate;
}
 
.galleryItem img {
 max-width: 90%;
    padding: 4em;
    
    
}




p
{

	   font-size: 1em ;
	   color: #999;
}

.info
{
	  color: whitesmoke;
font-size: 2.2em;
font-weight: bold;
letter-spacing: -1px;
line-height: 1;



}




@keyframes type {
  0% {
    width: 0;
  }

}
@keyframes caret { 
  50% { 
    box-shadow: .6em 0 0 transparent;
  }
}


.ansioluettelo3
{

text-align: left;


}


.ansioluettelo2
{
    font-style: italic;
    color: #ff52ff;
	  text-align: left;


}

.ansioluettelo
{

text-align: left;


}


/* Navigation */
header {
	width: 100%;
	height: 5%;
	position: fixed;
	color: #999;
	z-index: 4;
}

.logo {
    text-transform: uppercase;
    transform: skewX(38deg) rotate(4deg);
    -webkit-filter: blur(1px);
	color: white;
	font-weight: bold;
	width: 20%;
	float: left;
	margin-top: 15px;
	margin-left: 15px;
	letter-spacing: 0.1em;
	z-index: 1;
            background: linear-gradient(25deg, #fff, #fff, #fff);
            background-size: 15%;
            -webkit-background-clip: text;
            -webkit-text-fill-color: transparent;
            animation: gradientAnimation 30s ease infinite, floating 30s ease-in-out infinite;
            position: relative;
        }

        @keyframes gradientAnimation {
            0% {
                background-position: 0% 50%;
            }
            50% {
                background-position: 100% 50%;
            }
            100% {
                background-position: 0% 50%;
            }
        }

       

.logo:hover {
color: #ff52ff;
}


svg {
  width: 800px;
  height: 100%;
  padding: 50px;
}

line {
  stroke-width: 1;
  stroke: #3c3c3c;
}





/* x-navigaointi */
.overlay {
    height: 100%;
    width: 0;
    position: fixed;
    z-index: 4;
    top: 0;
    left: 0;
     background: url(img/lila.gif) no-repeat center fixed;
  background-size: cover;
    overflow-x: hidden;
    transition: 0.5s;
}

.overlay-content {
    position: relative;
    top: 25%;
    width: 100%;
    text-align: center;
    margin-top: 30px;
}

.overlay a {
    padding: 8px;
    text-decoration: none;
    font-size: 36px;
    color: #999;
    display: block;
    transition: 0.3s;
}

.overlay a:hover, .overlay a:focus {
    color: #ff52ff;
    
}

.overlay .closebtn {
    position: absolute;
    top: 20px;
    right: 45px;
    font-size: 60px;
}

/* photo-navigointi */
.video{
    position: relative;
    top: 25%;
    width: 100%;
    text-align: center;
    margin-top: 60px;
}

.valokuvat{
    padding-top: 20%;
    position: relative;
    top: 25%;
    width: 100%;
    text-align: center;
    margin-top: 60px;
    color: #ff52ff;
}
.valokuvat a {
    padding: 8px;
    text-decoration: none;
    font-size: 1em;
    color: #ff52ff;
    display: block;
    transition: 0.3s;
}

.valokuvat a:hover, 
.valokuvat a:focus {
    color: #ff52ff;
}

.valokuvat2{
    position: relative;
    top: 25%;
    width: 100%;
    text-align: center;
    margin-top: 60px;
    z-index: 2;
    
}
.valokuvat2 a {
    padding: 8px;
    text-decoration: none;
    font-size: 1em;
    color: #999;
    display: block;
    transition: 0.3s;
    z-index: 2;
}

.valokuvat2 a:hover, 
.valokuvat2 a:focus {
    color: #ff52ff;
    z-index: 2;
}





@media screen and (max-height: 450px) {
  .overlay a {font-size: 20px}
  .overlay .closebtn {
    font-size: 40px;
    top: 15px;
    right: 35px;
  }
}

#valikko {
    float: right;
    padding-right:5%;
}

#valikko:hover {
color: #ff52ff;
}

    

/* Galleria */

.gallery img {
    width: 100%;
    height: auto;
    padding:0%;
}

.desc {
    padding: 15px;
    text-align: center;
}



.responsive {
float: left;
width: 50%;


}

@media only screen and (max-width: 700px){
    .responsive {
        width: 100%;
        margin: 6px 0;
        height: auto;
    }
}

@media only screen and (max-width: 500px)
{
    .responsive {
        width: 100%;
        height: auto;
    }
}




.teosteksti
{
height:100%;
padding:5% 5% 5% 5%;
color:#999;
max-width: 60%;
margin: 0 auto;
text-align: justify;

}
.teoskuvat
{
height:100%;
padding:5% 5% 5% 5%;
max-width: 100%;
margin: 0 auto;
text-align: justify;

}

.teoskuvat img:hover
{
-webkit-filter: grayscale(30%) blur(3px);
	filter: grayscale(30%) blur(3px);
	

}




.footer
{

    left: 0;
    bottom: 0;
    width: 100%;

    color: whitesmoke;
    text-align: center;
    padding-top:5%;
    
}

.copyright
{

font-size:1em;
    
}


  
  /* uus kokeilu */

.wrapper {
  animation: scroll 70s linear infinite;
  background: url("img/musta.gif"), #111111;
  color: #eee;
  height: 100vh;
  min-width: 100%;
  width: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
}
.introkuva 
{
  animation: scroll 70s linear infinite;
   background: url(img/lila.gif) no-repeat center fixed;
  background-size: cover;
    z-index: -2;

  
  
}

@keyframes scroll {
   100%{
    background-position:0px -3000px;
  }
}

@media (prefers-reduced-motion) {
  .wrapper {
    animation: scroll 200s linear infinite;
  }
}

@media (min-width: 670px) {
  .title {
    font-size: 5rem;
  }
}

@font-face {
    font-family: 'ModernElegance';
    src: url('fonts/ModernElegance.woff2') format('woff2'),
         url('fonts/ModernElegance.woff') format('woff');
    font-weight: normal;
    font-style: normal;
}

.note {
    max-width: 80%; /* Sopiva leveys */
    background: linear-gradient(135deg, #1a0d24, #0d0712); /* Tumman purppura gradientti */
    color: #e0d3ff; /* Hieman harmahtavan vaalea purppura teksti */
    padding: 2%;
    line-height: 1.8;
    position: relative;
    margin: 100px auto; /* Keskittää vasemmalle */
    text-align: left;

    /* Häivytetyt reunat */
    border-radius: 12px;
    box-shadow: 0px 0px 50px rgba(192, 132, 252, 0.1), 
                0px 0px 100px rgba(0, 0, 0, 0.5);
    
    /* Ei mitään vieressä */
    display: block;
    clear: both;
    
        /* Kimalteleva efekti */
  background: linear-gradient(60deg, rgb(12, 0, 68) 0%, rgba(24, 15, 32, 0.62) 50%, rgb(9, 6, 45) 100%);
    background-size: auto;
    background-size: 200% 200%;
    /*animation: shimmer 3s infinite linear;*/

}

/* Kimalteleva animaatio */
@keyframes shimmer {
    0% { background-position: 0% 50%; }
    50% { background-position: 100% 50%; }
    100% { background-position: 0% 50%; }
}

/* Keskittää muistilapun ilman vieressä olevia elementtejä */
@media (min-width: 1024px) {
    .note {
    }
}

/* Responsiivisuus: mobiilissa keskitetään */
@media (max-width: 768px) {
    .note {
       max-width: 100%; /* Sopiva leveys */
        text-align: left;
    }
}

.button
{
  background-color: #0d0712;
  color: white;
  border: 2px solid #555555;

  border-radius: 70%;
  font-size: 1em;
}

.prev
{
  transform: translateY(-50%);
  font-size: 1.5em;
    color: #00aaff;
    background: none;
    border: none;
    cursor: pointer;
    transition: color 0.3s ease-in-out;
}

.next
{

  transform: translateY(-50%);
  font-size: 1.5em;
    color: #00aaff;
    background: none;
    border: none;
    cursor: pointer;
    transition: color 0.3s ease-in-out;

}

.pause {
    transform: translateY(-50%);
  font-size: 1.5em;
  color: #00aaff;
  background: none;
  border: none;
  cursor: pointer;
  transition: color 0.3s ease-in-out;
}
.pause:hover {
  color: #999;
}


 
  .prev:hover, .next:hover {
    color: #999;
  }

  .slide {

    transition: opacity 1s ease-in-out;
  }
 
@keyframes text-glow {
    0% { text-shadow: 0 0 5px #fff, 0 0 10px #ff00ff, 0 0 15px #00ffff; }
    50% { text-shadow: 0 0 20px #fff, 0 0 30px #ff00ff, 0 0 40px #00ffff; }
    100% { text-shadow: 0 0 5px #fff, 0 0 10px #ff00ff, 0 0 15px #00ffff; }
}

#game-result {
    font-size: 48px;
    color: #ffffff;
    animation: text-glow 2s infinite alternate;
}

  .grayscale {
        filter: grayscale(100%);
    }
