/* ============================================
   Kruvaze Giyim — NAV v2.5.0
   Pantopark esinli, editorial/luxury kimlik
   ============================================ */

:root{
  --kv-bg:        #0d0d0d;
  --kv-ink:       #f5f1e8;
  --kv-ink-soft:  #c9c1ae;
  --kv-mute:      #8a8270;
  --kv-line:      rgba(245,241,232,.12);
  --kv-line-2:    rgba(245,241,232,.18);
  --kv-gold:      #c9a961;
  --kv-gold-2:    #b08a3e;
  --kv-bg-on-light:#fafaf7;
  --kv-display:   "Cormorant Garamond", "Playfair Display", Georgia, serif;
  --kv-sans:      "Manrope", -apple-system, system-ui, sans-serif;
  --kv-ease:      cubic-bezier(.16,1,.3,1);
}

*,
*::before,
*::after{ box-sizing:border-box; }

html{ scroll-behavior:smooth; }
body{
  margin:0;
  background:var(--kv-bg-on-light);
  color:#1a1a1a;
  font-family:var(--kv-sans);
  font-weight:400;
  line-height:1.55;
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
}

/* Anasayfa karanlık tema bölümü için body sınıfı */
body.page-home{ background:var(--kv-bg); color:var(--kv-ink); }

.kv-container{
  width:100%;
  max-width:1380px;
  margin:0 auto;
  padding:0 28px;
}
@media (max-width:768px){ .kv-container{ padding:0 18px; } }

.skip-link{
  position:absolute; left:-9999px; top:0;
  background:var(--kv-gold); color:#000;
  padding:10px 16px; z-index:9999;
  font-weight:700; font-size:.8rem;
}
.skip-link:focus{ left:8px; top:8px; }

/* ────────  TOPBAR  ──────── */
.kv-topbar{
  background:#000;
  color:var(--kv-ink-soft);
  font-size:.74rem;
  letter-spacing:.06em;
  border-bottom:1px solid rgba(255,255,255,.06);
}
.kv-topbar .kv-container{
  display:flex; align-items:center; justify-content:space-between;
  height:38px;
}
.kv-topbar a{
  color:inherit; text-decoration:none;
  display:inline-flex; align-items:center; gap:6px;
  padding:0 10px; transition:color .25s var(--kv-ease);
}
.kv-topbar a:hover{ color:var(--kv-gold); }
.kv-topbar__left{ display:flex; gap:4px; }
.kv-topbar__right{ display:flex; gap:6px; align-items:center; }
.kv-tagline{
  font-family:var(--kv-display);
  font-style:italic;
  letter-spacing:.18em;
  color:var(--kv-mute);
  margin-right:14px;
  font-size:.78rem;
}
@media (max-width:860px){
  .kv-topbar{ display:none; }
}

/* ────────  HEADER  ──────── */
.kv-header{
  position:sticky;
  top:0;
  z-index:80;
  background:var(--kv-bg);
  color:var(--kv-ink);
  border-bottom:1px solid var(--kv-line);
  transition:background .35s var(--kv-ease),
             box-shadow  .35s var(--kv-ease),
             border-color .35s var(--kv-ease);
}

/* Anasayfada üstte transparan, scroll edince katı */
body.page-home .kv-header[data-transparent="1"]{
  background:transparent;
  border-bottom-color:transparent;
}
body.page-home .kv-header[data-transparent="1"].is-scrolled,
.kv-header.is-scrolled{
  background:var(--kv-bg);
  border-bottom-color:var(--kv-line);
  box-shadow:0 18px 40px -28px rgba(0,0,0,.6);
}

.kv-header__inner{
  display:flex; align-items:center; gap:32px;
  height:84px;
}

/* ────────  LOGO  ──────── */
.kv-logo{
  display:flex; align-items:center; gap:12px;
  text-decoration:none; color:inherit;
  flex-shrink:0;
}
.kv-logo img{ height:46px; width:auto; display:block; }
.kv-logo__mark{
  width:42px; height:42px;
  display:grid; place-items:center;
  font-family:var(--kv-display);
  font-weight:600;
  font-size:1.6rem;
  color:var(--kv-gold);
  border:1px solid var(--kv-gold);
  letter-spacing:0;
  position:relative;
}
.kv-logo__mark::before{
  content:""; position:absolute; inset:3px;
  border:1px solid rgba(201,169,97,.35);
}
.kv-logo__text{ display:flex; flex-direction:column; line-height:1; }
.kv-logo__title{
  font-family:var(--kv-display);
  font-weight:600;
  font-size:1.35rem;
  letter-spacing:.12em;
  text-transform:uppercase;
}
.kv-logo__sub{
  font-size:.62rem;
  letter-spacing:.42em;
  text-transform:uppercase;
  color:var(--kv-mute);
  font-weight:500;
  margin-top:5px;
}
@media (max-width:560px){
  .kv-logo__sub{ display:none; }
  .kv-logo__title{ font-size:1.1rem; letter-spacing:.16em; }
}

