/* =========================================================
   DM Omni — Production CSS bundle
   Tüm sayfa-içi <style> blokları + style.css buraya konsolide.
   Google Fonts @import KALDIRILDI; self-hosted @font-face aşağıda.
   Skill kuralı: tüm seçicileri @layer theme ile sarmıyoruz çünkü
   WooCommerce + diğer eklentilerin selectör'lerine de stil veriyoruz;
   bunun yerine "agresif dequeue + minimum baseline" stratejisi.
   ========================================================= */

/* ---------- FONTS (self-hosted, latin + latin-ext) ---------- */
/* Kaynak: fontsource CDN (cdn.jsdelivr.net/npm/@fontsource/...).
   Gerçek kullanım: Inter 400/500/600, Cormorant 500/500-italic/600/400-italic.
   Her weight için latin + latin-ext ayrı woff2 (toplam 14 dosya, ~360 KB).
   `unicode-range` ile tarayıcı yalnızca gereken dosyayı çeker — Türkçe-spesifik
   ğ ş ı İ Ğ Ş U+0100-02AF aralığında olduğu için latin-ext fetch edilir. */

/* Latin subset (temel ASCII + Batı Avrupa). Türkçe-spesifik ğ ş ı İ Ğ Ş için
   aşağıdaki latin-ext bloğu devreye girer (Latin Extended-A, U+0100-02AF). */
@font-face{
  font-family:'Inter'; font-style:normal; font-weight:400;
  font-display:swap;
  src:url('../fonts/inter-400.woff2') format('woff2');
  unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;
}
@font-face{
  font-family:'Inter'; font-style:normal; font-weight:400;
  font-display:swap;
  src:url('../fonts/inter-400-ext.woff2') format('woff2');
  unicode-range:U+0100-02AF,U+0304,U+0308,U+0329,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF;
}
@font-face{
  font-family:'Inter'; font-style:normal; font-weight:500;
  font-display:swap;
  src:url('../fonts/inter-500.woff2') format('woff2');
  unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;
}
@font-face{
  font-family:'Inter'; font-style:normal; font-weight:500;
  font-display:swap;
  src:url('../fonts/inter-500-ext.woff2') format('woff2');
  unicode-range:U+0100-02AF,U+0304,U+0308,U+0329,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF;
}
@font-face{
  font-family:'Inter'; font-style:normal; font-weight:600;
  font-display:swap;
  src:url('../fonts/inter-600.woff2') format('woff2');
  unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;
}
@font-face{
  font-family:'Inter'; font-style:normal; font-weight:600;
  font-display:swap;
  src:url('../fonts/inter-600-ext.woff2') format('woff2');
  unicode-range:U+0100-02AF,U+0304,U+0308,U+0329,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF;
}
@font-face{
  font-family:'Cormorant Garamond'; font-style:normal; font-weight:500;
  font-display:swap;
  src:url('../fonts/cormorant-500.woff2') format('woff2');
  unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;
}
@font-face{
  font-family:'Cormorant Garamond'; font-style:normal; font-weight:500;
  font-display:swap;
  src:url('../fonts/cormorant-500-ext.woff2') format('woff2');
  unicode-range:U+0100-02AF,U+0304,U+0308,U+0329,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF;
}
@font-face{
  font-family:'Cormorant Garamond'; font-style:normal; font-weight:600;
  font-display:swap;
  src:url('../fonts/cormorant-600.woff2') format('woff2');
  unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;
}
@font-face{
  font-family:'Cormorant Garamond'; font-style:normal; font-weight:600;
  font-display:swap;
  src:url('../fonts/cormorant-600-ext.woff2') format('woff2');
  unicode-range:U+0100-02AF,U+0304,U+0308,U+0329,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF;
}
@font-face{
  font-family:'Cormorant Garamond'; font-style:italic; font-weight:400;
  font-display:swap;
  src:url('../fonts/cormorant-400-italic.woff2') format('woff2');
  unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;
}
@font-face{
  font-family:'Cormorant Garamond'; font-style:italic; font-weight:400;
  font-display:swap;
  src:url('../fonts/cormorant-400-italic-ext.woff2') format('woff2');
  unicode-range:U+0100-02AF,U+0304,U+0308,U+0329,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF;
}
@font-face{
  font-family:'Cormorant Garamond'; font-style:italic; font-weight:500;
  font-display:swap;
  src:url('../fonts/cormorant-500-italic.woff2') format('woff2');
  unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;
}
@font-face{
  font-family:'Cormorant Garamond'; font-style:italic; font-weight:500;
  font-display:swap;
  src:url('../fonts/cormorant-500-italic-ext.woff2') format('woff2');
  unicode-range:U+0100-02AF,U+0304,U+0308,U+0329,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF;
}

/* ---------- TOKENS ---------- */
:root{
  --ivory: #f8f4ec;
  --ivory-2: #f1ebdd;
  --paper: #fbf9f3;
  --ink: #1f1b14;
  --ink-2: #3a342a;
  --muted: #6e655a;
  --line: #e3dcc9;
  --line-2: #d8cfb6;
  --gold: #b48a3c;
  --gold-2: #856325;
  --gold-soft: #d9b772;
  --emerald: #1f3a30;
  --rose: #b96a5f;
  --green: #4a7a52;
  --shadow: 0 30px 60px -30px rgba(50,38,16,.25);
  --shadow-sm: 0 12px 24px -16px rgba(50,38,16,.2);
}

/* ---------- RESET ---------- */
*{box-sizing:border-box}
html,body{margin:0;padding:0}
/* Yatay scroll preventer — .nav-drawer position:fixed + transform:translateX(100%)
   ile viewport dışında konumlanıyor; bazı tarayıcılar buna yatay scroll açıyor.
   `overflow-x:clip` content'i clip eder ama scroll context oluşturmaz (sticky/
   fixed çocuklar etkilenmez). hidden fallback eski tarayıcılar için. */
html{overflow-x:hidden; overflow-x:clip}
body{
  font-family:'Inter', system-ui, -apple-system, 'Segoe UI', Roboto, sans-serif;
  color:var(--ink);
  background:var(--ivory);
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
  line-height:1.55;
}
.serif{font-family:'Cormorant Garamond','Times New Roman',serif; font-weight:500; letter-spacing:.005em}
.serif-i{font-family:'Cormorant Garamond',serif; font-style:italic; font-weight:500}
.container{max-width:1240px; margin:0 auto; padding:0 28px}
a{color:inherit; text-decoration:none}
button{font-family:inherit; cursor:pointer; border:0; background:none}
img{max-width:100%; display:block; height:auto}

/* Skip link (a11y) */
.skip-link{position:absolute; left:-9999px; top:0; padding:10px 18px; background:var(--ink); color:var(--gold-soft); z-index:9999}
.skip-link:focus{left:8px; top:8px}

/* ---------- TOP STRIP ---------- */
.strip{
  background:var(--ink);
  color:#e9e1cd;
  font-size:12.5px;
  letter-spacing:.08em;
  text-transform:uppercase;
  padding:9px 0;
  text-align:center;
}
.strip b{color:var(--gold-soft); font-weight:600; letter-spacing:.12em; margin:0 14px}

/* ---------- HEADER ---------- */
header.site{
  background:var(--paper);
  border-bottom:1px solid var(--line);
  position:sticky; top:0; z-index:50;
}
.nav{
  display:grid;
  grid-template-columns: 1fr auto 1fr;
  align-items:center;
  height:78px;
  gap:24px;
}
.nav-left{display:flex; gap:28px; font-size:14px; letter-spacing:.02em}
.nav-left a{position:relative; padding:6px 0; color:var(--ink-2)}
.nav-left a:hover, .nav-left a.active{color:var(--gold-2)}
.nav-left a::after{content:""; position:absolute; left:0; right:0; bottom:-2px; height:1px; background:var(--gold); transform:scaleX(0); transform-origin:left; transition:transform .35s ease}
.nav-left a:hover::after, .nav-left a.active::after{transform:scaleX(1)}
.logo{display:flex; flex-direction:column; align-items:center; gap:2px; text-align:center; color:var(--ink)}
.logo .mark{font-family:'Cormorant Garamond',serif; font-style:italic; font-size:30px; line-height:1; color:var(--ink); letter-spacing:.01em}
.logo .mark b{font-weight:600; font-style:normal}
.logo .tag{font-size:9.5px; letter-spacing:.42em; color:var(--gold-2); text-transform:uppercase; margin-top:6px}
.logo .dm-logo-svg{display:inline-flex; align-items:center; line-height:0}
.logo .dm-logo-svg svg{width:auto; height:30px; display:block; color:var(--ink); transition:color .25s ease}
.logo:hover .dm-logo-svg svg{color:var(--gold-2)}
.logo .custom-logo{max-height:48px; width:auto; height:auto}
.logo .custom-logo-link{display:block}
@media(max-width:980px){
	.logo .dm-logo-svg svg{height:24px}
}
.nav-right{display:flex; align-items:center; justify-content:flex-end; gap:14px; font-size:13.5px; color:var(--ink-2)}
.nav-right .pill{display:inline-flex; align-items:center; gap:8px; border:1px solid var(--line-2); border-radius:999px; padding:8px 14px; background:var(--ivory); transition:all .25s ease}
.nav-right .pill:hover{border-color:var(--gold); color:var(--gold-2)}
/* Desktop'ta account icon gizli, text görünür (pill formatı). */
.nav-right .pill .account-ico{display:none}
.nav-right .cart{display:inline-flex; align-items:center; gap:8px; background:var(--ink); color:var(--paper); padding:9px 16px; border-radius:999px; font-size:13px; letter-spacing:.04em}
.nav-right .cart .dot{width:18px; height:18px; border-radius:50%; background:var(--gold); color:var(--ink); font-weight:700; font-size:11px; display:grid; place-items:center}
/* Desktop'ta cart icon gizli, text + dot görünür. */
.nav-right .cart .cart-ico{display:none}

/* Hamburger button — desktop'ta gizli, mobile'da görünür.
   3 line stack → body.menu-open iken X dönüşümü. */
.menu-toggle{
  display:none; /* mobile media query'de flex */
  position:relative;
  width:38px; height:38px;
  align-items:center; justify-content:center;
  background:transparent; border:1px solid var(--line-2);
  border-radius:50%;
  cursor:pointer;
  transition:border-color .25s ease;
}
.menu-toggle:hover{border-color:var(--gold)}
.menu-toggle span{
  position:absolute;
  left:11px; right:11px;
  height:1.5px;
  background:var(--ink-2);
  transition:transform .3s ease, opacity .2s ease, top .3s ease;
}
.menu-toggle span:nth-child(1){top:13px}
.menu-toggle span:nth-child(2){top:18px}
.menu-toggle span:nth-child(3){top:23px}
body.menu-open .menu-toggle span:nth-child(1){top:18px; transform:rotate(45deg)}
body.menu-open .menu-toggle span:nth-child(2){opacity:0}
body.menu-open .menu-toggle span:nth-child(3){top:18px; transform:rotate(-45deg)}

/* Mobile nav drawer — sağdan slide-in panel + backdrop overlay.
   body.menu-open trigger; aria-hidden JS tarafından sync edilir. */
.nav-drawer{
  position:fixed; top:0; right:0; bottom:0;
  width:min(320px, 88vw);
  height:100vh; height:100dvh;
  background:var(--paper);
  border-left:1px solid var(--line);
  box-shadow:-30px 0 60px -30px rgba(50,38,16,.25);
  transform:translateX(100%);
  transition:transform .35s ease;
  z-index:60; /* header sticky z-index:50 üstünde */
  overflow-y:auto;
  overscroll-behavior:contain;
}
body.menu-open .nav-drawer{transform:none}
.nav-drawer__backdrop{
  position:fixed; inset:0;
  background:rgba(31,27,20,.42);
  opacity:0; pointer-events:none;
  transition:opacity .3s ease;
  z-index:55;
}
body.menu-open .nav-drawer__backdrop{opacity:1; pointer-events:auto}
body.menu-open{overflow:hidden}

.nav-drawer__inner{padding:18px 22px 32px; display:flex; flex-direction:column; gap:24px}
.nav-drawer__top{display:flex; justify-content:flex-end}
.nav-drawer__close{
  width:36px; height:36px;
  display:grid; place-items:center;
  color:var(--ink-2); background:transparent; border:0;
  cursor:pointer; transition:color .25s ease;
}
.nav-drawer__close:hover{color:var(--gold-2)}

.nav-drawer__search{
  display:flex; align-items:center; gap:12px;
  border-bottom:1px solid var(--line-2);
  padding:6px 0 10px;
}
.nav-drawer__search .ico{color:var(--gold-2); width:18px; height:18px; flex-shrink:0; stroke-width:1.4; fill:none}
.nav-drawer__search input{
  flex:1;
  background:transparent; border:0; outline:none;
  font-family:'Cormorant Garamond',serif; font-style:italic;
  font-size:18px; color:var(--ink);
}
.nav-drawer__search input::placeholder{color:var(--muted); opacity:1}

.nav-drawer__menu{display:flex; flex-direction:column}
.nav-drawer__menu a{
  display:block;
  padding:14px 4px;
  font-size:14px; letter-spacing:.02em;
  color:var(--ink-2);
  border-bottom:1px solid var(--line);
  transition:color .2s ease;
}
.nav-drawer__menu a:hover, .nav-drawer__menu a.active{color:var(--gold-2)}
.nav-drawer__menu ul{list-style:none; padding:0; margin:0}

.nav-drawer__links{display:flex; flex-direction:column; gap:2px; margin-top:auto}
.nav-drawer__link{
  display:inline-flex; align-items:center; gap:12px;
  padding:14px 4px;
  font-size:13.5px; color:var(--ink-2);
  border-top:1px solid var(--line);
  transition:color .2s ease;
}
.nav-drawer__link:first-child{border-top:0}
.nav-drawer__link:hover{color:var(--gold-2)}
.nav-drawer__link .ico{color:var(--gold-2); flex-shrink:0; fill:none; stroke-width:1.5}
.nav-drawer__link em{
  font-style:normal; font-size:11px;
  color:var(--gold-2); margin-left:6px;
  font-weight:600;
}
.icon-btn{width:36px; height:36px; border:1px solid var(--line-2); display:grid; place-items:center; color:var(--ink-2); border-radius:50%; transition:all .25s; background:transparent}
.icon-btn:hover{border-color:var(--gold); color:var(--gold-2)}

/* search overlay (toggled by .search-open on <body>) */
.search-bar{
  position:absolute; left:0; right:0; top:100%;
  background:var(--paper); border-bottom:1px solid var(--line);
  transform:translateY(-12px); opacity:0; pointer-events:none;
  transition:all .3s ease;
  padding:20px 0 24px;
}
body.search-open .search-bar{transform:none; opacity:1; pointer-events:auto}
.search-bar form{display:flex; align-items:center; gap:14px; border-bottom:1px solid var(--line-2); padding:10px 0}
.search-bar input{flex:1; border:0; background:transparent; outline:none; font-family:'Cormorant Garamond',serif; font-size:24px; color:var(--ink); font-style:italic; font-weight:500}
.search-bar button{padding:6px}
.search-suggest{display:flex; flex-wrap:wrap; gap:18px; align-items:center; margin-top:14px; font-size:13px; color:var(--ink-2)}
.search-suggest a{border-bottom:1px solid var(--line-2); padding-bottom:2px}
.search-suggest a:hover{color:var(--gold-2); border-color:var(--gold)}

/* ---------- BREADCRUMBS / EYEBROW ---------- */
.crumbs{font-size:11.5px; letter-spacing:.32em; text-transform:uppercase; color:var(--muted)}
.crumbs a:hover{color:var(--gold-2)}
.crumbs .sep{color:var(--line-2); margin:0 10px}
.eyebrow{font-size:11px; letter-spacing:.36em; text-transform:uppercase; color:var(--gold-2); display:inline-block}

/* ---------- ORNAMENT ---------- */
.ornament{display:flex; align-items:center; justify-content:center; gap:14px; max-width:280px; margin:0 auto}
.ornament .line{flex:1; height:1px; background:linear-gradient(90deg, transparent, var(--line-2), transparent)}
.ornament .diamond{width:8px; height:8px; transform:rotate(45deg); background:var(--gold); box-shadow:0 0 0 4px rgba(180,138,60,.12)}

/* ---------- PAGE HERO ---------- */
.page-hero{
  position:relative;
  padding:84px 0 70px;
  text-align:center;
  overflow:hidden;
  background: radial-gradient(1200px 500px at 50% -100px, rgba(180,138,60,.10), transparent 60%), linear-gradient(180deg, var(--paper), var(--ivory));
  border-bottom:1px solid var(--line);
}
.page-hero h1{font-family:'Cormorant Garamond',serif; font-weight:500; font-size:clamp(42px, 6vw, 76px); line-height:1.04; letter-spacing:-.01em; margin:18px 0 14px}
.page-hero h1 em{font-style:italic; color:var(--gold-2)}
.page-hero p{max-width:560px; margin:0 auto; font-size:16px; color:var(--ink-2); line-height:1.7}
.page-hero .ornament{margin-top:30px}

/* ---------- BUTTONS ---------- */
.btn{display:inline-flex; align-items:center; gap:14px; padding:16px 28px; font-size:12.5px; letter-spacing:.28em; text-transform:uppercase; font-weight:500; transition:all .3s ease; cursor:pointer; border:0; text-decoration:none}
.btn-dark{background:var(--ink); color:var(--paper)}
.btn-dark:hover{background:var(--gold-2)}
.btn-outline{border:1px solid var(--ink); color:var(--ink); background:transparent}
.btn-outline:hover{background:var(--ink); color:var(--gold-soft)}
.btn-light{background:var(--paper); color:var(--ink); border:1px solid var(--line-2)}
.btn-light:hover{border-color:var(--gold)}
.btn .arrow{transition:transform .35s ease}
.btn:hover .arrow{transform:translateX(6px)}
.btn:disabled{opacity:.5; cursor:not-allowed}

/* ---------- CARD ---------- */
.card{background:var(--paper); border:1px solid var(--line); position:relative}
.card.bordered{box-shadow:var(--shadow); padding:48px}
.card.bordered::before{content:""; position:absolute; inset:8px; border:1px solid var(--line-2); pointer-events:none}
.card .corner{position:absolute; width:18px; height:18px; border:1px solid var(--gold)}
.card .corner.tl{top:-1px; left:-1px; border-right:0; border-bottom:0}
.card .corner.tr{top:-1px; right:-1px; border-left:0; border-bottom:0}
.card .corner.bl{bottom:-1px; left:-1px; border-right:0; border-top:0}
.card .corner.br{bottom:-1px; right:-1px; border-left:0; border-top:0}
/* İletişim sayfası form kartı — sol-üst köşeyi 8px yukarı kaydır (eyebrow
   "Mesaj Bırakın" pill'iyle çarpışmasın). */
#formCard .corner.tl{top:-9px}

/* ---------- BASE FORM ELEMENTS ---------- */
/* "Naked" native form widget'larını (WC default render, comment form, vb.) tasarım
   diline bağlar. Özel container'lar (.field, .input-wrap, .qty-stepper, .search-bar,
   .faq-search, .news-form, .promo-row) daha yüksek specificity ile bu base'i ezer,
   davranışları korunur. */
