:root {
  --bg-color: #f8fafc;
  --bg-color-500: #fbfff2;

  --tx-color-dark: #050505;
  --accent-color: #15FF00;
  --header-size: 80px;
}
.dark{
  --bg-color: #050505 !important;
  --bg-color-500: #121212 !important;

  --tx-color-dark: #f8fafc !important;
  --accent-color: #15FF00;
}
* {
  margin: 0px;
  padding: 0px;
  box-sizing: border-box;
}

html {
  overflow-x: hidden;

  scroll-behavior: smooth;
}

body {
  overflow-x: hidden;
  background-color: var(--bg-color);
  color: var(--tx-color-dark);
  font-family: "Poppins", sans-serif;
}

header {
  background-color: rgba(248, 250, 252, 0.7);
  backdrop-filter: blur(3px);
  box-shadow: rgba(100, 100, 111, 0.2) 0px 7px 29px 0px;
  height: var(--header-size);
  display: grid;
  grid-template-columns: 1fr auto 1fr;
  align-items: center;
  padding: 0 48px;
  position: relative;
  transform: translateY(-100%);
  /*top: calc( var(--header-size) * -1 );               /* Üstten 0px aşağıda sabitlenir */
  z-index: 100;
  transition: 0.8s all;

}

.header-loaded {
  position: sticky;
  transform: translateY(0);
  transition: 0.5s all;

}

.creative-text {
  display: inline-block;
  background-color: var(--accent-color);
  /* Canlı yeşil */
  color: white;
  font-weight: bold;
  border-radius: 10px;
  /* Hafif oval köşeler */
  transform: translateY(25%) rotateZ(3deg);
  /* Hafif eğim efekti */
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
  /* İsteğe bağlı gölge */
  overflow: hidden;
}

.creative-text span {
  text-shadow: none;
  display: inline-block;
  position: relative;
  transform: scaleX(1.05) rotateZ(-3deg);
  /* Yazının içini düz tutmak için ters eğim */
}

.scroll-locked {
  overflow: hidden !important;
  touch-action: none !important;
  /* dokunmayla kaydırmayı engeller */
  overscroll-behavior: none !important;
}

header ul {
  display: flex;
  gap: 24px;
  list-style: none;
  justify-self: start;

}

header ul a {
  font-size: 1.1rem;
  font-weight: 400;
  text-decoration: none;
  color: var(--tx-color-dark);
}

header .logo {
  justify-self: center;
}

header .logo img {
  height: 35px;
}

header .cta {
  justify-self: end;
  text-decoration: none;
  color: var(--tx-color-dark);
  border: 3px solid var(--accent-color);
  border-radius: 100px;
  padding: 12px 24px;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  font-weight: bold;
}

.hero {
  font-size: 2rem;
  height: calc(calc(var(--vh) * 100) - var(--header-size));
  width: 100%;
  position: relative;
  max-height: calc(var(--vh) * 100);

}


#cursor {
  position: fixed;
  top: -5px;
  left: -5px;
  width: 10px;
  height: 10px;
  background-color: var(--accent-color);
  border-radius: 50%;
  pointer-events: none;
  z-index: 999;
}

#cursor-border {
  --size: 30px;
  position: fixed;
  top: calc(var(--size) / -2);
  left: calc(var(--size) / -2);
  width: var(--size);
  height: var(--size);
  border-radius: 50%;
  box-shadow: 0 0 0 1px var(--accent-color);
  pointer-events: none;
  transition: top 0.15s ease-out, left 0.15s ease-out, width 0.15s ease-out,
    height 0.15s ease-out, background-color 0.15s ease-out;
  z-index: 999;
}

.hero .image {
  overflow: hidden;
  width: 100%;
  height: calc(var(--vh) * 100);
  object-fit: contain;
  position: absolute;
  top: calc(var(--header-size) * -1);
  z-index: 2000;
  transition: 0.5s all;
}

.hero .image.loaded {
  border-radius: 24px;
  margin: 1rem;
  top: 0px;
  width: calc(100% - 2rem);
  height: calc(calc(var(--vh) * 100) - 2rem - var(--header-size));
  z-index: 1;
}

#hero-image.loaded .bottom .scroll-container {
  transform: translateY(30px);
  transition: 0.8s all;

}

