#mainNavbar {
  --bs-navbar-padding-y: 0;
  top: var(--navbar-top-offset);
  background: var(--gt-ink);
  color: #fff;
  box-shadow: 0 4px 20px #0002;
}

/* Logo çıkıntısına gelindiğinde navbar altındaki ışık merkezden iki yana yayılır */
#mainNavbar::after {
  content: "";
  position: absolute;
  left: 0;
  width: 100%;
  bottom: 0;
  height: 2px;
  background: linear-gradient(90deg,
    rgba(186, 6, 21, 0.25) 0%,
    rgba(186, 6, 21, 0.75) 15%,
    #ff1a2e 50%,
    rgba(186, 6, 21, 0.75) 85%,
    rgba(186, 6, 21, 0.25) 100%
  );
  box-shadow: 0 0 10px rgba(186, 6, 21, 0.65), 0 0 3px #ff1a2e;
  opacity: 0;
  transform: scaleX(0);
  transform-origin: center;
  pointer-events: none;
  z-index: 1058;
  transition: opacity .2s ease;
}

#mainNavbar:has(.site-nav-logo-circle:hover)::after,
#mainNavbar:has(.site-nav-center-brand:focus-visible)::after {
  opacity: 1;
  animation: site-nav-glow-spread 1.6s ease-in-out infinite alternate;
}

@keyframes site-nav-glow-spread {
  to { transform: scaleX(1); }
}

#mainNavbar.scrolled {
  box-shadow: 0 6px 24px #0004;
}

.site-nav-inner {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: clamp(.75rem, 2vw, 1.75rem);
  width: min(100%, 1400px);
  height: var(--site-nav-row-height);
  margin-inline: auto;
  padding-inline: clamp(.85rem, 2.5vw, 2rem);
}

#mainNavbar :is(.site-nav-brand, .site-nav-center-brand, .site-nav-contact, .site-nav-toggler):focus-visible,
#mainNavbar .site-nav-trigger:focus-visible {
  outline: 2px solid #ffadb5;
  outline-offset: 3px;
  box-shadow: none;
}

/* =====================================================
   ORTALANMIŞ & TAM YUVARLAK LOGO (KIRMIZI BARIN ALTINDA)
   ===================================================== */
.site-nav-center-brand {
  position: absolute;
  left: 50%;
  top: 0;
  transform: translateX(-50%);
  z-index: 1060;
  text-decoration: none;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: flex-start;
  user-select: none;
}

.site-nav-center-brand:focus-visible {
  outline: none;
}

.site-nav-brand-pod {
  position: absolute;
  top: 10px;
  left: 50%;
  transform: translateX(-50%);
  display: flex;
  align-items: center;
  justify-content: center;
  width: 96px;
  height: 96px;
  padding: 0;
  overflow: visible;
  background: transparent;
  border-radius: 50%;
  border: none;
  box-shadow: none;
  transition: transform .22s cubic-bezier(0.34, 1.56, 0.64, 1), box-shadow .22s ease;
}

.site-nav-center-brand:hover .site-nav-brand-pod,
.site-nav-center-brand:focus-visible .site-nav-brand-pod {
  transform: translateX(-50%) translateY(3px);
  box-shadow: 0 14px 30px rgba(186, 6, 21, 0.4);
}

.site-nav-logo-circle {
  position: relative;
  top: 0;
  left: 0;
  width: 96px;
  height: 96px;
  overflow: hidden;
  transform: none;
  border-radius: 50%;
  background: #fff;
  box-shadow: 0 4px 14px rgba(0, 0, 0, 0.28);
  transition: box-shadow .22s ease;
}

.site-nav-center-brand:hover .site-nav-logo-circle,
.site-nav-center-brand:focus-visible .site-nav-logo-circle {
  box-shadow: 0 0 0 2px #ff2b3d, 0 0 18px rgba(255, 43, 61, 0.8);
}

.site-nav-logo-img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  max-width: none;
  transform: none;
  object-fit: cover;
  display: block;
}

