/*
 * nkolay.css — Custom styles for nkolayislem.com.tr
 * Built on Bootstrap 5. No third-party theme dependencies.
 */

/* ============================================
   Brand Colors
   ============================================ */
:root {
  --nk-parlement: #012353;
  --nk-parlement-light: #01387a;
}

.text-parlement { color: var(--nk-parlement) !important; }
.bg-parlement { background-color: var(--nk-parlement) !important; }

/* ============================================
   Header
   ============================================ */
.nk-header {
  z-index: 1030;
}

.nk-header-bg {
  background-color: var(--nk-parlement);
}

/* Topbar links */
.nk-topbar-link {
  color: rgba(255, 255, 255, 0.85);
  font-size: 0.875rem;
  font-weight: 300;
  text-decoration: none;
  transition: color 0.2s;
}
.nk-topbar-link:hover {
  color: #fff;
}

/* Make the navbar-dark links white and bold */
.nk-header .nav-link {
  color: rgba(255, 255, 255, 0.9) !important;
  font-weight: 600;
  padding: 0.75rem 0.6rem;
  transition: color 0.2s;
}
.nk-header .nav-link:hover,
.nk-header .nav-link:focus {
  color: #fff !important;
}

/* ============================================
   Mega Menu (Desktop)
   ============================================ */
.nk-mega-menu {
  min-width: 600px;
  padding: 1rem 0;
  border: 0;
  border-radius: 0.5rem;
  box-shadow: 0 10px 40px rgba(0, 0, 0, 0.12);
}

.nk-dropdown-sm {
  min-width: 340px;
  padding: 0.75rem 0;
  border: 0;
  border-radius: 0.5rem;
  box-shadow: 0 10px 40px rgba(0, 0, 0, 0.12);
}

/* Desktop: open mega menus on hover */
@media (min-width: 992px) {
  .nk-mega-dropdown,
  .navbar-nav > .nav-item.dropdown {
    position: static;
  }

  .nk-mega-dropdown .dropdown-menu {
    /* position within the navbar container */
    left: 0;
    right: 0;
  }

  .nav-item.dropdown .nk-dropdown-sm {
    position: absolute;
    left: auto;
    right: auto;
  }

  /* Hover trigger for desktop */
  .nk-mega-dropdown:hover > .dropdown-menu,
  .nav-item.dropdown:hover > .dropdown-menu {
    display: block;
    margin-top: 0;
    animation: nkFadeIn 0.2s ease-out;
  }
}

@keyframes nkFadeIn {
  from { opacity: 0; transform: translateY(8px); }
  to { opacity: 1; transform: translateY(0); }
}

/* Mobile: full-width menus */
@media (max-width: 991.98px) {
  .nk-mega-menu,
  .nk-dropdown-sm {
    min-width: 100%;
    box-shadow: none;
    border: 0;
  }
}

/* ============================================
   Promo Items (menu links with icon + text)
   ============================================ */
.nk-promo-item {
  display: flex;
  align-items: center;
  gap: 0.75rem;
  padding: 0.6rem 1.25rem;
  color: #1e2022;
  text-decoration: none;
  transition: background-color 0.15s;
}
.nk-promo-item:hover {
  background-color: #f8f9fa;
  color: #1e2022;
}

.nk-promo-icon {
  width: 2rem;
  height: 2rem;
  flex-shrink: 0;
}

.nk-promo-title {
  display: block;
  font-size: 0.9rem;
  font-weight: 500;
  color: #1e2022;
}

.nk-promo-text {
  display: block;
  font-size: 0.8rem;
  color: #8c98a4;
}

/* ============================================
   Spacing Utilities (replaces HS space-*)
   ============================================ */
.space-0 { padding-top: 0; padding-bottom: 0; }
.space-1 { padding-top: 2rem; padding-bottom: 2rem; }
.space-2 { padding-top: 4rem; padding-bottom: 4rem; }
.space-3 { padding-top: 8rem; padding-bottom: 8rem; }
.space-4 { padding-top: 12.5rem; padding-bottom: 12.5rem; }

.space-top-1 { padding-top: 2rem; }
.space-top-2 { padding-top: 4rem; }
.space-top-3 { padding-top: 8rem; }

/* Extended margin/padding (BS5 only goes to 5) */
.mb-6 { margin-bottom: 3.5rem !important; }
.mb-7 { margin-bottom: 5rem !important; }
.mb-9 { margin-bottom: 8rem !important; }
.mt-7 { margin-top: 5rem !important; }
.mt-9 { margin-top: 8rem !important; }
.pt-9 { padding-top: 8rem !important; }