/* ────────  NAV  ──────── */
.kv-nav{ flex:1; display:flex; justify-content:center; }
.kv-nav__list{
  list-style:none; margin:0; padding:0;
  display:flex; gap:4px; align-items:center;
}
.kv-nav__list > li > a{
  display:inline-flex; align-items:center; gap:6px;
  padding:14px 18px;
  color:inherit;
  text-decoration:none;
  font-size:.76rem;
  font-weight:600;
  letter-spacing:.18em;
  position:relative;
  transition:color .25s var(--kv-ease);
}
.kv-nav__list > li > a::after{
  content:""; position:absolute; left:18px; right:18px;
  bottom:8px; height:1px;
  background:var(--kv-gold);
  transform:scaleX(0); transform-origin:center;
  transition:transform .35s var(--kv-ease);
}
.kv-nav__list > li > a:hover{ color:var(--kv-gold); }
.kv-nav__list > li > a:hover::after,
.kv-nav__list > li > a.is-active::after{ transform:scaleX(1); }
.kv-nav__list > li > a.is-active{ color:var(--kv-gold); }

.kv-caret{ transition:transform .3s var(--kv-ease); }
.kv-nav__has-dropdown:hover .kv-caret{ transform:rotate(-180deg); }

/* ────────  DROPDOWN  ──────── */
.kv-nav__has-dropdown{ position:relative; }
.kv-dropdown{
  position:absolute;
  top:calc(100% + 0px);
  left:50%;
  transform:translate(-50%, 8px);
  min-width:520px;
  background:#0a0a0a;
  border:1px solid var(--kv-line-2);
  padding:28px 32px;
  opacity:0;
  visibility:hidden;
  pointer-events:none;
  transition:opacity .3s var(--kv-ease), transform .3s var(--kv-ease), visibility 0s linear .3s;
  box-shadow:0 30px 60px -25px rgba(0,0,0,.7);
}
.kv-dropdown::before{
  content:""; position:absolute; top:-1px; left:0; right:0; height:1px;
  background:linear-gradient(90deg, transparent, var(--kv-gold) 50%, transparent);
}
.kv-nav__has-dropdown:hover .kv-dropdown,
.kv-nav__has-dropdown:focus-within .kv-dropdown{
  opacity:1; visibility:visible; pointer-events:auto;
  transform:translate(-50%, 0);
  transition:opacity .35s var(--kv-ease), transform .35s var(--kv-ease), visibility 0s;
}
.kv-dropdown__grid{
  display:grid;
  grid-template-columns:repeat(2, minmax(180px, 1fr));
  gap:4px 32px;
}
.kv-dropdown__grid a{
  display:flex; align-items:baseline; gap:10px;
  padding:10px 0;
  color:var(--kv-ink-soft);
  text-decoration:none;
  border-bottom:1px solid rgba(255,255,255,.05);
  transition:color .2s var(--kv-ease), padding .25s var(--kv-ease);
}
.kv-dropdown__grid a:hover{
  color:var(--kv-gold);
  padding-left:6px;
}
.kv-dropdown__num{
  font-family:var(--kv-display);
  color:var(--kv-gold);
  font-style:italic;
  font-size:.85rem;
}
.kv-dropdown__name{
  font-size:.82rem;
  letter-spacing:.06em;
  font-weight:500;
}
.kv-dropdown__cta{
  margin-top:18px; padding-top:18px;
  border-top:1px solid var(--kv-line);
  text-align:right;
}
.kv-link-arrow{
  display:inline-flex; align-items:center; gap:8px;
  color:var(--kv-gold); text-decoration:none;
  font-size:.74rem; font-weight:700;
  letter-spacing:.22em; text-transform:uppercase;
}
.kv-link-arrow svg{ transition:transform .3s var(--kv-ease); }
.kv-link-arrow:hover svg{ transform:translateX(5px); }