input[type="text"], input[type="email"], input[type="tel"], input[type="url"],
input[type="password"], input[type="number"], input[type="search"], input[type="date"],
input[type="time"], input[type="datetime-local"], textarea, select{
	width:100%; padding:14px 16px;
	border:1px solid var(--line-2); border-radius:0;
	background:var(--paper); color:var(--ink);
	font-family:inherit; font-size:15px; line-height:1.4;
	outline:none;
	-webkit-appearance:none; -moz-appearance:none; appearance:none;
	transition:border-color .25s ease, background-color .25s ease;
}
input:focus, textarea:focus, select:focus,
input:focus-visible, textarea:focus-visible, select:focus-visible{
	border-color:var(--gold); background:#fff;
}
textarea{min-height:130px; resize:vertical; line-height:1.6}

::placeholder{color:var(--muted); opacity:1}

/* Number input — native spin arrows kaldır (qty-stepper'da manuel butonlar var) */
input[type="number"]{-moz-appearance:textfield}
input[type="number"]::-webkit-outer-spin-button,
input[type="number"]::-webkit-inner-spin-button{-webkit-appearance:none; margin:0}

/* Checkbox / Radio — native + gold accent. Custom checkmark sadece .checkrow/.agree. */
input[type="checkbox"], input[type="radio"]{
	accent-color:var(--gold);
	width:18px; height:18px; min-width:18px;
	cursor:pointer;
}

/* Select — global SVG chevron (data-URL) */
select{
	background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 8'><path d='M1 1.5l5 5 5-5' stroke='%238e6a26' stroke-width='1.5' fill='none' stroke-linecap='round' stroke-linejoin='round'/></svg>");
	background-repeat:no-repeat;
	background-position:right 16px center;
	background-size:12px 8px;
	padding-right:40px;
	cursor:pointer;
}

