@media (max-width: 767.98px) {
  #mobile-menu-panel .h-full {
    padding-top: env(safe-area-inset-top);
  }
}

.mobile-hub-link {
  transition: transform .15s ease, background-color .15s ease, border-color .15s ease;
}
.mobile-hub-link:hover {
  background-color: #ffffff;
  border-color: #cbd5e1;
}
.mobile-hub-link:active {
  transform: scale(0.99);
}

:root {
        --brand-50: #eff6ff;
        --brand-100: #dbeafe;
        --brand-600: #2563eb;
        --brand-700: #1d4ed8;
        --accent-cyan: #06b6d4;
        --accent-emerald: #10b981;
      }

      body {
        font-family: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
        background-color: #eff6ff;
        color: #0f172a;
      }

      .container {
        max-width: 80rem;
        margin-left: auto;
        margin-right: auto;
      }

      .site-header-inner,
      .site-header-main {
        width: 100%;
        max-width: 80rem;
        margin-left: auto;
        margin-right: auto;
      }

      .footer-gradient {
        background:
          radial-gradient(circle at top left, rgba(59, 130, 246, .12), transparent 55%),
          radial-gradient(circle at top right, rgba(56, 189, 248, .18), transparent 55%),
          #020617;
      }

      .safe-bottom {
        padding-bottom: env(safe-area-inset-bottom);
      }

      /* HEADER overlay preko hero sekcije */

      .site-header {
        position: fixed;
        inset-inline: 0;
        top: 0;
        z-index: 40;
        border-bottom: 0;
        background-color: transparent;
        backdrop-filter: none;
        transition:
          background-color 0.22s ease,
          border-color 0.22s ease,
          box-shadow 0.22s ease,
          backdrop-filter 0.22s ease,
          transform 0.22s ease;
      }

      .site-header.is-scrolled {
        background-color: transparent;
        border-bottom-color: transparent;
        backdrop-filter: none;
      }

      .site-header-topbar {
        transition: opacity 0.2s ease, transform 0.2s ease;
      }

      .nav-shell {
        min-height: 74px;
        transition: min-height 0.22s ease, padding 0.22s ease, background-color 0.22s ease, box-shadow 0.22s ease, border-color 0.22s ease, backdrop-filter 0.22s ease;
      }

      /* nakon scrolla pojačamo samo traku menija */
      .site-header.is-scrolled .nav-shell {
        min-height: 60px;
        background-color: rgba(255, 255, 255, 0.94);
        border-color: rgba(226, 232, 240, 0.86);
        backdrop-filter: blur(10px);
        box-shadow: 0 10px 28px rgba(15, 23, 42, 0.08);
      }

      .site-header.is-scrolled .site-header-topbar {
        opacity: 0;
        pointer-events: none;
        transform: translateY(-4px);
      }

      .nav-link {
        position: relative;
        display: inline-flex;
        align-items: center;
        gap: 0.25rem;
        padding: 0.25rem 0;
        color: #0f172a;
        font-size: 0.9rem;
        font-weight: 500;
      }

      .nav-link::after {
        content: "";
        position: absolute;
        left: 0;
        right: 0;
        bottom: -0.3rem;
        height: 2px;
        border-radius: 999px;
        background: linear-gradient(90deg, #0ea5e9, #22c55e);
        transform-origin: center;
        transform: scaleX(0);
        opacity: 0;
        transition:
          opacity 0.18s ease-out,
          transform 0.18s ease-out;
      }

      .nav-link:hover::after,
      .nav-link:focus-visible::after {
        opacity: 1;
        transform: scaleX(1);
      }

      .mobile-menu-open {
        overflow: hidden;
      }

      .mobile-nav-link {
        display: flex;
        align-items: center;
        justify-content: space-between;
        gap: 0.75rem;
        padding: 0.6rem 0.25rem;
        font-size: 0.95rem;
        font-weight: 500;
        color: #020617;
      }

      .mobile-sub-link {
        display: block;
        padding: 0.35rem 0.25rem;
        font-size: 0.9rem;
        color: #4b5563;
      }

      .mobile-sub-link:hover {
        color: #020617;
      }

      body.is-inner main#main > section:first-child,
      body.is-inner main#main > header:first-child,
      body.is-inner main#main > div:first-child > section:first-child,
      body.is-inner main#main > div:first-child > header:first-child,
      body.is-inner main#main > main:first-child > section:first-child,
      body.is-inner main#main > main:first-child > header:first-child {
        padding-top: 8rem !important;
      }

      @media (min-width: 768px) {
        body.is-inner main#main > section:first-child,
        body.is-inner main#main > header:first-child,
        body.is-inner main#main > div:first-child > section:first-child,
        body.is-inner main#main > div:first-child > header:first-child,
        body.is-inner main#main > main:first-child > section:first-child,
        body.is-inner main#main > main:first-child > header:first-child {
          padding-top: 10rem !important;
        }
      }

      .lang-menu {
        min-width: 160px;
      }

      .lang-menu a {
        display: flex;
        align-items: center;
        gap: 0.6rem;
        padding: 0.4rem 0.5rem;
        font-size: 0.85rem;
        color: #0f172a;
      }

      .lang-menu a span.flag {
        font-size: 1.1rem;
      }

      /* Logo highlight */

           .logo-badge {
        display: inline-flex;
        align-items: center;
        justify-content: center;
        border-radius: 9999px;
        padding: 2px;
      }

      /* suptilan 3D efekt, kao blagi sticky shadow ispod loga */
      .logo-glow {
        border-radius: 9999px;
        box-shadow: 0 4px 10px rgba(15, 23, 42, 0.18);
      }
            .nav-icon {
        position: relative;
        display: inline-flex;
        align-items: center;
        justify-content: center;
      }

      .nav-icon[data-label]::after {
        position: absolute;
        bottom: -1.5rem;
        left: 50%;
        transform: translateX(-50%) translateY(4px);
        padding: 2px 8px;
        border-radius: 999px;
        font-size: 10px;
        font-weight: 600;
        letter-spacing: 0.08em;
        text-transform: uppercase;
        background-color: rgba(15, 23, 42, 0.92);
        color: #e5e7eb;
        white-space: nowrap;
        opacity: 0;
        pointer-events: none;
        content: attr(data-label);
        transition: opacity 0.15s ease-out, transform 0.15s ease-out;
      }

      .nav-icon:hover[data-label]::after,
      .nav-icon:focus-visible[data-label]::after {
        opacity: 1;
        transform: translateX(-50%) translateY(0);
      }