/* ────────  ACTIONS  ──────── */
.kv-actions{
  display:flex; align-items:center; gap:6px;
  flex-shrink:0;
}
.kv-icon-btn{
  width:42px; height:42px;
  display:grid; place-items:center;
  background:transparent; border:none; cursor:pointer;
  color:inherit; text-decoration:none;
  border-radius:50%;
  position:relative;
  transition:background .25s var(--kv-ease), color .25s var(--kv-ease);
}
.kv-icon-btn:hover{
  background:rgba(245,241,232,.06);
  color:var(--kv-gold);
}
.kv-cart-btn{ position:relative; }
.kv-cart-badge{
  position:absolute; top:6px; right:4px;
  min-width:17px; height:17px;
  padding:0 4px;
  background:var(--kv-gold); color:#000;
  font-size:.65rem; font-weight:800;
  border-radius:9px;
  display:grid; place-items:center;
  border:2px solid var(--kv-bg);
}

/* ONLINE SHOP CTA */
.kv-cta-btn{
  display:inline-flex; align-items:center; gap:10px;
  margin-left:14px;
  padding:13px 22px;
  background:var(--kv-gold);
  color:#0a0a0a;
  text-decoration:none;
  font-size:.72rem;
  font-weight:800;
  letter-spacing:.22em;
  border:1px solid var(--kv-gold);
  position:relative;
  overflow:hidden;
  transition:color .35s var(--kv-ease), border-color .35s var(--kv-ease);
}
.kv-cta-btn::before{
  content:""; position:absolute; inset:0;
  background:#0a0a0a;
  transform:translateY(100%);
  transition:transform .4s var(--kv-ease);
  z-index:0;
}
.kv-cta-btn > *{ position:relative; z-index:1; }
.kv-cta-btn:hover{ color:var(--kv-gold); border-color:var(--kv-gold); }
.kv-cta-btn:hover::before{ transform:translateY(0); }
.kv-cta-btn svg{ transition:transform .3s var(--kv-ease); }
.kv-cta-btn:hover svg{ transform:translateX(4px); }

/* ────────  BURGER  ──────── */
.kv-burger{
  display:none;
  width:42px; height:42px;
  flex-direction:column; justify-content:center; align-items:center; gap:5px;
  background:transparent; border:none; cursor:pointer;
  padding:0;
}
.kv-burger span{
  display:block; width:22px; height:2px;
  background:currentColor;
  transition:transform .3s var(--kv-ease), opacity .25s var(--kv-ease);
}
.kv-burger.is-open span:nth-child(1){ transform:translateY(7px) rotate(45deg); }
.kv-burger.is-open span:nth-child(2){ opacity:0; }
.kv-burger.is-open span:nth-child(3){ transform:translateY(-7px) rotate(-45deg); }

/* ────────  RESPONSIVE  ──────── */
@media (max-width:1100px){
  .kv-nav{ display:none; }
  .kv-burger{ display:flex; }
  .kv-cta-btn span{ display:none; }
  .kv-cta-btn{ padding:12px 14px; }
}
@media (max-width:560px){
  .kv-header__inner{ height:70px; }
  .kv-cta-btn{ display:none; }
  .kv-actions{ gap:0; }
}

/* ────────  SEARCH OVERLAY  ──────── */
.kv-search-overlay{
  position:fixed; inset:0; z-index:120;
  background:rgba(8,8,8,.96);
  backdrop-filter:blur(12px);
  display:grid; place-items:center;
  opacity:0; visibility:hidden;
  transition:opacity .35s var(--kv-ease), visibility 0s linear .35s;
}
.kv-search-overlay.is-open{
  opacity:1; visibility:visible;
  transition:opacity .35s var(--kv-ease);
}
.kv-search-close{
  position:absolute; top:24px; right:32px;
  background:transparent; border:none; cursor:pointer;
  color:var(--kv-ink); font-size:2.4rem; line-height:1;
  width:48px; height:48px;
  transition:color .2s, transform .3s var(--kv-ease);
}
.kv-search-close:hover{ color:var(--kv-gold); transform:rotate(90deg); }
.kv-search-form{
  width:min(720px, 90vw);
  display:flex; align-items:center; gap:16px;
  border-bottom:1px solid var(--kv-gold);
  padding-bottom:12px;
  position:relative;
}
.kv-search-form__hint{
  position:absolute; bottom:100%; left:0;
  font-family:var(--kv-display); font-style:italic;
  color:var(--kv-gold); letter-spacing:.32em;
  font-size:.78rem; margin-bottom:18px;
}
.kv-search-form input{
  flex:1; background:transparent; border:none; outline:none;
  color:var(--kv-ink);
  font-family:var(--kv-display);
  font-size:clamp(1.6rem, 4vw, 2.4rem);
  font-weight:400;
  padding:8px 0;
}
.kv-search-form input::placeholder{ color:var(--kv-mute); font-style:italic; }
.kv-search-form button{
  background:transparent; border:none; cursor:pointer;
  color:var(--kv-ink); padding:8px;
  transition:color .2s;
}
.kv-search-form button:hover{ color:var(--kv-gold); }

