body{
font-family:'Open Sans', sans-serif;
padding-top: 50px; 
}

text{
	top:50%;
	transform: translateY(-50%);

}

.bg-lighter{
	background-color: #F2F2F2;
}

.bg-green::after{
	background-color:#51A66F;
}

.bg-dg::after{
	background-color:darkgrey;
}

.text-grey{
	color:grey;
}

.text-lightgrey{
	color:#bbb;
}

.text-darkgrey{
  color:#444;
}

.text-lighter{
  color:#ccc;
}

.text-green{
	color:#51A66F;
	font-weight: bold;
}

.text-colorgreen{
  color:#51A66F;
}


.title-font{
	font-family: Montserrat, sans-serif;
}

.text-bold{
    font-weight:bolder;
}

.text-small{
	font-size:12px;
	font-style:italic;
	margin-top:10px;
}

.border-green{
  -webkit-box-shadow: 0 5px 7px #777;
  -moz-box-shadow: 0 5px 7px #777;
  box-shadow: 0 5px 7px #777;
  /*border-style: solid;
  border-width: 1px;
  border-color: #51A66F;*/
}

* {
  box-sizing: border-box;
}

/* The actual timeline (the vertical ruler) */
.timeline {
  position: relative;
  margin: 0 auto;
  padding: 25px 0px;
}

/* The actual timeline (the vertical ruler) */
.timeline::after {
  content: '';
  position: absolute;
  width: 6px;
  background-color: darkgrey;
  top: 0;
  bottom: 0;
  left:40%;
  margin-left: -3px;
  height:96%;
}

/* Container around content */
.container1 {
  padding: 10px 40px;
  position: relative;
  background-color: inherit;
  width: 60%;
}

/* The circles on the timeline */
.container1::after {
  content: '';
  position: absolute;
  width: 15px;
  height: 15px;
  right: -7px;
  top: 15px;
  border-radius: 50%;
  z-index: 1;
}

/* Place the container to the left */
.left {
  left: 0;
  width:40%;
}

/* Place the container to the right */
.right {
	left:40%;
}

/* Add arrows to the left container (pointing right) */
.left::before {
  content: " ";
  height: 0;
  position: absolute;
  top: 22px;
  width: 0;
  z-index: 1;
  right: 30px;
  border: medium solid #F2F2F2;
  border-width: 10px 0 10px 10px;
  border-color: transparent transparent transparent #F2F2F2;
}

/* Add arrows to the right container (pointing left) */
.right::before {
  content: " ";
  height: 0;
  position: absolute;
  top: 22px;
  width: 0;
  z-index: 1;
  left: 30px;
  border: medium solid #F2F2F2;
  border-width: 10px 10px 10px 0;
  border-color: transparent #F2F2F2 transparent transparent;
}

/* Fix the circle for containers on the right side */
.right::after {
  left: -8px;
}

/* The actual content */
.content {
  padding: 2px 30px;
  background-color: #F2F2F2;
 position:relative;
  border-radius: 6px;
 
}

/* Media queries - Responsive timeline on screens less than 600px wide */
@media screen and (max-width: 600px) {
/* Place the timelime to the left */
  .timeline::after {
    left: 31px;
  }

/* Full-width containers */
  .container1 {
    width: 100%;
    padding-left: 70px;
    padding-right: 25px;
  }

/* Make sure that all arrows are pointing leftwards */
  .container1::before {
    left: 60px;
    border: medium solid white;
    border-width: 10px 10px 10px 0;
    border-color: transparent white transparent transparent;
  }

/* Make sure all circles are at the same spot */
  .left::after, .right::after {
    left: 15px;
  }

/* Make all right containers behave like the left ones */
  .right {
    left: 0%;
  }
}

.text-align-center{
	text-align: center;
}
hr{
    border: 2px solid; /* Set the border thickness to 2 pixels */
    margin: 20px 0; /* Optional: Add some margin for better spacing */
  }
hr.thin{
    border: 1px solid; /* Set the border thickness to 2 pixels */
    margin: 10px 0; /* Optional: Add some margin for better spacing */
  }

.green{
  color:#51A66F;
}

.nopadding{
  padding:0px;
  margin-bottom:1px;
}

