/* ============ CLOVES — Fine Jewellery =============
   Palette & type reverse-engineered from the Golden_Jewellery06
   WooCommerce demo: cream body, warm brown/gold accent, Marcellus
   serif headings over Rubik sans body copy. */

:root{
  --cream:        #fefbf8;
  --cream-soft:   #faf3ec;
  --ink:          #1b1b1b;
  --text:         #666666;
  --accent:       #ac7f5e;
  --accent-dark:  #8f684a;
  --accent-light: #e8d9cb;
  --border:       #ece3d8;
  --white:        #ffffff;
  --radius:       4px;
  --shadow: 0 10px 30px rgba(172,127,94,.12);
  --maxw: 1240px;
}

*,*::before,*::after{ box-sizing:border-box; }
html{ scroll-behavior:smooth; }
body{
  margin:0;
  font-family:'Rubik', sans-serif;
  font-size:15px;
  line-height:1.75;
  color:var(--text);
  background:var(--cream);
}
h1,h2,h3,h4{
  font-family:'Marcellus', serif;
  color:var(--ink);
  line-height:1.25;
  margin:0 0 .5em;
  font-weight:400;
}
p{ margin:0 0 1em; }
a{ color:var(--accent); text-decoration:none; transition:color .2s ease; }
a:hover{ color:var(--accent-dark); }
ul{ list-style:none; margin:0; padding:0; }
img{ max-width:100%; display:block; }
svg{ width:1em; height:1em; fill:none; stroke:currentColor; stroke-width:1.6; stroke-linecap:round; stroke-linejoin:round; }
.container{ max-width:var(--maxw); margin:0 auto; padding:0 24px; }

.btn{
  display:inline-block;
  padding:14px 34px;
  border-radius:var(--radius);
  font-size:14px;
  letter-spacing:.03em;
  text-transform:uppercase;
  border:1px solid transparent;
  cursor:pointer;
  transition:all .25s ease;
}
.btn-primary{ background:var(--accent); color:var(--white); }
.btn-primary:hover{ background:var(--accent-dark); color:var(--white); }
.btn-outline-light{ border-color:rgba(255,255,255,.7); color:var(--white); background:transparent; }
.btn-outline-light:hover{ background:var(--white); color:var(--accent-dark); }

.eyebrow{
  display:inline-block;
  font-size:12px;
  letter-spacing:.15em;
  text-transform:uppercase;
  color:var(--accent);
  margin-bottom:14px;
  font-weight:500;
}

.section{ padding:80px 0; }
.section-title{
  font-size:32px;
  text-align:center;
  margin-bottom:44px;
  position:relative;
}
.section-title.light{ color:var(--white); }
.section-title::after{
  content:'';
  display:block;
  width:56px; height:2px;
  background:var(--accent);
  margin:14px auto 0;
}

/* ================= TOPBAR (kayan duyuru şeridi) ================= */
.topbar{
  background:#6a7058;
  color:var(--white);
  font-size:13px;
  letter-spacing:.02em;
  padding:9px 0;
  overflow:hidden;
  white-space:nowrap;
  box-shadow:0 3px 8px rgba(0,0,0,.1);
}
.topbar-track{
  display:inline-flex;
  animation:topbar-marquee 22s linear infinite;
  will-change:transform;
}
.topbar:hover .topbar-track{ animation-play-state:paused; }
.topbar-msg{ display:inline-block; padding:0 20px; }
.topbar-sep{ display:inline-flex; align-items:center; opacity:.6; padding:0 2px; }
.topbar-sep svg{ width:9px; height:9px; stroke-width:2.2; }
.topbar strong{ font-weight:600; }
@keyframes topbar-marquee{
  from{ transform:translateX(0); }
  to{ transform:translateX(-50%); } /* içerik iki kopya halinde konulduğu için tam yarısı kadar kayınca kusursuz/boşluksuz döngü oluşur */
}
@media (prefers-reduced-motion:reduce){
  .topbar-track{ animation:none; }
}

/* ================= HEADER ================= */
.site-header{
  background:var(--white);
  position:sticky; top:0; z-index:100;
  box-shadow:0 4px 12px rgba(0,0,0,.08);
}
.header-inner{
  display:flex;
  align-items:center;
  gap:28px;
  padding:26px 24px; /* dikey padding toplamda ~%20 arttırıldı (18px -> 22px -> 26px) */
  position:relative; /* arama/hesap/favoriler/sepet panelleri bu kutuya göre, menü çubuğunun tam altında açılır */
}
.logo{
  font-family:'Marcellus', serif;
  font-size:26px;
  letter-spacing:.12em;
  color:var(--ink);
  margin-right:auto;
}
.logo.light{ color:var(--white); }
.logo:hover{ color:var(--accent); }

.main-nav > ul{ display:flex; gap:30px; }
.main-nav > ul > li{ display:flex; align-items:center; gap:4px; flex-wrap:wrap; }
.main-nav a{
  color:var(--ink);
  font-size:14px;
  font-weight:500;
  text-transform:uppercase;
  letter-spacing:.03em;
  position:relative;
}
.main-nav a:hover{ color:var(--accent); }
.main-nav a.current-page{ color:var(--accent); }
.tag{
  background:#f2b6c6;
  color:#7a1f3d;
  font-size:9px;
  font-weight:700;
  padding:2px 5px;
  border-radius:2px;
  margin-left:4px;
  vertical-align:middle;
}

.header-actions{ display:flex; align-items:center; gap:18px; }
.search-box{ position:static; }
.search-toggle{
  border:none; background:var(--accent); color:var(--white);
  width:30px; height:30px; border-radius:50%;
  display:flex; align-items:center; justify-content:center; cursor:pointer;
}
.search-toggle svg{ width:15px; height:15px; }
.search-dropdown{
  position:absolute; top:100%; right:0;
  background:var(--white); border:1px solid var(--border); border-top:none; border-radius:0 0 12px 12px;
  padding:16px 24px; box-shadow:0 14px 34px rgba(0,0,0,.14);
  width:280px; z-index:60;
}
.search-dropdown[hidden]{ display:none; }
.search-dropdown input{
  width:100%; border:1px solid var(--border); border-radius:20px;
  background:var(--cream-soft); outline:none;
  padding:9px 16px; font-family:inherit; font-size:13px; color:var(--ink);
}
.search-dropdown input:focus{ border-color:var(--accent); }

.account-box, .wishlist-box, .cart-box{ position:static; }
.icon-btn{
  position:relative;
  color:var(--ink);
  display:flex; width:22px; height:22px;
  background:none; border:none; padding:0; cursor:pointer; font-family:inherit;
}
.icon-btn svg{ width:100%; height:100%; }
.icon-btn:hover{ color:var(--accent); }
.icon-btn .badge{
  position:absolute; top:-8px; right:-10px;
  background:var(--accent); color:var(--white);
  font-size:10px; line-height:1;
  width:16px; height:16px; border-radius:50%;
  display:flex; align-items:center; justify-content:center;
}

/* ---------------- hesap / favoriler / sepet açılır panelleri ---------------- */
.account-dropdown, .wishlist-dropdown, .cart-dropdown{
  position:absolute; top:100%; right:0;
  background:var(--white); border:1px solid var(--border); border-top:none; border-radius:0 0 12px 12px;
  box-shadow:0 14px 34px rgba(0,0,0,.14);
  width:280px; z-index:60;
}
.account-dropdown[hidden], .wishlist-dropdown[hidden], .cart-dropdown[hidden]{ display:none; }
.account-dropdown-inner, .wishlist-dropdown-inner, .cart-dropdown-inner{ padding:20px; }
.account-dropdown-inner h4, .wishlist-dropdown-inner h4, .cart-dropdown-inner h4{
  font-family:'Marcellus',serif; font-size:15px; margin-bottom:14px;
}