#mainNavbar .site-nav-brand {
  display: flex;
  align-items: center;
  gap: .65rem;
  margin: 0;
  padding: 0;
  color: #fff;
  line-height: 1.1;
  text-align: left;
  text-decoration: none;
}

.site-nav-logo {
  width: 48px;
  height: 48px;
  padding: 2px;
  border-radius: 50%;
  background: #fff;
  object-fit: contain;
}

.site-nav-brand strong {
  display: block;
  font-size: 1.28rem;
  font-weight: 850;
  letter-spacing: -.035em;
}

.site-nav-brand strong span {
  margin-inline-start: .06em;
  padding: .03em .16em;
  border-radius: .22em;
  color: var(--gt-red);
  background: #fff;
}

.site-nav-brand small {
  display: block;
  margin-top: .25rem;
  color: #ddd;
  font-size: .71rem;
}

#mainNavbar .site-nav-list {
  align-items: center;
  gap: clamp(.15rem, .75vw, .65rem);
  margin-inline: auto;
}

#mainNavbar .site-nav-trigger,
#mainNavbar .site-nav-toggler,
.site-nav-contact {
  display: flex;
  align-items: center;
  gap: .55rem;
  min-height: 44px;
  padding: .55rem clamp(.5rem, 1vw, .9rem);
  border: 1px solid transparent;
  border-radius: .65rem;
  color: #fff;
  background: transparent;
  font-size: clamp(.88rem, 1.2vw, 1rem);
  font-weight: 720;
  white-space: nowrap;
}

#mainNavbar .site-nav-trigger:hover,
#mainNavbar .site-nav-trigger[aria-expanded="true"],
#mainNavbar .site-nav-trigger.is-current,
#mainNavbar .site-nav-toggler:hover {
  background: #ffffff14;
  color: #ffb7be;
}

#mainNavbar .site-nav-trigger.is-current {
  border-color: #ffadb55e;
}

#mainNavbar .site-nav-trigger::after {
  display: none;
}

.site-nav-chevron {
  font-size: .72rem;
  transition: transform .18s ease;
}

.site-nav-trigger[aria-expanded="true"] .site-nav-chevron {
  transform: rotate(180deg);
}

.site-nav-contact {
  justify-content: center;
  border-color: #ffffff50;
  text-decoration: none;
}

.site-nav-contact:hover,
.site-nav-contact[aria-current] {
  border-color: #fff;
  color: var(--gt-ink);
  background: #fff;
}

#mainNavbar .site-nav-toggler {
  display: none;
}

.site-nav-toggler[aria-expanded="false"] .site-nav-close-icon,
.site-nav-toggler[aria-expanded="true"] .site-nav-open-icon {
  display: none;
}

#mainNavbar .site-nav-panel {
  --nav-accent: #24558b;
  --nav-soft: #edf4fc;
  --bs-dropdown-link-active-bg: var(--nav-soft);
  --bs-dropdown-link-active-color: var(--nav-accent);
  top: 100%;
  left: 50%;
  width: min(calc(100% - 2rem), 1020px);
  max-height: calc(100dvh - var(--navbar-height) - .75rem);
  margin: 14px 0 0;
  padding: .8rem;
  overflow-y: auto;
  overscroll-behavior: contain;
  transform: translateX(-50%);
  border: 1px solid var(--gt-line);
  border-radius: 0 0 1.15rem 1.15rem;
  box-shadow: 0 18px 50px #0003;
}

#mainNavbar #entegrasyonDropPanel {
  --nav-accent: #126356;
  --nav-soft: #e8f7f2;
}

#mainNavbar #sektorelDropPanel {
  --nav-accent: #79461e;
  --nav-soft: #fcf1e5;
}

#mainNavbar #webDropPanel {
  --nav-accent: #60408b;
  --nav-soft: #f3edfc;
}

.site-nav-panel.show .site-nav-panel-content {
  animation: site-nav-enter .18s ease-out;
}

