 /* ================= ROOT ================= */
 :root {
     --ipso-green: #6a8f2f;
     --ipso-dark: #2f3a1f;
     --ipso-light: #f7f9f4;
     --border: #e2e6da;
 }

 /* ================= CONTAINER ================= */
 .container {
     max-width: 1280px;
     margin: auto;
     padding: 0 24px;
 }

 /* ================= HEADER ================= */
 .site-header {
     position: relative;
     z-index: 1000;
 }

 /* ================= TOP BAR ================= */
 .top-bar {
     background: #fff;
     border-bottom: 1px solid var(--border);
 }

 .top-inner {
     display: flex;
     align-items: center;
     height: 72px;
     gap: 24px;
     justify-content: space-between;
 }

 .site-header .top-inner::before,
 .site-header .top-inner::after {
     content: "";
     display: none;
     clear: both;
 }

 /* Logo */
 .logo img {
     height: 42px;
 }

 /* ================= SEARCH ================= */
 .search-box {
     flex: 1;
     max-width: 420px;
     margin: auto;
     position: relative;
 }

 .search-box input {
     width: 100%;
     padding: 10px 40px 10px 14px;
     border-radius: 6px;
     border: 1px solid #cfd8c3;
 }

 .search-box input:focus {
     outline: none;
     border-color: var(--ipso-green);
 }

 .search-box i {
     position: absolute;
     right: 12px;
     top: 50%;
     transform: translateY(-50%);
     color: var(--ipso-green);
     cursor: pointer;
 }

 /* ================= TOP ICONS ================= */
 .top-actions {
     display: flex;
     align-items: center;
     gap: 14px;
 }

 .top-actions a {
     font-size: 18px;
     color: var(--ipso-green);
     transition: .2s;
 }

 .top-actions a:hover {
     color: var(--ipso-dark);
 }

 .menu-toggle {
     display: none;
     font-size: 24px;
     background: none;
     border: none;
     cursor: pointer;
     color: var(--ipso-green);
 }

 /* ================= NAV BAR ================= */
 .nav-bar {
     background: var(--ipso-light);
     border-bottom: 1px solid var(--border);
 }

 .main-menu {
     list-style: none;
     display: flex;
     gap: 44px;
     height: 58px;
     align-items: center;
     justify-content: center;
 }

 .main-menu>li {
     padding: 10px 2px;
     position: relative;
 }

 .main-menu>li>a::after {
     content: "";
     position: absolute;
     left: 0;
     bottom: -6px;
     width: 100%;
     height: 2px;
     background: var(--ipso-green);
     opacity: 0;
     transition: opacity .2s;
 }

 .main-menu>li:hover>a::after {
     opacity: 1;
 }

 .menu-close-item {
     display: none;
 }

 .main-menu a {
     text-decoration: none;
     font-weight: 600;
     font-size: 15px;
     color: var(--ipso-dark);
     padding: 6px 0;
 }

 /* ================= DROPDOWN (GENEL) ================= */
 .has-dropdown {
     position: relative;
 }

 .has-dropdown>.dropdown {
     padding: 10px 0;
     border-radius: 10px;
     box-shadow: 0 16px 40px rgba(0, 0, 0, .14);
     transition:
         opacity .25s ease,
         transform .25s ease;
 }

 /* 🔴 ÖNEMLİ: BOŞLUK YOK → hover kopmaz */
 .dropdown {
     position: absolute;
     top: 100%;
     left: 0;
     min-width: 220px;
     background: #fff;
     list-style: none;
     padding: 8px 0;
     border-radius: 6px;
     box-shadow: 0 10px 30px rgba(0, 0, 0, .12);

     opacity: 0;
     visibility: hidden;
     pointer-events: none;
     transition: opacity .2s ease;
     z-index: 2000;
 }

 .has-dropdown:hover>.dropdown {
     opacity: 1;
     visibility: visible;
     pointer-events: auto;
     transform: translate(-5%, 0px);
 }

 /* ================= DROPDOWN LINK ================= */
 .dropdown li a {
     display: block;
     padding: 12px 22px;
     /* 10x16 → 12x22 */
     border-radius: 6px;
     margin: 2px 8px;
     transition: background .2s ease, padding-left .2s ease;
     font-size: 14px;
     font-weight: normal;
     color: var(--ipso-dark);
     white-space: nowrap;
 }

 .dropdown li a:hover {
     background: var(--ipso-light);
     padding-left: 28px;
     /* hover micro-anim */
 }

 .dropdown .has-dropdown>a::after {
     content: "›";
     float: right;
     opacity: .5;
 }

 /* ================= 2. SEVİYE FIX ================= */
 .dropdown .has-dropdown>.dropdown {
     top: 0;
     left: 100%;
     margin-left: 0;
     border-radius: 10px;
     box-shadow: 0 16px 40px rgba(0, 0, 0, .16);
     /* ❌ BOŞLUK YOK */
 }

 /* 🔥 HOVER KÖPRÜSÜ (mouse kopmasın) */
 .dropdown .has-dropdown::after {
     content: "";
     position: absolute;
     top: 0;
     right: -12px;
     width: 12px;
     height: 100%;
 }

 /* ================= SEARCH AUTOCOMPLETE ================= */
 .search-suggestions {
     position: absolute;
     top: calc(100% + 6px);
     left: 0;
     width: 100%;
     background: #fff;
     border: 1px solid var(--border);
     border-radius: 6px;
     box-shadow: 0 8px 24px rgba(0, 0, 0, .12);
     display: none;
     z-index: 3000;
     max-height: 320px;
     overflow-y: auto;
 }

 .search-suggestions li {
     display: flex;
     align-items: center;
     gap: 12px;
     padding: 10px 14px;
     cursor: pointer;
 }

 .search-suggestions li:hover {
     background: var(--ipso-light);
 }

 .search-suggestions img {
     width: 42px;
     height: 42px;
     object-fit: cover;
     border-radius: 6px;
     border: 1px solid var(--border);
 }

 .search-suggestions .info {
     display: flex;
     flex-direction: column;
     gap: 3px;
 }

 .search-suggestions .title {
     font-size: 14px;
     font-weight: 600;
     color: var(--ipso-dark);
 }

 .search-suggestions .type {
     font-size: 12px;
     color: #777;
 }

 .suggestion-link {
     display: flex;
     align-items: center;
     gap: 12px;
     text-decoration: none;
     width: 100%;
 }

 #searchToggle,
 #menuToggle {
     display: none;
 }

 body.menu-open {
     overflow: hidden;
     height: 100vh;
     touch-action: none;
 }

 .menu-toggle i,
 .search-toggle i {
     font-size: 26px;
     font-weight: 900;
     /* Bootstrap iconlar için önemli */
     line-height: 1;
     display: block;
 }

 .menu-toggle i {
     transform: scale(1.15);
     /* kalın hissi */
 }

 .search-toggle i {
     transform: scale(1.05);
 }

 .menu-toggle,
 .search-toggle {
     border-radius: 10px;
     background: transparent;
     border: none;
     color: var(--ipso-green);
     display: flex;
     align-items: center;
     justify-content: center;
     cursor: pointer;
     transition: background .2s ease, transform .15s ease;
 }





 .search-modal {
     position: fixed;
     inset: 0;
     background: rgba(0, 0, 0, .5);
     backdrop-filter: blur(4px);
     display: none;
     z-index: 5000;
 }

 .search-modal.active {
     display: flex;
     align-items: flex-start;
     justify-content: center;
 }

 .search-modal-inner {
     background: #fff;
     width: 100%;
     padding: 24px;
     position: relative;
 }

 .search-modal-inner input {
     width: 100%;
     padding: 14px 44px 14px 16px;
     font-size: 16px;
     border-radius: 8px;
     border: 1px solid var(--border);
 }

 .search-close {
     position: absolute;
     right: 30px;
     top: 35px;
     background: none;
     border: none;
     font-size: 20px;
     cursor: pointer;
     color: var(--ipso-dark);
 }

 .submenu-back {
     display: none;
 }

 /* ================= MOBILE ================= */
 @media (max-width: 992px) {

     .main-menu>li:hover>a::after {
         opacity: 0;
     }

     .site-header::after {
         content: "";
         display: block;
         clear: both;
         box-shadow: 0px 2px 4px rgba(0, 0, 0, 0.1);
     }

     .top-inner::after,
     .top-inner::before {
         display: none;
     }

     #searchToggle,
     #menuToggle {
         display: block;
     }

     .menu-toggle {
         display: block;
         font-size: 26px;
         color: var(--ipso-green);
     }

     .search-box {
         display: none;
     }

     .menu-toggle {
         display: block;
     }

     .container.nav-inner {
         padding: 0;
     }

     .nav-bar {
         display: block;
         position: fixed;
         top: 73px;
         left: 0;
         width: 100%;
         height: calc(100vh - 73px);
         background: #fff;
         transform: translateX(-100%);
         transition: transform .3s ease;
         z-index: 4000;
         overflow-y: auto;
         -webkit-overflow-scrolling: touch;
     }


     .nav-bar.open {
         transform: translateX(0);
     }


     /* ana menu panel */
     .main-menu {
         position: relative;
         width: 100%;
         min-height: 100%;
         transition: transform .3s ease;
         display: inline;
     }

     .main-menu>li {
         padding: 0;
         position: unset;
     }

     /* ana menu geri kaysın */
     .nav-bar.submenu-open .main-menu {
         transform: translateX(-100%);
     }

     .main-menu>li>a {
         padding: 20px 30px;
         border-bottom: 1px solid var(--border);
         text-align: left;
         display: block;
     }

     /* Alt menüsü olan item */
     .has-dropdown>a {
         position: relative;
         padding-right: 44px;
     }

     .dropdown li a {
         font-weight: 600;
         font-size: 15px;
     }

     /* Sağ ok */
     .has-dropdown>a::after {
         content: "\f285" !important;
         background: none !important;
         /* bootstrap icon chevron-right */
         font-family: "bootstrap-icons";
         position: absolute;
         right: 18px;
         top: 50%;
         transform: translateY(-50%);
         font-size: 16px;
         color: var(--ipso-green);
         opacity: .9 !important;
         width: auto !important;
         left: auto !important;
         height: auto !important;
         bottom: auto !important;
     }

     .has-dropdown>a:active::after {
         transform: translateY(-50%) translateX(4px);
     }

     .has-dropdown:hover>.dropdown {
         transform: translate(0);
     }


     /* SADECE social iconları kapat */
     .top-actions a {
         display: none;
     }

     /* hamburger HER ZAMAN GÖRÜNSÜN */
     .menu-toggle {
         display: block;
         font-size: 26px;
     }

     .search-box {
         display: none;
     }

     .search-toggle {
         background: none;
         border: none;
         font-size: 22px;
         color: var(--ipso-green);
         cursor: pointer;
     }

     .top-actions a {
         display: none;
         /* social iconlar */
     }


     .menu-close-btn:active {
         background: #e9efe0;
     }


     .nav-bar {
         overflow-x: hidden;
     }

     /* ana menu panel */
     .main-menu {
         position: relative;
         width: 100%;
         min-height: 100%;
     }

     .nav-bar {
         --level: 0;
     }

     .main-menu {
         transform: translateX(calc(-100% * var(--level)));
     }

     .has-dropdown {
         --level: calc(var(--level) + 1);
         position: initial;
     }

     .dropdown .has-dropdown>.dropdown {
         box-shadow: none;
     }

     /* dropdown panel */
     .has-dropdown>.dropdown {
         position: absolute;
         top: 0;
         left: 100%;
         width: 100%;
         height: 100%;
         background: #fff;
         display: block;
         transform: translateX(0);
         transition: transform .3s ease;
         overflow: none;
         z-index: 10;
         box-shadow: none;
     }

     /* aktif alt menü sahneye gelsin */
     .has-dropdown.open>.dropdown {
         transform: translateX(-100%);
         overflow: hidden;
     }

     /* ana menü geri kaysın */
     .nav-bar.submenu-open .main-menu {
         transform: translateX(-100%);
         transition: transform .3s ease;
     }

     /* geri butonu */
     .submenu-back {
         display: flex;
         align-items: center;
         gap: 10px;
         padding: 18px 20px;
         font-size: 15px;
         font-weight: 600;
         border-bottom: 1px solid var(--border);
         cursor: pointer;
         color: var(--ipso-dark);
         margin-bottom: 15px;

     }

     .submenu-back-btn {
         background: no-repeat;
         display: flex;
         align-items: center;
         gap: 5px;

     }

     .submenu-back i {
         font-size: 18px;
         color: var(--ipso-green);
     }

     .submenu-back span {
         color: var(--ipso-green);
     }

     .main-menu>li.menu-close-item {
         display: block;
         position: sticky;
         bottom: 0;
         padding: 14px 16px calc(14px + env(safe-area-inset-bottom));
         background: rgba(255, 255, 255, .95);
         backdrop-filter: blur(6px);
         border-top: 1px solid var(--border);
         z-index: 50;
     }

     .menu-close-item {
         position: sticky;
         bottom: 0;
         padding: 14px 16px;
         background: rgba(255, 255, 255, .9);
         backdrop-filter: blur(6px);
         border-top: 1px solid var(--border);
         z-index: 50;
     }

     .menu-close-btn {
         width: 100%;
         display: flex;
         align-items: center;
         justify-content: center;
         gap: 10px;
         padding: 14px;
         border-radius: 14px;
         font-size: 15px;
         font-weight: 600;
         border: 1px solid var(--border);
         background: var(--ipso-light);
         color: var(--ipso-dark);
         cursor: pointer;
         transition:
             background .2s ease,
             transform .12s ease,
             box-shadow .2s ease;
     }

     .menu-close-btn i {
         font-size: 18px;
         color: var(--ipso-green);
     }

     .menu-close-btn:active {
         transform: scale(.96);
         background: #eef2e7;
     }
 }