.portrait-bg {
  background-image: url('../pics/ik2.jpg'); /* Replace 'portrait.jpg' with the path to your portrait image */
  background-size: auto 140%; /* Cover half of the width, maintain the original height */
  background-position: 5% 20%;
  background-repeat: no-repeat; /* Prevent the image from repeating */
  overflow: hidden;
}

  @media (max-width: 1280px) {
    .portrait-bg {
      background-image: url('../pics/ik2.jpg'); /* Replace 'portrait.jpg' with the path to your portrait image */
      background-size: 30%; /* Cover half of the width, maintain the original height */
      background-position: 5% 15vh;
      background-repeat: no-repeat; /* Prevent the image from repeating */
      overflow: hidden;
    }
  }

  @media (max-width: 766px) {
    .portrait-bg {
      background-image: none; /* Remove the background image */
    }
  }

.fading {
  background-image: linear-gradient(to right, rgba(255,255,255,0), rgba(255,255,255,0.9));
}
.fading2 {
  background-image: linear-gradient(to right, rgba(255,255,255,0.8), rgba(255,255,255,1));

}

.margin-left{
  margin-left:25px;
  -moz-hyphens: none;
  -ms-hyphens: none;
  -webkit-hyphens: none;
  hyphens: none;
}

  .dropdown:hover .dropdown-menu {
    display: block;
  }

  /* Hide dropdown menu by default */
  .dropdown-menu {
    display: none;
  }

  a:hover{
  text-decoration:underline;
  color:#36704a;  
  }
  a{
    text-decoration:none;
    color:#51A66F;
  }

.nav-link:hover {
color:#51A66F;
  }

.round-edges{
  border-radius:8px;
  padding:10px 15px;
  padding-bottom:1px;
  margin:15px;
}

#coming-soon{
visibility: hidden;
margin-top:5px;
}

.btn:hover{
  background-color:#51A66F;
  border-color:#51A66F;
}

.btn-primary {
  background-color: #51A66F !important;
  border-color: #51A66F !important;
}
.btn-primary:hover, .btn-primary:focus {
  background-color: #44945f !important; /* a bit darker for hover */
  border-color: #44945f !important;
}
.btn-outline-secondary {
  color: #51A66F !important;
  border-color: #51A66F !important;
}
.btn-outline-secondary:hover, .btn-outline-secondary:focus {
  background-color: #51A66F !important;
  color: white !important;
}

/*logo hover stuff */
.logo-container {
  position: relative;
  overflow: hidden;
  padding: 8px;
  cursor: pointer;
}

.logo-img {
  width: 100%;
  transition: transform 0.3s ease, opacity 0.3s ease;
}

.logo-label {
  position: absolute;
  bottom: 8px;
  left: 0;
  right: 0;
  background: rgba(0,0,0,0.7);
  color: #fff;
  font-size: 0.9rem;
  opacity: 0;
  transform: translateY(100%);
  transition: all 0.3s ease;
  padding: 4px 0;
}

/* Hover effects */
.logo-container:hover .logo-img {
  transform: scale(1.05);
  opacity: 0.8;
}

.logo-container:hover .logo-label {
  opacity: 1;
  transform: translateY(0);
}

/*project hoover:*/
.project-card {
  padding: 10px;
}

/* Image container */
.project-image-wrapper {
  position: relative;
  border-radius: 8px;
  overflow: hidden;
  perspective: 1000px; /* enables the 3D rotation effect */
}

/* Base image */
.project-img {
  width: 100%;
  height: 200px;
  object-fit: cover;
  transition: transform 0.6s ease;
  transform-origin: center;
}

/* Overlay setup */
.overlay {
  position: absolute;
  top: 0; left: 0; right: 0; bottom: 0;
  background: rgba(0, 0, 0, 0.8);
  color: #fff;
  opacity: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 15px;
  transition: opacity 0.5s ease;
  transform: rotateY(180deg);
  backface-visibility: hidden;
}

/* Overlay text styling */
.overlay-text {
  font-size: 0.9rem;
  line-height: 1.4;
  color:#ddd;
}

/* Hover interaction */
.project-image-wrapper:hover .project-img {
  transform: rotateY(180deg);
}

.project-image-wrapper:hover .overlay {
  opacity: 1;
  transform: rotateY(0deg);
}