/* ────────  MOBILE MENU  ──────── */
.kv-mobile-menu{
  position:fixed; top:0; right:-100%;
  width:min(420px, 90vw);
  height:100vh;
  background:var(--kv-bg);
  color:var(--kv-ink);
  z-index:130;
  display:flex; flex-direction:column;
  transition:right .45s var(--kv-ease);
  box-shadow:-30px 0 60px -10px rgba(0,0,0,.6);
}
.kv-mobile-menu.is-open{ right:0; }
.kv-mobile-menu__head{
  display:flex; justify-content:space-between; align-items:center;
  padding:22px 28px;
  border-bottom:1px solid var(--kv-line);
}
.kv-mobile-menu__brand{
  font-family:var(--kv-display);
  font-size:1.2rem; letter-spacing:.18em;
  text-transform:uppercase;
}
#kvMobileClose{
  background:transparent; border:none; cursor:pointer;
  color:var(--kv-ink); font-size:2rem; line-height:1;
  width:40px; height:40px;
  transition:color .2s, transform .3s var(--kv-ease);
}
#kvMobileClose:hover{ color:var(--kv-gold); transform:rotate(90deg); }

.kv-mobile-menu__nav{
  flex:1; overflow-y:auto;
  padding:14px 0;
  display:flex; flex-direction:column;
}
.kv-mobile-menu__nav > a,
.kv-mobile-menu__nav > details > summary{
  display:flex; align-items:center; justify-content:space-between;
  padding:18px 28px;
  color:inherit; text-decoration:none;
  font-size:.86rem; font-weight:600;
  letter-spacing:.16em;
  text-transform:uppercase;
  border-bottom:1px solid rgba(255,255,255,.05);
  cursor:pointer; list-style:none;
}
.kv-mobile-menu__nav > details > summary::-webkit-details-marker{ display:none; }
.kv-mobile-menu__nav > details[open] > summary svg{ transform:rotate(-180deg); }
.kv-mobile-menu__nav > details > summary svg{ transition:transform .3s var(--kv-ease); }

.kv-mobile-menu__sub{
  padding:8px 0 14px;
  background:rgba(255,255,255,.02);
}
.kv-mobile-menu__sub a{
  display:block;
  padding:10px 28px 10px 44px;
  color:var(--kv-ink-soft);
  text-decoration:none;
  font-size:.8rem;
  letter-spacing:.04em;
}
.kv-mobile-menu__sub a:hover{ color:var(--kv-gold); }
.kv-mobile-menu__all{ color:var(--kv-gold)!important; font-weight:700; }

.kv-mobile-menu__cta{
  margin:18px 28px 0;
  background:var(--kv-gold)!important;
  color:#000!important;
  text-align:center;
  border-bottom:none!important;
  letter-spacing:.22em!important;
}
.kv-mobile-menu__foot{
  padding:18px 28px;
  border-top:1px solid var(--kv-line);
  display:flex; flex-direction:column; gap:6px;
  font-size:.78rem;
}
.kv-mobile-menu__foot a{
  color:var(--kv-ink-soft); text-decoration:none;
}

/* Backdrop */
.kv-backdrop{
  position:fixed; inset:0; z-index:125;
  background:rgba(0,0,0,.55);
  opacity:0; visibility:hidden;
  transition:opacity .3s var(--kv-ease), visibility 0s linear .3s;
}
.kv-backdrop.is-open{
  opacity:1; visibility:visible;
  transition:opacity .3s var(--kv-ease);
}

/* MAIN container fix */
.kv-main{ min-height:50vh; }
body.page-inner .kv-main{ padding-top:0; }