@keyframes site-nav-enter {
  from { opacity: 0; translate: 0 -4px; }
  to { opacity: 1; translate: 0 0; }
}

.site-nav-panel-content {
  display: grid;
  grid-template-columns: minmax(0, .78fr) repeat(2, minmax(0, 1fr));
  gap: .85rem;
}

.site-nav-intro {
  min-width: 0;
  padding: clamp(.9rem, 2.5vw, 1.65rem);
  border-radius: .75rem;
  background: var(--nav-soft);
  color: var(--nav-accent);
}

.site-nav-intro > i {
  display: grid;
  place-items: center;
  width: 2.8rem;
  height: 2.8rem;
  margin-bottom: .9rem;
  border-radius: .7rem;
  color: #fff;
  background: var(--nav-accent);
  font-size: 1.25rem;
}

.site-nav-intro strong {
  display: block;
  font-size: clamp(1.4rem, 2.8vw, 2.1rem);
  line-height: 1.08;
  letter-spacing: -.045em;
}

.site-nav-intro p {
  margin: .7rem 0 0;
  color: var(--gt-ink);
  font-size: .87rem;
  line-height: 1.5;
}

.site-nav-group {
  min-width: 0;
  padding: .35rem 0;
}

.site-nav-group-title {
  margin: 0 0 .35rem;
  padding: .35rem .6rem .45rem;
  border-bottom: 1px solid var(--gt-line);
  color: var(--nav-accent);
  font-size: .73rem;
  font-weight: 800;
  letter-spacing: .035em;
}

.site-nav-links {
  display: grid;
  gap: .12rem;
  margin: 0;
  padding: 0;
  list-style: none;
}

.site-nav-branch {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: start;
}

.site-nav-branch-toggle {
  display: grid;
  place-items: center;
  width: 44px;
  height: 44px;
  padding: 0;
  border: 0;
  border-radius: .6rem;
  color: var(--nav-accent);
  background: transparent;
  font-size: .8rem;
}

.site-nav-branch-toggle:is(:hover, [aria-expanded="true"]) {
  background: var(--nav-soft);
}

.site-nav-branch-toggle:focus-visible {
  outline: 2px solid var(--nav-accent);
  outline-offset: -2px;
}

.site-nav-branch-toggle[aria-expanded="true"] i {
  transform: rotate(180deg);
}

.site-nav-children {
  grid-column: 1 / -1;
  margin: 0 0 .35rem 1.55rem;
  padding: 0 0 0 .55rem;
  border-inline-start: 2px solid var(--nav-soft);
  list-style: none;
}

#mainNavbar .site-nav-item {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  align-items: start;
  gap: .6rem;
  min-height: 46px;
  padding: .5rem .6rem;
  border-radius: .6rem;
  color: var(--gt-ink);
  white-space: normal;
}

#mainNavbar .site-nav-item > i {
  display: grid;
  place-items: center;
  width: 2rem;
  height: 2rem;
  border-radius: .48rem;
  color: var(--nav-accent);
  background: var(--nav-soft);
  font-size: .9rem;
}

.site-nav-item strong,
.site-nav-item small {
  display: block;
  line-height: 1.25;
}

.site-nav-item strong {
  font-size: .91rem;
  font-weight: 780;
}

.site-nav-item small {
  margin-top: .24rem;
  color: var(--gt-muted);
  font-size: .77rem;
}

#mainNavbar .site-nav-item:is(:hover, :focus-visible, [aria-current]) {
  color: var(--nav-accent);
  background: var(--nav-soft);
}

#mainNavbar .site-nav-item:focus-visible {
  outline: 2px solid var(--nav-accent);
  outline-offset: -2px;
}

#mainNavbar .site-nav-item[aria-current] {
  box-shadow: inset 3px 0 var(--nav-accent);
}