#hero-image img {
  width: 100%;
  /* kapsayıcının tamamını kullanır */
  height: 100%;
  object-fit: cover;
  transition: transform 0.5s ease;
  /* 0.5s sürede, ease hız eğrisiyle */
  transform-origin: center center;
  /* merkezden büyüsün */
  transform: scale(1.5);
  /* %110’a çıkar */
}

#hero-image.loaded img {
  transform: scale(1);
  /* %110’a çıkar */

}

.hero .slogan {
  width: 100%;
  height: 100%;
  text-align: center;
  color: var(--bg-color);
  position: absolute;
  top: 0px;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  z-index: 2;
  padding: 1rem 1.05rem;
  text-shadow: 4px 4px 15px rgba(0, 0, 0, 0.71);
}

.mt-3 {
  margin-top: 3rem !important;
}
.pt-3{
  padding-top: 3rem;
}

.swiper {
  width: 100%;
  overflow: hidden;
  gap:36px;
  height: 100px;
}
.swiper-wrapper{
  gap:12px;
  transition-timing-function: linear !important;
}
.swiper-slide {
  width: 270px !important;
  display: flex;
  justify-content: center;
  align-items: center;
  height: 100%;
  box-sizing: border-box;
}
.card {
  height: 100%;
  width: 250px;
  display: flex;
  justify-content: center;
  align-items: center;
}
.card img {
  display: flex;
  align-items: center;
  justify-content: center;
  max-width: 200px;
  height: 100%;
  object-fit: contain;
}
.logo-swipers-container{
  display: flex;
  padding: 36px 0px;
  flex-direction: column;
  gap: 36px;
}
.section-titles {
  
  width: 100%;
  text-align: center;
  padding-inline: 1rem;
  font-size: 1.8rem;
  text-shadow: 4px 4px 6px rgba(66, 68, 90, 0.1);
}
.tx-name {
  background-color: var(--accent-color);
  color: var(--bg-color);
  padding: 0px;
  line-height: 0%;
}

.hero .bottom {
  text-decoration: none;
  color: var(--tx-color-dark);
  position: absolute;
  bottom: -25px;
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  height: 100px;
  gap: 6px;
  z-index: 3;
  transition: 0.5s all;


}

.hero .bottom .scroll-container {
  background-color: var(--bg-color);
  border-radius: 24px;

  display: flex;
  gap: 6px;
  height: 100px;
  padding: 12px 24px;
  padding-bottom: 62px;
  transform: translateY(300px);

}

.hero .bottom p {
  font-weight: 500;
  font-size: 1.1rem;
}

.hero .bottom .scroll-btn {
  background-color: var(--accent-color);
  border-radius: 100%;
  height: 30px;
  width: 30px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 24px;
}

section {
  background-color: var(--bg-color);
  color: var(--tx-color-dark);
  min-height: calc(var(--vh) * 100);
}

.hizmetler-container {
  padding: 1rem;
  width: 100%;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 6rem;
}

.hizmetler-container>.section {
  gap: 5rem;
  /* Yatayda ortalamak için */
  display: flex;
  flex-direction: column;
  /* Dikeyde de üst üste sıralamak için */
  align-items: flex-end;
  /* görsel ayırt etmek için renk verdim, isteğe göre silin */
}

/* 3. İkinci bölümün yukarıdan 50px padding’i */
.hizmetler-container>.section:nth-child(2) {
  padding-top: 5rem;
  align-items: flex-start;
  /* alt çizgiyi kaldırmak istersen: border-bottom: none; */
}

.hizmetler-container .section .hizmet {
  width: 70%;
  position: relative;
}
.pb-3{
  padding-bottom: 3rem;
}

.hizmetler-container .section .hizmet img {
  border-radius: 24px;
  aspect-ratio: 1/1;
  object-fit: contain;
  width: 100%;
  /* kapsayıcının tamamını kullanır */
  object-fit: cover;
  transition: 0.25s;
  /* 0.5s sürede, ease hız eğrisiyle */
  transform-origin: center center;
  filter: grayscale(90%);
}
.hizmetler-container .section .hizmet img:hover {
  filter: grayscale(0);
  border: 5px solid var(--tx-color-dark);
  box-shadow: rgba(255, 255, 255, 0.2) 0px 7px 29px 0px;

}
.hizmet .star{
  color: #e0f902 ;
  fill: #e0f902 !important;
  font-size: 2rem;
  animation: starAnim 4s cubic-bezier(0.645, 0.045, 0.355, 1.000) infinite;
  /* Optional: set the transform-origin if you want a different pivot point */
  transform-origin: center center;
  position: absolute;
  top: -30px;
  z-index: 2000;
  right: 0px;
}
.left{
  right: auto !important;
  left: 0px !important;
}
.reveal-text {
  opacity: 1;
  transform: translateY(20px);
}
@keyframes starAnim {
  /* Start at top-left extreme */
  0% {
    transform: translateY(-30px) rotate(-20deg);
  }
  /* Midpoint: bottom-right extreme */
  50% {
    transform: translateY(30px) rotate(20deg);
  }
  /* Back to top-left */
  100% {
    transform: translateY(-30px) rotate(-20deg);
  }
}


