@import url('https://fonts.googleapis.com/css2?family=Montserrat:ital,wght@0,100..900;1,100..900&display=swap');
body{
    font-family: "Montserrat", sans-serif;
    font-style: normal;
}
*,::before,::after{
    box-sizing: border-box;
    margin: 0;
    padding: 0;
    
  }
p {
  margin-bottom: 13px;
}
.center_container{
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
}
a:visited, a:active,a:link {
    color: white;
}
main{
  margin-left: 20px;
  margin-right: 20px;

}
.span-simple{
  margin-left: 15px;
}
.span{
    margin-left: 30px;
}
header{
    display: flex;
    flex-direction: row;
    /* text-align: center; */
    align-items: center;
    justify-content: center;
    margin-bottom: 50px;
    background-image: linear-gradient(
  45deg,
  #006652 0%,
  #007556 11%,
  #008a5c 22%,
  #00995c 33%,
  #20ac5a 44%,
  #3cbe56 56%,
  #5acf4f 67%,
  rgb(114, 222, 63) 78%,
  rgb(146, 239, 46) 89%,
  rgb(179, 255, 0) 100%
);
color: white;
/* width: 100vw; */
}
.headerflex{
  display: flex;
    flex-direction: row;
    /* text-align: center; */
    align-items: center;
    /* justify-content: center; */
}
.flex-row{
    display: flex;
    flex-direction: row;
    text-align: center;
    align-items: center;
    justify-content: center;
 }
 .language,.skills{
    flex-wrap: wrap;
}

.skills p{
    flex: 1 0 21%; /* explanation below */
    margin-left: 10px;
    margin-right: 10px;
}
.language p{
  flex: 1 0 15%; /* explanation below */
  margin-left: 10px;
  margin-right: 10px;
}
.sticky{
    position: sticky;
    top: 0;
    width: 100%;
    z-index: 8;
}
.popup { display: none; }
.popup.open { display: block; }

.imgnotprint {
    cursor: pointer;
}

.blocker {
  position: fixed;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  content: ' ';
  background: rgba(0,0,0,.5);
  width: 100vw;
  height: 100vh;
  z-index: 9;
  
}
main h1{
  margin-bottom: 15px;
}
main h4,main h2{
  margin-bottom: 10px;
}
.popup .contents {
  display: flex;
  align-items: center;
  justify-content: center;
  position: fixed;
  top: 50vh;
  left: 50vw;
  transform: translate(-50%, -50%);
  z-index: 11;  

}
.popup .contents img {
  object-fit: contain;
  max-width: 80vw;
  max-height: 80vh;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);

}   
.popup .blocker i {
  font-size: 50px;
  position: absolute;
  top: 0;
  right: 0;
  color: white;
  margin-right: 10px;
  margin-top: 10px;
  cursor: pointer;
}
.fadein {
    animation: fadeInAnimation ease 1s;
    animation-iteration-count: 1;
    animation-fill-mode: forwards;
}

@keyframes fadeInAnimation {
    0% {
        opacity: 0;
    }
    100% {
        opacity: 1;
    }
}
.slide-in-bck-center {
	-webkit-animation: slide-in-bck-center 1.5s cubic-bezier(0.250, 0.460, 0.450, 0.940) both;
	        animation: slide-in-bck-center 1.5s cubic-bezier(0.250, 0.460, 0.450, 0.940) both;
}
  
/* ----------------------------------------------
 * Generated by Animista on 2024-7-21 22:26:33
 * Licensed under FreeBSD License.
 * See http://animista.net/license for more info. 
 * w: http://animista.net, t: @cssanimista
 * ---------------------------------------------- */

/**
 * ----------------------------------------
 * animation slide-in-bck-center
 * ----------------------------------------
 */
 .bi-card-image::before{
  margin-right: 10px;
 }
 @-webkit-keyframes slide-in-bck-center {
    0% {
      -webkit-transform: translateZ(600px);
              transform: translateZ(600px);
      opacity: 0;
    }
    100% {
      -webkit-transform: translateZ(0);
              transform: translateZ(0);
      opacity: 1;
    }
  }
  @keyframes slide-in-bck-center {
    0% {
      -webkit-transform: translateZ(600px);
              transform: translateZ(600px);
      opacity: 0;
    }
    100% {
      -webkit-transform: translateZ(0);
              transform: translateZ(0);
      opacity: 1;
    }
  }
main h1::before {
  margin-right: 10px;
}
main img{
    object-fit: contain;
    max-width: 600px;
    max-height: 600px;
    margin-bottom: 50px;
    }