/* HtmlStream gradient backgrounds */
.gradient-half-primary-v1 {
  background: linear-gradient(150deg, #2d1582 15%, #19a0ff 70%, #6dd5ed 94%);
}

/* Responsive space-bottom-sm */
@media (min-width: 576px) {
  .space-bottom-sm-3 { padding-bottom: 8rem; }
  .space-bottom-sm-4 { padding-bottom: 12.5rem; }
}

.space-bottom-1 { padding-bottom: 2rem; }
.space-bottom-2 { padding-bottom: 4rem; }
.space-bottom-3 { padding-bottom: 8rem; }

@media (min-width: 576px) {
  .space-top-sm-0 { padding-top: 0; }
  .space-top-sm-1 { padding-top: 2rem; }
  .space-top-sm-2 { padding-top: 4rem; }
}
@media (min-width: 768px) {
  .space-top-md-1 { padding-top: 2rem; }
  .space-top-md-2 { padding-top: 4rem; }
  .space-top-md-3 { padding-top: 8rem; }
  .space-top-md-5 { padding-top: 15rem; }
  .space-md-3 { padding-top: 8rem; padding-bottom: 8rem; }
  .space-bottom-md-2 { padding-bottom: 4rem; }
  .space-bottom-md-3 { padding-bottom: 8rem; }
}
@media (min-width: 992px) {
  .space-lg-0 { padding-top: 0; padding-bottom: 0; }
  .space-lg-3 { padding-top: 8rem; padding-bottom: 8rem; }
  .space-top-lg-0 { padding-top: 0; }
  .space-top-lg-1 { padding-top: 2rem; }
  .space-top-lg-2 { padding-top: 4rem; }
  .space-top-lg-3 { padding-top: 8rem; }
  .space-bottom-lg-1 { padding-bottom: 2rem; }
  .space-bottom-lg-5 { padding-bottom: 15rem; }
  .min-height-lg-100vh { min-height: 100vh; }
}

/* ============================================
   Button Soft Variants
   ============================================ */
.btn-soft-primary { background-color: rgba(55, 125, 255, 0.1); color: #377dff; border: 0; }
.btn-soft-primary:hover { background-color: #377dff; color: #fff; }
.btn-soft-success { background-color: rgba(0, 201, 167, 0.1); color: #00c9a7; border: 0; }
.btn-soft-success:hover { background-color: #00c9a7; color: #fff; }
.btn-soft-danger { background-color: rgba(222, 68, 55, 0.1); color: #de4437; border: 0; }
.btn-soft-danger:hover { background-color: #de4437; color: #fff; }
.btn-soft-warning { background-color: rgba(255, 193, 7, 0.1); color: #d39e00; border: 0; }
.btn-soft-warning:hover { background-color: #ffc107; color: #1e2022; }
.btn-soft-info { background-color: rgba(0, 223, 252, 0.1); color: #00dffc; border: 0; }
.btn-soft-info:hover { background-color: #00dffc; color: #fff; }
.btn-soft-indigo { background-color: rgba(45, 21, 130, 0.1); color: #2d1582; border: 0; }
.btn-soft-indigo:hover { background-color: #2d1582; color: #fff; }
.btn-soft-secondary { background-color: rgba(119, 131, 143, 0.1); color: #77838f; border: 0; }
.btn-soft-secondary:hover { background-color: #77838f; color: #fff; }
.btn-soft-light { background-color: rgba(248, 249, 250, 0.1); color: #f8f9fa; border: 0; }
.btn-soft-light:hover { background-color: #f8f9fa; color: #1e2022; }

/* Hover lift effect */
.nk-hover-lift,
.transition-3d-hover {
  transition: all 0.2s ease-in-out;
}
.nk-hover-lift:hover,
.transition-3d-hover:hover {
  transform: translateY(-3px);
}

/* ============================================
   Font utilities (HS theme compat)
   ============================================ */
.font-weight-semi-bold { font-weight: 600 !important; }
.font-weight-medium { font-weight: 500 !important; }
.font-size-1 { font-size: 0.875rem !important; }

@media (max-width: 991.98px) {
  .font-size-md-down-5 { font-size: 3rem !important; }
}

/* ============================================
   Responsive width utilities
   ============================================ */
@media (min-width: 768px) {
  .w-md-40 { width: 40% !important; }
  .w-md-50 { width: 50% !important; }
  .w-md-60 { width: 60% !important; }
  .w-md-80 { width: 80% !important; }
}
@media (min-width: 992px) {
  .w-lg-30 { width: 30% !important; }
  .w-lg-50 { width: 50% !important; }
  .w-lg-60 { width: 60% !important; }
  .w-lg-65 { width: 65% !important; }
  .w-lg-80 { width: 80% !important; }
}

/* ============================================
   Labels (replaces u-label)
   ============================================ */
.u-label {
  display: inline-block;
  font-size: 0.75rem;
  font-weight: 500;
  text-transform: uppercase;
  letter-spacing: 0.1em;
  padding: 0.35rem 0.75rem;
  border-radius: 50rem;
}
.u-label--sm { font-size: 0.65rem; }
.u-label--success { background-color: rgba(0, 201, 167, 0.1); color: #00c9a7; }

/* ============================================
   Misc utilities
   ============================================ */
.shadow-soft {
  box-shadow: 0 3px 6px 0 rgba(140, 152, 164, 0.25) !important;
}

.btn-wide {
  min-width: 10rem;
}

.list-group-borderless .list-group-item {
  border: 0;
  padding-left: 0;
  padding-right: 0;
}

/* Go-to-top button */
.nk-go-to {
  position: fixed;
  bottom: 15px;
  right: 15px;
  z-index: 1020;
  width: 2.5rem;
  height: 2.5rem;
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: var(--nk-parlement);
  color: #fff;
  border-radius: 50%;
  text-decoration: none;
  opacity: 0;
  visibility: hidden;
  transition: all 0.3s;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.15);
}
.nk-go-to:hover {
  background-color: var(--nk-parlement-light);
  color: #fff;
}
.nk-go-to.visible {
  opacity: 1;
  visibility: visible;
}

/* Client logos */
.u-clients {
  max-width: 100%;
  opacity: 0.7;
  transition: opacity 0.2s;
}
.u-clients:hover {
  opacity: 1;
}

/* btn-icon (for icon-only buttons) */
.btn-icon {
  position: relative;
  line-height: 0;
  padding: 0;
  width: 3.125rem;
  height: 3.125rem;
}
.btn-icon.btn-lg {
  width: 4.25rem;
  height: 4.25rem;
}
.btn-icon.btn-xs {
  width: 1.5rem;
  height: 1.5rem;
  font-size: 0.6rem;
}
.btn-icon__inner {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

/* badge compat */
.badge-bigger { padding: 0.625rem; }