/* ---------- FORM ---------- */
.field{position:relative; margin-bottom:18px}
.field label{display:block; font-size:11px; letter-spacing:.28em; text-transform:uppercase; color:var(--muted); margin-bottom:8px}
.field input, .field textarea, .field select{width:100%; background-color:transparent; border:0; border-bottom:1px solid var(--line-2); border-radius:0; padding:10px 0 12px; font-family:inherit; font-size:15px; color:var(--ink); outline:none; transition:border-color .25s ease}
.field textarea{min-height:130px; resize:vertical; line-height:1.6}
/* Select chevron base'den miras; line variant için sağa çekip küçült */
.field select{background-position:right 4px center; background-size:10px 7px; padding-right:30px}
.field input:focus, .field textarea:focus, .field select:focus{border-color:var(--gold); background-color:transparent}
.field.error input, .field.error textarea, .field.error select{border-color:var(--rose)}
.field .hint{font-size:11.5px; color:var(--rose); margin-top:6px; min-height:1em; opacity:0; transform:translateY(-2px); transition:all .2s}
.field.error .hint{opacity:1; transform:none}
.field.boxed input, .field.boxed select, .field.boxed textarea{border:1px solid var(--line-2); padding:14px 16px; background-color:var(--paper)}
.field.boxed select{padding-right:40px; background-position:right 16px center; background-size:12px 8px}
.field.boxed input:focus, .field.boxed select:focus, .field.boxed textarea:focus{border-color:var(--gold); background-color:#fff}

.checkrow{display:flex; align-items:flex-start; gap:12px; font-size:13.5px; color:var(--ink-2)}
.checkrow input{appearance:none; width:18px; height:18px; min-width:18px; border:1px solid var(--line-2); margin-top:1px; position:relative; cursor:pointer; transition:all .2s; background:var(--paper)}
.checkrow input:checked{background:var(--ink); border-color:var(--ink)}
.checkrow input:checked::after{content:""; position:absolute; left:5px; top:1px; width:5px; height:10px; border-right:1.5px solid var(--gold); border-bottom:1.5px solid var(--gold); transform:rotate(45deg)}
.checkrow a{color:var(--gold-2); border-bottom:1px solid var(--line-2)}

/* ---------- BADGES ---------- */
.badge{display:inline-flex; align-items:center; gap:6px; font-size:10.5px; letter-spacing:.22em; text-transform:uppercase; padding:5px 10px; border:1px solid var(--line-2); background:var(--paper); color:var(--ink-2)}
.badge.gold{border-color:var(--gold); color:var(--gold-2); background:rgba(180,138,60,.06)}
.badge.dark{background:var(--ink); color:var(--gold-soft); border-color:var(--ink)}
.badge.rose{border-color:var(--rose); color:var(--rose); background:rgba(185,106,95,.06)}
.badge.green{border-color:var(--green); color:var(--green); background:rgba(74,122,82,.06)}

/* ---------- PRODUCT CARD ---------- */
.product{position:relative; transition:transform .35s ease; display:block}
.product:hover{transform:translateY(-4px)}
.product .pic{
  aspect-ratio: 4/5;
  background:linear-gradient(180deg, var(--ivory-2), var(--line)) repeating-linear-gradient(45deg, transparent 0 12px, rgba(180,138,60,.06) 12px 13px);
  border:1px solid var(--line-2);
  position:relative; overflow:hidden;
  display:grid; place-items:center;
}
.product .pic::after{content:""; position:absolute; inset:14px; border:1px solid rgba(180,138,60,.25); pointer-events:none}
.product .pic .ph{font-family:'Cormorant Garamond',serif; font-style:italic; font-size:14px; color:var(--gold-2); opacity:.55; letter-spacing:.06em}
.product .pic img{position:absolute; inset:0; width:100%; height:100%; object-fit:cover}
.product .badges{position:absolute; top:14px; left:14px; display:flex; flex-direction:column; gap:6px; z-index:2}
.product .fav{position:absolute; top:14px; right:14px; z-index:2}
.product .quick{position:absolute; left:14px; right:14px; bottom:14px; background:var(--ink); color:var(--gold-soft); text-align:center; padding:12px; font-size:11px; letter-spacing:.28em; text-transform:uppercase; opacity:0; transform:translateY(8px); transition:all .35s ease; z-index:2; text-decoration:none}
.product:hover .quick{opacity:1; transform:none}
.product h3{font-family:'Cormorant Garamond',serif; font-weight:600; font-size:20px; margin:18px 0 4px; letter-spacing:.005em}
.product .meta{font-size:11px; letter-spacing:.28em; text-transform:uppercase; color:var(--muted); margin-bottom:8px}
.product .price{font-size:14px; color:var(--ink-2); line-height:1.55}
.product .price .woocommerce-Price-amount,
.product .price bdi,
.product .price .woocommerce-Price-currencySymbol,
.product .price b,
.product .price span{font-family:inherit; font-weight:inherit; font-size:inherit; color:inherit; letter-spacing:inherit}
.product .price s{color:var(--muted); font-family:inherit; font-size:inherit}

/* ---------- FOOTER ---------- */
.pre-foot{background:var(--ink); color:#e9e1cd; padding:60px 0; text-align:center}
.pre-foot .ornament .line{background:linear-gradient(90deg, transparent, rgba(217,183,114,.45), transparent)}
.pre-foot .ornament .diamond{background:var(--gold-soft); box-shadow:0 0 0 4px rgba(217,183,114,.1)}
.pre-foot h3{font-family:'Cormorant Garamond',serif; font-size:46px; margin:18px 0 10px; font-weight:500}
.pre-foot h3 em{font-style:italic; color:var(--gold-soft)}
.pre-foot p{color:#c8bfa8; max-width:42ch; margin:0 auto 26px; font-size:14.5px}
.pre-foot a.btn-ghost{display:inline-flex; align-items:center; gap:14px; border:1px solid var(--gold); color:var(--gold-soft); padding:16px 28px; font-size:12px; letter-spacing:.32em; text-transform:uppercase; transition:all .3s ease}
.pre-foot a.btn-ghost:hover{background:var(--gold); color:var(--ink)}

footer.site{background:#13110d; color:#a59c87; font-size:13px; padding:48px 0 28px}
footer .foot-grid{display:grid; grid-template-columns: 1.6fr 1fr 1fr 1fr; gap:50px; margin-bottom:40px}
footer .col h2{font-family:'Cormorant Garamond',serif; color:var(--gold-soft); font-size:18px; line-height:1.3; margin:0 0 16px; font-weight:600}
/* Footer marka logosu — koyu zeminde gold-soft (header'da ink). */
footer .logo .dm-logo-svg svg{color:var(--gold-soft); height:34px}
footer .logo:hover .dm-logo-svg svg{color:var(--gold-soft)}
footer .col ul{list-style:none; padding:0; margin:0; display:flex; flex-direction:column; gap:8px}
footer .col a:hover{color:var(--gold-soft)}
footer .col p{margin:0 0 16px; line-height:1.7}
footer .row2{display:flex; align-items:center; justify-content:space-between; gap:20px; flex-wrap:wrap; padding-top:24px; border-top:1px solid rgba(165,156,135,.2)}
footer .row2 a{margin:0 14px}
footer .pay{display:flex; gap:8px}
footer .pay span{padding:4px 10px; border:1px solid rgba(217,183,114,.3); font-size:10px; letter-spacing:.2em}
.sico{width:36px; height:36px; display:grid; place-items:center; border:1px solid rgba(217,183,114,.3); color:#c8bfa8; transition:all .25s}
.sico:hover{background:var(--gold); color:var(--ink); border-color:var(--gold)}

/* ---------- UTIL ---------- */
.ico{width:18px; height:18px; stroke:currentColor; fill:none; stroke-width:1.4}
.placeholder-img{background:linear-gradient(135deg, rgba(180,138,60,.05), rgba(180,138,60,.02)),repeating-linear-gradient(45deg, transparent 0 14px, rgba(180,138,60,.08) 14px 15px),linear-gradient(180deg, var(--ivory-2), var(--line)); border:1px solid var(--line-2); display:grid; place-items:center; color:var(--gold-2); font-family:'Cormorant Garamond',serif; font-style:italic; font-size:14px; letter-spacing:.04em; opacity:.85; overflow:hidden}
/* Customizer'dan görsel yüklendiğinde placeholder pattern üzerine bindirilir,
   ph-tag z-index ile resmin üzerinde tutulur, .85 opacity kalkar. */
.placeholder-img img{position:absolute; inset:0; width:100%; height:100%; object-fit:cover; z-index:0}
.placeholder-img:has(img){opacity:1}
.placeholder-img .ph-tag{position:relative; z-index:1; background:var(--paper); padding:6px 14px; border:1px solid var(--line-2); font-size:12px; letter-spacing:.18em; text-transform:uppercase; font-style:normal; color:var(--gold-2); font-family:'Inter', sans-serif; font-weight:500}
.leaf{position:absolute; pointer-events:none; opacity:.5}
:target{scroll-margin-top:100px}

/* =========================================================
   FRONT PAGE
   ========================================================= */
.hero{position:relative; overflow:hidden; padding:90px 0 100px; background:radial-gradient(1100px 600px at 80% 30%, rgba(180,138,60,.12), transparent 60%),radial-gradient(900px 500px at 10% 80%, rgba(31,58,48,.08), transparent 60%),linear-gradient(180deg, var(--paper), var(--ivory)); border-bottom:1px solid var(--line)}
.hero-grid{display:grid; grid-template-columns:1.05fr 1fr; gap:80px; align-items:center}
.hero h1{font-family:'Cormorant Garamond',serif; font-weight:500; font-size:clamp(48px, 6.4vw, 92px); line-height:1.02; letter-spacing:-.01em; margin:18px 0 22px}
.hero h1 em{font-style:italic; color:var(--gold-2)}
.hero .lead{font-size:17px; color:var(--ink-2); line-height:1.7; max-width:48ch; margin:0 0 32px}
.hero .cta{display:flex; gap:14px; flex-wrap:wrap; margin-bottom:34px}
.hero .trust{display:flex; gap:30px; flex-wrap:wrap; font-size:12.5px; color:var(--ink-2); letter-spacing:.04em}
.hero .trust b{display:block; font-family:'Cormorant Garamond',serif; font-size:30px; font-weight:600; color:var(--ink); line-height:1; margin-bottom:4px}
.hero .trust em{font-style:normal; color:var(--gold-2); font-weight:600}
.hero-art{position:relative; aspect-ratio:1/1.05}
.hero-art .card-img{position:absolute; inset:0; border:1px solid var(--line-2); box-shadow:var(--shadow)}
.hero-art .card-img.a{inset:0 30% 18% 0; transform:rotate(-4deg); z-index:2}
.hero-art .card-img.b{inset:14% 0 4% 20%; transform:rotate(3deg); z-index:1}
.hero-art .card-img .ph-tag{font-size:11px}
.hero-art .seal{position:absolute; right:-10px; top:-10px; width:120px; height:120px; border-radius:50%; background:var(--ink); color:var(--gold-soft); display:grid; place-items:center; text-align:center; z-index:3; box-shadow:var(--shadow); font-family:'Cormorant Garamond',serif; font-style:italic; line-height:1.1; font-size:14px; padding:14px}
.hero-art .seal::before{content:""; position:absolute; inset:6px; border:1px solid var(--gold); border-radius:50%}
.hero-art .seal b{display:block; font-size:32px; font-style:normal; font-weight:600; color:var(--gold); margin-bottom:2px}

.marquee{background:var(--ink-2); color:var(--gold-soft); padding:18px 0; overflow:hidden; white-space:nowrap; border-bottom:1px solid var(--line)}
.marquee .track{display:inline-flex; animation:dm-marquee 40s linear infinite}
.marquee span{font-family:'Cormorant Garamond',serif; font-style:italic; font-size:24px}
.marquee b{font-style:normal; font-weight:400; color:var(--gold); margin:0 30px}
@keyframes dm-marquee{from{transform:translateX(0)} to{transform:translateX(-50%)}}

.steps-section{padding:100px 0; text-align:center}
.section-head{text-align:center; margin-bottom:60px}
.section-head h2{font-family:'Cormorant Garamond',serif; font-weight:500; font-size:clamp(40px,5vw,62px); line-height:1.1; margin:14px 0 12px}
.section-head h2 em{font-style:italic; color:var(--gold-2)}
.section-head p{color:var(--muted); max-width:50ch; margin:0 auto; font-size:15.5px}
.steps{display:grid; grid-template-columns:repeat(3,1fr); gap:30px; margin-top:50px}
.step{padding:40px 30px; text-align:center; border:1px solid var(--line); background:var(--paper); position:relative; transition:all .35s ease}
.step:hover{border-color:var(--gold); transform:translateY(-4px); box-shadow:var(--shadow-sm)}
.step .num{font-family:'Cormorant Garamond',serif; font-style:italic; font-size:64px; color:var(--gold); line-height:1; margin-bottom:14px; font-weight:500}
.step h3{font-family:'Cormorant Garamond',serif; font-size:24px; margin:8px 0 12px; font-weight:600}
.step p{color:var(--ink-2); margin:0; font-size:14.5px; line-height:1.7}
.step::after{content:none}
.step:last-child::after{display:none}

.cats-section{padding:100px 0; background:var(--ivory-2); border-top:1px solid var(--line); border-bottom:1px solid var(--line)}
.cats{display:grid; grid-template-columns:1fr 1fr 1fr; gap:24px; margin-top:50px}
.cat{aspect-ratio:3/4; position:relative; overflow:hidden; border:1px solid var(--line-2); display:flex; flex-direction:column; justify-content:flex-end; padding:30px; cursor:pointer; transition:transform .4s ease; text-decoration:none}
.cat:hover{transform:translateY(-4px)}
/* .bg: dekoratif fallback pattern (kategori thumbnail yokken görünür). Yüklenen
   img absolute inset:0 ile bu pattern'i kaplar. Dark vignette .cat::after'a
   taşındı (img'in ÜZERİNDE, metnin altında dursun diye). */
.cat .bg{position:absolute; inset:0; z-index:0; background:linear-gradient(135deg, rgba(180,138,60,.05), rgba(180,138,60,.02)),repeating-linear-gradient(45deg, transparent 0 14px, rgba(180,138,60,.08) 14px 15px),linear-gradient(180deg, var(--ivory-2), var(--line)); transition:transform .6s ease}
.cat .bg img{position:absolute; inset:0; width:100%; height:100%; object-fit:cover}
.cat:hover .bg{transform:scale(1.04)}
.cat::after{content:""; position:absolute; inset:0; background:linear-gradient(180deg, rgba(0,0,0,0) 30%, rgba(31,27,20,.72) 100%); z-index:1; pointer-events:none}
.cat .ph-tag{position:absolute; top:20px; left:20px; z-index:2; background:var(--paper); padding:6px 14px; border:1px solid var(--line-2); font-size:11px; letter-spacing:.22em; text-transform:uppercase; color:var(--gold-2); font-weight:500}
.cat-body{position:relative; z-index:3; color:var(--paper)}
.cat h3{font-family:'Cormorant Garamond',serif; font-size:36px; margin:0 0 8px; font-weight:500; color:var(--paper)}
.cat h3 em{font-style:italic; color:var(--gold-soft)}
.cat p{margin:0 0 18px; font-size:14.5px; color:#e9e1cd; max-width:30ch}
.cat .link{display:inline-flex; align-items:center; gap:10px; font-size:11.5px; letter-spacing:.28em; text-transform:uppercase; color:var(--gold-soft); border-bottom:1px solid var(--gold)}

.featured{padding:110px 0}
.pgrid{display:grid; grid-template-columns:repeat(4,1fr); gap:30px 24px; margin-top:50px}
.featured .tabs{display:flex; justify-content:center; gap:30px; margin-top:24px; flex-wrap:wrap}
.featured .tabs button{font-size:12.5px; letter-spacing:.28em; text-transform:uppercase; color:var(--muted); padding:8px 4px; border-bottom:1px solid transparent; transition:all .25s}
.featured .tabs button.active, .featured .tabs button:hover{color:var(--ink); border-color:var(--gold)}
/* Sekme filtresi (client-side) — eşleşmeyen kart gizlenir, boş kategori mesajı. */
.featured .pgrid .product.dm-hide{display:none}
.featured .pgrid-empty{grid-column:1/-1; text-align:center; color:var(--muted); padding:30px 0}
.featured .more{text-align:center; margin-top:60px}

/* Anasayfa "Günlüğümüzden" — son blog yazıları (.product kart dilinden yatay uyarlama). */
.journal{padding:110px 0; background:var(--paper); border-top:1px solid var(--line)}
.jgrid{display:grid; grid-template-columns:repeat(3,1fr); gap:40px 28px; margin-top:50px}
.jpost{display:block; text-decoration:none; color:inherit; transition:transform .35s ease}
.jpost:hover{transform:translateY(-4px)}
.jpic{position:relative; aspect-ratio:3/2; overflow:hidden; border:1px solid var(--line-2); background:linear-gradient(180deg,var(--ivory-2),var(--line))}
.jpic img{width:100%; height:100%; object-fit:cover; display:block}
.jpic::after{content:""; position:absolute; inset:14px; border:1px solid rgba(180,138,60,.25); pointer-events:none}
.jmeta{font-size:11px; letter-spacing:.22em; text-transform:uppercase; color:var(--muted); margin:18px 0 6px}
.jmeta .sep{margin:0 8px}
.jpost h3{font-family:'Cormorant Garamond',serif; font-weight:600; font-size:24px; line-height:1.25; margin:0; color:var(--ink); transition:color .25s ease}
.jpost:hover h3{color:var(--gold-2)}
.jexc{color:var(--muted); font-size:14px; line-height:1.6; margin:8px 0 0}
.journal .more{text-align:center; margin-top:60px}

.promise{padding:80px 0; background:var(--ink); color:#e9e1cd; border-top:1px solid var(--line)}
.promise-grid{display:grid; grid-template-columns:repeat(4,1fr); gap:30px}
.promise-item{display:flex; flex-direction:column; gap:14px; align-items:flex-start}
.promise-item .pico{width:48px; height:48px; border:1px solid var(--gold); display:grid; place-items:center; color:var(--gold-soft)}
.promise-item h3{font-family:'Cormorant Garamond',serif; color:var(--paper); margin:0; font-size:22px; font-weight:600}
.promise-item p{margin:0; color:#c8bfa8; font-size:13.5px; line-height:1.65}

.testimonials{padding:110px 0; background:var(--paper); border-top:1px solid var(--line)}
.tgrid{display:grid; grid-template-columns:repeat(2,1fr); gap:30px; margin-top:50px}
.testimonial{background:var(--ivory); padding:36px 32px; border:1px solid var(--line); position:relative}
.testimonial .quote{font-family:'Cormorant Garamond',serif; font-style:italic; font-size:88px; color:var(--gold); line-height:1; position:absolute; top:14px; left:24px; opacity:.5}
.testimonial p{margin:30px 0 24px; font-size:16px; color:var(--ink-2); line-height:1.75; position:relative; z-index:1}
.testimonial .who{display:flex; align-items:center; gap:14px}
.testimonial .avatar{width:46px; height:46px; border-radius:50%; background:var(--ink); color:var(--gold-soft); display:grid; place-items:center; font-family:'Cormorant Garamond',serif; font-style:italic; font-size:18px; border:1px solid var(--gold)}
.testimonial .who b{font-family:'Cormorant Garamond',serif; font-size:18px; font-weight:600; display:block}
.testimonial .who small{font-size:11.5px; letter-spacing:.16em; color:var(--muted); text-transform:uppercase}
.stars{color:var(--gold); letter-spacing:.1em; margin-bottom:6px}

/* =========================================================
   CATEGORY / SHOP ARCHIVE
   ========================================================= */
.cat-hero{padding:70px 0 50px; background:radial-gradient(900px 400px at 50% -80px, rgba(180,138,60,.10), transparent 60%), linear-gradient(180deg, var(--paper), var(--ivory)); border-bottom:1px solid var(--line)}
.cat-hero .row{display:grid; grid-template-columns:1fr auto; gap:30px; align-items:flex-end}
.cat-hero .crumbs{margin-bottom:14px}
.cat-hero h1{font-family:'Cormorant Garamond',serif; font-weight:500; font-size:clamp(40px,5vw,68px); line-height:1.05; margin:6px 0 12px}
.cat-hero h1 em{font-style:italic; color:var(--gold-2)}
.cat-hero p{margin:0; color:var(--ink-2); max-width:60ch; font-size:15.5px}
.cat-hero .count{font-size:13px; color:var(--muted); letter-spacing:.04em; white-space:nowrap}
.cat-hero .count b{font-family:'Cormorant Garamond',serif; color:var(--ink); font-size:22px; font-weight:600; margin-right:4px}
.chips{display:flex; gap:10px; flex-wrap:wrap; margin-top:24px}
.chip{display:inline-flex; align-items:center; gap:8px; padding:8px 16px; border:1px solid var(--line-2); background:var(--paper); font-size:12.5px; letter-spacing:.04em; color:var(--ink-2); transition:all .25s; cursor:pointer}
.chip:hover, .chip.active{border-color:var(--ink); color:var(--ink); background:var(--ivory)}
.chip.active{background:var(--ink); color:var(--gold-soft); border-color:var(--ink)}

.toolbar{display:flex; align-items:center; justify-content:space-between; padding:22px 0; border-bottom:1px solid var(--line); position:sticky; top:78px; background:var(--ivory); z-index:30}
.toolbar-l{display:flex; align-items:center; gap:20px; font-size:13px}
.toolbar-l button{display:inline-flex; align-items:center; gap:8px; color:var(--ink-2)}
.toolbar-l button:hover{color:var(--gold-2)}
.toolbar-r{display:flex; align-items:center; gap:18px}
.sortby{display:inline-flex; align-items:center; gap:10px; font-size:13px; color:var(--ink-2)}
/* Sırala / WC catalog ordering — italik Cormorant + SVG chevron + alt-line vurgu */
.sortby select,
.woocommerce-ordering select,
select.orderby{
	border:0;
	border-bottom:1px solid var(--line-2);
	background-color:transparent;
	font-family:'Cormorant Garamond',serif; font-style:italic; font-size:17px;
	color:var(--ink);
	padding:4px 24px 6px 4px;
	cursor:pointer; outline:none;
	background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 8'><path d='M1 1.5l5 5 5-5' stroke='%238e6a26' stroke-width='1.5' fill='none' stroke-linecap='round' stroke-linejoin='round'/></svg>");
	background-repeat:no-repeat;
	background-position:right 2px center;
	background-size:10px 7px;
	transition:border-color .25s ease;
}
.sortby select:hover,
.woocommerce-ordering select:hover,
select.orderby:hover{border-bottom-color:var(--gold-soft)}
.sortby select:focus,
.woocommerce-ordering select:focus,
select.orderby:focus{background-color:transparent; border-bottom-color:var(--gold)}
.woocommerce-ordering{margin:0}
.view-toggle{display:flex; gap:0; border:1px solid var(--line-2)}
.view-toggle button{width:34px; height:34px; display:grid; place-items:center; color:var(--ink-2)}
.view-toggle button.active{background:var(--ink); color:var(--gold-soft)}

.cat-wrap{padding-block:40px 80px}

.pgrid{display:grid; grid-template-columns:repeat(3,1fr); gap:40px 28px}
/* Pagination — hem doğrudan `.pagi` hem WP'nin sardığı `.pagi .nav-links` için flex. */
.pagi{margin-top:60px}
.pagi,
.pagi .nav-links{display:flex; justify-content:center; align-items:center; gap:6px; flex-wrap:wrap}
.pagi a, .pagi span{width:38px; height:38px; display:grid; place-items:center; font-size:13.5px; border:1px solid var(--line-2); color:var(--ink-2); background:var(--paper); transition:all .25s; text-decoration:none}
.pagi a:hover{border-color:var(--gold); color:var(--gold-2)}
.pagi a.active, .pagi .current{background:var(--ink); color:var(--gold-soft); border-color:var(--ink)}
.pagi .arrow, .pagi .next, .pagi .prev, .pagi a.next, .pagi a.prev{padding:0 18px; width:auto; font-size:12px; letter-spacing:.2em; text-transform:uppercase}
.pagi .dots{border:0; background:transparent}

/* A11y: WP standart yardımcı — ekran okuyucu için görünür ama vizüel olarak gizli. */
.screen-reader-text{
	border:0; clip:rect(1px,1px,1px,1px); clip-path:inset(50%);
	height:1px; width:1px; margin:-1px; padding:0; overflow:hidden;
	position:absolute !important; word-wrap:normal !important;
}
.screen-reader-text:focus{
	clip:auto !important; clip-path:none;
	background-color:var(--paper); color:var(--ink);
	display:block; font-size:14px; height:auto;
	left:5px; top:5px; line-height:normal;
	padding:15px 23px; text-decoration:none;
	width:auto; z-index:100000;
}

.mini-cta{background:var(--ivory-2); border:1px solid var(--line); padding:30px; margin:40px 0; text-align:center}
.mini-cta h4{font-family:'Cormorant Garamond',serif; font-style:italic; font-size:24px; margin:0 0 8px; font-weight:500; color:var(--ink)}
.mini-cta p{margin:0 0 14px; color:var(--ink-2); font-size:14px}
.mini-cta a{font-size:11.5px; letter-spacing:.28em; text-transform:uppercase; color:var(--gold-2); border-bottom:1px solid var(--gold)}

/* =========================================================
   SINGLE PRODUCT
   ========================================================= */
.crumb-bar{padding:20px 0; border-bottom:1px solid var(--line); background:var(--paper)}
.crumb-bar .row{display:flex; justify-content:space-between; align-items:center}
.crumb-bar .nav-links{display:flex; gap:14px; font-size:12.5px; color:var(--muted)}
.crumb-bar .nav-links a{display:inline-flex; align-items:center; gap:6px}
.crumb-bar .nav-links a:hover{color:var(--gold-2)}

.product-wrap{padding-block:50px 80px}
/* 12 birim grid: gallery 7, ortada 1 birim BOŞ track (kullanıcı isteği), pinfo 4.
   Boşluk gap değil, gerçek bir kolon — gap:0 ile track genişliği netleşir. */
.product-grid{display:grid; grid-template-columns:7fr 1fr 4fr; gap:0; align-items:start}
.product-grid > .dm-gallery-col{grid-column:1}
.product-grid > .pinfo{grid-column:3}
.gallery{display:grid; grid-template-columns:80px 1fr; gap:18px; align-items:flex-start}
.thumbs{display:flex; flex-direction:column; gap:12px}
.thumb{aspect-ratio:1; min-width:80px; cursor:pointer; border:1px solid var(--line-2); transition:all .25s}
.thumb.active{border-color:var(--gold); box-shadow:0 0 0 2px rgba(180,138,60,.15)}
.thumb:hover{border-color:var(--gold-soft)}
.main-img{aspect-ratio:4/5; position:relative; border:1px solid var(--line-2)}
.main-img .badges{position:absolute; top:18px; left:18px; display:flex; gap:8px; z-index:2}
.main-img .zoom{position:absolute; top:18px; right:18px; z-index:2}
.preview-card{width:80%; height:80%; background:linear-gradient(170deg, #1f3a30, #0f1f1a); color:var(--gold-soft); text-align:center; display:flex; flex-direction:column; justify-content:center; padding:8% 12%; box-shadow:0 30px 60px -30px rgba(0,0,0,.4); border:1px solid rgba(180,138,60,.3); position:relative; margin:auto}
.preview-card::before{content:""; position:absolute; inset:14px; border:1px solid rgba(180,138,60,.4)}
.preview-card .small-top{font-family:'Cormorant Garamond',serif; font-style:italic; font-size:18px; opacity:.7; letter-spacing:.16em; text-transform:uppercase; margin-bottom:30px}
.preview-card h2{font-family:'Cormorant Garamond',serif; font-size:42px; margin:0; line-height:1.1; color:var(--gold-soft); font-weight:500}
.preview-card .amp{font-style:italic; display:block; font-size:24px; margin:6px 0; color:var(--gold)}
.preview-card .date{margin-top:24px; font-family:'Cormorant Garamond',serif; font-style:italic; font-size:18px; letter-spacing:.2em}
.preview-card .ornament{margin:20px auto}
.preview-card .ornament .line{background:linear-gradient(90deg, transparent, rgba(217,183,114,.4), transparent)}
.preview-card .ornament .diamond{background:var(--gold-soft); box-shadow:0 0 0 4px rgba(217,183,114,.15)}
.preview-card .place{font-size:11px; letter-spacing:.32em; text-transform:uppercase; opacity:.75; margin-top:18px}

/* ---------- DM STACKED GALLERY + MODAL ---------- */
.dm-gallery-col{min-width:0}
.dm-gallery-stack{display:flex; flex-direction:column; gap:18px}
.dm-gallery-img{
  display:block; width:100%; padding:0; margin:0;
  border:1px solid var(--line-2); background:var(--paper);
  cursor:zoom-in; transition:border-color .25s ease, box-shadow .25s ease;
  border-radius:0;
}
.dm-gallery-img:hover{border-color:var(--gold); box-shadow:0 0 0 1px rgba(180,138,60,.18)}
.dm-gallery-img:focus-visible{outline:none; border-color:var(--gold); box-shadow:0 0 0 2px rgba(180,138,60,.25)}
.dm-gallery-img img{display:block; width:100%; height:auto}
.dm-gallery-placeholder{border:1px solid var(--line-2); background:var(--paper)}
.dm-gallery-placeholder img{display:block; width:100%; height:auto; opacity:.7}

.dm-img-modal{
  position:fixed; inset:0; z-index:10000;
  display:none; align-items:center; justify-content:center;
  background:rgba(31,27,20,.92);
  padding:48px 24px;
  opacity:0; transition:opacity .25s ease;
}
.dm-img-modal.open{display:flex; opacity:1}
.dm-img-modal__stage{
  position:relative; width:100%; height:100%;
  display:flex; align-items:center; justify-content:center;
}
.dm-img-modal__img{
  max-width:min(1100px, 92vw);
  max-height:calc(100vh - 96px);
  width:auto; height:auto;
  display:block;
  border:1px solid rgba(180,138,60,.35);
  background:var(--paper);
  box-shadow:0 30px 80px -20px rgba(0,0,0,.6);
}
.dm-img-modal__close{
  position:absolute; top:18px; right:18px;
  width:44px; height:44px;
  display:grid; place-items:center;
  border:1px solid rgba(217,183,114,.5); background:transparent;
  color:var(--gold-soft);
  cursor:pointer;
  transition:all .25s ease;
  border-radius:50%;
  z-index:2;
}
.dm-img-modal__close:hover, .dm-img-modal__close:focus-visible{
  border-color:var(--gold); color:var(--paper); background:rgba(180,138,60,.18);
  outline:none;
}
.dm-img-modal__nav{
  position:absolute; top:50%; transform:translateY(-50%);
  width:48px; height:48px;
  display:grid; place-items:center;
  border:1px solid rgba(217,183,114,.4); background:transparent;
  color:var(--gold-soft);
  cursor:pointer;
  transition:all .25s ease;
  border-radius:50%;
  z-index:2;
}
.dm-img-modal__nav.prev{left:18px}
.dm-img-modal__nav.next{right:18px}
.dm-img-modal__nav:hover, .dm-img-modal__nav:focus-visible{
  border-color:var(--gold); color:var(--paper); background:rgba(180,138,60,.18);
  outline:none;
}
.dm-img-modal__nav[disabled]{opacity:.25; cursor:not-allowed}
.dm-img-modal__counter{
  position:absolute; bottom:18px; left:50%; transform:translateX(-50%);
  font-family:'Cormorant Garamond',serif; font-style:italic;
  color:var(--gold-soft); font-size:15px; letter-spacing:.12em;
  opacity:.85;
  pointer-events:none;
}
body.dm-img-open{overflow:hidden}
@media(max-width:560px){
  .dm-img-modal{padding:24px 12px}
  .dm-img-modal__nav{width:40px; height:40px}
  .dm-img-modal__nav.prev{left:8px}
  .dm-img-modal__nav.next{right:8px}
  .dm-img-modal__close{top:10px; right:10px}
}

/* ---------- DM VARIATION PILLS (Adet seçimi) ---------- */
.woocommerce-variation-add-to-cart .single_add_to_cart_button{}
table.variations{width:100%; border:0; margin:22px 0 8px; border-collapse:collapse}
table.variations tbody{display:block}
table.variations tr{display:block; margin-bottom:18px}
table.variations th.label,
table.variations td.value{display:block; border:0; padding:0; background:transparent}
table.variations th.label{
  font-size:11px; letter-spacing:.28em; text-transform:uppercase; color:var(--muted);
  font-weight:500; margin-bottom:10px; text-align:left;
}
table.variations th.label label{color:inherit; font-weight:inherit}
.dm-pills{display:flex; flex-wrap:wrap; gap:10px; align-items:center}
.dm-pills > select{
  position:absolute; left:-9999px; top:auto;
  width:1px; height:1px; overflow:hidden;
  opacity:0; pointer-events:none;
}
.dm-pill{
  padding:12px 22px;
  border:1px solid var(--line-2);
  background:var(--paper); color:var(--ink);
  font-family:'Cormorant Garamond',serif; font-size:20px; font-weight:500;
  line-height:1;
  cursor:pointer; user-select:none;
  display:inline-flex; align-items:baseline; gap:6px;
  min-width:78px; justify-content:center;
  transition:border-color .25s ease, background-color .25s ease, color .25s ease;
  border-radius:0;
}
.dm-pill small{font-size:11px; letter-spacing:.22em; text-transform:uppercase; color:var(--muted); font-family:'Inter',sans-serif; font-weight:500}
.dm-pill:hover{border-color:var(--gold); color:var(--gold-2)}
.dm-pill:hover small{color:var(--gold-2)}
.dm-pill:focus-visible{outline:none; border-color:var(--gold); box-shadow:0 0 0 2px rgba(180,138,60,.2)}
.dm-pill.active{background:var(--ink); border-color:var(--ink); color:var(--gold-soft)}
.dm-pill.active small{color:var(--gold-soft); opacity:.75}
.reset_variations{
  font-family:'Cormorant Garamond',serif; font-style:italic; font-size:14px;
  color:var(--muted); margin-left:6px;
  border-bottom:1px solid transparent; transition:all .25s ease;
}
.reset_variations:hover{color:var(--gold-2); border-color:var(--gold)}
/* Layout shift engeli: WC default .single_variation_wrap'i pill seçilene kadar
   display:none tutar (jQuery slideDown). Plugin butonu (#open-card-designer) bu
   wrap'in içinde — seçim anında shift oluşur. !important ile her zaman görünür
   yapıyoruz; inline style="display:none"'u da eziyor. */
.single_variation_wrap{display:block !important; margin-top:10px}
/* WC variation price/availability bloku — fiyat zaten .price-block .now'da
   gösteriliyor, bu blokun görünmesi gereksiz + bir layout shift kaynağı. */
.single_variation{display:none !important}
.woocommerce-variation-description{color:var(--muted); font-size:13.5px; line-height:1.6; margin-bottom:8px}
.woocommerce-variation-availability{font-size:12.5px; color:var(--green); margin-bottom:8px}
/* Inline sepete ekle alanını gizle — flow modal'a taşındı (simple-invitation-editor):
   pill ile adet seç → "Davetiyeni Özelleştir" → modal içinde sepete ekle.
   .woocommerce-variation-add-to-cart sadece qty + button'u sarar; bu hook'la
   aynı parent'taki "Davetiyeni Özelleştir" butonu (priority 15) ETKİLENMEZ. */
.product-wrap .woocommerce-variation-add-to-cart{display:none !important}

/* ---------- DM CTA — "Altın Mürekkep" (Gold Ink Sweep) animation ----------
   simple-invitation-editor plugin'inin bastığı #open-card-designer butonu.
   Plugin markup'ı: <button id="open-card-designer" disabled>. Inline style
   ile opacity/cursor kontrol ediyor (disable 0.5 / enable 1). Biz opacity'ye
   dokunmuyoruz — shimmer pseudo-element ile, bg ve transform üzerinden. */
#open-card-designer{
  position:relative;
  display:inline-flex; align-items:center; justify-content:center; gap:14px;
  width:100%;
  padding:20px 32px;
  margin-top:6px;
  background:var(--ink); color:var(--gold-soft);
  border:0; border-radius:0; cursor:pointer;
  font-family:'Inter',sans-serif; font-weight:500;
  font-size:12.5px; letter-spacing:.28em; text-transform:uppercase; line-height:1;
  overflow:hidden;
  transition:background-color .3s ease, color .3s ease, transform .25s ease;
}
#open-card-designer:hover{background:var(--gold-2); color:var(--paper)}
#open-card-designer:active{transform:scale(.98)}

/* Shimmer sweep (::before) — soldan sağa altın gradient */
#open-card-designer::before{
  content:""; position:absolute; top:0; bottom:0;
  left:-40%; width:40%;
  background:linear-gradient(
    100deg,
    rgba(217,183,114,0) 0%,
    rgba(217,183,114,.18) 35%,
    rgba(255,236,180,.45) 50%,
    rgba(217,183,114,.18) 65%,
    rgba(217,183,114,0) 100%
  );
  pointer-events:none;
  transform:skewX(-18deg);
}

/* Hover halkası (::after) */
#open-card-designer::after{
  content:""; position:absolute; inset:0;
  border:1px solid transparent;
  pointer-events:none;
  transition:border-color .3s ease;
}
#open-card-designer:not(:disabled):hover::after{border-color:rgba(217,183,114,.45)}

/* Enable durumunda sürekli sweep — 4.5s aralıkla bir kez geçer */
#open-card-designer:not(:disabled)::before{
  animation:dm-cta-sweep 4.5s ease-in-out 1.5s infinite;
}
@keyframes dm-cta-sweep{
  0%       { left:-40% }
  60%, 100%{ left:140% }
}

/* Flash + shockwave — state transition (disable → enable), JS class ekler */
#open-card-designer.dm-cta-flash{
  animation:
    dm-cta-flash .5s ease-out 1,
    dm-cta-shockwave .7s ease-out 1;
}
#open-card-designer.dm-cta-flash::before{
  /* İlk sweep eşiği — flash anında, sonra normal döngüye girer */
  animation:dm-cta-sweep-once .9s ease-out 1, dm-cta-sweep 4.5s ease-in-out 1.5s infinite;
}
@keyframes dm-cta-sweep-once{
  0%   { left:-40% }
  100% { left:140% }
}
@keyframes dm-cta-flash{
  0%   { background:var(--ink);    transform:scale(1) }
  40%  { background:var(--gold-2); transform:scale(1.02) }
  100% { background:var(--ink);    transform:scale(1) }
}
@keyframes dm-cta-shockwave{
  0%   { box-shadow:0 0 0 0 rgba(180,138,60,.55) }
  100% { box-shadow:0 0 0 24px rgba(180,138,60,0) }
}

.pinfo{position:sticky; top:100px; align-self:start}
.pinfo .meta-top{display:flex; align-items:center; gap:14px; font-size:12px; color:var(--muted); margin-bottom:14px; letter-spacing:.04em}
.pinfo .stars{color:var(--gold); letter-spacing:.1em}
.pinfo h1{font-family:'Cormorant Garamond',serif; font-weight:500; font-size:42px; line-height:1.05; margin:0 0 6px}
.pinfo h1 em{font-style:italic; color:var(--gold-2)}
.pinfo .sub{color:var(--muted); font-size:14px; margin-bottom:24px}

.price-block{padding:24px 0; border-bottom:1px solid var(--line); display:flex; align-items:flex-end; gap:20px; flex-wrap:wrap}
.price-block .now{font-family:'Inter',sans-serif; font-style:italic; font-size:15px; line-height:1.5; font-weight:500; color:var(--ink)}
/* Tüm descendant'lar (woocommerce-Price-amount/bdi/currencySymbol) tek-tip görünüm —
   fiyat ayrı bir font/size/weight'te kalmasın. */
.price-block .now *{font:inherit; color:inherit; margin:0}
/* Pill seçildiğinde variation total fiyatı JS ile burası doldurur (found_variation event).
   min-height alanı önceden rezerve eder → layout shift olmaz. */
.price-block .now-variation{
  display:block; min-height:28px; margin-top:4px;
  font-family:'Inter',sans-serif; font-style:italic;
  font-size:18px; font-weight:600; line-height:1.4;
  color:var(--gold-2);
}
.price-block .now-variation:empty{visibility:hidden}
.price-block .now-variation *{font:inherit; color:inherit; margin:0}
.price-block .unit{color:var(--muted); font-size:13px; margin-bottom:8px}
.price-block .was{color:var(--muted); text-decoration:line-through; font-size:18px; margin-bottom:8px}

.tiers{margin:22px 0; padding:18px 22px; background:var(--ivory-2); border:1px dashed var(--line-2); font-size:13px; color:var(--ink-2)}
.tiers b{font-family:'Cormorant Garamond',serif; font-size:16px; font-weight:600; color:var(--ink); margin-right:8px}
.tiers-table{display:grid; grid-template-columns:repeat(4,1fr); gap:1px; background:var(--line-2); margin-top:12px; border:1px solid var(--line-2)}
.tiers-table div{background:var(--paper); padding:10px 12px; text-align:center}
.tiers-table div small{display:block; font-size:10.5px; color:var(--muted); letter-spacing:.16em; text-transform:uppercase; margin-bottom:4px}
.tiers-table div b{font-family:'Cormorant Garamond',serif; font-size:18px; color:var(--gold-2)}

.customize{margin-top:28px}
.opt-group{margin-bottom:24px}
.opt-group .label-row{display:flex; justify-content:space-between; align-items:baseline; margin-bottom:12px}
.opt-group .label-row label{font-size:11px; letter-spacing:.28em; text-transform:uppercase; color:var(--muted)}
.opt-group .label-row .selected{font-family:'Cormorant Garamond',serif; font-style:italic; font-size:16px; color:var(--ink)}
.opts{display:flex; gap:10px; flex-wrap:wrap}
.opt{padding:10px 16px; border:1px solid var(--line-2); background:var(--paper); font-size:13px; color:var(--ink-2); cursor:pointer; transition:all .25s; display:inline-flex; align-items:center; gap:8px}
.opt:hover{border-color:var(--gold-soft)}
.opt.active{border-color:var(--ink); background:var(--ink); color:var(--gold-soft)}
.opt-color{width:42px; height:42px; padding:0; border:1px solid var(--line-2); position:relative}
.opt-color.active{border-color:var(--gold); box-shadow:0 0 0 2px rgba(180,138,60,.2)}
.opt-color .swatch-inner{position:absolute; inset:4px}

.qty-row{display:flex; align-items:center; gap:14px; margin:30px 0 24px}
.qty-stepper{display:inline-flex; align-items:center; border:1px solid var(--line-2); background:var(--paper)}
.qty-stepper button{width:44px; height:48px; font-size:18px; color:var(--ink-2)}
.qty-stepper button:hover{color:var(--gold-2); background:var(--ivory)}
.qty-stepper input{width:70px; height:48px; text-align:center; border:0; background:transparent; font-family:'Cormorant Garamond',serif; font-size:20px; font-weight:600; outline:none; border-left:1px solid var(--line-2); border-right:1px solid var(--line-2)}
.qty-row .qty-info{font-size:13px; color:var(--muted)}
.qty-row .qty-info b{font-family:'Cormorant Garamond',serif; color:var(--ink); font-size:18px; font-weight:600}

.actions{display:grid; grid-template-columns:1fr auto; gap:14px}
.actions .btn{justify-content:center; width:100%; padding:20px 28px}
.actions .fav-big{width:64px; height:64px; border:1px solid var(--ink); color:var(--ink-2); display:grid; place-items:center; cursor:pointer; transition:all .3s; background:transparent}
.actions .fav-big:hover{background:var(--ink); color:var(--rose)}

.ship-info{margin-top:24px; display:flex; flex-direction:column; gap:10px}
.ship-info .row{display:flex; align-items:center; gap:12px; font-size:13.5px; color:var(--ink-2)}
.ship-info .row svg{color:var(--gold-2)}
.ship-info .row b{font-weight:600; color:var(--ink)}

.details{margin-top:90px}
.tabs-nav{display:flex; gap:40px; border-bottom:1px solid var(--line); margin-bottom:30px; flex-wrap:wrap}
.tabs-nav button{padding:18px 0; font-size:12.5px; letter-spacing:.28em; text-transform:uppercase; color:var(--muted); border-bottom:2px solid transparent; margin-bottom:-1px; transition:all .25s}
.tabs-nav button.active, .tabs-nav button:hover{color:var(--ink); border-color:var(--gold)}
.tab-panel{display:none; padding:20px 0 0; font-size:15px; color:var(--ink-2); line-height:1.8; width:100%}
.tab-panel.active{display:block}
.tab-panel h3{font-family:'Cormorant Garamond',serif; font-size:24px; margin:20px 0 10px; font-weight:600; color:var(--ink)}
.tab-panel ul{padding-left:18px; line-height:1.9}
.tab-panel ul li{margin-bottom:4px}
.spec-table{width:100%; border-collapse:collapse; font-size:14px}
.spec-table th, .spec-table td{padding:14px 18px; text-align:left; border-bottom:1px solid var(--line); vertical-align:top}
.spec-table th{width:30%; font-family:'Cormorant Garamond',serif; font-size:17px; font-weight:600; color:var(--ink); letter-spacing:.005em}
.spec-table td{color:var(--ink-2)}

.review-summary{display:grid; grid-template-columns:auto 1fr; gap:50px; padding:30px 0; align-items:center}
.rs-score{text-align:center}
.rs-score .big{font-family:'Cormorant Garamond',serif; font-size:84px; line-height:1; font-weight:500}
.rs-score .big em{font-style:italic; color:var(--gold-2)}
.rs-score .stars{color:var(--gold); letter-spacing:.12em; font-size:18px; margin:6px 0}
.rs-score small{display:block; color:var(--muted); font-size:12.5px; letter-spacing:.18em; text-transform:uppercase}
.rs-bars{display:flex; flex-direction:column; gap:8px}
.rs-bar{display:grid; grid-template-columns:50px 1fr 50px; gap:14px; align-items:center; font-size:13px; color:var(--ink-2)}
.rs-bar .bar{height:6px; background:var(--line); position:relative; overflow:hidden}
.rs-bar .bar::after{content:""; position:absolute; left:0; top:0; bottom:0; width:var(--w); background:var(--gold)}
.review{padding:30px 0; border-top:1px solid var(--line); display:grid; grid-template-columns:200px 1fr; gap:30px}
.review .meta{font-size:13px; color:var(--ink-2)}
.review .meta b{display:block; font-family:'Cormorant Garamond',serif; font-size:18px; font-weight:600; color:var(--ink); margin-bottom:4px}
.review .meta .stars{color:var(--gold); letter-spacing:.1em; font-size:14px; margin:4px 0 8px}
.review .meta small{color:var(--muted); font-size:11.5px; letter-spacing:.12em; text-transform:uppercase}
.review .body p{margin:0 0 8px; font-size:15px; line-height:1.7; color:var(--ink)}
.review .body .pic-thumb{margin-top:14px; display:flex; gap:8px}
.review .body .pic-thumb div{width:70px; height:70px; border:1px solid var(--line-2)}

/* ---------- DM REVIEWS — header rating, stars, form, locked state ---------- */
/* Header rating link (h1 altı) — tıklayınca review tab'ına scroll */
.header-rating{
  display:inline-flex; align-items:center; gap:12px;
  margin-bottom:14px;
  text-decoration:none;
  color:var(--ink-2);
  font-size:12.5px; letter-spacing:.04em;
  transition:color .25s ease;
}
.header-rating:hover{color:var(--gold-2)}
.header-rating .hr-score{font-family:'Cormorant Garamond',serif; font-style:italic; font-size:20px; font-weight:600; color:var(--ink)}
.header-rating .hr-stars{display:inline-flex; align-items:center; gap:2px}
.header-rating .hr-count{border-bottom:1px solid var(--line-2); padding-bottom:1px; transition:border-color .25s ease}
.header-rating:hover .hr-count{border-color:var(--gold)}

/* SVG yıldız set — full/half/empty */
.dm-stars{display:inline-flex; align-items:center; gap:2px; line-height:1}
.dm-stars .dm-star-full,
.dm-stars .dm-star-half{color:var(--gold)}
.dm-stars .dm-star-empty{color:var(--line-2)}

/* Review tab wrapper */
.dm-reviews{padding:10px 0; scroll-margin-top:90px}
.dm-reviews .review .stars{display:inline-flex; align-items:center; gap:2px; margin:4px 0 8px}

/* No-reviews placeholder */
.no-reviews{padding:30px 0; color:var(--muted); font-style:italic; font-family:'Cormorant Garamond',serif; font-size:18px; text-align:center}

/* Review form wrap */
.review-form-wrap{margin-top:40px; padding-top:30px; border-top:1px solid var(--line)}
.review-form-wrap .field.boxed{margin-bottom:18px}
.review-form-wrap .must-log-in{color:var(--muted); font-style:italic; padding:18px; border:1px solid var(--line-2); background:var(--paper)}
.review-form-wrap .must-log-in a{color:var(--gold-2); border-bottom:1px solid var(--gold)}
.review-form-wrap .form-submit{margin-top:24px}
.review-form-wrap .form-submit input[type="submit"]{
  display:inline-flex; align-items:center; gap:14px;
  padding:16px 28px;
  font-size:12.5px; letter-spacing:.28em; text-transform:uppercase; font-weight:500;
  background:var(--ink); color:var(--paper);
  border:0; border-radius:0; cursor:pointer;
  transition:background-color .3s ease;
  font-family:'Inter',sans-serif;
}
.review-form-wrap .form-submit input[type="submit"]:hover{background:var(--gold-2)}

/* 5-yıldız radio widget (form içinde) — flex row-reverse trick ile hover sonraki sibling'leri gold yapar */
.review-rating-field{margin-bottom:22px}
.review-rating-field__label{
  display:block; margin-bottom:10px;
  font-size:11px; letter-spacing:.28em; text-transform:uppercase; color:var(--muted);
}
.review-rating-field .required{color:var(--rose)}
.review-star-rating{
  display:inline-flex; flex-direction:row-reverse; justify-content:flex-end;
  gap:4px; font-size:32px; line-height:1;
}
.review-star-rating input[type="radio"]{position:absolute; left:-9999px; width:1px; height:1px; opacity:0}
.review-star-rating .star-label{
  cursor:pointer; color:var(--line-2);
  transition:color .15s ease;
  padding:0 2px;
}
.review-star-rating input:checked ~ .star-label,
.review-star-rating .star-label:hover,
.review-star-rating .star-label:hover ~ .star-label{color:var(--gold)}
.review-star-rating input:focus-visible + .star-label{outline:1px solid var(--gold); outline-offset:2px}

/* Verified-only (purchase required) kart */
.review-locked{
  margin-top:30px; padding:32px 30px;
  background:var(--paper); border:1px solid var(--line-2);
  display:flex; flex-direction:column; align-items:center; gap:14px;
  text-align:center;
  color:var(--muted);
}
.review-locked svg{color:var(--gold-2)}
.review-locked p{margin:0; font-style:italic; font-family:'Cormorant Garamond',serif; font-size:18px; color:var(--ink-2)}

/* Pagination — review tab özel scope (.pagi flex zaten global) */
.review-pagi{margin-top:30px}

.related{padding:80px 0 40px; background:var(--ivory-2); border-top:1px solid var(--line)}
.related .pgrid{display:grid; grid-template-columns:repeat(4,1fr); gap:30px 24px; margin-top:40px}

/* =========================================================
   CART / CHECKOUT / THANK YOU
   ========================================================= */
.checkout-steps{padding-top:32px; background:var(--paper); border-bottom:1px solid var(--line)}
.checkout-steps > .container{display:flex; justify-content:center; gap:0; flex-wrap:wrap}
/* Front-page .step:hover (border+transform+shadow) bu div'lere sızıyor — disable. */
.checkout-steps .step:hover{transform:none; box-shadow:none; border-color:transparent; background:transparent}
.checkout-steps .step{display:flex; align-items:center; gap:14px; padding:24px 30px; color:var(--muted); font-size:13px; letter-spacing:.12em; text-transform:uppercase; position:relative}
.checkout-steps .step.active{color:var(--ink)}
.checkout-steps .step.done{color:var(--gold-2)}
.checkout-steps .step .num{width:34px; height:34px; border:1px solid var(--line-2); display:grid; place-items:center; font-family:'Cormorant Garamond',serif; font-size:18px; font-weight:600; border-radius:50%}
.checkout-steps .step.active .num{border-color:var(--ink); background:var(--ink); color:var(--gold-soft)}
.checkout-steps .step.done .num{border-color:var(--gold); background:var(--gold); color:var(--paper)}
.checkout-steps .step:not(:last-child)::after{content:""; width:60px; height:1px; background:var(--line-2); margin-left:10px}

.cart-wrap{padding:50px 28px 80px}
.cart-grid{display:grid; grid-template-columns:1.5fr 1fr; gap:50px; align-items:flex-start}
.cart-head{display:flex; justify-content:space-between; align-items:baseline; margin-bottom:24px}
.cart-head h1{font-family:'Cormorant Garamond',serif; font-size:42px; margin:0; font-weight:500; letter-spacing:-.005em}
.cart-head h1 em{font-style:italic; color:var(--gold-2)}
.cart-head small{color:var(--muted); font-size:13px; letter-spacing:.04em}

.cart-items{border-top:1px solid var(--line)}
.cart-row{display:grid; grid-template-columns:80px 1fr auto; gap:24px; padding:24px 0; border-bottom:1px solid var(--line); position:relative}
.cart-row .pic{width:80px; height:80px; border:1px solid var(--line-2)}
.cart-row .pic img{width:100%; height:100%; object-fit:cover; display:block}
.cart-row .body{display:flex; flex-direction:column; gap:8px}
.cart-row .body .top-row{display:flex; justify-content:space-between; align-items:flex-start; gap:14px}
.cart-row h3{font-family:'Cormorant Garamond',serif; font-size:22px; margin:0; font-weight:600; letter-spacing:.005em}
.cart-row .cat{font-size:11px; letter-spacing:.28em; text-transform:uppercase; color:var(--muted); margin-bottom:4px}
.cart-row .opts{display:flex; flex-wrap:wrap; gap:6px 14px; font-size:13px; color:var(--ink-2); margin:8px 0}
.cart-row .opts span{display:inline-flex; align-items:baseline; gap:4px}
.cart-row .opts span b{color:var(--ink); font-weight:500}
.cart-row .opts span:not(:last-child)::after{content:"·"; color:var(--line-2); margin-left:14px}
.cart-row .bottom-row{display:flex; align-items:center; justify-content:space-between; gap:14px; margin-top:8px; flex-wrap:wrap}
.cart-row .row-actions{display:flex; gap:16px; align-items:center}
/* WC default a.remove yuvarlak × kutusunu tamamen ez — Düzenle ile aynı görsel dil:
   düz metin link, altı çizili değil, hover sadece renk geçişi. */
.cart-row .row-actions a,
.cart-row .row-actions button,
.cart-row .row-actions a.remove{
  display:inline-block;
  background:transparent !important;
  border:0 !important;
  padding:0 !important;
  margin:0;
  font-size:11px !important;
  font-weight:400 !important;
  letter-spacing:.04em !important;
  line-height:1.5;
  text-transform:none !important;
  text-decoration:none !important;
  width:auto !important;
  height:auto !important;
  border-radius:0 !important;
  color:var(--ink-2) !important;
  cursor:pointer;
  transition:color .2s ease;
}
.cart-row .row-actions a:hover,
.cart-row .row-actions button:hover{color:var(--gold-2) !important}
.cart-row .row-actions a.remove:hover{color:var(--rose) !important}
.cart-row .price-col{text-align:right; min-width:120px}
.cart-row .price-col .unit{font-size:13px; color:var(--muted); margin-bottom:6px}
.cart-row .price-col .total{font-family:'Cormorant Garamond',serif; font-size:26px; font-weight:600; line-height:1}
.cart-row .price-col .total em{font-style:italic; color:var(--gold-2); font-size:18px; font-weight:500; margin-right:4px}
@keyframes dm-pulse{0%{transform:scale(.5); opacity:.9} 100%{transform:scale(1.6); opacity:0}}

.empty{text-align:center; padding:80px 30px; border:1px dashed var(--line-2); background:var(--paper)}
.empty .seal{width:90px; height:90px; border-radius:50%; border:1px solid var(--gold); display:grid; place-items:center; margin:0 auto 24px; color:var(--gold-2)}
.empty h3{font-family:'Cormorant Garamond',serif; font-size:32px; margin:0 0 8px; font-weight:500}
.empty p{color:var(--muted); margin:0 0 24px}

.promo-row{display:grid; grid-template-columns:1fr auto; gap:0; margin:30px 0; border:1px solid var(--line-2)}
.promo-row input{border:0; padding:16px 20px; background:transparent; font-family:inherit; font-size:14.5px; outline:none; color:var(--ink); letter-spacing:.02em}
.promo-row input::placeholder{color:var(--muted); font-style:italic; font-family:'Cormorant Garamond',serif; font-size:17px}
.promo-row button{padding:0 26px; font-size:11px; letter-spacing:.28em; text-transform:uppercase; background:var(--ink); color:var(--gold-soft)}
.promo-row button:hover{background:var(--gold-2); color:var(--paper)}
.cart-actions{display:flex; justify-content:space-between; gap:14px; margin-top:30px; flex-wrap:wrap}
.cart-actions a{font-size:12.5px; letter-spacing:.28em; text-transform:uppercase; color:var(--ink-2); border-bottom:1px solid var(--line-2); padding-bottom:2px}
.cart-actions a:hover{color:var(--gold-2); border-color:var(--gold)}

.summary{background:var(--paper); border:1px solid var(--line); padding:36px; position:sticky; top:100px; align-self:start}
.summary::before{content:""; position:absolute; inset:8px; border:1px solid var(--line-2); pointer-events:none}
.summary .corner{position:absolute; width:14px; height:14px; border:1px solid var(--gold)}
.summary .corner.tl{top:-8px; left:-1px; border-right:0; border-bottom:0}
.summary .corner.tr{top:-1px; right:-1px; border-left:0; border-bottom:0}
.summary .corner.bl{bottom:-1px; left:-1px; border-right:0; border-top:0}
.summary .corner.br{bottom:-1px; right:-1px; border-left:0; border-top:0}
.summary h3{font-family:'Cormorant Garamond',serif; font-size:26px; margin:0 0 22px; font-weight:600; letter-spacing:.005em; position:relative; z-index:1}
.summary h3 em{font-style:italic; color:var(--gold-2)}
.summary .line-item{display:flex; justify-content:space-between; padding:10px 0; font-size:14px; color:var(--ink-2); position:relative; z-index:1}
.summary .line-item.discount{color:var(--green)}
.summary .line-item b{font-weight:500; color:var(--ink); font-variant-numeric:tabular-nums}
.summary .divider, .summary hr{border:0; border-top:1px dashed var(--line-2); margin:12px 0; position:relative; z-index:1}
.summary .total{display:flex; justify-content:space-between; align-items:baseline; padding:14px 0 0; position:relative; z-index:1}
.summary .total .label{font-size:12px; letter-spacing:.28em; text-transform:uppercase; color:var(--muted)}
.summary .total .amt{font-family:'Cormorant Garamond',serif; font-size:38px; font-weight:600; line-height:1}
.summary .total .amt em{font-style:italic; color:var(--gold-2); font-size:24px; margin-right:6px; font-weight:500}
.summary .save-msg{font-size:12.5px; color:var(--green); text-align:right; margin-top:6px; font-style:italic; font-family:'Cormorant Garamond',serif; position:relative; z-index:1}
.summary .btn{margin-top:24px; width:100%; justify-content:center; padding:20px 28px; position:relative; z-index:1}
.summary .secure{display:flex; align-items:center; gap:10px; justify-content:center; font-size:11.5px; color:var(--muted); margin-top:14px; letter-spacing:.12em; position:relative; z-index:1}
.summary .pay-list{display:flex; gap:6px; justify-content:center; margin-top:14px; position:relative; z-index:1}
.summary .pay-list span{padding:4px 10px; border:1px solid var(--line-2); font-size:10px; letter-spacing:.18em; color:var(--muted)}
.summary .mini-item{display:grid; grid-template-columns:54px 1fr auto; gap:14px; padding:12px 0; border-bottom:1px solid var(--line); position:relative; z-index:1; align-items:center}
.summary .mini-item:last-of-type{border-bottom:0}
.summary .mini-item .pic{width:54px; height:66px; border:1px solid var(--line-2); position:relative}
.summary .mini-item h4{font-family:'Cormorant Garamond',serif; font-size:15px; margin:0 0 2px; font-weight:600; line-height:1.2}
.summary .mini-item small{font-size:11px; color:var(--muted); letter-spacing:.04em}
.summary .mini-item b{font-family:'Cormorant Garamond',serif; font-size:18px; font-weight:600; color:var(--ink)}

.suggested{padding:60px 0; background:var(--ivory-2); border-top:1px solid var(--line)}
.suggested .head{display:flex; justify-content:space-between; align-items:baseline; margin-bottom:30px}
.suggested h2{font-family:'Cormorant Garamond',serif; font-size:32px; margin:0; font-weight:500}
.suggested h2 em{font-style:italic; color:var(--gold-2)}
.suggested .pgrid{display:grid; grid-template-columns:repeat(4,1fr); gap:24px}

/* checkout sections */
.checkout{padding-block:50px 80px}
.checkout .grid{display:grid; grid-template-columns:1.4fr 1fr; gap:50px; align-items:flex-start}
.checkout .section{margin-bottom:40px}
.checkout .section h2{font-family:'Cormorant Garamond',serif; font-size:30px; margin:0 0 4px; font-weight:500; display:flex; align-items:center; gap:14px}
.checkout .section h2 em{font-style:italic; color:var(--gold-2)}
.checkout .section h2 .num-tag{width:32px; height:32px; border:1px solid var(--gold); color:var(--gold-2); display:grid; place-items:center; border-radius:50%; font-family:'Cormorant Garamond',serif; font-style:italic; font-size:16px; font-weight:600}
.checkout .section .sub-h{color:var(--muted); font-size:13.5px; margin:0 0 24px; padding-left:46px}
.form-card{background:var(--paper); border:1px solid var(--line); padding:32px}
.checkout .row{display:grid; grid-template-columns:1fr 1fr; gap:18px}

.addr .check{position:absolute; top:14px; right:14px; width:18px; height:18px; border-radius:50%; border:1px solid var(--line-2)}
.addr.active .check{background:var(--ink); border-color:var(--ink)}
.addr.active .check::after{content:""; position:absolute; left:5px; top:1px; width:5px; height:9px; border-right:1.5px solid var(--gold); border-bottom:1.5px solid var(--gold); transform:rotate(45deg)}
.addr .tag{font-size:10.5px; letter-spacing:.24em; text-transform:uppercase; color:var(--gold-2); margin-bottom:6px}
.addr h4{font-family:'Cormorant Garamond',serif; font-size:18px; margin:0 0 6px; font-weight:600}
.addr p{margin:0; color:var(--ink-2); font-size:13.5px; line-height:1.6}
.addr small{display:block; color:var(--muted); margin-top:6px; font-size:12px; letter-spacing:.02em}

.opt-card{display:grid; grid-template-columns:auto 1fr auto; gap:20px; align-items:center; padding:20px 24px; border:1px solid var(--line-2); margin-bottom:12px; background:var(--paper); cursor:pointer; transition:all .25s}
.opt-card:hover{border-color:var(--gold-soft)}
.opt-card.active{border-color:var(--ink); background:var(--ivory-2)}
.opt-card .radio{width:18px; height:18px; border-radius:50%; border:1px solid var(--line-2); position:relative}
.opt-card.active .radio{border-color:var(--ink)}
.opt-card.active .radio::after{content:""; position:absolute; inset:3px; background:var(--gold); border-radius:50%}
.opt-card .info h4{font-family:'Cormorant Garamond',serif; font-size:18px; margin:0; font-weight:600; display:flex; align-items:center; gap:10px}
.opt-card .info p{margin:4px 0 0; font-size:13px; color:var(--muted)}
.opt-card .price-tag{font-family:'Cormorant Garamond',serif; font-size:20px; font-weight:600; color:var(--ink); white-space:nowrap}
.opt-card .price-tag.free{color:var(--green)}
.opt-card .icon-stack{display:flex; gap:6px}
.opt-card .icon-stack span{padding:4px 10px; border:1px solid var(--line-2); font-size:10px; letter-spacing:.14em; color:var(--muted)}

.toggle-block{display:flex; gap:14px; align-items:center; padding:18px 24px; background:var(--ivory-2); border:1px solid var(--line); margin-bottom:18px; font-size:14px}
.toggle-block .toggle-sw{width:42px; height:24px; background:var(--line-2); border-radius:999px; position:relative; cursor:pointer; flex-shrink:0; transition:background .25s}
.toggle-block .toggle-sw.on{background:var(--ink)}
.toggle-block .toggle-sw::after{content:""; position:absolute; left:2px; top:2px; width:20px; height:20px; border-radius:50%; background:var(--paper); transition:left .25s}
.toggle-block .toggle-sw.on::after{left:20px; background:var(--gold-soft)}

.agree{display:flex; gap:12px; align-items:flex-start; margin-top:20px; font-size:12.5px; color:var(--ink-2); position:relative; z-index:1; line-height:1.6}
.agree input{appearance:none; width:16px; height:16px; min-width:16px; border:1px solid var(--line-2); margin-top:2px; cursor:pointer; background:var(--paper); position:relative}
.agree input:checked{background:var(--ink); border-color:var(--ink)}
.agree input:checked::after{content:""; position:absolute; left:5px; top:1px; width:5px; height:9px; border-right:1.5px solid var(--gold); border-bottom:1.5px solid var(--gold); transform:rotate(45deg)}
.agree a{color:var(--gold-2); border-bottom:1px solid var(--line-2)}
.place-order{margin-top:28px; width:100%; justify-content:center; padding:22px; font-size:13px; position:relative; z-index:1}

/* thank-you */
.confirm-hero{padding:80px 0 50px; text-align:center; background:radial-gradient(900px 400px at 50% -80px, rgba(180,138,60,.10), transparent 60%), linear-gradient(180deg, var(--paper), var(--ivory)); border-bottom:1px solid var(--line); position:relative; overflow:hidden}
.confirm-hero .seal{width:110px; height:110px; border-radius:50%; background:var(--ink); color:var(--gold); display:grid; place-items:center; margin:0 auto 28px; position:relative; border:1px solid var(--gold)}
.confirm-hero .seal::after{content:""; position:absolute; inset:-12px; border:1px dashed var(--gold-soft); border-radius:50%; animation:dm-spin 22s linear infinite}
@keyframes dm-spin{to{transform:rotate(360deg)}}
.confirm-hero .seal svg{width:48px; height:48px}
.confirm-hero h1{font-family:'Cormorant Garamond',serif; font-weight:500; font-size:clamp(48px,6vw,72px); line-height:1.05; margin:0 0 12px}
.confirm-hero h1 em{font-style:italic; color:var(--gold-2)}
.confirm-hero p{max-width:52ch; margin:0 auto 14px; color:var(--ink-2); font-size:16px; line-height:1.7}
.confirm-hero .order-no{display:inline-flex; align-items:center; gap:12px; margin-top:18px; padding:12px 22px; background:var(--paper); border:1px solid var(--gold); font-size:13px; letter-spacing:.16em; text-transform:uppercase}
.confirm-hero .order-no b{font-family:'Cormorant Garamond',serif; font-size:22px; letter-spacing:.04em; color:var(--ink); font-weight:600}
.confirm-hero .order-no b em{font-style:italic; color:var(--gold-2); font-weight:500}
.confetti{position:absolute; pointer-events:none; opacity:.6}
.confetti.a{left:8%; top:30%; width:6px; height:6px; background:var(--gold); transform:rotate(45deg)}
.confetti.b{right:10%; top:20%; width:8px; height:8px; background:var(--gold-soft); border-radius:50%}
.confetti.c{left:14%; bottom:30%; width:4px; height:4px; background:var(--gold); border-radius:50%}
.confetti.d{right:14%; bottom:25%; width:6px; height:6px; background:var(--gold-2); transform:rotate(45deg)}
.confetti.e{left:30%; top:18%; width:5px; height:5px; background:var(--rose); border-radius:50%; opacity:.4}
.confetti.f{right:30%; bottom:18%; width:7px; height:7px; background:var(--gold-soft); transform:rotate(45deg)}

.confirm-wrap{padding-block:60px 80px}
.confirm-grid{display:grid; grid-template-columns:1.4fr 1fr; gap:40px; align-items:flex-start}
.card-block{background:var(--paper); border:1px solid var(--line); padding:32px; margin-bottom:24px; position:relative}
.card-block::before{content:""; position:absolute; inset:8px; border:1px solid var(--line-2); pointer-events:none}
.card-block > *{position:relative; z-index:1}
.card-block h3{font-family:'Cormorant Garamond',serif; font-size:24px; margin:0 0 18px; font-weight:600; letter-spacing:.005em; display:flex; align-items:center; gap:12px}
.card-block h3 .ic{width:36px; height:36px; border:1px solid var(--gold); color:var(--gold-2); display:grid; place-items:center}
.card-block h3 em{font-style:italic; color:var(--gold-2)}

.tl{display:flex; flex-direction:column; gap:0; margin-top:8px}
.tl-item{display:grid; grid-template-columns:32px 1fr; gap:18px; padding:14px 0; position:relative}
.tl-item .dot{width:14px; height:14px; border-radius:50%; background:var(--paper); border:2px solid var(--line-2); justify-self:center; margin-top:4px}
.tl-item.done .dot{background:var(--gold); border-color:var(--gold)}
.tl-item.current .dot{background:var(--gold); border-color:var(--gold); box-shadow:0 0 0 4px rgba(180,138,60,.2)}
.tl-item:not(:last-child)::after{content:""; position:absolute; left:15px; top:32px; width:2px; height:calc(100% - 18px); background:var(--line-2)}
.tl-item.done:not(:last-child)::after{background:var(--gold)}
.tl-item .body h4{font-family:'Cormorant Garamond',serif; font-size:17px; margin:0 0 2px; font-weight:600}
.tl-item:not(.done):not(.current) .body h4{color:var(--muted)}
.tl-item .body p{margin:0; font-size:13.5px; color:var(--ink-2); line-height:1.6}
.tl-item .body .when{font-size:11.5px; letter-spacing:.16em; text-transform:uppercase; color:var(--muted); margin-top:4px}

.order-item{display:grid; grid-template-columns:80px 1fr auto; gap:18px; padding:18px 0; border-bottom:1px solid var(--line); align-items:center}
.order-item:last-of-type{border-bottom:0}
.order-item .pic{width:80px; height:100px; border:1px solid var(--line-2); overflow:hidden}
.order-item .pic img{width:100%; height:100%; object-fit:cover; display:block}
.order-item h4{font-family:'Cormorant Garamond',serif; font-size:18px; margin:0 0 4px; font-weight:600}
.order-item small{font-size:12.5px; color:var(--muted); display:block; line-height:1.6}
.order-item .price{font-family:'Cormorant Garamond',serif; font-size:22px; font-weight:600; color:var(--ink); white-space:nowrap; text-align:right}
.order-item .price small{font-family:inherit; font-size:12px; color:var(--muted); margin-top:2px; font-weight:normal}

.totals{padding-top:14px; border-top:1px solid var(--line); margin-top:8px}
.totals .line{display:flex; justify-content:space-between; padding:6px 0; font-size:14px; color:var(--ink-2)}
.totals .line.discount{color:var(--green)}
.totals .line b{font-weight:500; color:var(--ink); font-variant-numeric:tabular-nums}
.totals .grand{display:flex; justify-content:space-between; align-items:baseline; padding-top:14px; margin-top:8px; border-top:1px dashed var(--line-2)}
.totals .grand .l{font-size:11px; letter-spacing:.28em; text-transform:uppercase; color:var(--muted)}
.totals .grand .v{font-family:'Cormorant Garamond',serif; font-size:36px; font-weight:600; line-height:1}
.totals .grand .v em{font-style:italic; color:var(--gold-2); font-size:22px; font-weight:500; margin-right:6px}

.info-grid{display:grid; grid-template-columns:1fr 1fr; gap:24px; padding-top:8px}
.info-grid h5{font-size:11px; letter-spacing:.28em; text-transform:uppercase; color:var(--gold-2); margin:0 0 8px}
.info-grid p{margin:0; font-size:14px; color:var(--ink-2); line-height:1.7}
.info-grid p b{color:var(--ink); font-weight:600}

.next-steps{background:var(--ink); color:#e9e1cd; padding:36px; position:relative}
.next-steps::before{content:""; position:absolute; inset:10px; border:1px solid rgba(180,138,60,.3); pointer-events:none}
.next-steps > *{position:relative; z-index:1}
.next-steps h3{color:var(--gold-soft); font-family:'Cormorant Garamond',serif; font-size:26px; margin:0 0 8px; font-weight:600}
.next-steps h3 em{font-style:italic; color:var(--gold)}
.next-steps p{color:#c8bfa8; margin:0 0 20px; font-size:14.5px; line-height:1.65}
.next-steps .btns{display:flex; gap:12px; flex-direction:column}
.next-steps .btns a{padding:14px 18px; border:1px solid var(--gold); color:var(--gold-soft); font-size:11.5px; letter-spacing:.24em; text-transform:uppercase; display:flex; align-items:center; justify-content:space-between; gap:10px; transition:all .25s}
.next-steps .btns a:hover{background:var(--gold); color:var(--ink)}
.next-steps .btns a.solid{background:var(--gold); color:var(--ink)}
.next-steps .btns a.solid:hover{background:var(--gold-soft)}

.share-card{padding:24px; background:var(--paper); border:1px solid var(--line); margin-bottom:24px; text-align:center}
.share-card h4{font-family:'Cormorant Garamond',serif; font-size:18px; margin:0 0 6px; font-weight:600}
.share-card p{margin:0 0 14px; font-size:13px; color:var(--muted)}
.share-card .copy-row{display:flex; border:1px solid var(--line-2)}
.share-card .copy-row input{flex:1; border:0; padding:12px 14px; background:transparent; font-family:'Cormorant Garamond',serif; font-style:italic; font-size:14px; color:var(--ink); outline:none}
.share-card .copy-row button{padding:0 18px; background:var(--ink); color:var(--gold-soft); font-size:11px; letter-spacing:.2em; text-transform:uppercase}

/* =========================================================
   MY ACCOUNT / LOGIN
   ========================================================= */
.acc-hero{padding:50px 0 30px; background:radial-gradient(900px 400px at 50% -80px, rgba(180,138,60,.10), transparent 60%), linear-gradient(180deg, var(--paper), var(--ivory)); border-bottom:1px solid var(--line)}
.acc-hero .crumbs{margin-bottom:14px}
.acc-hero h1{font-family:'Cormorant Garamond',serif; font-weight:500; font-size:48px; line-height:1.05; margin:0}
.acc-hero h1 em{font-style:italic; color:var(--gold-2)}
.acc-hero .greeting{display:flex; align-items:center; gap:14px; margin-top:18px; font-size:14.5px; color:var(--ink-2)}
.acc-hero .avatar{width:54px; height:54px; border-radius:50%; background:var(--ink); color:var(--gold-soft); border:1px solid var(--gold); display:grid; place-items:center; font-family:'Cormorant Garamond',serif; font-style:italic; font-size:22px}
.acc-hero .stats{display:flex; gap:36px; margin-top:30px; flex-wrap:wrap; padding:24px; background:var(--paper); border:1px solid var(--line)}
.acc-hero .stats > div{display:flex; gap:14px; align-items:center}
.acc-hero .stats .ic{width:42px; height:42px; border:1px solid var(--gold); display:grid; place-items:center; color:var(--gold-2)}
.acc-hero .stats b{display:block; font-family:'Cormorant Garamond',serif; font-size:24px; font-weight:600; line-height:1}
.acc-hero .stats small{display:block; color:var(--muted); font-size:12px; letter-spacing:.16em; text-transform:uppercase; margin-top:4px}

.acc-wrap{padding-block:50px 80px}
.acc-grid{display:grid; grid-template-columns:240px 1fr; gap:50px; align-items:flex-start}
/* WC default woocommerce-layout.css'inden gelen
   `.woocommerce-MyAccount-navigation{float:left;width:30%}` ve
   `.woocommerce-MyAccount-content{float:right;width:68%}` kuralları bizim
   grid layout'umuzla çakışıyor — iç elementler grid track içinde küçülüyor.
   Cerrahi olarak serbest bırakıyoruz (WC core CSS'i dequeue edilmedi). */
.woocommerce-account .woocommerce-MyAccount-navigation,
.woocommerce-account .woocommerce-MyAccount-content{width:auto; max-width:none; float:none}
.acc-side{position:sticky; top:100px; background:var(--paper); border:1px solid var(--line)}
.acc-side nav, .woocommerce-MyAccount-navigation ul{display:flex; flex-direction:column; list-style:none; margin:0; padding:0}
.acc-side nav a, .woocommerce-MyAccount-navigation li a{display:flex; align-items:center; gap:14px; padding:16px 22px; font-size:14px; color:var(--ink-2); border-left:2px solid transparent; transition:all .25s; text-decoration:none}
.acc-side nav a:hover, .woocommerce-MyAccount-navigation li a:hover{background:var(--ivory-2); color:var(--ink)}
.acc-side nav a.active, .woocommerce-MyAccount-navigation li.is-active a{border-left-color:var(--gold); background:var(--ivory); color:var(--ink); font-family:'Cormorant Garamond',serif; font-weight:600; font-size:16px; letter-spacing:.01em}
.acc-side nav a svg{color:var(--gold-2); flex-shrink:0}
.acc-side .logout, .woocommerce-MyAccount-navigation li.woocommerce-MyAccount-navigation-link--customer-logout a{border-top:1px solid var(--line); color:var(--rose)}

.panel{display:block}
.panel h2{font-family:'Cormorant Garamond',serif; font-size:32px; margin:0 0 8px; font-weight:500}
.panel h2 em{font-style:italic; color:var(--gold-2)}
.panel .panel-sub{color:var(--muted); margin:0 0 28px}

.order-filter{display:flex; gap:8px; margin-bottom:24px; flex-wrap:wrap}
.order{background:var(--paper); border:1px solid var(--line); padding:24px 28px; margin-bottom:18px}
.order-head{display:flex; justify-content:space-between; align-items:flex-start; flex-wrap:wrap; gap:14px; padding-bottom:18px; border-bottom:1px solid var(--line)}
.order-id .num{font-family:'Cormorant Garamond',serif; font-size:24px; font-weight:600}
.order-id .num em{font-style:italic; color:var(--gold-2); font-weight:500}
.order-id small{font-size:11.5px; letter-spacing:.18em; text-transform:uppercase; color:var(--muted)}
.order-status{display:flex; gap:30px; align-items:center; flex-wrap:wrap}
.order-status .label{font-size:11px; letter-spacing:.24em; text-transform:uppercase; color:var(--muted); margin-bottom:4px; display:block}
.order-status .value{font-family:'Cormorant Garamond',serif; font-size:16px; font-weight:600; color:var(--ink)}
.order-status .value em{font-style:italic}
.order-items{display:grid; grid-template-columns:repeat(3,1fr); gap:14px; padding:18px 0; align-items:center}
.order-items .mini{display:flex; gap:12px; align-items:center}
.order-items .mini .pic{width:54px; height:66px; border:1px solid var(--line-2); flex-shrink:0; overflow:hidden}
.order-items .mini .pic img{width:100%; height:100%; object-fit:cover; display:block}
.order-items .mini h4{font-family:'Cormorant Garamond',serif; font-size:15px; margin:0 0 2px; font-weight:600; line-height:1.2}
.order-items .mini small{font-size:11.5px; color:var(--muted); letter-spacing:.02em; display:block}
.order-foot{display:flex; justify-content:space-between; align-items:center; padding-top:18px; border-top:1px solid var(--line); flex-wrap:wrap; gap:12px}
.order-foot .actions{display:flex; gap:12px; flex-wrap:wrap}
.order-foot .actions a{font-size:12px; letter-spacing:.24em; text-transform:uppercase; padding:10px 16px; border:1px solid var(--line-2); color:var(--ink-2); transition:all .25s; text-decoration:none}
.order-foot .actions a:hover{border-color:var(--ink); color:var(--ink)}
.order-foot .actions a.primary{background:var(--ink); color:var(--gold-soft); border-color:var(--ink)}
.order-foot .actions a.primary:hover{background:var(--gold-2)}
.order-foot .total{font-family:'Cormorant Garamond',serif; font-size:22px; font-weight:600}
.order-foot .total em{font-style:italic; color:var(--gold-2); font-size:16px; margin-right:4px; font-weight:500}

.tracker{display:flex; justify-content:space-between; align-items:center; padding:18px 0; gap:8px}
.tracker .t-step{display:flex; flex-direction:column; align-items:center; gap:6px; flex:1; position:relative; text-align:center}
.tracker .t-step .dot{width:14px; height:14px; border-radius:50%; background:var(--line-2); border:2px solid var(--paper); box-shadow:0 0 0 1px var(--line-2); z-index:1}
.tracker .t-step.done .dot{background:var(--gold); box-shadow:0 0 0 1px var(--gold)}
.tracker .t-step.current .dot{background:var(--gold); box-shadow:0 0 0 1px var(--gold), 0 0 0 6px rgba(180,138,60,.2)}
.tracker .t-step:not(:last-child)::after{content:""; position:absolute; left:50%; right:-50%; top:6px; height:2px; background:var(--line-2); z-index:0}
.tracker .t-step.done:not(:last-child)::after{background:var(--gold)}
.tracker .t-step span{font-size:11px; letter-spacing:.14em; color:var(--muted); text-transform:uppercase}
.tracker .t-step.done span, .tracker .t-step.current span{color:var(--ink); font-weight:600}

.fav-grid{display:grid; grid-template-columns:repeat(3,1fr); gap:24px}
.profile-form{background:var(--paper); border:1px solid var(--line); padding:32px; max-width:720px}
.profile-form .row{display:grid; grid-template-columns:1fr 1fr; gap:18px}
.profile-form .save-row{display:flex; gap:12px; justify-content:flex-end; padding-top:14px; border-top:1px solid var(--line); margin-top:14px}

/* Auth */
.auth-wrap{min-height:calc(100vh - 200px); display:grid; grid-template-columns:1fr 1fr; align-items:stretch}
.auth-art{background:radial-gradient(800px 400px at 70% 30%, rgba(180,138,60,.15), transparent 60%),linear-gradient(170deg, #1f3a30 0%, #0f1f1a 100%); color:var(--gold-soft); padding:80px 70px; position:relative; overflow:hidden; display:flex; flex-direction:column; justify-content:space-between}
.auth-art .corner-orn{position:absolute; width:140px; height:140px; border:1px solid rgba(180,138,60,.25)}
.auth-art .corner-orn.tl{top:30px; left:30px; border-right:0; border-bottom:0}
.auth-art .corner-orn.br{bottom:30px; right:30px; border-left:0; border-top:0}
.auth-art .top{position:relative; z-index:1}
.auth-art .small-top{font-size:11px; letter-spacing:.4em; text-transform:uppercase; opacity:.7; margin-bottom:14px}
.auth-art .small-top::before{content:"◆ "; color:var(--gold)}
.auth-art h2{font-family:'Cormorant Garamond',serif; font-size:54px; line-height:1.05; margin:0; font-weight:500; color:var(--gold-soft)}
.auth-art h2 em{font-style:italic; color:var(--gold)}
.auth-art .quote{position:relative; z-index:1; margin-top:auto; padding-top:60px}
.auth-art .quote .q{font-family:'Cormorant Garamond',serif; font-style:italic; font-size:140px; color:rgba(180,138,60,.3); line-height:.5}
.auth-art .quote p{font-family:'Cormorant Garamond',serif; font-style:italic; font-size:22px; line-height:1.5; max-width:38ch; margin:8px 0 24px; color:#e9e1cd}
.auth-art .quote .who{display:flex; align-items:center; gap:14px; font-size:13px}
.auth-art .quote .who .avatar{width:44px; height:44px; border-radius:50%; background:rgba(180,138,60,.2); border:1px solid var(--gold); display:grid; place-items:center; font-family:'Cormorant Garamond',serif; font-style:italic; color:var(--gold)}
.auth-art .quote .who b{font-family:'Cormorant Garamond',serif; font-style:italic; font-size:16px; font-weight:600; color:var(--gold-soft)}
.auth-art .quote .who small{display:block; font-size:11px; letter-spacing:.16em; color:rgba(217,183,114,.6); text-transform:uppercase}
.auth-art .feats{display:flex; gap:30px; flex-wrap:wrap; margin-top:34px; padding-top:24px; border-top:1px solid rgba(180,138,60,.2)}
.auth-art .feat{font-size:13px; display:flex; align-items:center; gap:8px}
.auth-art .feat svg{color:var(--gold)}
.auth-form{padding:80px 70px; display:flex; flex-direction:column; justify-content:center; background:var(--paper); position:relative}
.auth-form .inner{max-width:440px; width:100%; margin:0 auto}
.auth-tabs{display:flex; gap:0; border:1px solid var(--line-2); margin-bottom:36px}
.auth-tabs button{flex:1; padding:14px 0; font-size:12px; letter-spacing:.28em; text-transform:uppercase; color:var(--muted); transition:all .25s}
.auth-tabs button.active{background:var(--ink); color:var(--gold-soft)}
.auth-tabs button:not(.active):hover{color:var(--ink)}
.auth-panel{display:none}
.auth-panel.active{display:block; animation:dm-fadeIn .3s ease}
@keyframes dm-fadeIn{from{opacity:0; transform:translateY(6px)} to{opacity:1; transform:none}}
.auth-form h1{font-family:'Cormorant Garamond',serif; font-size:38px; margin:0 0 6px; font-weight:500; letter-spacing:-.005em}
.auth-form h1 em{font-style:italic; color:var(--gold-2)}
.auth-form .sub{color:var(--muted); font-size:14px; margin:0 0 28px}
.input-wrap{position:relative; margin-bottom:18px}
.input-wrap input{width:100%; border:1px solid var(--line-2); background:var(--paper); padding:18px 18px 18px 50px; font-family:inherit; font-size:15px; color:var(--ink); outline:none; transition:all .25s}
.input-wrap input:focus{border-color:var(--gold); background:#fff}
.input-wrap svg{position:absolute; left:18px; top:18px; color:var(--gold-2)}
.input-wrap .reveal{position:absolute; right:16px; top:18px; color:var(--muted); cursor:pointer}
.input-wrap .reveal:hover{color:var(--gold-2)}
.login-meta{display:flex; justify-content:space-between; align-items:center; font-size:13px; margin:6px 0 24px; flex-wrap:wrap; gap:10px}
.login-meta a{color:var(--gold-2); border-bottom:1px solid var(--line-2); padding-bottom:1px}
.or-divider{display:flex; align-items:center; gap:16px; margin:28px 0; font-size:11px; letter-spacing:.28em; text-transform:uppercase; color:var(--muted)}
.or-divider::before, .or-divider::after{content:""; flex:1; height:1px; background:var(--line-2)}
.social-row{display:grid; grid-template-columns:1fr 1fr; gap:12px}
.social-btn{display:flex; align-items:center; justify-content:center; gap:10px; padding:14px; border:1px solid var(--line-2); background:var(--paper); font-size:13.5px; color:var(--ink-2); transition:all .25s}
.social-btn:hover{border-color:var(--gold); color:var(--ink); background:var(--ivory)}
.switch-prompt{margin-top:24px; text-align:center; font-size:13.5px; color:var(--muted)}
.switch-prompt a{color:var(--gold-2); border-bottom:1px solid var(--gold)}
.strength{display:flex; gap:4px; margin-top:-10px; margin-bottom:18px}
.strength span{flex:1; height:2px; background:var(--line-2); transition:background .25s}
.strength.s1 span:nth-child(1){background:var(--rose)}
.strength.s2 span:nth-child(-n+2){background:var(--gold-soft)}
.strength.s3 span:nth-child(-n+3){background:var(--gold)}
.strength.s4 span{background:var(--green)}
.strength-label{font-size:11.5px; color:var(--muted); margin-top:-10px; margin-bottom:18px; letter-spacing:.04em}
.strength-label b{font-family:'Cormorant Garamond',serif; font-style:italic}

/* =========================================================
   CONTACT
   ========================================================= */
.contact-main{padding:80px 0 40px}
.contact-grid{display:grid; grid-template-columns:1.05fr 1fr; gap:64px; align-items:flex-start}
.contact-grid .h2-display{font-family:'Cormorant Garamond',serif; font-size:42px; line-height:1.1; margin:0 0 12px; color:var(--ink); font-weight:500}
.contact-grid .h2-display em{font-style:italic; color:var(--gold-2)}
.contact-grid .lead{color:var(--muted); margin:0 0 32px; max-width:46ch}
.contact-grid form .row{display:grid; grid-template-columns:1fr 1fr; gap:18px}
.counter{position:absolute; right:0; bottom:-2px; font-size:11px; color:var(--muted); font-variant-numeric:tabular-nums}
.success{display:none; text-align:center; padding:30px 10px}
.success.show{display:block; animation:dm-fadeUp .55s ease both}
@keyframes dm-fadeUp{from{opacity:0; transform:translateY(8px)} to{opacity:1; transform:none}}
.success .seal{width:84px; height:84px; border-radius:50%; border:1px solid var(--gold); display:grid; place-items:center; margin:0 auto 22px; color:var(--gold-2); position:relative}
.success .seal::after{content:""; position:absolute; inset:-8px; border:1px dashed var(--line-2); border-radius:50%; animation:dm-spin 18s linear infinite}
.success h3{font-family:'Cormorant Garamond',serif; font-size:36px; margin:0 0 8px; font-weight:500}
.success h3 em{font-style:italic; color:var(--gold-2)}
.success p{color:var(--muted); max-width:38ch; margin:0 auto 22px}
.success button{background:transparent; color:var(--ink-2); border-bottom:1px solid var(--ink-2); font-size:12px; letter-spacing:.24em; text-transform:uppercase; padding:4px 0}

.info-stack{display:flex; flex-direction:column; gap:24px}
.info{background:var(--paper); border:1px solid var(--line); padding:28px 30px; display:grid; grid-template-columns:46px 1fr; gap:20px; align-items:flex-start; transition:all .3s ease; position:relative}
.info:hover{border-color:var(--gold-soft); transform:translateY(-2px); box-shadow:0 20px 40px -25px rgba(80,60,20,.25)}
.info .icon{width:46px; height:46px; border:1px solid var(--gold); display:grid; place-items:center; color:var(--gold-2)}
.info h4{margin:0 0 4px; font-family:'Cormorant Garamond',serif; font-size:22px; font-weight:600; letter-spacing:.01em}
.info p, .info a{margin:0; color:var(--ink-2); font-size:14.5px; line-height:1.65}
.info .small{font-size:12.5px; color:var(--muted); margin-top:4px; letter-spacing:.04em}
.info a:hover{color:var(--gold-2)}
.hours table{width:100%; border-collapse:collapse; font-size:13.5px}
.hours td{padding:6px 0; color:var(--ink-2)}
.hours td:last-child{text-align:right; color:var(--muted); font-variant-numeric:tabular-nums}
.hours tr+tr td{border-top:1px dashed var(--line)}
.hours .closed{color:var(--rose)}
.socials{display:flex; gap:10px; margin-top:14px}
.socials a{width:36px; height:36px; border:1px solid var(--line-2); display:grid; place-items:center; color:var(--ink-2); transition:all .25s}
.socials a:hover{background:var(--ink); color:var(--gold-soft); border-color:var(--ink)}

.map-band{margin-top:80px; background:var(--ivory-2); border-top:1px solid var(--line); border-bottom:1px solid var(--line); padding:80px 0}
.map-grid{display:grid; grid-template-columns:1fr 1.3fr; gap:60px; align-items:center}
.map-band h2{font-family:'Cormorant Garamond',serif; font-size:48px; line-height:1.05; margin:0 0 16px; font-weight:500}
.map-band h2 em{font-style:italic; color:var(--gold-2)}
.map-band p{color:var(--ink-2); margin:0 0 24px; max-width:42ch}
.meta-list{list-style:none; padding:0; margin:0; display:flex; flex-direction:column; gap:14px}
.meta-list li{display:flex; gap:14px; align-items:flex-start; font-size:14.5px; color:var(--ink-2)}
.meta-list .dot{width:6px; height:6px; background:var(--gold); margin-top:9px; transform:rotate(45deg)}
.map{position:relative; aspect-ratio:4/3; background:linear-gradient(180deg, var(--ivory) 0%, var(--ivory-2) 100%); border:1px solid var(--line-2); overflow:hidden}
.map svg{position:absolute; inset:0; width:100%; height:100%; opacity:.55}
.pin{position:absolute; left:52%; top:48%; transform:translate(-50%,-100%); display:flex; flex-direction:column; align-items:center}
.pin .head{width:42px; height:42px; border-radius:50%; background:var(--ink); color:var(--gold-soft); display:grid; place-items:center; border:2px solid var(--gold); box-shadow:0 12px 24px -10px rgba(0,0,0,.4); position:relative}
.pin .head::before{content:""; position:absolute; inset:-8px; border:1px solid var(--gold); border-radius:50%; animation:dm-pulse 2.4s ease-out infinite}
.pin .stick{width:1px; height:14px; background:var(--ink); margin-top:2px}
.pin .label{margin-top:8px; font-family:'Cormorant Garamond',serif; font-style:italic; background:var(--paper); padding:4px 12px; border:1px solid var(--line-2); font-size:14px}

.faq-wrap{padding-block:90px}
.faq-head{text-align:center; margin-bottom:48px}
.faq-head h2{font-family:'Cormorant Garamond',serif; font-size:48px; margin:8px 0 12px; font-weight:500}
.faq-head h2 em{font-style:italic; color:var(--gold-2)}
.faq-head p{color:var(--muted); max-width:48ch; margin:0 auto}
.faq-list{max-width:820px; margin:0 auto; border-top:1px solid var(--line)}
.faq-list details{border-bottom:1px solid var(--line); padding:22px 8px; position:relative}
.faq-list summary{list-style:none; cursor:pointer; font-family:'Cormorant Garamond',serif; font-size:22px; font-weight:600; color:var(--ink); display:flex; align-items:center; justify-content:space-between; gap:20px; transition:color .25s ease}
.faq-list summary::-webkit-details-marker{display:none}
.faq-list summary:hover{color:var(--gold-2)}
.plus{width:24px; height:24px; position:relative; flex-shrink:0; transition:transform .35s}
.plus::before, .plus::after{content:""; position:absolute; background:var(--gold-2); left:50%; top:50%}
.plus::before{width:14px; height:1px; transform:translate(-50%,-50%)}
.plus::after{width:1px; height:14px; transform:translate(-50%,-50%); transition:transform .35s}
.faq-list details[open] .plus::after{transform:translate(-50%,-50%) scaleY(0)}
.faq-list .answer{color:var(--ink-2); font-size:14.5px; line-height:1.75; max-width:62ch; margin-top:14px}

/* =========================================================
   FAQ MAIN
   ========================================================= */
.faq-main-grid{display:grid; grid-template-columns:260px 1fr; gap:60px; align-items:flex-start}
.faq-search{max-width:680px; margin:30px auto 0; position:relative}
.faq-search input{width:100%; padding:22px 60px 22px 56px; background:var(--paper); border:1px solid var(--line-2); font-family:'Cormorant Garamond',serif; font-style:italic; font-size:20px; color:var(--ink); outline:none; transition:all .25s}
.faq-search input:focus{border-color:var(--gold); background:#fff}
.faq-search .ico-left{position:absolute; left:20px; top:24px; color:var(--gold-2)}
.faq-search .clear{position:absolute; right:18px; top:22px; color:var(--muted); cursor:pointer}
.popular{display:flex; flex-wrap:wrap; gap:8px; justify-content:center; margin-top:20px}
.popular span{font-size:11.5px; letter-spacing:.2em; text-transform:uppercase; color:var(--muted); margin-right:4px}
.popular a{font-size:13px; padding:6px 14px; border:1px solid var(--line-2); background:var(--paper); color:var(--ink-2); transition:all .25s}
.popular a:hover{border-color:var(--gold); color:var(--gold-2)}

.faq-side{position:sticky; top:100px; background:var(--paper); border:1px solid var(--line)}
.faq-side .head{padding:18px 22px; border-bottom:1px solid var(--line); font-family:'Cormorant Garamond',serif; font-size:18px; font-weight:600}
.faq-side nav{display:flex; flex-direction:column}
.faq-side nav a{display:flex; align-items:center; gap:14px; padding:14px 22px; font-size:14px; color:var(--ink-2); border-left:2px solid transparent; transition:all .25s}
.faq-side nav a:hover{background:var(--ivory-2)}
.faq-side nav a.active{border-left-color:var(--gold); background:var(--ivory); color:var(--ink); font-family:'Cormorant Garamond',serif; font-weight:600; font-size:15px}
.faq-side nav a small{color:var(--muted); font-size:12px; margin-left:auto; font-family:inherit; font-weight:normal}

.cat-block{margin-bottom:50px; scroll-margin-top:100px}
.cat-block .cat-head{display:flex; align-items:center; gap:18px; margin-bottom:24px}
.cat-block .cat-head .ic{width:54px; height:54px; border:1px solid var(--gold); display:grid; place-items:center; color:var(--gold-2)}
.cat-block h2{font-family:'Cormorant Garamond',serif; font-size:32px; margin:0 0 4px; font-weight:600; letter-spacing:.005em}
.cat-block .cat-head small{color:var(--muted); font-size:12.5px; letter-spacing:.18em; text-transform:uppercase}
.faq-acc details{border:1px solid var(--line); background:var(--paper); padding:0; margin-bottom:10px; transition:all .25s}
.faq-acc details[open]{border-color:var(--gold-soft); box-shadow:var(--shadow-sm)}
.faq-acc summary{list-style:none; cursor:pointer; padding:22px 26px; font-family:'Cormorant Garamond',serif; font-size:20px; font-weight:600; display:flex; align-items:center; justify-content:space-between; gap:20px; letter-spacing:.005em; transition:color .25s}
.faq-acc summary:hover{color:var(--gold-2)}
.faq-acc summary::-webkit-details-marker{display:none}
.faq-acc .answer{padding:0 26px 26px; color:var(--ink-2); font-size:15px; line-height:1.8; max-width:78ch}
.faq-acc .answer p{margin:0 0 10px}
.faq-acc .answer ul{padding-left:18px; line-height:1.9}
.faq-acc .answer ul li{margin-bottom:4px}
.faq-acc .answer b{color:var(--ink)}
.faq-acc .answer .info-box{margin:14px 0; padding:14px 18px; background:var(--ivory-2); border:1px solid var(--line-2); font-size:14px}
.faq-acc .answer .info-box b{display:block; font-family:'Cormorant Garamond',serif; font-size:16px; margin-bottom:4px}
.helpful{display:flex; align-items:center; gap:14px; padding:14px 26px; border-top:1px dashed var(--line); font-size:12.5px; color:var(--muted)}
.helpful b{font-style:italic; font-family:'Cormorant Garamond',serif; font-size:15px; color:var(--ink-2)}
.helpful button{padding:6px 14px; border:1px solid var(--line-2); background:var(--paper); font-size:12px; color:var(--ink-2); display:inline-flex; align-items:center; gap:6px; transition:all .25s}
.helpful button:hover{border-color:var(--green); color:var(--green)}
.helpful button.no:hover{border-color:var(--rose); color:var(--rose)}

.still-help{margin-top:80px; padding:60px; background:linear-gradient(170deg, var(--ink) 0%, #2d2620 100%); color:#e9e1cd; text-align:center; border:1px solid var(--line); position:relative}
.still-help::before{content:""; position:absolute; inset:14px; border:1px solid rgba(180,138,60,.3)}
.still-help h3{font-family:'Cormorant Garamond',serif; font-size:38px; margin:0 0 8px; font-weight:500; color:var(--gold-soft); position:relative; z-index:1}
.still-help h3 em{font-style:italic; color:var(--gold)}
.still-help p{color:#c8bfa8; margin:0 0 24px; position:relative; z-index:1}
.still-help .cta{display:flex; gap:14px; justify-content:center; flex-wrap:wrap; position:relative; z-index:1}
.still-help .cta a{padding:14px 26px; font-size:11.5px; letter-spacing:.28em; text-transform:uppercase; border:1px solid var(--gold); color:var(--gold-soft); transition:all .25s; display:inline-flex; align-items:center; gap:10px}
.still-help .cta a:hover{background:var(--gold); color:var(--ink)}
.still-help .cta a.solid{background:var(--gold); color:var(--ink)}
.still-help .cta a.solid:hover{background:var(--gold-soft)}

/* =========================================================
   LEGAL DOC TEMPLATE
   ========================================================= */
.doc-wrap{padding-block:50px 80px}
.doc-grid{display:grid; grid-template-columns:240px 1fr 220px; gap:50px; align-items:flex-start}
.doc-nav{position:sticky; top:100px; background:var(--paper); border:1px solid var(--line)}
.doc-nav .head{padding:18px 22px; border-bottom:1px solid var(--line); font-family:'Cormorant Garamond',serif; font-size:18px; font-weight:600}
.doc-nav nav{display:flex; flex-direction:column}
.doc-nav nav a{padding:14px 22px; font-size:13.5px; color:var(--ink-2); border-left:2px solid transparent; transition:all .25s}
.doc-nav nav a:hover{background:var(--ivory-2)}
.doc-nav nav a.active{border-left-color:var(--gold); background:var(--ivory); color:var(--ink); font-family:'Cormorant Garamond',serif; font-weight:600; font-size:14.5px}
.doc-main{background:var(--paper); border:1px solid var(--line); padding:60px 70px}
.doc-main .eyebrow{display:block; margin-bottom:14px}
.doc-main h1{font-family:'Cormorant Garamond',serif; font-weight:500; font-size:48px; line-height:1.05; margin:0 0 20px; letter-spacing:-.005em}
.doc-main h1 em{font-style:italic; color:var(--gold-2)}
.doc-main .meta{display:flex; gap:24px; padding:18px 0; border-top:1px solid var(--line); border-bottom:1px solid var(--line); font-size:12.5px; letter-spacing:.04em; color:var(--muted); margin:20px 0 40px; flex-wrap:wrap}
.doc-main .meta b{font-family:'Cormorant Garamond',serif; color:var(--ink); font-size:14px; font-weight:600; margin-right:6px}
.doc-main .intro{font-size:17px; color:var(--ink-2); line-height:1.75; max-width:62ch; font-family:'Cormorant Garamond',serif; font-style:italic; font-weight:500}
.doc-main h2{font-family:'Cormorant Garamond',serif; font-size:30px; margin:50px 0 12px; font-weight:600; letter-spacing:.005em; scroll-margin-top:100px}
.doc-main h2 .num{font-style:italic; color:var(--gold-2); font-weight:500; margin-right:8px}
.doc-main h3{font-family:'Cormorant Garamond',serif; font-size:22px; margin:30px 0 10px; font-weight:600; color:var(--ink)}
.doc-main p, .doc-main li{font-size:15px; line-height:1.85; color:var(--ink-2); max-width:72ch}
.doc-main p{margin:0 0 14px}
.doc-main ul, .doc-main ol{padding-left:22px; margin:0 0 18px}
.doc-main li{margin-bottom:6px}
.doc-main b, .doc-main strong{color:var(--ink); font-weight:600}
.doc-main a{color:var(--gold-2); border-bottom:1px solid var(--gold-soft); transition:all .2s}
.doc-main a:hover{color:var(--ink); border-color:var(--ink)}
.doc-main hr{border:0; height:1px; background:var(--line); margin:40px 0}
.pullquote{font-family:'Cormorant Garamond',serif; font-style:italic; font-size:22px; line-height:1.5; color:var(--ink); border-left:2px solid var(--gold); padding:8px 0 8px 22px; margin:30px 0; max-width:60ch}
.data-table{width:100%; border-collapse:collapse; margin:24px 0; max-width:none}
.data-table th, .data-table td{padding:14px 18px; text-align:left; border:1px solid var(--line); font-size:14px}
.data-table th{background:var(--ivory-2); font-family:'Cormorant Garamond',serif; font-size:15px; font-weight:600; color:var(--ink)}
.data-table td{color:var(--ink-2); vertical-align:top}
.callout{margin:24px 0; padding:24px 28px; background:var(--ivory-2); border:1px solid var(--line-2); position:relative}
.callout::before{content:""; position:absolute; left:0; top:0; bottom:0; width:3px; background:var(--gold)}
.callout h4{font-family:'Cormorant Garamond',serif; font-size:18px; margin:0 0 8px; font-weight:600; color:var(--ink); display:flex; align-items:center; gap:10px}
.callout p{margin:0; font-size:14px}
.doc-toc{position:sticky; top:100px}
.doc-toc .head{font-size:11px; letter-spacing:.32em; text-transform:uppercase; color:var(--gold-2); margin-bottom:14px}
.doc-toc nav{display:flex; flex-direction:column; gap:8px; border-left:1px solid var(--line); padding-left:18px}
.doc-toc nav a{font-size:13px; color:var(--muted); line-height:1.5; transition:all .25s; padding:4px 0; position:relative}
.doc-toc nav a:hover, .doc-toc nav a.active{color:var(--ink)}
.doc-toc nav a.active::before{content:""; position:absolute; left:-19px; top:50%; transform:translateY(-50%); width:2px; height:14px; background:var(--gold)}
.doc-footer{margin-top:60px; padding-top:30px; border-top:1px solid var(--line); display:flex; justify-content:space-between; align-items:center; flex-wrap:wrap; gap:14px}

/* =========================================================
   COOKIE BANNER
   ========================================================= */
.dm-cookie{position:fixed; left:24px; right:24px; bottom:24px; z-index:9999; background:var(--paper); border:1px solid var(--line); box-shadow:var(--shadow); max-width:780px; margin:0 auto}
.dm-cookie__inner{display:grid; grid-template-columns:1fr auto; gap:24px; padding:24px 28px; align-items:center}
.dm-cookie__copy h4{margin:0 0 6px; font-size:18px; font-weight:600}
.dm-cookie__copy p{margin:0; font-size:13.5px; color:var(--ink-2); line-height:1.6}
.dm-cookie__copy a{color:var(--gold-2); border-bottom:1px solid var(--gold-soft)}
.dm-cookie__actions{display:flex; gap:10px; flex-wrap:wrap}
.dm-cookie__actions .btn{padding:12px 18px; font-size:11px}
.dm-cookie.is-hidden{display:none}
/* Mobile: stack column (copy üstte, butonlar altta tam genişlikte 3 sıra).
   Grid 1fr auto dar ekranda copy'yi sıkıştırıyordu. */
@media (max-width:680px){
  .dm-cookie{left:12px; right:12px; bottom:12px}
  .dm-cookie__inner{grid-template-columns:1fr; gap:18px; padding:20px 22px}
  .dm-cookie__copy h4{font-size:16px}
  .dm-cookie__copy p{font-size:13px; line-height:1.55}
  .dm-cookie__actions{display:grid; grid-template-columns:1fr 1fr; gap:8px}
  .dm-cookie__actions .btn{padding:11px 12px; font-size:10.5px; letter-spacing:.2em; width:100%; justify-content:center}
  /* "Tümünü Kabul Et" butonu en geniş, kendine ait satırda */
  .dm-cookie__actions .btn.btn-dark{grid-column:1 / -1}
}

/* =========================================================
   RESPONSIVE
   ========================================================= */
@media(max-width:1100px){
  .doc-grid{grid-template-columns:220px 1fr}
}
@media(max-width:980px){
  .hero-grid{grid-template-columns:1fr; gap:50px}
  .hero{padding:60px 0 70px}
  .acc-grid{grid-template-columns:1fr; gap:30px}
  .product-grid{grid-template-columns:1fr; gap:40px}
  .product-grid > .dm-gallery-col,
  .product-grid > .pinfo{grid-column:1}
  .cart-grid{grid-template-columns:1fr; gap:40px}
  .checkout .grid{grid-template-columns:1fr}
  .confirm-grid{grid-template-columns:1fr}
  .contact-grid{grid-template-columns:1fr; gap:48px}
  .contact-main{padding:48px 0 24px}
  .doc-grid{grid-template-columns:1fr; gap:30px}
  aside.doc-toc{order:3}
  .map-grid{grid-template-columns:1fr}
  .faq-main-grid{grid-template-columns:1fr; gap:30px}
  /* Mobile: nav-left gizli → 2 kolon yeterli (logo sol, nav-right sağ).
     Logo grid-area:auto ile col 1'e otomatik düşer. */
  .nav{grid-template-columns: 1fr auto; height:64px}
  .nav-left{display:none}
  /* Logo'yu sola yasla — desktop'ta align-items:center ile ortalı, mobile'da
     col 1 (1fr) track içinde sola hizalansın. */
  .nav .logo{align-items:flex-start}
  /* Mobile header: logo (sol, grid 1fr) + sepet ikon + hamburger.
     Arama butonu, account pill, favori link drawer içine taşındı; header'da gizli. */
  .nav-right{gap:10px}
  .nav-right .icon-btn[data-action="search-toggle"]{display:none}
  .nav-right .pill{display:none}
  .nav-right .fav-link{display:none}
  .nav-right .cart{padding:8px 12px; gap:6px}
  .nav-right .cart .cart-ico{display:block}
  .nav-right .cart .cart-text{display:none}
  /* Hamburger butonu mobile'da görünür */
  .menu-toggle{display:flex}
  .container{padding:0 22px}
  .page-hero{padding:54px 0 46px}
  .card.bordered{padding:30px}
  .pgrid{grid-template-columns:repeat(2,1fr); gap:30px 18px}
  .cats{grid-template-columns:1fr}
  .promise-grid{grid-template-columns:1fr 1fr; gap:30px 20px}
  .steps{grid-template-columns:1fr}
  footer .foot-grid{grid-template-columns:1fr 1fr; gap:30px}
}
@media(max-width:880px){
  .auth-wrap{grid-template-columns:1fr}
  .auth-art{padding:50px 30px; min-height:380px}
  .auth-form{padding:50px 30px}
  .doc-main{padding:40px 30px}
  .related .pgrid{grid-template-columns:repeat(2,1fr)}
  .suggested .pgrid{grid-template-columns:repeat(2,1fr)}
  .jgrid{grid-template-columns:repeat(2,1fr)}
  .fav-grid{grid-template-columns:repeat(2,1fr)}
  .addr-list{grid-template-columns:1fr}
  .info-grid{grid-template-columns:1fr}
  .order-items{grid-template-columns:1fr 1fr}
}
@media(max-width:680px){
  .cart-row{grid-template-columns:72px 1fr; gap:18px}
  .cart-row .pic{width:72px; height:72px}
  .cart-row .price-col{text-align:left; min-width:0; grid-column:2; padding-top:0}
  .review-summary{grid-template-columns:1fr}
  .review{grid-template-columns:1fr}
  .tgrid{grid-template-columns:1fr}
  /* Checkout/Cart/Thankyou step indicator — mobile'da 4 step alt alta düşmesin diye
     padding/font daralt + wrap engelle + connector kısalt. "Bilgi & Adres" boşlukla
     2 satıra sarar (line-height kompakt). */
  .checkout-steps{padding-top:18px}
  .checkout-steps > .container{justify-content:space-between; flex-wrap:nowrap; padding:0 14px}
  .checkout-steps .step{
    padding:14px 4px;
    gap:6px;
    font-size:10px; letter-spacing:.04em;
    flex:0 1 auto; min-width:0;
  }
  .checkout-steps .step .num{width:24px; height:24px; font-size:13px; flex-shrink:0}
  .checkout-steps .step span{line-height:1.2}
  .checkout-steps .step:not(:last-child)::after{width:12px; margin-left:4px}
  /* Breadcrumbs mobile'da yatay scroll. Uzun ürün başlıkları veya çok seviye
     varsa viewport'u taşıyor, layout bozuyordu. nowrap + overflow-x:auto ile
     parmakla kaydırılır, scrollbar görünmez (estetik). */
  .crumbs{
    display:block;
    white-space:nowrap;
    overflow-x:auto;
    overflow-y:hidden;
    -webkit-overflow-scrolling:touch;
    -ms-overflow-style:none;
    scrollbar-width:none;
    /* container padding'ini telafi et — son segment kenarda kesilmesin */
    padding-bottom:2px;
  }
  .crumbs::-webkit-scrollbar{display:none}
  /* Ürün galerisi mobile carousel — stack flex-column'dan flex-row + scroll-snap'a
     dönüşür. Markup ve JS aynen kalır (her .dm-gallery-img tıkla → lightbox).
     Tasarım: full-bleed (container yan padding'ini negatif margin ile aş), her
     slide ortalı snap, sonraki slide 40px peek sağda görünsün → kullanıcıya
     "kaydırılabilir" sinyal. */
  .dm-gallery-stack{
    flex-direction:row;
    gap:12px;
    overflow-x:auto;
    overflow-y:hidden;
    scroll-snap-type:x mandatory;
    -webkit-overflow-scrolling:touch;
    scrollbar-width:none;
    margin:0 -22px;
    padding:0 22px 4px;
  }
  .dm-gallery-stack::-webkit-scrollbar{display:none}
  .dm-gallery-img{
    flex:0 0 calc(100% - 60px);
    scroll-snap-align:center;
    scroll-snap-stop:always;
  }
  .dm-gallery-img img{aspect-ratio:auto; object-fit:cover}
  /* Adet pill'leri ≤680px 3 sütun grid — default flex-wrap 2 sıra çıkarıyordu,
     viewport'ta 3 sığacak yer var. min-width:0 ile pill grid track'a sığar. */
  .dm-pills{display:grid; grid-template-columns:repeat(3,1fr); gap:8px}
  .dm-pill{padding:11px 8px; font-size:17px; min-width:0; width:100%}
  .dm-pill small{font-size:10px; letter-spacing:.18em}
}
@media(max-width:560px){
  .gallery{grid-template-columns:1fr}
  .thumbs{flex-direction:row; overflow-x:auto}
  .checkout .row{grid-template-columns:1fr}
  .profile-form .row{grid-template-columns:1fr}
  .form-card{padding:30px}
  .contact-grid form .row{grid-template-columns:1fr}
  .card.bordered{padding:30px}
  .jgrid{grid-template-columns:1fr}
}
@media(max-width:520px){
  .pgrid{grid-template-columns:1fr}
  .fav-grid{grid-template-columns:1fr}
}

/* =========================================================
   REDUCED MOTION
   ========================================================= */
@media (prefers-reduced-motion: reduce){
  .marquee .track{animation:none}
  .pin .head::before{animation:none}
  .confirm-hero .seal::after, .success .seal::after{animation:none}
  .cart-row .design-status.pending .pulse::after{animation:none}
  *, *::before, *::after{transition-duration:.01ms !important; animation-duration:.01ms !important; animation-iteration-count:1 !important; scroll-behavior:auto !important}
}

/* =========================================================
   WOOCOMMERCE COMPAT — visual reset where default WC styles
   would otherwise leak in (because we did NOT dequeue WC core).
   ========================================================= */
/* WC notice'ler — dm-omni dilinde altın diamond ornament + sol border accent.
   WC default font-icon ('::before' WooCommerce font'undan ⓘ/✓/✕) bu rule ile ezilir;
   yerine .ornament .diamond stilinde altın küp + soft halo gelir. */
.woocommerce-message,
.woocommerce-info,
.woocommerce-error,
.woocommerce-noreviews{
  position:relative;
  background:var(--paper);
  border:1px solid var(--line-2);
  border-left:3px solid var(--gold);
  color:var(--ink);
  padding:18px 22px 18px 54px;
  margin:0 0 22px;
  font-family:'Cormorant Garamond',serif; font-style:italic;
  font-size:17px; line-height:1.5;
  list-style:none;
}
.woocommerce-message::before,
.woocommerce-info::before,
.woocommerce-error::before,
.woocommerce-noreviews::before{
  content:""; position:absolute;
  left:22px; top:50%;
  width:8px; height:8px; margin-top:-4px;
  background:var(--gold);
  transform:rotate(45deg);
  box-shadow:0 0 0 4px rgba(180,138,60,.18);
  font-size:0;
  font-family:inherit;
}
.woocommerce-message{border-left-color:var(--green)}
.woocommerce-message::before{
  background:var(--green);
  box-shadow:0 0 0 4px rgba(74,122,82,.18);
}
.woocommerce-error{border-left-color:var(--rose); color:var(--ink)}
.woocommerce-error::before{
  background:var(--rose);
  box-shadow:0 0 0 4px rgba(185,106,95,.18);
}
.woocommerce-error li{font:inherit; margin:0; padding:0; list-style:none}
.woocommerce-message a,
.woocommerce-info a,
.woocommerce-noreviews a{color:var(--gold-2); border-bottom:1px solid var(--gold); padding-bottom:1px}
.woocommerce-message a:hover,
.woocommerce-info a:hover,
.woocommerce-noreviews a:hover{color:var(--ink); border-color:var(--ink)}
.woocommerce-message a.button,
.woocommerce-info a.button{
  display:inline-block; float:right;
  margin:-4px 0 0 14px;
  padding:6px 14px !important;
  background:var(--ink) !important; color:var(--paper) !important;
  border:0 !important; border-radius:0 !important;
  font-family:'Inter',sans-serif !important; font-style:normal;
  font-size:11px !important; letter-spacing:.18em !important; text-transform:uppercase;
  font-weight:500 !important;
  transition:background-color .25s ease;
}
.woocommerce-message a.button:hover,
.woocommerce-info a.button:hover{background:var(--gold-2) !important; color:var(--paper) !important}
.woocommerce-MyAccount-navigation ul{list-style:none; padding:0; margin:0}
/* Form-row aliasing — base zaten input/select/textarea'yı yakalar; burada sadece
   WC'nin field-spacing'i ve label tipografisi düzenleniyor. */
.woocommerce form .form-row{margin:0 0 18px}
.woocommerce form .form-row label,
.woocommerce-form-row label{
	display:block;
	font-size:11px; letter-spacing:.28em; text-transform:uppercase;
	color:var(--muted); margin-bottom:8px;
}
.woocommerce form .form-row abbr.required{
	color:var(--rose); text-decoration:none; margin-left:4px; border:0;
}
.woocommerce-input-wrapper{display:block}
.woocommerce form .form-row .input-text:focus,
.woocommerce form .form-row select:focus,
.woocommerce form .form-row textarea:focus{
	border-color:var(--gold); background-color:#fff;
}

/* Buttonlar — WC default `.button` ve `.button.alt` tema-içi .btn ile uyumlu. */
.woocommerce button[type="submit"],
.woocommerce input[type="submit"],
.woocommerce-button,
.woocommerce a.button,
.woocommerce button.button{
	display:inline-flex; align-items:center; gap:14px;
	padding:16px 28px;
	font-size:12.5px; letter-spacing:.28em; text-transform:uppercase; font-weight:500;
	background:var(--ink); color:var(--paper);
	border:0; border-radius:0; cursor:pointer;
	text-decoration:none;
	transition:all .3s ease;
}
.woocommerce button[type="submit"]:hover,
.woocommerce input[type="submit"]:hover,
.woocommerce-button:hover,
.woocommerce a.button:hover,
.woocommerce button.button:hover{background:var(--gold-2); color:var(--paper)}
.woocommerce a.button.alt,
.woocommerce button.button.alt{background:var(--gold-2); color:var(--paper)}
.woocommerce a.button.alt:hover,
.woocommerce button.button.alt:hover{background:var(--ink); color:var(--gold-soft)}

/* WC list reset */
.woocommerce ul.products, .woocommerce-page ul.products{list-style:none; padding:0; margin:0}

/* ==========================================================================
   Checkout — Ödeme yöntemi (.wc_payment_methods + .payment_box) + VakıfBank
   kart formu UI. Tema dili: paper bg + altın accent + Inter sans.
   ========================================================================== */
.wc_payment_methods{list-style:none; padding:0; margin:18px 0 0; border:1px solid var(--line); background:var(--paper)}
.wc_payment_method{position:relative; border-bottom:1px solid var(--line); padding:14px 18px; margin:0}
.wc_payment_method:last-child{border-bottom:0}
.wc_payment_method > input[type="radio"]{vertical-align:middle; margin-right:8px}
.wc_payment_method > label{font-family:Inter,system-ui,sans-serif; font-size:14px; color:var(--ink); cursor:pointer; line-height:1.4; display:inline-block; margin:0}
.wc_payment_method > label img{max-height:24px; vertical-align:middle; margin-left:8px}
.payment_box{margin-top:14px; padding:16px; background:var(--ivory); border:1px dashed var(--line-2); color:var(--ink-2); font-family:Inter,system-ui,sans-serif; font-size:13px; line-height:1.6}
.payment_box::before{display:none !important}
.payment_box p{margin:0 0 10px}
.payment_box p:last-child{margin-bottom:0}

/* VakıfBank gateway alanı — kart formu + güvenlik notu + brand rozetleri */
.dm-vbf-fields{display:grid; gap:14px}
.dm-vbf-desc{margin:0 !important; color:var(--ink-2); font-size:13px; line-height:1.55}
.dm-vbf-secure{display:flex; align-items:flex-start; gap:10px; padding:12px 14px; background:var(--paper); border-left:3px solid var(--gold); color:var(--ink); font-size:13px; line-height:1.5}
.dm-vbf-lock{width:18px; height:18px; flex-shrink:0; color:var(--gold); margin-top:1px}

.dm-vbf-card-form{display:grid; gap:12px; margin-top:4px}
.dm-vbf-row{display:grid; gap:6px; position:relative}
.dm-vbf-row label{font-family:Inter,system-ui,sans-serif; font-size:11px; letter-spacing:.08em; text-transform:uppercase; color:var(--ink-2); font-weight:500}
.dm-vbf-row input{width:100%; padding:11px 14px; background:var(--paper); border:1px solid var(--line); color:var(--ink); font-family:Inter,system-ui,sans-serif; font-size:14px; letter-spacing:.03em; border-radius:0; outline:none; transition:border-color .15s ease, background-color .15s ease}
.dm-vbf-row input:focus{border-color:var(--gold); background-color:var(--paper)}
.dm-vbf-row input::placeholder{color:var(--muted); opacity:.7}
.dm-vbf-row.dm-vbf-pan input{padding-right:54px; font-feature-settings:"tnum" 1; letter-spacing:.08em}
.dm-vbf-brand{position:absolute; right:10px; top:30px; width:36px; height:22px; background-position:center; background-repeat:no-repeat; background-size:contain; opacity:.85; pointer-events:none}
.dm-vbf-brand[data-brand="visa"]      {background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 64 24'><text x='32' y='17' font-family='Arial Black,sans-serif' font-size='16' font-weight='900' fill='%231a1f71' text-anchor='middle'>VISA</text></svg>")}
.dm-vbf-brand[data-brand="mc"]        {background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 36 22'><circle cx='13' cy='11' r='9' fill='%23eb001b'/><circle cx='23' cy='11' r='9' fill='%23f79e1b' opacity='.85'/></svg>")}
.dm-vbf-brand[data-brand="troy"]      {background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 64 22'><text x='32' y='16' font-family='Arial Black,sans-serif' font-size='14' font-weight='900' fill='%23e30613' text-anchor='middle'>troy</text></svg>")}

.dm-vbf-exp-cvv{display:grid; grid-template-columns:1fr 1fr 1.4fr; gap:10px}
.dm-vbf-exp-cvv .dm-vbf-col{display:grid; gap:6px}
.dm-vbf-exp-cvv input{text-align:center; letter-spacing:.18em; font-feature-settings:"tnum" 1}

.dm-vbf-cards{display:flex; gap:6px; flex-wrap:wrap; align-items:center; margin-top:2px}
.dm-vbf-card,
.dm-vbf-badge{padding:5px 10px; background:var(--paper); border:1px solid var(--line); color:var(--ink-2); font-size:11px; letter-spacing:.05em; text-transform:uppercase; font-weight:500; font-family:Inter,system-ui,sans-serif}
.dm-vbf-badge{background:var(--ink); color:var(--gold-soft); border-color:var(--ink); letter-spacing:.08em}

/* Invalid input state — JS validation */
.dm-vbf-row input.dm-vbf-invalid{border-color:var(--rose); background:#fef7f6}

@media (max-width: 480px) {
	.dm-vbf-exp-cvv{grid-template-columns:1fr 1fr 1.2fr; gap:8px}
	.dm-vbf-row input{padding:10px 12px; font-size:13px}
}

/* ==========================================================================
   Image skeleton — paper + altın shimmer
   Ürün kartları (.product .pic) ve tek ürün galeri (.dm-gallery-img) için
   sayfa yüklenirken zarif yer-tutucu animasyon. img yüklenince üstüne basar,
   shimmer arkada görünmez kalır.
   ========================================================================== */
.dm-gallery-img{position:relative; overflow:hidden}
.product .pic::before,
.dm-gallery-img::before{
  content:"";
  position:absolute; inset:0;
  background:linear-gradient(115deg,
    transparent 30%,
    rgba(217,183,114,.22) 50%,
    transparent 70%
  );
  transform:translateX(-100%);
  animation:dm-img-shimmer 1.8s ease-in-out infinite;
  pointer-events:none;
  z-index:0;
}
.product .pic img{z-index:1}
.dm-gallery-img img{position:relative; z-index:1}
.product .pic .ph{position:relative; z-index:1}

@keyframes dm-img-shimmer{
  0%        { transform:translateX(-100%); }
  60%, 100% { transform:translateX(100%); }
}

@media (prefers-reduced-motion: reduce){
  .product .pic::before,
  .dm-gallery-img::before{
    animation:none;
    transform:none;
    background:radial-gradient(ellipse at center, rgba(217,183,114,.14), transparent 60%);
    opacity:.5;
  }
}

/* ==========================================================================
   Favorileme (Wishlist) — kalp ikonu state, header badge, fav-big, empty
   - Hibrit storage: DmFav modülü `.fav.on` class'ını toggle eder
   - SVG path `fill="none" stroke="currentColor"` → .on'da fill:currentColor
   ========================================================================== */
.fav{
  color: var(--muted);
  background: transparent;
  transition: color .2s ease, transform .2s ease;
}
.fav svg path{
  transition: fill .2s ease;
}
.fav:hover{ color: var(--gold-2); }
.fav.on{ color: var(--gold); animation: dm-fav-pop .28s ease; }
.fav.on svg path{ fill: currentColor; }
.fav:focus-visible{ outline: 2px solid var(--gold); outline-offset: 2px; }
@keyframes dm-fav-pop{
  0%   { transform: scale(1); }
  50%  { transform: scale(1.22); }
  100% { transform: scale(1); }
}

/* Single product header: title satırının altında rating + fav-big yan yana */
.title-aux{
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  margin: 6px 0 4px;
}
.title-aux > span:empty{ flex: 1; }
.fav-big{
  width: 44px; height: 44px;
  border: 1px solid var(--line-2);
  border-radius: 50%;
  background: var(--paper);
  display: grid; place-items: center;
  cursor: pointer;
  color: var(--muted);
  transition: color .2s, border-color .2s, transform .2s, background .2s;
  flex: 0 0 auto;
}
.fav-big:hover{ color: var(--gold); border-color: var(--gold); }
.fav-big.on{ color: var(--gold); border-color: var(--gold); background: var(--ivory); }
.fav-big.on svg path{ fill: currentColor; }

/* Header favori erişim linki — Sepet .dot pattern paralel */
.fav-link{
  position: relative;
  display: inline-flex;
  align-items: center;
  gap: 6px;
  color: var(--ink);
  text-decoration: none;
  padding: 6px;
  transition: color .2s;
}
.fav-link:hover{ color: var(--gold-2); }
.fav-link .dot{
  background: var(--gold);
  color: var(--paper);
  min-width: 18px;
  padding: 2px 5px;
  border-radius: 9px;
  font: 600 11px/1 Inter, sans-serif;
  text-align: center;
  display: inline-block;
}
.fav-link[data-fav-count="0"] .dot{ display: none; }

/* Favorilerim hesabım sayfası — boş state */
.fav-empty{
  text-align: center;
  padding: 60px 20px;
  border: 1px solid var(--line);
  background: var(--paper);
}
.fav-empty p{
  font-family: 'Cormorant Garamond', serif;
  font-style: italic;
  font-size: 18px;
  color: var(--muted);
  margin: 0 0 24px;
}

/* =========================================================
   SIMPLE-INVITATION-EDITOR — Crumpled paper texture
   3rd party plugin .altegena-canvas'a yansıyan davetiye kartına gerçekçi
   buruşmuş kâğıt dokusu. İki katman pseudo overlay:
   - ::before macro buruşma (feDiffuseLighting ile 3D ışık simulasyonu)
   - ::after mikro grain (fractal noise, kâğıt fiber)
   multiply blend mode — beyaz alanlar değişmez, shadow alanları kıvrım izi olur.
   pointer-events:none → editor text input + layer drag bozulmaz.
   ========================================================= */
.altegena-modal .altegena-canvas{
  box-shadow:
    0 8px 24px rgba(50,38,16,.20),
    0 28px 70px rgba(50,38,16,.12) !important;
}
.altegena-modal .altegena-canvas::before{
  content:'';
  position:absolute; inset:0;
  background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='600' height='600'><filter id='p'><feTurbulence baseFrequency='0.011' numOctaves='5' seed='3'/><feDiffuseLighting surfaceScale='3.5' lighting-color='%23ffffff'><feDistantLight azimuth='135' elevation='55'/></feDiffuseLighting></filter><rect width='600' height='600' filter='url(%23p)'/></svg>");
  background-size:100% 100%;
  background-repeat:no-repeat;
  opacity:.35;
  mix-blend-mode:multiply;
  pointer-events:none;
}
.altegena-modal .altegena-canvas::after{
  content:'';
  position:absolute; inset:0;
  background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 240 240'><filter id='n'><feTurbulence baseFrequency='0.85' numOctaves='2' stitchTiles='stitch'/><feColorMatrix values='0 0 0 0 0.45 0 0 0 0 0.4 0 0 0 0 0.25 0 0 0 0.6 0'/></filter><rect width='240' height='240' filter='url(%23n)'/></svg>");
  background-size:220px 220px;
  opacity:.28;
  mix-blend-mode:multiply;
  pointer-events:none;
}

/* SIE plugin "Sepete Ekle" butonu — dm-omni "Altın Mürekkep" CTA diline taşı.
   Plugin markup'ı: <button id="altegena-add-to-cart-btn" class="altegena-add-to-cart-btn">.
   dm-cta-sweep keyframe yukarıda (#open-card-designer için) tanımlı, reuse. */
.altegena-modal #altegena-add-to-cart-btn,
.altegena-modal .altegena-add-to-cart-btn{
  position:relative;
  display:inline-flex; align-items:center; justify-content:center; gap:12px;
  padding:13px 28px !important;
  /* margin-left:auto → header'ın flex space-between'inde SEPETE EKLE'yi
     close (×) butonunun yanına iter; aradaki 16px header gap doğal aralık. */
  margin:0 0 0 auto !important;
  background:var(--ink) !important;
  color:var(--gold-soft) !important;
  border:0 !important; border-radius:0 !important;
  cursor:pointer;
  font-family:'Inter',sans-serif !important; font-weight:500 !important;
  font-size:12.5px !important; letter-spacing:.26em !important;
  text-transform:uppercase !important; line-height:1 !important;
  overflow:hidden;
  transition:background-color .3s ease, color .3s ease, transform .25s ease;
}
.altegena-modal #altegena-add-to-cart-btn:hover,
.altegena-modal .altegena-add-to-cart-btn:hover{
  background:var(--gold-2) !important;
  color:var(--paper) !important;
}
.altegena-modal #altegena-add-to-cart-btn:active,
.altegena-modal .altegena-add-to-cart-btn:active{transform:scale(.98)}
/* Shimmer sweep — soldan sağa altın geçiş, 4.5s'de bir döngü */
.altegena-modal #altegena-add-to-cart-btn::before,
.altegena-modal .altegena-add-to-cart-btn::before{
  content:""; position:absolute; top:0; bottom:0;
  left:-40%; width:40%;
  background:linear-gradient(
    100deg,
    rgba(217,183,114,0) 0%,
    rgba(217,183,114,.18) 35%,
    rgba(255,236,180,.45) 50%,
    rgba(217,183,114,.18) 65%,
    rgba(217,183,114,0) 100%
  );
  pointer-events:none;
  transform:skewX(-18deg);
  animation:dm-cta-sweep 4.5s ease-in-out 1.5s infinite;
}
/* Hover'da altın hairline halka */
.altegena-modal #altegena-add-to-cart-btn::after,
.altegena-modal .altegena-add-to-cart-btn::after{
  content:""; position:absolute; inset:0;
  border:1px solid transparent;
  pointer-events:none;
  transition:border-color .3s ease;
}
.altegena-modal #altegena-add-to-cart-btn:hover::after,
.altegena-modal .altegena-add-to-cart-btn:hover::after{border-color:rgba(217,183,114,.45)}

/* Header h2 "Tasarımcı" başlığı gizli — minimal modal header (CTA + close). */
.altegena-modal .altegena-modal-header h2{display:none !important}

/* Close (×) butonu — sub, header'da CTA'nın gerisinde kalsın. */
.altegena-modal #close-card-designer,
.altegena-modal .altegena-close-btn{
  font-size:22px !important;
  line-height:1 !important;
  width:auto !important;
  height:auto !important;
  padding:6px 10px !important;
  color:var(--muted) !important;
  background:transparent !important;
  border:0 !important;
  transition:color .2s ease;
}
.altegena-modal #close-card-designer:hover,
.altegena-modal .altegena-close-btn:hover{color:var(--ink) !important}