header img{
    object-fit: contain;
    max-width: 200px;
    max-height: 200px;
    border-radius: 30%;
}
@media screen and (max-width: 1280px) {
    main img{
        object-fit: contain;
        max-width: 700px;
        max-height: 700px;
        }
}
@media screen and (max-width: 1000px) {
    main img{
        object-fit: contain;
        max-width: 600px;
        max-height: 600px;
        }
}
@media screen and (max-width: 800px) {
    main img{
        object-fit: contain;
        max-width: 500px;
        max-height: 500px;
        }
h2{ font-size: 16px;}

}
@media screen and (max-width: 600px) {
main img{
object-fit: contain;
max-width: 400px;
max-height: 400px;
}
header img{
    object-fit: contain;
    max-width: 150px;
    max-height: 150px;
}
h2{ font-size: 15px;}
}
@media screen and (max-width: 500px) {
    main img{
        object-fit: contain;
        max-width: 350px;
        max-height: 350px;
    }
h2{ font-size: 15px;} 
    .skills p{
        flex: 1 0 25%; /* explanation below */
    }

    .skills p .span{
        margin-left: 5px;

    }
    .headerflex{
    
      flex-direction: column;
     
  }
}
@media screen and (max-width: 400px) {
  .headerflex{
    
      flex-direction: column;
     
  }
    main img{
        object-fit: contain;
        max-width: 250px;
        max-height: 250px;
    }
}
@media print {
    header{
        margin-bottom: 20px;

    }
    header img {
        object-fit: contain;
        max-width: 100px;
        max-height: 100px;
    }
    main img {
        display: none;
    }
    .skills p{
      flex: 1 0 30%; /* explanation below */
    }
    .language p{
      flex: 1 0 10%; /* explanation below */
  }
    h1{
        font-size: 20px;
        }
    h2{
    font-size: 15px;
    }
    h3{
    font-size: 12px;
    }
    h4{
        font-size: 10px;
    }
    p,i,a{ font-size: 10px;}
    footer{
    display: none;
    }
}
.swing-in-top-fwd {
	-webkit-animation: swing-in-top-fwd 0.5s cubic-bezier(0.175, 0.885, 0.320, 1.275) both;
	        animation: swing-in-top-fwd 0.5s cubic-bezier(0.175, 0.885, 0.320, 1.275) both;
}
  /* ----------------------------------------------
 * Generated by Animista on 2024-8-9 16:49:8
 * Licensed under FreeBSD License.
 * See http://animista.net/license for more info. 
 * w: http://animista.net, t: @cssanimista
 * ---------------------------------------------- */

/**
 * ----------------------------------------
 * animation swing-in-top-fwd
 * ----------------------------------------
 */
@-webkit-keyframes swing-in-top-fwd {
    0% {
      -webkit-transform: rotateX(-100deg);
              transform: rotateX(-100deg);
      -webkit-transform-origin: top;
              transform-origin: top;
      opacity: 0;
    }
    100% {
      -webkit-transform: rotateX(0deg);
              transform: rotateX(0deg);
      -webkit-transform-origin: top;
              transform-origin: top;
      opacity: 1;
    }
  }
  @keyframes swing-in-top-fwd {
    0% {
      -webkit-transform: rotateX(-100deg);
              transform: rotateX(-100deg);
      -webkit-transform-origin: top;
              transform-origin: top;
      opacity: 0;
    }
    100% {
      -webkit-transform: rotateX(0deg);
              transform: rotateX(0deg);
      -webkit-transform-origin: top;
              transform-origin: top;
      opacity: 1;
    }
  }
  
  .swing-in-left-fwd {
	-webkit-animation: swing-in-left-fwd 0.5s cubic-bezier(0.175, 0.885, 0.320, 1.275) both;
	        animation: swing-in-left-fwd 0.5s cubic-bezier(0.175, 0.885, 0.320, 1.275) both;
}
/* ----------------------------------------------
 * Generated by Animista on 2024-8-9 16:52:3
 * Licensed under FreeBSD License.
 * See http://animista.net/license for more info. 
 * w: http://animista.net, t: @cssanimista
 * ---------------------------------------------- */

/**
 * ----------------------------------------
 * animation swing-in-left-fwd
 * ----------------------------------------
 */
 @-webkit-keyframes swing-in-left-fwd {
    0% {
      -webkit-transform: rotateY(100deg);
              transform: rotateY(100deg);
      -webkit-transform-origin: left;
              transform-origin: left;
      opacity: 0;
    }
    100% {
      -webkit-transform: rotateY(0);
              transform: rotateY(0);
      -webkit-transform-origin: left;
              transform-origin: left;
      opacity: 1;
    }
  }
  @keyframes swing-in-left-fwd {
    0% {
      -webkit-transform: rotateY(100deg);
              transform: rotateY(100deg);
      -webkit-transform-origin: left;
              transform-origin: left;
      opacity: 0;
    }
    100% {
      -webkit-transform: rotateY(0);
              transform: rotateY(0);
      -webkit-transform-origin: left;
              transform-origin: left;
      opacity: 1;
    }
  }
  

  .fade-in-left {
	-webkit-animation: fade-in-left 0.6s cubic-bezier(0.390, 0.575, 0.565, 1.000) both;
	        animation: fade-in-left 0.6s cubic-bezier(0.390, 0.575, 0.565, 1.000) both;
}
/* ----------------------------------------------
 * Generated by Animista on 2024-8-9 17:3:4
 * Licensed under FreeBSD License.
 * See http://animista.net/license for more info. 
 * w: http://animista.net, t: @cssanimista
 * ---------------------------------------------- */

/**
 * ----------------------------------------
 * animation fade-in-left
 * ----------------------------------------
 */
 @-webkit-keyframes fade-in-left {
    0% {
      -webkit-transform: translateX(-50px);
              transform: translateX(-50px);
      opacity: 0;
    }
    100% {
      -webkit-transform: translateX(0);
              transform: translateX(0);
      opacity: 1;
    }
  }
  @keyframes fade-in-left {
    0% {
      -webkit-transform: translateX(-50px);
              transform: translateX(-50px);
      opacity: 0;
    }
    100% {
      -webkit-transform: translateX(0);
              transform: translateX(0);
      opacity: 1;
    }
  }
  
  /* A4 */
  * {
    -webkit-print-color-adjust: exact !important;   /* Chrome, Safari 6 – 15.3, Edge */
    color-adjust: exact !important;                 /* Firefox 48 – 96 */
    print-color-adjust: exact !important;           /* Firefox 97+, Safari 15.4+ */
}
  @media print
{

@page
{
    margin: 0; 
size:21cm 29.7cm;
overflow: hidden;
}


.print{
    display: none;

}

}
/* @media print {
div.box {
page-break-after: avoid;
}
} */