.hizmetler-container .section .hizmet .title {
  font-size: 2rem;
  font-weight: bold;
  margin-top: 6px;

}
.hizmetler-container .section .hizmet{
  text-align: center;
}
.footer-copy{
  text-align: center;
  width: 100%;
  padding: 1rem;
}



@keyframes float {
  0% {
    transform: translateY(0);
  }

  50% {
    transform: translateY(-8px);
  }

  100% {
    transform: translateY(0);
  }
}

/* 2. .float sınıfı ile animasyonu uyguluyoruz */
.float {
  animation-name: float;
  animation-duration: 3s;
  animation-timing-function: cubic-bezier(0.4, 0.0, 0.6, 1);
  animation-iteration-count: infinite;
  animation-delay: var(--animation-delay, 0s);
  /* default 0s */
}
.ekipler-container{
  margin-top: 2rem;
  width: 100%;
  padding: 1rem;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 1rem;
}
.ekipler-container .ekip-card{
  border-radius: 12px;
  background-color: #121212;
  display: grid;
  grid-template-columns: 1fr 1fr;
}
.ekipler-container .ekip-card img{
  width: 100%;
}
.ekip-card .details{
  display: grid;
  grid-template-rows: 1fr 1fr 1fr;
  padding: 1rem;
}
.text-align-right{
  text-align: right;
}

footer {
  margin-inline: 0.5rem;
  margin-bottom: 0.5rem;
  background-color: var(--tx-color-dark);
  color: var(--bg-color);
  border-radius: 24px;
  width: calc(100% - 1rem);
  min-height: 100px;
  overflow: hidden;
  height: fit-content;
  position: relative;
  margin-top: 3rem;
}
footer .bg{
  overflow: hidden;
  width: 100%;
  opacity: 0.25;
  filter: grayscale(70%);
  height: 100%;
  object-fit: cover;
  position: absolute;
  top: 0;
  z-index: 1;
  transition: 0.5s all; 
}
footer .content{
  position: relative;
  padding: 1rem;
  z-index: 2;
  opacity: 1;
  display: flex;
}
footer .content .bilgiler{
  flex-grow: 1;
  max-width: 33%;
  display: flex;
  flex-direction: column;
  padding: 1rem;
  color: #d6d7d8;
}
footer .content .bilgiler img{
  width: 200px;
  margin-bottom: 24px;
}
footer .content .bilgiler .title{
  color: var(--bg-color);
  font-weight: bold;
  font-size: 1.5rem;
  width: 100%;
  margin-bottom: 24px;
  text-align: center;
}
footer .content .bilgiler .socials{
  align-items: center;
  display: flex;
  gap: 12px;
  font-size: 3rem;
}
footer .content .bilgiler .socials a{
  color: #fff !important;
  font-size: 2.5rem;
}
.center{
  align-items: center;
}
footer .content .bilgiler a{
  color: #d6d7d8;

  font-weight: bold;
  text-decoration: none;
  gap: 12px;
  align-items: center;
  display: flex;
}
@media only screen and (max-width: 900px) {
  .hero {
    font-size: 1.4rem;
  }
.swiper-slide {
  width: 200px !important;
}
.hizmetler-container{
  display: flex;
  flex-direction: column;
  gap: 0 !important;
}
.hizmetler-container section{
  align-items: center !important;
}
.hizmetler-container .section .hizmet{
  width: 100%;
}
header{
  grid-template-columns: 1fr;
}
header ul{
  display: none;
}
header .cta{
  display: none;
}
footer .content{
  flex-direction: column;
}
footer .content .bilgiler{
  max-width: 100%;
  align-items: center;
  text-align: center;
}
.section-titles{
  font-size: 1.5rem;
}
}