.site-header.is-scrolled .site-header-topbar {
        display: none;  /* potpuno ukloni top bar kad je sticky */
      }

      .site-header.is-scrolled .site-header-main {
        margin-top: 0.45rem;
      }

      .site-header.is-scrolled .logo-badge img {
        height: 34px;
      }

      .site-header.is-scrolled .brand-name {
        font-size: 18px;
      }
      
     /* Mega dropdown – jasna hijerarhija */

      .dropdown-heading {
        display: flex;
        align-items: center;
        gap: 0.4rem;
        font-size: 14px;
        font-weight: 600;
        color: #0f172a;
      }

      .dropdown-heading-icon {
        font-size: 14px;
        color: #94a3b8; /* slate-400 */
      }

      .dropdown-sublist {
        margin-top: 3px;
        padding-left: 1rem;
        border-left: 1px solid #e5e7eb; /* subtle linija */
        list-style: none;
      }

      .dropdown-sublist li a {
        display: block;
        font-size: 13px;
        color: #4b5563;
        padding: 1px 0;
      }

      .dropdown-sublist li a:hover {
        color: #020617;
      }            
          
   /* Desktop vs mobile navigacija – FINAL kill switch */
@media (max-width: 1023.98px) {
  /* Desktop meni: mrtav na svim širinama ispod 1024px */
  body #site-header .nav-shell .desktop-main-nav {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
  }

  /* Mobilne akcije: garantirano vidljive na mobitelu */
  body #site-header .nav-shell .mobile-main-actions {
    display: flex !important;
    visibility: visible !important;
    opacity: 1 !important;
  }
}

@media (min-width: 1024px) {
  /* Desktop meni: živ samo na desktopu */
  body #site-header .nav-shell .desktop-main-nav {
    display: flex !important;
    align-items: center;
    visibility: visible !important;
    opacity: 1 !important;
  }

  /* Mobilne akcije: sakrij na desktopu */
  body #site-header .nav-shell .mobile-main-actions {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
  }

  body #site-header,
  body #site-header.is-scrolled {
    background: transparent !important;
    border-bottom: 0 !important;
    backdrop-filter: none !important;
  }

  body #site-header.is-scrolled .nav-shell {
    min-height: 60px !important;
    background-color: rgba(255, 255, 255, 0.94) !important;
    border-color: rgba(226, 232, 240, 0.86) !important;
    box-shadow: 0 10px 28px rgba(15, 23, 42, 0.08) !important;
    backdrop-filter: blur(10px) !important;
  }
}
    /* Mobile header: add inner breathing room left/right + slightly taller feel */