@media (min-width: 992px) {
  #mainNavbar {
    --site-nav-center-gap: 176px;
  }

  #mainNavbar .navbar-collapse {
    display: grid !important;
    /* 3 kolonlu ızgara: Sol kanat (1fr), Merkez Logo Boşluğu (176px), Sağ kanat (1fr) */
    grid-template-columns: 1fr var(--site-nav-center-gap) 1fr;
    align-items: center;
    width: 100%;
    min-width: 0;
    gap: 0;
  }

  .site-nav-wing-left {
    grid-column: 1;
    display: flex;
    justify-content: flex-end;
    align-items: center;
    width: 100%;
  }

  .site-nav-list-left {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: clamp(.2rem, .7vw, .65rem);
    margin: 0;
    padding: 0;
  }

  .site-nav-wing-right {
    grid-column: 3;
    display: flex;
    align-items: center;
    justify-content: flex-start;
    width: 100%;
  }

  .site-nav-list-right {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    gap: clamp(.2rem, .7vw, .65rem);
    margin: 0;
    padding: 0;
  }
}

@media (min-width: 992px) and (max-width: 1199.98px) {
  #mainNavbar {
    --site-nav-center-gap: 144px;
  }

  #mainNavbar .site-nav-trigger {
    padding-inline: .45rem;
    font-size: .88rem;
    gap: .35rem;
  }

  .site-nav-contact {
    padding-inline: .65rem;
    font-size: .88rem;
  }
}

@media (max-width: 991.98px) {
  #mainNavbar .site-nav-toggler {
    display: flex;
    border-color: #ffffff50;
    padding-inline: .8rem;
    margin-inline-start: auto;
  }

  .site-nav-brand-pod {
    width: 80px;
    height: 80px;
    padding: 0;
    border-radius: 50%;
    border: none;
  }

  .site-nav-logo-circle {
    width: 80px;
    height: 80px;
  }

  .site-nav-logo-img {
    width: 100%;
    height: 100%;
  }

  #mainNavbar .navbar-collapse {
    position: absolute;
    top: 100%;
    inset-inline: 0;
    max-height: calc(100dvh - var(--navbar-height));
    padding: .6rem clamp(.85rem, 2.5vw, 2rem) 1rem;
    overflow-y: auto;
    overscroll-behavior: contain;
    background: var(--gt-ink);
    box-shadow: 0 14px 24px #0004;
  }

  .site-nav-wing-left,
  .site-nav-wing-right {
    display: block;
    width: 100%;
  }

  #mainNavbar .site-nav-list-left,
  #mainNavbar .site-nav-list-right {
    flex: none;
    width: 100%;
    padding: 0;
    margin: 0;
    align-items: stretch;
    gap: .4rem;
  }

  #mainNavbar .site-nav-list-right {
    margin-top: .4rem;
  }

  .site-nav-contact {
    margin-top: .65rem;
    width: 100%;
  }

  #mainNavbar .site-nav-trigger {
    width: 100%;
    min-height: 48px;
    padding-inline: .8rem;
    border-color: #ffffff2b;
    text-align: left;
  }

  .site-nav-chevron {
    margin-inline-start: auto;
  }

  #mainNavbar .site-nav-panel {
    width: 100%;
    max-height: none;
    margin-top: .35rem;
    padding: .55rem;
    overflow: visible;
    transform: none;
    border-radius: .65rem;
    box-shadow: none;
  }

  .site-nav-panel-content {
    grid-template-columns: 1fr;
    gap: .5rem;
  }

  .site-nav-intro {
    display: none;
  }

  .site-nav-contact {
    margin-top: .65rem;
  }

  body.mobile-navigation-open {
    overflow-y: hidden;
  }

  .mobile-navigation-open :is(.social, .demo-floating-btn, #cookieConsent) {
    visibility: hidden;
    pointer-events: none;
  }
}

@media (prefers-reduced-motion: reduce) {
  #mainNavbar:has(.site-nav-logo-circle:hover)::after,
  #mainNavbar:has(.site-nav-center-brand:focus-visible)::after {
    animation: none;
    transform: scaleX(1);
  }
  .site-nav-chevron { transition: none; }
  .site-nav-panel.show .site-nav-panel-content { animation: none; }
}