/* hesap paneli */
.account-dropdown-inner form{ display:flex; flex-direction:column; gap:10px; }
.account-dropdown-inner input{
  border:1px solid var(--border); border-radius:8px; padding:10px 12px;
  font-family:inherit; font-size:13px; color:var(--ink); outline:none;
}
.account-dropdown-inner input:focus{ border-color:var(--accent); }
.account-dropdown-inner .btn{ width:100%; text-align:center; }
.account-dropdown-error{
  font-size:12px; color:#c0435a; background:#fbe9ec; border-radius:6px;
  padding:8px 10px; margin:2px 0 0;
}
.account-dropdown-error[hidden]{ display:none; }
.account-mode-switch{
  display:block; width:100%; text-align:center; margin-top:14px;
  background:none; border:none; color:var(--accent); font-size:12px; cursor:pointer;
}
.account-mode-switch:hover{ text-decoration:underline; }
.account-dropdown-user{ display:flex; align-items:center; gap:12px; margin-bottom:16px; }
.account-dropdown-inner .btn + .btn{ margin-top:10px; }
.account-avatar{
  width:42px; height:42px; border-radius:50%; flex:0 0 auto;
  background:var(--accent); color:var(--white);
  display:flex; align-items:center; justify-content:center;
  font-family:'Marcellus',serif; font-size:15px;
}
.account-dropdown-user-info{ display:flex; flex-direction:column; min-width:0; }
.account-dropdown-user-info strong{ font-size:13.5px; color:var(--ink); }
.account-dropdown-user-info span{ font-size:12px; color:var(--text); overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }

/* favoriler / sepet ortak liste stilleri */
.wishlist-empty, .cart-empty{ font-size:13px; color:var(--text); text-align:center; padding:10px 0; }
.wishlist-dropdown-list, .cart-dropdown-list{
  display:flex; flex-direction:column; gap:12px;
  max-height:320px; overflow-y:auto; margin-bottom:6px;
}
.wishlist-row, .cart-row{ display:flex; align-items:center; gap:10px; }
.wishlist-row-thumb, .cart-row-thumb{
  width:46px; height:46px; border-radius:8px; overflow:hidden; flex:0 0 auto;
  background:linear-gradient(145deg, var(--cream-soft), var(--accent-light));
  color:var(--accent-dark); display:flex; align-items:center; justify-content:center;
}
.wishlist-row-thumb svg, .cart-row-thumb svg{ width:50%; height:50%; }
.wishlist-row-thumb img, .cart-row-thumb img{ width:100%; height:100%; object-fit:cover; }
.wishlist-row-info, .cart-row-info{ flex:1; min-width:0; display:flex; flex-direction:column; gap:2px; }
.wishlist-row-name, .cart-row-name{
  font-size:13px; color:var(--ink); font-weight:500; text-decoration:none;
  overflow:hidden; text-overflow:ellipsis; white-space:nowrap;
}
.wishlist-row-name:hover, .cart-row-name:hover{ color:var(--accent); }
.wishlist-row-meta, .cart-row-meta{ font-size:12px; color:var(--text); }
.wishlist-row-remove, .cart-row-remove{
  background:none; border:none; color:#c0435a; cursor:pointer; font-size:15px;
  padding:4px 6px; flex:0 0 auto;
}
.wishlist-row-remove:hover, .cart-row-remove:hover{ background:#fbe9ec; border-radius:4px; }

/* sepet alt toplamı */
.cart-dropdown-footer{ border-top:1px solid var(--border); padding-top:14px; }
.cart-dropdown-subtotal{
  display:flex; justify-content:space-between; align-items:center;
  font-size:13px; color:var(--text); margin-bottom:12px;
}
.cart-dropdown-subtotal strong{ color:var(--ink); font-family:'Marcellus',serif; font-size:16px; }
.cart-dropdown-footer .btn{ width:100%; text-align:center; }
.cart-dropdown-footer .btn:disabled{ opacity:.55; cursor:not-allowed; }

/* arama sonuçları */
.search-results{ margin-top:10px; max-height:280px; overflow-y:auto; }
.search-results[hidden]{ display:none; }
.search-no-results{ font-size:12.5px; color:var(--text); text-align:center; padding:8px 0; }
.search-result-row{
  display:flex; align-items:center; gap:10px; padding:8px 4px;
  text-decoration:none; border-radius:6px;
}
.search-result-row:hover{ background:var(--cream-soft); }
.search-result-thumb{
  width:38px; height:38px; border-radius:6px; overflow:hidden; flex:0 0 auto;
  background:linear-gradient(145deg, var(--cream-soft), var(--accent-light));
  color:var(--accent-dark); display:flex; align-items:center; justify-content:center;
}
.search-result-thumb svg{ width:55%; height:55%; }
.search-result-thumb img{ width:100%; height:100%; object-fit:cover; }
.search-result-info{ display:flex; flex-direction:column; gap:2px; min-width:0; }
.search-result-name{
  font-size:12.5px; color:var(--ink); overflow:hidden; text-overflow:ellipsis; white-space:nowrap;
}
.search-result-price{ font-size:11.5px; color:var(--accent); }

.mobile-toggle{
  display:none; flex-direction:column; gap:5px;
  background:none; border:none; cursor:pointer; padding:4px;
}
.mobile-toggle span{ width:24px; height:2px; background:var(--ink); }

.mobile-nav-close{
  display:none;
  position:absolute; top:24px; right:24px;
  width:38px; height:38px; border-radius:50%;
  background:var(--cream-soft); border:1px solid var(--border);
  color:var(--ink); font-size:16px; line-height:1; cursor:pointer;
  align-items:center; justify-content:center;
}
.mobile-nav-close:hover{ border-color:var(--accent); color:var(--accent); }

/* ---------- nav mega-menu (Ürünler) ---------- */
.dropdown-toggle{
  background:none; border:none; cursor:pointer; padding:2px;
  color:var(--ink); display:inline-flex; align-items:center; justify-content:center;
}
.dropdown-toggle svg{ width:10px; height:10px; stroke-width:2.4; transition:transform .2s ease; }
.has-dropdown.open .dropdown-toggle svg{ transform:rotate(180deg); }

/* mobile / default: plain accordion under the nav item */
.mega-menu{
  flex-basis:100%; width:100%;
  max-height:0; overflow:hidden;
  transition:max-height .35s ease;
}
.has-dropdown.open .mega-menu{ max-height:900px; }
.mega-menu-inner{
  display:grid;
  grid-template-columns:repeat(2, 1fr);
  gap:14px;
  padding:14px 0 18px;
}
.mega-item{
  display:flex; align-items:center; gap:10px;
  color:var(--ink);
}
.mega-item-thumb{
  flex:0 0 auto; width:44px; height:44px;
  border-radius:var(--radius);
  overflow:hidden;
  background:linear-gradient(145deg, var(--cream-soft), var(--accent-light));
  color:var(--accent-dark);
  display:flex; align-items:center; justify-content:center;
}
.mega-item-thumb svg{ width:60%; height:60%; stroke-width:1.2; }
.mega-item-info{ display:flex; flex-direction:column; }
.mega-item-name{ font-family:'Marcellus', serif; font-size:14px; line-height:1.3; }
.mega-item-count{ font-size:11px; color:var(--text); }
.mega-item:hover .mega-item-name{ color:var(--accent); }

/* desktop: full site-width panel, opens right below the header */
@media (min-width:861px){
  .dropdown-toggle{ display:none; }
  .site-header{ position:sticky; }
  .mega-menu{
    position:absolute; top:100%; left:50%;
    width:100%; max-width:var(--maxw);
    max-height:none; overflow:visible;
    background:var(--white);
    border:1px solid var(--border); border-top:none;
    box-shadow:var(--shadow);
    border-radius:0 0 var(--radius) var(--radius);
    opacity:0; visibility:hidden;
    transform:translate(-50%, 8px);
    transition:opacity .22s ease, transform .22s ease, visibility .22s ease;
    z-index:150;
  }
  .has-dropdown.open .mega-menu{
    opacity:1; visibility:visible; transform:translate(-50%, 0);
  }
  .mega-menu-inner{
    grid-template-columns:repeat(7, 1fr);
    gap:20px;
    padding:32px 24px;
  }
  .mega-item{ flex-direction:column; text-align:center; gap:12px; }
  .mega-item-thumb{ width:100%; aspect-ratio:1/1; height:auto; transition:transform .25s ease, box-shadow .25s ease; }
  .mega-item-thumb svg{ width:42%; height:42%; }
  .mega-item:hover .mega-item-thumb{ transform:translateY(-5px); box-shadow:var(--shadow); }
}

/* ================= HERO (çoklu slayt, admin panelden ekle/sil) ================= */
.hero{
  background:linear-gradient(120deg, var(--cream-soft) 0%, var(--cream) 60%);
  overflow:hidden;
  position:relative;
}
.hero-slides{ position:relative; min-height:650px; } /* 520px -> %25 daha yüksek */
.hero-slide{
  position:absolute; inset:0;
  opacity:0; visibility:hidden;
  transition:opacity .8s ease;
}
.hero-slide.active{ opacity:1; visibility:visible; z-index:1; }
.hero-inner{
  position:relative; z-index:2; /* metin her zaman resmin üzerinde görünsün */
  height:100%;
  display:flex;
  align-items:center;
  padding:0 24px;
}
.hero-text{ max-width:540px; }

.hero-dots{
  position:absolute; bottom:22px; left:50%; transform:translateX(-50%);
  display:flex; gap:9px; z-index:2;
}
.hero-dots button{
  width:9px; height:9px; border-radius:50%; border:none; padding:0;
  background:var(--accent-light); cursor:pointer;
  transition:background .2s ease, transform .2s ease;
}
.hero-dots button.active{ background:var(--accent); transform:scale(1.35); }
.hero-dots button:hover{ background:var(--accent-dark); }

.hero-arrow{
  position:absolute; top:50%; transform:translateY(-50%);
  width:44px; height:44px; border-radius:50%;
  background:var(--white); border:1px solid var(--border);
  display:flex; align-items:center; justify-content:center;
  font-size:22px; line-height:1; color:var(--ink); cursor:pointer;
  box-shadow:0 4px 12px rgba(0,0,0,.08);
  transition:all .2s ease; z-index:2;
}
.hero-arrow:hover{ background:var(--accent); border-color:var(--accent); color:var(--white); }
.hero-arrow-prev{ left:20px; }
.hero-arrow-next{ right:20px; }
.hero-text h1{ font-size:46px; margin-bottom:22px; }
.hero-text p{ max-width:430px; font-size:16px; }
.hero-art{
  position:absolute; top:0; right:0; bottom:0; /* ekranın en sağına kadar uzanır */
  width:56%;
  z-index:1;
  overflow:hidden;
  color:var(--accent);
  display:flex; align-items:center; justify-content:center;
  /* resmin kendisini sol kenarında kademeli olarak saydamlaştırır, böylece
     altındaki gerçek arka plan (krem gradyan) doğal biçimde görünür —
     üzerine sahte bir renk bindirmek yerine gerçek geçiş olduğu için
     renk uyuşmazlığından kaynaklanan sert/keskin kenar oluşmaz. */
  -webkit-mask-image: linear-gradient(to right,
    transparent 0%, rgba(0,0,0,.25) 18%, rgba(0,0,0,.65) 34%, #000 55%);
  mask-image: linear-gradient(to right,
    transparent 0%, rgba(0,0,0,.25) 18%, rgba(0,0,0,.65) 34%, #000 55%);
}
.hero-art img{ width:100%; height:100%; object-fit:cover; display:block; }
.hero-circle{
  position:absolute;
  width:340px; height:340px;
  border-radius:50%;
  background:radial-gradient(circle at 35% 30%, var(--accent-light), transparent 70%);
}
.hero-ring{
  position:absolute; left:8%; top:8%;
  width:190px; height:190px;
  opacity:.9;
  filter:drop-shadow(0 12px 20px rgba(172,127,94,.25));
}
.hero-earring{
  position:absolute; right:14%; bottom:2%;
  width:150px; height:150px;
  color:var(--accent-dark);
  filter:drop-shadow(0 12px 20px rgba(172,127,94,.25));
}

/* ================= FEATURES ================= */
.features{ background:var(--white); padding:36px 0; border-bottom:1px solid var(--border); }
.features-grid{
  display:grid;
  grid-template-columns:repeat(4, 1fr);
  gap:24px;
}
.feature-item{ display:flex; align-items:center; gap:14px; }
.feature-item svg{
  width:34px; height:34px; min-width:34px;
  color:var(--accent); stroke-width:1.3;
}
.feature-item h3{ font-size:15px; margin:0 0 2px; font-family:'Rubik',sans-serif; font-weight:600; color:var(--ink); }
.feature-item p{ margin:0; font-size:13px; }

/* ================= CATEGORIES ================= */
.categories-carousel{ display:flex; align-items:center; gap:14px; }
.cat-grid{
  display:flex;
  flex:1; min-width:0;
  gap:18px;
  overflow-x:hidden;
  scroll-behavior:smooth;
}
.cat-grid .cat-card{
  flex:0 0 calc(100%/6 - 15px); /* 6 kategori/sayfa (5 boşluk × 18px'in 6'ya bölünmüş payı) */
  min-width:0;
}
.cat-card{
  display:flex; flex-direction:column; align-items:center; text-align:center;
  background:var(--cream-soft);
  border:1px solid var(--border);
  border-radius:var(--radius);
  padding:28px 10px 20px;
  transition:transform .25s ease, box-shadow .25s ease, background .25s ease;
}
.cat-card:hover{ transform:translateY(-6px); box-shadow:var(--shadow); background:var(--white); }
.cat-icon{ font-size:30px; color:var(--accent); margin-bottom:14px; }
.cat-icon-media{
  width:52px; height:52px; border-radius:50%; overflow:hidden;
  display:flex; align-items:center; justify-content:center;
  background:var(--accent-light);
}
.cat-icon-media svg{ width:56%; height:56%; stroke-width:1.3; }
.cat-icon-media img{ border-radius:50%; }
.cat-name{ font-family:'Marcellus', serif; color:var(--ink); font-size:15px; }
.cat-count{ font-size:12px; margin-top:4px; }

/* ================= PRODUCTS ================= */
.section-head{ text-align:center; }
.tabs{
  display:flex; justify-content:center; gap:8px;
  margin-bottom:44px; flex-wrap:wrap;
}
.tab{
  background:none; border:1px solid var(--border);
  padding:10px 22px; border-radius:20px;
  font-family:'Rubik',sans-serif; font-size:13px; text-transform:uppercase; letter-spacing:.03em;
  color:var(--text); cursor:pointer; transition:all .2s ease;
}
.tab:hover{ border-color:var(--accent); color:var(--accent); }
.tab.active{ background:var(--accent); border-color:var(--accent); color:var(--white); }

.product-grid{
  display:none;
  grid-template-columns:repeat(4, 1fr);
  gap:26px;
}
.product-grid.active{ display:grid; }
#bestSellingGrid{ display:grid; }
.product-grid.category-grid{ display:grid; }

/* ---- "Beğenilen Ürünler": her zaman 4 tanesi sabit görünür,
   fazlası sol/sağ oklarla kaydırılarak gezilir ---- */
.products-carousel{ display:flex; align-items:center; gap:14px; }
.product-grid.tab-panel.active{
  display:flex;
  flex:1; min-width:0;
  overflow-x:hidden;
  scroll-behavior:smooth;
}
.product-grid.tab-panel.active .product-card{
  flex:0 0 calc(25% - 19.5px); /* 4 kart/sayfa (3 boşluk × 26px'in 4'e bölünmüş payı) */
  min-width:0;
}
.carousel-arrow{
  flex:0 0 auto;
  width:44px; height:44px; border-radius:50%;
  border:1px solid var(--border); background:var(--white);
  display:flex; align-items:center; justify-content:center;
  font-size:22px; line-height:1; color:var(--ink); cursor:pointer;
  transition:all .2s ease;
}
.carousel-arrow:hover{ background:var(--accent); border-color:var(--accent); color:var(--white); }
.carousel-arrow:disabled{ opacity:.3; cursor:default; pointer-events:none; }
.carousel-arrow[hidden]{ display:none; }

.product-card{
  background:var(--white);
  border:1px solid var(--border);
  border-radius:var(--radius);
  overflow:hidden;
  position:relative;
  transition:box-shadow .25s ease, transform .25s ease;
}
.product-card:hover{ box-shadow:var(--shadow); transform:translateY(-4px); }
.product-media{
  aspect-ratio:1/1;
  display:flex; align-items:center; justify-content:center;
  background:linear-gradient(145deg, var(--cream-soft), var(--accent-light));
  color:var(--accent-dark);
  position:relative;
  text-decoration:none;
}
.product-media svg{ width:46%; height:46%; stroke-width:1.1; }
.badge-sale{
  position:absolute; top:12px; left:12px;
  background:#c0435a; color:var(--white);
  font-size:11px; font-weight:600;
  padding:4px 9px; border-radius:20px;
}
.badge-countdown{
  position:absolute; bottom:0; left:0; right:0;
  background:rgba(27,27,27,.78); color:var(--white);
  font-size:11px; text-align:center; padding:6px 4px;
  display:flex; justify-content:center; gap:6px; letter-spacing:.02em;
}
.wishlist-quick{
  position:absolute; top:12px; right:12px;
  width:32px; height:32px; border-radius:50%;
  background:var(--white); color:var(--ink);
  border:none; padding:0; cursor:pointer;
  display:flex; align-items:center; justify-content:center;
  box-shadow:0 4px 10px rgba(0,0,0,.08);
  opacity:0; transform:translateY(-6px);
  transition:all .2s ease;
  z-index:2;
}
.product-card:hover .wishlist-quick{ opacity:1; transform:translateY(0); }
.wishlist-quick svg{ width:16px; height:16px; }
.wishlist-quick.active{ opacity:1; transform:translateY(0); color:#c0435a; }
.wishlist-quick.active svg{ fill:currentColor; }
.product-info{ padding:18px 18px 22px; text-align:center; }
.product-title-link{ color:inherit; text-decoration:none; display:block; }
.product-title-link:hover h3{ color:var(--accent); }
.product-info h3{
  font-family:'Rubik',sans-serif; font-weight:500; font-size:14.5px;
  color:var(--ink); margin-bottom:8px;
  transition:color .2s ease;
}
.rating{ color:#e2b13c; font-size:12px; letter-spacing:1px; margin-bottom:8px; }
.rating span{ color:var(--text); margin-left:4px; }
.price{ font-family:'Marcellus', serif; font-size:17px; color:var(--accent); }
.price del{ color:#b7b0a8; font-weight:400; margin-right:8px; font-family:'Rubik',sans-serif; font-size:14px; }

/* ================= PROMO BANNERS ================= */
.promo-banners{ padding-top:0; }
.promo-grid{ display:grid; grid-template-columns:1fr 1fr; gap:24px; }
.promo-card{
  border-radius:6px;
  padding:52px 44px;
  min-height:220px;
  display:flex; flex-direction:column; justify-content:center;
  color:var(--white);
}
.promo-card h3{ color:var(--white); font-size:28px; margin-bottom:10px; }
.promo-card p{ color:rgba(255,255,255,.85); max-width:280px; }
.promo-card .btn{ align-self:flex-start; margin-top:6px; }
.promo-gold{ background:linear-gradient(135deg,#8f684a,#c39a72); }
.promo-earring{ background:linear-gradient(135deg,#6d5346,#a9836a); }

/* ================= FEATURED BANNER ================= */
.featured-banner{
  background:var(--ink);
  background-image:radial-gradient(circle at 20% 30%, rgba(172,127,94,.35), transparent 55%),
                    radial-gradient(circle at 80% 70%, rgba(172,127,94,.25), transparent 50%);
  text-align:center;
  color:var(--white);
}
.featured-inner{ max-width:640px; margin:0 auto; }
.featured-banner h2{ color:var(--white); font-size:36px; }
.featured-banner p{ color:rgba(255,255,255,.75); margin-bottom:28px; }

/* ---- yaşam yolu numarası hesaplayıcısı (numeroloji) ---- */
.numerology-calc{ margin-top:36px; padding-top:30px; border-top:1px solid rgba(255,255,255,.15); }
.numerology-calc label{
  display:block; margin-bottom:14px;
  font-size:12.5px; color:rgba(255,255,255,.7);
  text-transform:uppercase; letter-spacing:.06em;
}
.numerology-row{ display:flex; gap:12px; justify-content:center; flex-wrap:wrap; }
.numerology-row input[type=date]{
  border:1px solid rgba(255,255,255,.3);
  background:rgba(255,255,255,.08);
  color:var(--white);
  color-scheme:dark;
  border-radius:6px;
  padding:13px 14px;
  font-family:inherit; font-size:14px;
  min-width:170px;
}
.numerology-row input[type=date]::-webkit-calendar-picker-indicator{ filter:invert(1); cursor:pointer; }
.numerology-result{
  margin:20px 0 0;
  font-family:'Marcellus', serif;
  font-size:19px;
  color:rgba(255,255,255,.85);
}
.numerology-result strong{ color:var(--accent); font-size:30px; margin-left:6px; }

/* ================= HİKAYEMİZ (ana sayfa bölümü) ================= */
.home-story{ padding:90px 0; text-align:center; }
.home-story-content{
  max-width:740px; margin:0 auto;
  font-size:16.5px; line-height:1.9; color:var(--text);
}
.home-story-content p{ margin-bottom:18px; }
.home-story-content p:last-child{ margin-bottom:0; }
.home-story-content strong{ color:var(--ink); }
.home-story-content em{ color:var(--accent); font-style:italic; }
.home-story-content ul, .home-story-content ol{ text-align:left; max-width:520px; margin:0 auto 18px; padding-left:22px; }
.home-story-content a{ text-decoration:underline; }

/* ================= BLOG ================= */
.blog-grid{ display:grid; grid-template-columns:repeat(3, 1fr); gap:28px; }

/* ana sayfadaki mini-carousel: her zaman 3 yazı sabit, fazlası oklarla
   kaydırılır (blog.html'deki tam listede .blog-grid normal grid kalır,
   bu kurallar yalnızca .blog-carousel içindeyken devreye girer) */
.blog-carousel{ display:flex; align-items:center; gap:14px; }
.blog-carousel .blog-grid{
  display:flex; flex:1; min-width:0;
  overflow-x:hidden; scroll-behavior:smooth;
}
.blog-carousel .blog-grid .blog-card{
  flex:0 0 calc(100%/3 - 18.67px); /* 3 kart/sayfa (2 boşluk × 28px'in 3'e bölünmüş payı) */
  min-width:0;
}
.blog-view-all{ text-align:center; margin-top:40px; }
.btn-outline-dark{ border-color:var(--accent); color:var(--accent); background:transparent; }
.btn-outline-dark:hover{ background:var(--accent); color:var(--white); }
.blog-card{
  background:var(--white);
  border:1px solid var(--border);
  border-radius:var(--radius);
  overflow:hidden;
}
.blog-media{
  aspect-ratio:16/10;
  background:linear-gradient(145deg, var(--cream-soft), var(--accent-light));
  display:flex; align-items:center; justify-content:center;
  color:var(--accent-dark);
}
.blog-media svg{ width:34%; height:34%; }
.blog-body{ padding:20px 22px 24px; }
.blog-meta{ font-size:12px; color:var(--accent); text-transform:uppercase; letter-spacing:.03em; margin-bottom:8px; }
.blog-title-link{ color:inherit; text-decoration:none; }
.blog-title-link:hover h3{ color:var(--accent); }
.blog-body h3{ font-family:'Rubik',sans-serif; font-weight:600; font-size:16px; color:var(--ink); margin-bottom:8px; transition:color .2s ease; }
.blog-body p{ font-size:13.5px; margin-bottom:12px; }
.read-more{ font-size:12px; text-transform:uppercase; letter-spacing:.03em; font-weight:600; }

/* ================= BLOG YAZISI DETAY SAYFASI ================= */
.blog-post{ padding:56px 0 20px; }
.blog-post-container{ max-width:760px; margin:0 auto; }
.blog-post-header{ text-align:center; margin-bottom:32px; }
.blog-post-meta{
  display:block; font-size:13px; color:var(--accent);
  text-transform:uppercase; letter-spacing:.05em; margin-bottom:12px;
}
.blog-post-header h1{ font-size:36px; }
.blog-post-image{
  aspect-ratio:16/9; border-radius:8px; overflow:hidden;
  background:linear-gradient(145deg, var(--cream-soft), var(--accent-light));
  color:var(--accent-dark);
  display:flex; align-items:center; justify-content:center;
  margin-bottom:36px;
}
.blog-post-image svg{ width:20%; height:20%; }
.blog-post-image img{ width:100%; height:100%; object-fit:cover; }
.blog-post-content{ font-size:16px; line-height:1.9; color:var(--text); padding-bottom:30px; }
.blog-post-content p{ margin-bottom:20px; }
.blog-post-content p:last-child{ margin-bottom:0; }

.blog-related{ background:var(--cream-soft); border-top:1px solid var(--border); }

/* ================= DOĞAL TAŞ ANSİKLOPEDİSİ (dogal-taslar.html) ================= */
.gemstone-intro{ max-width:640px; margin:0 auto 32px; text-align:center; color:var(--text); font-size:15px; line-height:1.8; }
.gemstone-search-wrap{ display:flex; justify-content:center; margin-bottom:28px; }
.gemstone-search-box{
  display:flex; align-items:center; gap:12px;
  width:100%; max-width:460px;
  background:var(--white); border:1px solid var(--border); border-radius:30px;
  padding:14px 22px; color:var(--text);
}
.gemstone-search-box svg{ width:18px; height:18px; flex:0 0 auto; }
.gemstone-search-box input{
  flex:1; border:none; outline:none; background:none;
  font-family:inherit; font-size:14px; color:var(--ink);
}
.gemstone-alpha-nav{
  display:flex; flex-wrap:wrap; justify-content:center; gap:8px;
  margin-bottom:40px; padding-bottom:32px; border-bottom:1px solid var(--border);
}
.gemstone-alpha-btn{
  min-width:34px; height:34px; padding:0 8px;
  border:1px solid transparent; border-radius:50%;
  background:none; color:var(--text); font-family:inherit; font-size:13px; font-weight:500;
  cursor:pointer; transition:all .15s ease;
}
.gemstone-alpha-btn:hover{ color:var(--accent); }
.gemstone-alpha-btn.active{ background:var(--accent-dark); color:var(--white); }
.gemstone-empty{ grid-column:1 / -1; text-align:center; color:var(--text); font-size:14px; padding:30px 0; }
.gemstone-grid{ display:grid; grid-template-columns:repeat(4, 1fr); gap:26px; }
.gemstone-card{
  background:var(--white); border:1px solid var(--border); border-radius:var(--radius);
  overflow:hidden; text-align:center; transition:transform .2s ease, box-shadow .2s ease;
}
.gemstone-card:hover{ transform:translateY(-6px); box-shadow:var(--shadow); }
.gemstone-media{
  aspect-ratio:1/1;
  background:linear-gradient(145deg, var(--cream-soft), var(--accent-light));
  display:flex; align-items:center; justify-content:center; color:var(--accent-dark);
}
.gemstone-media svg{ width:34%; height:34%; stroke-width:1.2; }
.gemstone-media img{ width:100%; height:100%; object-fit:cover; }
.gemstone-body{ padding:18px 20px 22px; }
.gemstone-body h3{ font-family:'Marcellus',serif; font-size:17px; margin-bottom:8px; }
.gemstone-title-link{ color:inherit; text-decoration:none; }
.gemstone-title-link:hover h3{ color:var(--accent); }
.gemstone-body p{ font-size:13px; color:var(--text); line-height:1.6; margin-bottom:14px; }

/* ================= DOĞAL TAŞ DETAY SAYFASI (tas-detay.html) ================= */
.gem-detail{ padding:56px 0 20px; }
.gem-detail-grid{ display:grid; grid-template-columns:1fr 1fr; gap:50px; align-items:start; margin-bottom:44px; }
.gem-detail-image{
  aspect-ratio:1/1; border-radius:var(--radius); overflow:hidden;
  background:linear-gradient(145deg, var(--cream-soft), var(--accent-light));
  color:var(--accent-dark); display:flex; align-items:center; justify-content:center;
}
.gem-detail-image svg{ width:34%; height:34%; stroke-width:1; }
.gem-detail-image img{ width:100%; height:100%; object-fit:cover; }
.gem-detail-thumbs{ display:grid; grid-template-columns:repeat(4, 1fr); gap:12px; margin-top:14px; }
.gem-detail-thumbs[hidden]{ display:none; }
.gem-detail-thumbs button{
  aspect-ratio:1/1; border-radius:var(--radius);
  overflow:hidden;
  background:linear-gradient(145deg, var(--cream-soft), var(--accent-light));
  color:var(--accent-dark);
  border:2px solid transparent; cursor:pointer;
  display:flex; align-items:center; justify-content:center;
  padding:8px;
  transition:border-color .2s ease;
}
.gem-detail-thumbs button svg{ width:100%; height:100%; stroke-width:1.1; }
.gem-detail-thumbs button img{ width:100%; height:100%; object-fit:cover; }
.gem-detail-thumbs button.active{ border-color:var(--accent); }
.gem-detail-eyebrow{ display:inline-block; font-size:12px; text-transform:uppercase; letter-spacing:.08em; color:var(--accent); margin-bottom:10px; }
.gem-detail-info h1{ font-size:32px; margin-bottom:16px; }
.gem-detail-short{ font-size:15px; line-height:1.8; color:var(--text); margin-bottom:24px; }
.gem-detail-products{ margin-top:24px; padding-top:24px; border-top:1px solid var(--border); }
.gem-detail-products[hidden]{ display:none; }
.gem-detail-products h3{ font-family:'Marcellus',serif; font-size:16px; margin-bottom:16px; }
.gem-detail-products-grid{ display:flex; flex-wrap:wrap; gap:16px; }
.gem-detail-product{
  display:flex; flex-direction:column; align-items:center; gap:8px;
  width:84px; text-decoration:none; color:inherit;
}
.gem-detail-product-thumb{
  width:72px; height:72px; border-radius:8px; overflow:hidden;
  background:linear-gradient(145deg, var(--cream-soft), var(--accent-light));
  color:var(--accent-dark); display:flex; align-items:center; justify-content:center;
}
.gem-detail-product-thumb svg{ width:44%; height:44%; }
.gem-detail-product-thumb img{ width:100%; height:100%; object-fit:cover; }
.gem-detail-product-name{ font-size:11.5px; text-align:center; color:var(--ink); line-height:1.3; }
.gem-detail-product:hover .gem-detail-product-name{ color:var(--accent); }
.gem-detail-content{ max-width:760px; margin:0 auto; font-size:16px; line-height:1.9; color:var(--text); padding-bottom:10px; }
.gem-detail-content p{ margin-bottom:20px; }
.gem-detail-content p:last-child{ margin-bottom:0; }

/* ================= NEWSLETTER ================= */
.newsletter{ background:var(--cream-soft); padding:52px 0; border-top:1px solid var(--border); border-bottom:1px solid var(--border); }
.newsletter-inner{ display:flex; align-items:center; justify-content:space-between; gap:30px; flex-wrap:wrap; }
.newsletter-inner h3{ margin-bottom:4px; }
.newsletter-inner p{ margin:0; }
.newsletter-form{ display:flex; gap:0; }
.newsletter-form input{
  border:1px solid var(--border); border-right:none;
  padding:14px 18px; font-family:inherit; font-size:14px;
  width:260px; border-radius:var(--radius) 0 0 var(--radius); outline:none;
}
.newsletter-form .btn{ border-radius:0 var(--radius) var(--radius) 0; }

/* ================= FOOTER ================= */
.site-footer{
  background:var(--accent); color:rgba(255,255,255,.85); padding:64px 0 0;
  box-shadow:inset 0 12px 18px -12px rgba(0,0,0,.45); /* üst kenarda gömük/içe çökük gölge */
}
.footer-grid{
  display:grid;
  grid-template-columns:1.4fr 1fr 1fr 1fr;
  gap:32px;
  padding-bottom:50px;
}
.footer-col h4{ color:var(--white); font-size:16px; margin-bottom:18px; }
.footer-col ul li{ margin-bottom:10px; }
.footer-col a{ color:rgba(255,255,255,.8); font-size:13.5px; }
.footer-col a:hover{ color:var(--white); }
.footer-about p{ font-size:13.5px; color:rgba(255,255,255,.8); }
.social-links{ display:flex; gap:10px; margin-top:16px; }
.social-links a{
  width:32px; height:32px; border-radius:50%;
  border:1px solid rgba(255,255,255,.4);
  display:flex; align-items:center; justify-content:center;
  font-size:12px; text-transform:uppercase;
}
.social-links a:hover{ background:var(--white); color:var(--accent); }
.footer-bottom{
  border-top:1px solid rgba(255,255,255,.2);
  padding:20px 0; text-align:center; font-size:13px;
}

/* ================= BACK TO TOP ================= */
#backToTop{
  position:fixed; right:24px; bottom:24px;
  width:44px; height:44px; border-radius:50%;
  background:var(--accent); color:var(--white);
  border:none; font-size:18px; cursor:pointer;
  box-shadow:var(--shadow);
  opacity:0; visibility:hidden; transform:translateY(10px);
  transition:all .25s ease;
  z-index:90;
}
#backToTop.show{ opacity:1; visibility:visible; transform:translateY(0); }

/* ================= SHOP / PRODUCTS PAGE ================= */
.page-banner{
  background:linear-gradient(120deg, var(--cream-soft) 0%, var(--cream) 60%);
  padding:60px 0 44px;
  text-align:center;
}
.breadcrumb{
  font-size:13px; color:var(--text);
  margin-bottom:10px;
}
.breadcrumb a{ color:var(--text); }
.breadcrumb a:hover{ color:var(--accent); }
.breadcrumb .sep{ margin:0 6px; color:var(--accent-light); }
.breadcrumb .current{ color:var(--accent); }
.page-banner h1{ font-size:38px; margin-bottom:0; }

.quick-cat-nav{
  position:sticky; top:96px; z-index:60;
  background:var(--white);
  border-bottom:1px solid var(--border);
  overflow-x:auto;
  white-space:nowrap;
  padding:14px 0;
}
.quick-cat-nav .container{ display:flex; justify-content:center; gap:10px; }
.quick-cat-nav a{
  flex:0 0 auto;
  display:inline-flex; align-items:center; gap:6px;
  border:1px solid var(--border);
  border-radius:20px;
  padding:9px 20px;
  font-size:13px; color:var(--text);
  transition:all .2s ease;
}
.quick-cat-nav a .qty{ color:var(--accent); font-weight:600; }
.quick-cat-nav a:hover, .quick-cat-nav a.active{
  background:var(--accent); border-color:var(--accent); color:var(--white);
}
.quick-cat-nav a:hover .qty, .quick-cat-nav a.active .qty{ color:var(--white); }

.category-block{ padding:60px 0; }
.category-block:nth-child(even){ background:var(--cream-soft); }
.category-block-head{
  display:flex; align-items:baseline; justify-content:center; gap:12px;
  margin-bottom:36px; text-align:center; flex-direction:column;
}
.category-block-head h2{ font-size:28px; margin:0; }
.category-block-head span{ font-size:13px; color:var(--accent); text-transform:uppercase; letter-spacing:.05em; }

/* ================= KONUM ÇUBUĞU (breadcrumb bar) =================
   Standart kural: bu şerit HER alt sayfada (ürün detayı, hikayemiz,
   iletişim, bundan sonra eklenecek her yeni sayfa) kullanılır ve
   arka planı her zaman footer ile aynı renktedir — renk js/main.js
   içindeki renderSiteChrome() tarafından otomatik uygulanır
   (bkz. `.pd-breadcrumb-bar` seçilen tüm elementler), bu yüzden yeni
   bir sayfa eklerken ekstra bir şey yapmaya gerek yoktur; sadece
   aşağıdaki işaretlemeyi kullanmak yeterlidir:
     <div class="pd-breadcrumb-bar">
       <div class="container">
         <p class="breadcrumb">
           <a href="index.html">Ana Sayfa</a><span class="sep">/</span>
           <span class="current">Sayfa Adı</span>
         </p>
       </div>
     </div> */
.pd-breadcrumb-bar{ background:#6a7058; padding:16px 0; } /* JS ile DATA.topbar.bg'ye güncellenene kadarki varsayılan/yedek renk */
.pd-breadcrumb-bar .breadcrumb{ margin:0; }
.pd-breadcrumb-bar .breadcrumb, .pd-breadcrumb-bar .breadcrumb a{ color:rgba(255,255,255,.8); }
.pd-breadcrumb-bar .breadcrumb a:hover{ color:var(--white); }
.pd-breadcrumb-bar .breadcrumb .sep{ color:rgba(255,255,255,.4); }
.pd-breadcrumb-bar .breadcrumb .current{ color:var(--white); }

.pd-main{ padding:56px 0 20px; }
.pd-main-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:60px;
  align-items:start;
}

/* gallery */
.pd-gallery-main{
  aspect-ratio:1/1;
  border-radius:var(--radius);
  overflow:hidden;
  background:linear-gradient(145deg, var(--cream-soft), var(--accent-light));
  color:var(--accent-dark);
  display:flex; align-items:center; justify-content:center;
}
.pd-gallery-main svg{ width:38%; height:38%; stroke-width:1; }
.pd-thumbs{ display:grid; grid-template-columns:repeat(4, 1fr); gap:14px; margin-top:14px; }
.pd-thumbs[hidden]{ display:none; }
.pd-thumbs button{
  aspect-ratio:1/1; border-radius:var(--radius);
  overflow:hidden;
  background:linear-gradient(145deg, var(--cream-soft), var(--accent-light));
  color:var(--accent-dark);
  border:2px solid transparent; cursor:pointer;
  display:flex; align-items:center; justify-content:center;
  padding:10px;
  transition:border-color .2s ease;
}
.pd-thumbs button svg{ width:100%; height:100%; stroke-width:1.1; }
.pd-thumbs button.active{ border-color:var(--accent); }

/* info column */
.pd-cat-link{
  display:inline-block; font-size:12px; text-transform:uppercase;
  letter-spacing:.08em; color:var(--accent); margin-bottom:10px;
}
.pd-info h1{ font-size:32px; margin-bottom:14px; }
.pd-rating{ display:flex; align-items:center; gap:10px; margin-bottom:16px; }
.pd-review-count{ font-size:13px; color:var(--text); }
.pd-price{ font-family:'Marcellus', serif; font-size:28px; color:var(--accent); margin-bottom:18px; }
.pd-price del{ color:#b7b0a8; font-weight:400; margin-right:10px; font-family:'Rubik',sans-serif; font-size:19px; }
.pd-short-desc{ font-size:15px; line-height:1.8; }
.pd-divider{ height:1px; background:var(--border); margin:26px 0; }

.pd-buy-row{ display:flex; align-items:center; gap:14px; flex-wrap:wrap; }
.qty-selector{
  display:flex; align-items:center;
  border:1px solid var(--border); border-radius:var(--radius);
  overflow:hidden;
}
.qty-selector button{
  width:38px; height:46px; border:none; background:var(--cream-soft);
  color:var(--ink); font-size:16px; cursor:pointer;
}
.qty-selector button:hover{ background:var(--accent-light); }
.qty-selector input{
  width:44px; height:46px; border:none; border-left:1px solid var(--border); border-right:1px solid var(--border);
  text-align:center; font-family:inherit; font-size:14px; color:var(--ink);
}
.pd-buy-row .btn{ padding:14px 30px; }
.pd-wishlist-btn{
  width:46px; height:46px; border-radius:50%;
  border:1px solid var(--border); background:var(--white);
  color:var(--ink); cursor:pointer;
  display:flex; align-items:center; justify-content:center;
  transition:all .2s ease;
}
.pd-wishlist-btn svg{ width:18px; height:18px; }
.pd-wishlist-btn:hover{ border-color:var(--accent); color:var(--accent); }
.pd-wishlist-btn.active{ color:#c0435a; border-color:#c0435a; }
.pd-wishlist-btn.active svg{ fill:currentColor; }

.pd-meta{ font-size:13.5px; }
.pd-meta li{ margin-bottom:8px; color:var(--text); }
.pd-meta li span:first-child{ color:var(--ink); font-weight:500; margin-right:6px; }
.pd-in-stock{ color:#3f9142; font-weight:500; }
.pd-in-stock.pd-out-of-stock{ color:#c0435a; }
#pdAddToCart:disabled{ opacity:.5; cursor:not-allowed; }
.pd-share{ display:flex; align-items:center; gap:10px; margin-top:24px; font-size:13px; color:var(--text); }
.pd-share a{
  width:30px; height:30px; border-radius:50%;
  border:1px solid var(--border);
  display:flex; align-items:center; justify-content:center;
  font-size:11px; text-transform:uppercase; color:var(--ink);
}
.pd-share a:hover{ background:var(--accent); border-color:var(--accent); color:var(--white); }

/* tabs section */
.pd-tabs-section{ padding-top:20px; }
.pd-tabs{ justify-content:flex-start; border-bottom:1px solid var(--border); padding-bottom:0; margin-bottom:40px; gap:0; }
.pd-tabs .tab{
  border:none; border-bottom:2px solid transparent; border-radius:0;
  background:none; padding:14px 26px; margin-bottom:-1px;
}
.pd-tabs .tab.active{ background:none; color:var(--accent); border-bottom-color:var(--accent); }
.pd-tab-panel{ display:none; max-width:820px; }
.pd-tab-panel.active{ display:block; }
.pd-tab-panel p{ font-size:15px; line-height:1.85; margin-bottom:16px; }

.pd-specs-table{ width:100%; border-collapse:collapse; }
.pd-specs-table tr{ border-bottom:1px solid var(--border); }
.pd-specs-table td{ padding:14px 10px; font-size:14px; }
.pd-specs-table td:first-child{ color:var(--ink); font-weight:500; width:220px; }
.pd-specs-table td:last-child{ color:var(--text); }

.pd-reviews{ margin-bottom:40px; }
.pd-review{ padding:22px 0; border-bottom:1px solid var(--border); }
.pd-review-head{ display:flex; align-items:center; justify-content:space-between; margin-bottom:8px; }
.pd-review-author{ font-family:'Marcellus', serif; font-size:15px; color:var(--ink); }
.pd-review .stars{ color:#e2b13c; font-size:12px; letter-spacing:1px; }
.pd-review p{ margin:0; font-size:14px; }

.pd-review-form{ max-width:520px; }
.pd-review-form h3{ font-size:20px; margin-bottom:18px; }
.pd-review-form-row{ display:flex; gap:12px; margin-bottom:12px; }
.pd-review-form input, .pd-review-form select, .pd-review-form textarea{
  width:100%; border:1px solid var(--border); border-radius:var(--radius);
  padding:12px 14px; font-family:inherit; font-size:14px; color:var(--ink);
  outline:none; background:var(--white);
}
.pd-review-form textarea{ resize:vertical; margin-bottom:16px; }
.pd-review-form input:focus, .pd-review-form select:focus, .pd-review-form textarea:focus{ border-color:var(--accent); }

/* ================= HİKAYEMİZ / HAKKIMIZDA SAYFASI ================= */
.about-story{ padding:80px 0; }
.about-story-grid{ display:grid; grid-template-columns:1fr 1fr; gap:60px; align-items:center; }
.about-story-text .eyebrow{ display:block; margin-bottom:14px; }
.about-story-text h1{ font-size:34px; margin-bottom:18px; }
.about-story-intro{ font-size:17px; color:var(--ink); margin-bottom:22px; }
.about-story-text p{ font-size:15px; line-height:1.85; margin-bottom:16px; }
.about-image{
  aspect-ratio:4/3; border-radius:8px; overflow:hidden;
  background:linear-gradient(145deg, var(--cream-soft), var(--accent-light));
  color:var(--accent-dark);
  display:flex; align-items:center; justify-content:center;
}
.about-image svg{ width:32%; height:32%; stroke-width:1; }
.about-image img{ width:100%; height:100%; object-fit:cover; }

.about-stats{ background:var(--cream-soft); padding:56px 0; border-top:1px solid var(--border); border-bottom:1px solid var(--border); }
.about-stats-grid{ display:grid; grid-template-columns:repeat(4, 1fr); gap:24px; text-align:center; }
.about-stat-number{ display:block; font-family:'Marcellus', serif; font-size:36px; color:var(--accent); }
.about-stat-label{ font-size:12.5px; color:var(--text); text-transform:uppercase; letter-spacing:.05em; margin-top:4px; }

.about-values{ padding:80px 0; }
.about-values-grid{ display:grid; grid-template-columns:repeat(3, 1fr); gap:28px; margin-top:44px; }
.about-value-card{ text-align:center; padding:36px 24px; border:1px solid var(--border); border-radius:8px; transition:box-shadow .25s ease, transform .25s ease; }
.about-value-card:hover{ box-shadow:var(--shadow); transform:translateY(-4px); }
.about-value-icon{
  width:64px; height:64px; border-radius:50%; margin:0 auto 18px;
  background:var(--accent-light); color:var(--accent-dark);
  display:flex; align-items:center; justify-content:center;
}
.about-value-icon svg{ width:48%; height:48%; }
.about-value-card h3{ font-size:17px; margin-bottom:10px; }
.about-value-card p{ font-size:14px; }

/* ================= İLETİŞİM SAYFASI ================= */
.contact-info-strip{ background:var(--cream-soft); border-bottom:1px solid var(--border); padding:56px 0; }
.contact-info-grid{ display:grid; grid-template-columns:repeat(3, 1fr); gap:28px; }
.contact-info-card{ text-align:center; }
.contact-info-icon{
  width:56px; height:56px; border-radius:50%; margin:0 auto 14px;
  background:var(--white); color:var(--accent);
  display:flex; align-items:center; justify-content:center;
  box-shadow:var(--shadow);
}
.contact-info-icon svg{ width:44%; height:44%; }
.contact-info-card h3{ font-size:15px; margin-bottom:6px; }
.contact-info-card p{ font-size:14px; margin:0; }

.contact-main{ padding:80px 0; }
.contact-main-grid{ display:grid; grid-template-columns:1fr 1fr; gap:56px; align-items:start; }
.contact-form-col h2{ font-size:30px; margin:10px 0 14px; }
.contact-form-col > p{ margin-bottom:28px; }
.contact-form-col form label{
  display:flex; flex-direction:column; gap:6px;
  font-size:13px; font-weight:500; color:var(--ink);
  margin-bottom:18px;
}
.contact-form-row{ display:grid; grid-template-columns:1fr 1fr; gap:18px; }
.contact-form-col input, .contact-form-col textarea{
  border:1px solid var(--border); border-radius:var(--radius);
  padding:13px 14px; font-family:inherit; font-size:14px; color:var(--ink); outline:none;
}
.contact-form-col input:focus, .contact-form-col textarea:focus{ border-color:var(--accent); }
.contact-form-col textarea{ resize:vertical; }
.contact-form-note{ font-size:12.5px; color:var(--text); margin-top:14px; }

.contact-map-wrap{
  aspect-ratio:1/1; border-radius:8px; overflow:hidden;
  border:1px solid var(--border);
  background:var(--cream-soft);
}

/* ================= SATIN ALMA (satin-alma.html) ================= */
.checkout-title{ font-size:30px; margin-bottom:36px; }

.checkout-empty{ text-align:center; padding:60px 20px; }
.checkout-empty p{ margin-bottom:22px; font-size:15px; color:var(--text); }

.checkout-success{ text-align:center; padding:50px 20px; max-width:520px; margin:0 auto; }
.checkout-success[hidden], .checkout-empty[hidden], .checkout-grid[hidden]{ display:none; }
.checkout-success-icon{
  width:64px; height:64px; border-radius:50%; margin:0 auto 22px;
  background:var(--accent); color:var(--white); font-size:28px;
  display:flex; align-items:center; justify-content:center;
}
.checkout-success h2{ font-size:26px; margin-bottom:12px; }
.checkout-order-number{ font-size:15px; color:var(--ink); font-weight:600; margin-bottom:18px; }
.checkout-success-note{ font-size:13px; color:var(--text); line-height:1.7; margin-bottom:28px; }

.checkout-grid{ display:grid; grid-template-columns:1.6fr 1fr; gap:44px; align-items:start; }
.checkout-items h2{ font-size:19px; margin-bottom:20px; }
.checkout-items-list{ display:flex; flex-direction:column; gap:14px; }
.checkout-item{
  display:flex; align-items:center; gap:14px; flex-wrap:wrap;
  border:1px solid var(--border); border-radius:var(--radius); padding:14px;
}
.checkout-item-thumb{
  width:64px; height:64px; border-radius:8px; overflow:hidden; flex:0 0 auto;
  background:linear-gradient(145deg, var(--cream-soft), var(--accent-light));
  color:var(--accent-dark); display:flex; align-items:center; justify-content:center;
}
.checkout-item-thumb svg{ width:50%; height:50%; }
.checkout-item-thumb img{ width:100%; height:100%; object-fit:cover; }
.checkout-item-info{ flex:1 1 160px; min-width:140px; display:flex; flex-direction:column; gap:3px; }
.checkout-item-name{ font-size:14px; font-weight:500; color:var(--ink); text-decoration:none; }
.checkout-item-name:hover{ color:var(--accent); }
.checkout-item-cat{ font-size:11px; color:var(--text); text-transform:uppercase; letter-spacing:.03em; }
.checkout-item-unit{ font-size:12.5px; color:var(--text); }
.checkout-item-qty{
  flex:0 0 auto; display:flex; align-items:center;
  border:1px solid var(--border); border-radius:20px; overflow:hidden;
}
.checkout-item-qty button{
  width:28px; height:28px; border:none; background:var(--cream-soft);
  cursor:pointer; font-size:14px; color:var(--ink);
}
.checkout-item-qty button:hover{ background:var(--accent-light); }
.checkout-item-qty input{
  width:32px; text-align:center; border:none;
  border-left:1px solid var(--border); border-right:1px solid var(--border);
  font-family:inherit; font-size:13px; color:var(--ink);
}
.checkout-item-total{
  flex:0 0 auto; min-width:70px; text-align:right;
  font-family:'Marcellus',serif; font-size:15px; color:var(--accent);
}
.checkout-item-remove{
  flex:0 0 auto; background:none; border:none; color:#c0435a; cursor:pointer;
  font-size:15px; padding:4px 6px;
}
.checkout-item-remove:hover{ background:#fbe9ec; border-radius:4px; }

.checkout-sidebar{ display:flex; flex-direction:column; gap:20px; position:sticky; top:110px; }
.checkout-card{ background:var(--white); border:1px solid var(--border); border-radius:var(--radius); padding:24px; }
.checkout-card h3{ font-family:'Marcellus',serif; font-size:16px; margin-bottom:16px; }
.checkout-card h3:not(:first-child){ margin-top:22px; }
.checkout-summary-row{ display:flex; justify-content:space-between; font-size:13.5px; color:var(--text); margin-bottom:10px; }
.checkout-summary-total{ border-top:1px solid var(--border); padding-top:14px; margin-top:6px; font-size:15px; color:var(--ink); font-weight:600; }
.checkout-summary-total span:last-child{ color:var(--accent); font-family:'Marcellus',serif; font-size:19px; }

.checkout-card label{ display:flex; flex-direction:column; gap:6px; font-size:12.5px; font-weight:500; color:var(--ink); margin-bottom:14px; }
.checkout-card input, .checkout-card textarea{
  border:1px solid var(--border); border-radius:8px; padding:10px 12px;
  font-family:inherit; font-size:13.5px; color:var(--ink); outline:none;
}
.checkout-card input:focus, .checkout-card textarea:focus{ border-color:var(--accent); }
.checkout-card textarea{ resize:vertical; }
.checkout-radio{
  display:flex !important; flex-direction:row !important; align-items:center;
  gap:8px; font-size:13px; font-weight:400 !important; margin-bottom:10px;
}
.checkout-radio input{ width:auto; }
.checkout-submit{ width:100%; text-align:center; margin-top:8px; }
.checkout-form-note{ font-size:11px; color:var(--text); line-height:1.6; margin-top:12px; }

/* ---------- hesabim.html ---------- */
.account-page-grid{ max-width:560px; margin:0 auto; }
.account-page-loggedout{ max-width:480px; margin:0 auto; text-align:center; padding:40px 0; }
.account-page-loggedout p{ margin-bottom:10px; }
.account-page-hint{ font-size:13px; color:var(--text); margin-bottom:22px; }
.checkout-card input:disabled{ background:var(--cream-soft); color:var(--text); cursor:not-allowed; }
.account-page-saved{ color:#2f8f4e; font-size:13px; margin-top:12px; text-align:center; }

/* ================= RESPONSIVE ================= */
@media (max-width:1024px){
  .cat-grid .cat-card{ flex-basis:calc(25% - 13.5px); }
  .product-grid{ grid-template-columns:repeat(3,1fr); }
  .product-grid.tab-panel.active .product-card{ flex-basis:calc(33.333% - 17.33px); }
  .features-grid{ grid-template-columns:repeat(2,1fr); }
  .blog-grid{ grid-template-columns:repeat(2,1fr); }
  .blog-carousel .blog-grid .blog-card{ flex-basis:calc(50% - 14px); }
  .gemstone-grid{ grid-template-columns:repeat(3,1fr); }
}
@media (max-width:860px){
  .main-nav{
    position:fixed; inset:0 20% 0 0; top:0; height:100vh;
    background:var(--white);
    transform:translateX(-100%);
    transition:transform .3s ease;
    padding:90px 24px; box-shadow:20px 0 40px rgba(0,0,0,.1);
    z-index:200;
  }
  .main-nav.open{ transform:translateX(0); }
  .main-nav > ul{ flex-direction:column; gap:20px; }
  .mobile-toggle{ display:flex; }
  .mobile-nav-close{ display:flex; }
  .search-box{ display:none; }
  .search-dropdown, .account-dropdown, .wishlist-dropdown, .cart-dropdown{
    width:calc(100vw - 48px); max-width:320px;
  }
  .hero-slides{ min-height:780px; }
  .hero-inner{ text-align:center; justify-content:center; padding:60px 24px 20px; height:auto; }
  .hero-text{ max-width:none; }
  .hero-text p{ margin:0 auto 22px; }
  .hero-art{
    position:static; width:100%; height:260px; border-radius:8px; margin-top:6px;
    -webkit-mask-image: linear-gradient(to bottom, transparent 0%, rgba(0,0,0,.25) 14%, rgba(0,0,0,.65) 26%, #000 42%);
    mask-image: linear-gradient(to bottom, transparent 0%, rgba(0,0,0,.25) 14%, rgba(0,0,0,.65) 26%, #000 42%);
  }
  .hero-arrow{ width:36px; height:36px; font-size:18px; }
  .hero-arrow-prev{ left:10px; }
  .hero-arrow-next{ right:10px; }
  .promo-grid{ grid-template-columns:1fr; }
  .home-story{ padding:60px 0; }
  .newsletter-inner{ justify-content:center; text-align:center; }
  .footer-grid{ grid-template-columns:1fr 1fr; }
  .pd-main-grid{ grid-template-columns:1fr; gap:30px; }
  .about-story-grid{ grid-template-columns:1fr; gap:32px; text-align:center; }
  .about-image{ order:-1; }
  .about-stats-grid{ grid-template-columns:repeat(2, 1fr); gap:28px; }
  .about-values-grid{ grid-template-columns:1fr; }
  .contact-info-grid{ grid-template-columns:1fr; gap:32px; }
  .contact-main-grid{ grid-template-columns:1fr; gap:36px; }
  .contact-map-wrap{ aspect-ratio:16/10; }
  .gem-detail-grid{ grid-template-columns:1fr; gap:32px; }
  .checkout-grid{ grid-template-columns:1fr; gap:32px; }
  .checkout-sidebar{ position:static; }
}
@media (max-width:600px){
  .cat-grid .cat-card{ flex-basis:calc(50% - 9px); }
  .categories-carousel{ gap:6px; }
  .product-grid{ grid-template-columns:repeat(2,1fr); }
  .product-grid.tab-panel.active .product-card{ flex-basis:calc(50% - 13px); }
  .products-carousel{ gap:6px; }
  .carousel-arrow{ width:34px; height:34px; font-size:18px; }
  .blog-grid{ grid-template-columns:1fr; }
  .blog-carousel .blog-grid .blog-card{ flex-basis:100%; }
  .blog-carousel{ gap:6px; }
  .gemstone-grid{ grid-template-columns:repeat(2,1fr); }
  .gemstone-alpha-btn{ min-width:30px; height:30px; font-size:12px; }
  .features-grid{ grid-template-columns:1fr; }
  .hero-text h1{ font-size:34px; }
  .hero-slides{ min-height:820px; }
  .footer-grid{ grid-template-columns:1fr; text-align:center; }
  .social-links{ justify-content:center; }
  .newsletter-form{ width:100%; }
  .pd-thumbs{ grid-template-columns:repeat(4, 1fr); }
  .pd-buy-row{ width:100%; }
  .pd-buy-row .btn{ order:3; flex:1 1 100%; text-align:center; }
  .contact-form-row{ grid-template-columns:1fr; }
  .pd-review-form-row{ flex-direction:column; }
  .pd-tabs{ overflow-x:auto; flex-wrap:nowrap; }
  .pd-tabs .tab{ flex:0 0 auto; padding:12px 16px; }
  .newsletter-form input{ flex:1; width:auto; }
}