@media (max-width: 1023.98px) {
  body #site-header {
    background-color: transparent !important;
    border-bottom: 0 !important;
    backdrop-filter: none !important;
    box-shadow: none !important;
  }

  body #site-header.is-scrolled {
    background-color: rgba(255, 255, 255, 0.96) !important;
    border-bottom: 1px solid rgba(226, 232, 240, 0.88) !important;
    backdrop-filter: blur(10px) !important;
    box-shadow: 0 4px 12px rgba(15, 23, 42, 0.05) !important;
  }

  body #site-header .site-header-main {
    max-width: 100% !important;
    width: 100% !important;
    margin-top: 0 !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
  }

  body #site-header .nav-shell {
    padding-left: 13px !important;
    padding-right: 13px !important;
    padding-top: 1px !important;
    padding-bottom: 1px !important;
    min-height: 56px;
    border-radius: 0 !important;
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
    margin: 0 !important;
  }

  body #site-header .nav-shell .logo-badge img {
    height: 31px;
  }

  body #site-header .nav-shell a[aria-label*="Blistavi Dom"] .brand-name {
    font-size: 20px;
    line-height: 0.95;
    color: #0f172a;
  }

  body #site-header .nav-shell a[aria-label*="Blistavi Dom"] .flex.flex-col > span:last-child {
    display: none !important;
  }

  /* Mobile actions: slightly more spacing and better touch targets */
  body #site-header .nav-shell .mobile-main-actions {
    gap: 10px;
  }

  body #site-header .nav-shell .mobile-main-actions button,
  body #site-header .nav-shell .mobile-main-actions a {
    min-width: 38px;
    min-height: 38px;
  }

  body #site-header #mobile-menu-toggle {
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
  }
  body #site-header #mobile-menu-toggle i {
    font-size: 1.55rem !important;
  }

  body #site-header:not(.is-scrolled).mobile-hero-dark .nav-shell a[aria-label*="Blistavi Dom"] .brand-name {
    color: #fff;
    text-shadow: 0 1px 2px rgba(15, 23, 42, 0.35);
  }

  body #site-header:not(.is-scrolled).mobile-hero-light .nav-shell a[aria-label*="Blistavi Dom"] .brand-name {
    color: #0f172a;
    text-shadow: none;
  }

  body #site-header:not(.is-scrolled).mobile-hero-dark #mobile-menu-toggle {
    background: transparent !important;
    color: #fff;
    border: 0;
    box-shadow: none;
  }

  body #site-header:not(.is-scrolled).mobile-hero-light #mobile-menu-toggle {
    background: transparent !important;
    color: #0f172a;
    border: 0;
    box-shadow: none;
  }

  body #site-header.is-scrolled #mobile-menu-toggle {
    background: transparent !important;
    color: #334155;
    border: 0;
    box-shadow: none;
  }

  body #mobile-bottom-nav {
    background: rgba(255, 255, 255, 0.92) !important;
    border-top: 1px solid rgba(226, 232, 240, 0.88) !important;
    box-shadow: 0 -2px 10px rgba(15, 23, 42, 0.05) !important;
    backdrop-filter: blur(14px) !important;
  }

  @media (max-width: 767px) {
    body #mobile-bottom-nav {
      position: fixed !important;
      left: 0 !important;
      right: 0 !important;
      bottom: 0 !important;
      z-index: 120 !important;
      isolation: isolate;
      pointer-events: auto !important;
      touch-action: manipulation;
      transform: translateZ(0);
      -webkit-transform: translateZ(0);
      will-change: transform;
      -webkit-backface-visibility: hidden;
      backface-visibility: hidden;
    }

    body #mobile-bottom-nav > div {
      position: relative;
      z-index: 1;
      pointer-events: auto;
      background: transparent;
    }

    body #mobile-bottom-nav a,
    body #mobile-bottom-nav button {
      position: relative;
      z-index: 1;
      min-height: 3.55rem;
      pointer-events: auto !important;
      touch-action: manipulation;
      -webkit-tap-highlight-color: transparent;
    }
  }
}
