/*
Theme Name:   Vivonest
Theme URI:    https://vivonest.com.tr
Description:  Vivonest için el ile kodlanmış çocuk tema — Elementor'a bağımlı olmayan ana sayfa ve sepet.
Author:       Vivonest
Template:     hello-elementor
Version:      1.0.0
Text Domain:  vivonest
*/

/* ============================================================
   1. TASARIM SİSTEMİ — Elementor kit 395'ten alınan değerler
   ============================================================ */
:root {
	--vn-ink:      #292929;
	--vn-sand:     #D1BC92;
	--vn-sand-dk:  #B99F70;
	--vn-surface:  #F5F5F5;
	--vn-muted:    #7A7A7A;
	--vn-line:     #EAEAEA;
	--vn-white:    #FFFFFF;
	--vn-ok:       #2E7D32;

	--vn-display:  'Jost', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
	--vn-body:     'Heebo', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;

	--vn-max:      1180px;
	--vn-gap:      clamp(16px, 4vw, 28px);
	--vn-section:  clamp(48px, 9vw, 92px);
	--vn-radius:   4px;
	--vn-shadow:   0 1px 3px rgba(41, 41, 41, .06), 0 8px 24px rgba(41, 41, 41, .05);
}

/* ============================================================
   2. TEMEL
   ============================================================ */
.vn * { box-sizing: border-box; }

.vn {
	font-family: var(--vn-body);
	font-weight: 300;
	color: var(--vn-ink);
	line-height: 1.65;
	overflow-x: clip;          /* yatay taşmaya karşı güvenlik ağı */
}

.vn img { max-width: 100%; height: auto; display: block; }

.vn h1, .vn h2, .vn h3, .vn h4 {
	font-family: var(--vn-display);
	font-weight: 500;
	line-height: 1.2;
	color: var(--vn-ink);
	margin: 0 0 .5em;
	letter-spacing: .01em;
}

.vn h1 { font-size: clamp(30px, 7vw, 54px); }
.vn h2 { font-size: clamp(24px, 5vw, 38px); }
.vn h3 { font-size: clamp(17px, 3vw, 21px); }
.vn p  { margin: 0 0 1em; }

.vn-wrap {
	max-width: var(--vn-max);
	margin-inline: auto;
	padding-inline: var(--vn-gap);
}

.vn-section { padding-block: var(--vn-section); }
.vn-section--surface { background: var(--vn-surface); }

.vn-head { max-width: 620px; margin-bottom: clamp(28px, 5vw, 48px); }
.vn-head--center { margin-inline: auto; text-align: center; }
.vn-head p { color: var(--vn-muted); font-size: 16px; margin: 0; }

.vn-eyebrow {
	font-family: var(--vn-display);
	font-size: 12px;
	font-weight: 500;
	letter-spacing: .18em;
	text-transform: uppercase;
	color: var(--vn-sand-dk);
	margin: 0 0 10px;
}

/* ---- Butonlar ---- */
.vn-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
	font-family: var(--vn-display);
	font-size: 14px;
	font-weight: 500;
	letter-spacing: .12em;
	text-transform: uppercase;
	text-decoration: none;
	padding: 15px 30px;
	min-height: 50px;           /* dokunma hedefi */
	border: 1px solid var(--vn-ink);
	border-radius: var(--vn-radius);
	background: var(--vn-ink);
	color: var(--vn-white);
	cursor: pointer;
	transition: background .18s ease, color .18s ease, border-color .18s ease;
}
.vn-btn:hover, .vn-btn:focus-visible { background: var(--vn-sand-dk); border-color: var(--vn-sand-dk); color: var(--vn-white); }

.vn-btn--ghost { background: transparent; color: var(--vn-ink); }
.vn-btn--ghost:hover, .vn-btn--ghost:focus-visible { background: var(--vn-ink); color: var(--vn-white); border-color: var(--vn-ink); }

.vn-btn--block { width: 100%; }

.vn :focus-visible { outline: 2px solid var(--vn-sand-dk); outline-offset: 2px; }

/* ============================================================
   3. HERO
   ============================================================ */
.vn-hero { background: var(--vn-surface); padding-block: clamp(40px, 8vw, 88px); }

.vn-hero__grid {
	display: grid;
	gap: clamp(28px, 5vw, 56px);
	align-items: center;
}

.vn-hero__title { margin-bottom: .35em; }
.vn-hero__lead { font-size: clamp(16px, 2.2vw, 18px); color: var(--vn-muted); max-width: 46ch; }
.vn-hero__cta { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 28px; }
.vn-hero__cta .vn-btn { flex: 1 1 auto; min-width: 170px; }

.vn-hero__media { position: relative; }
.vn-hero__media img {
	width: 100%;
	aspect-ratio: 4 / 3;
	object-fit: cover;
	border-radius: var(--vn-radius);
}

@media (min-width: 860px) {
	.vn-hero__grid { grid-template-columns: 1.05fr 1fr; }
	.vn-hero__cta .vn-btn { flex: 0 0 auto; }
}

/* ============================================================
   4. GÜVEN ŞERİDİ
   ============================================================ */
.vn-trust { border-block: 1px solid var(--vn-line); background: var(--vn-white); }
.vn-trust__grid {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 1px;
	background: var(--vn-line);
}
.vn-trust__item {
	background: var(--vn-white);
	padding: 22px 16px;
	text-align: center;
}
.vn-trust__item svg { width: 26px; height: 26px; margin: 0 auto 10px; stroke: var(--vn-sand-dk); fill: none; stroke-width: 1.5; }
.vn-trust__item strong {
	display: block;
	font-family: var(--vn-display);
	font-size: 14px;
	font-weight: 500;
	letter-spacing: .04em;
	margin-bottom: 3px;
}
.vn-trust__item span { font-size: 13px; color: var(--vn-muted); }

@media (min-width: 720px) { .vn-trust__grid { grid-template-columns: repeat(4, 1fr); } }

/* ============================================================
   5. KATEGORİLER
   ============================================================ */
.vn-cats { display: grid; gap: var(--vn-gap); grid-template-columns: 1fr; }
@media (min-width: 640px) { .vn-cats { grid-template-columns: repeat(3, 1fr); } }

.vn-cat {
	position: relative;
	display: block;
	text-decoration: none;
	overflow: hidden;
	border-radius: var(--vn-radius);
	background: var(--vn-ink);
}
.vn-cat img {
	width: 100%;
	aspect-ratio: 3 / 4;
	object-fit: cover;
	opacity: .78;
	transition: transform .5s ease, opacity .3s ease;
}
@media (min-width: 640px) { .vn-cat img { aspect-ratio: 4 / 5; } }
.vn-cat:hover img, .vn-cat:focus-visible img { transform: scale(1.04); opacity: .62; }

.vn-cat__body {
	position: absolute;
	inset: auto 0 0 0;
	padding: 22px;
	background: linear-gradient(to top, rgba(41,41,41,.85), rgba(41,41,41,0));
	color: var(--vn-white);
}
.vn-cat__body h3 { color: var(--vn-white); margin: 0 0 2px; font-size: 19px; letter-spacing: .06em; text-transform: uppercase; }
.vn-cat__body span { font-size: 13px; color: rgba(255,255,255,.8); }

/* ============================================================
   6. ÜRÜN IZGARASI
   ============================================================ */
.vn-products {
	display: grid;
	gap: var(--vn-gap);
	grid-template-columns: repeat(2, 1fr);   /* mobilde de 2 sütun */
}
@media (min-width: 720px)  { .vn-products { grid-template-columns: repeat(3, 1fr); } }
@media (min-width: 1000px) { .vn-products { grid-template-columns: repeat(4, 1fr); } }

.vn-card {
	display: flex;
	flex-direction: column;
	background: var(--vn-white);
	border: 1px solid var(--vn-line);
	border-radius: var(--vn-radius);
	overflow: hidden;
	transition: box-shadow .22s ease, border-color .22s ease;
}
.vn-card:hover { box-shadow: var(--vn-shadow); border-color: #DCDCDC; }

.vn-card__media { position: relative; display: block; background: var(--vn-surface); }
.vn-card__media img { width: 100%; aspect-ratio: 1 / 1; object-fit: cover; }

.vn-card__badge {
	position: absolute;
	inset-block-start: 10px;
	inset-inline-start: 10px;
	font-family: var(--vn-display);
	font-size: 11px;
	font-weight: 500;
	letter-spacing: .1em;
	text-transform: uppercase;
	padding: 5px 10px;
	border-radius: 2px;
	background: var(--vn-ink);
	color: var(--vn-white);
}
.vn-card__badge--sale { background: var(--vn-sand-dk); }

.vn-card__body { display: flex; flex-direction: column; flex: 1; padding: 14px 14px 16px; }

.vn-card__cat { font-size: 11px; letter-spacing: .12em; text-transform: uppercase; color: var(--vn-sand-dk); margin-bottom: 5px; }

.vn-card__title {
	font-family: var(--vn-display);
	font-size: 15px;
	font-weight: 500;
	line-height: 1.35;
	margin: 0 0 10px;
}
.vn-card__title a { color: var(--vn-ink); text-decoration: none; }
.vn-card__title a:hover { color: var(--vn-sand-dk); }

.vn-card__price { font-family: var(--vn-display); font-size: 16px; font-weight: 500; margin-top: auto; margin-bottom: 12px; }
.vn-card__price del { color: var(--vn-muted); font-weight: 300; font-size: 14px; margin-inline-end: 6px; }
.vn-card__price ins { text-decoration: none; }

.vn-card .vn-btn { width: 100%; padding: 12px 14px; font-size: 12px; min-height: 46px; }

@media (min-width: 720px) {
	.vn-card__body { padding: 18px; }
	.vn-card__title { font-size: 16px; }
}

/* ============================================================
   7. NEDEN VIVONEST
   ============================================================ */
.vn-why { display: grid; gap: clamp(24px, 4vw, 40px); grid-template-columns: 1fr; }
@media (min-width: 800px) { .vn-why { grid-template-columns: repeat(3, 1fr); } }

.vn-why__item { padding: 28px 24px; background: var(--vn-white); border: 1px solid var(--vn-line); border-radius: var(--vn-radius); }
.vn-why__item h3 { margin-bottom: 8px; }
.vn-why__item p { color: var(--vn-muted); font-size: 15px; margin: 0; }
.vn-why__item a { color: var(--vn-ink); text-decoration: underline; text-underline-offset: 3px; }

/* ============================================================
   8. KAPANIŞ ÇAĞRISI
   ============================================================ */
.vn-cta { background: var(--vn-ink); color: var(--vn-white); text-align: center; }
.vn-cta h2 { color: var(--vn-white); }
.vn-cta p { color: rgba(255,255,255,.72); max-width: 52ch; margin-inline: auto; }
.vn-cta .vn-btn { background: var(--vn-sand); border-color: var(--vn-sand); color: var(--vn-ink); margin-top: 22px; }
.vn-cta .vn-btn:hover { background: var(--vn-white); border-color: var(--vn-white); }

/* ============================================================
   9. SEPET — tamamen el ile kodlanmış
   ------------------------------------------------------------
   WooCommerce'in tablo düzeni yerine "satır kartı" yapısı.
   Mobil ve masaüstü aynı mantıkla çalışır; medya sorgusuyla
   düzen değişir, yapı değişmez.
   ============================================================ */
.vn-cart { padding-block: clamp(28px, 6vw, 64px); }
.vn-cart__title { margin-bottom: 6px; }
.vn-cart__count { color: var(--vn-muted); font-size: 15px; margin-bottom: 26px; }

.vnc { display: grid; gap: clamp(24px, 4vw, 40px); align-items: start; }
@media (min-width: 900px) { .vnc { grid-template-columns: minmax(0, 1fr) 360px; } }

/* ---- Ürün satırları ---- */
.vnc__list { list-style: none; margin: 0 0 20px; padding: 0; border-top: 1px solid var(--vn-line); }

.vnc__item {
	position: relative;
	display: grid;
	grid-template-columns: 92px minmax(0, 1fr);
	gap: 16px;
	padding: 20px 34px 20px 0;
	border-bottom: 1px solid var(--vn-line);
}
@media (min-width: 600px) { .vnc__item { grid-template-columns: 116px minmax(0, 1fr); gap: 22px; padding-block: 24px; } }

.vnc__media img {
	width: 100%;
	aspect-ratio: 1 / 1;
	object-fit: cover;
	border-radius: var(--vn-radius);
	background: var(--vn-surface);
}

.vnc__info { min-width: 0; }

.vn .vnc__name,
.vnc__name {
	font-family: var(--vn-display);
	font-size: 16px !important;      /* tema h2 kuralı 24px dayatıyordu */
	font-weight: 500;
	line-height: 1.35;
	letter-spacing: 0;
	text-transform: none !important; /* tema büyük harfe çeviriyordu */
	margin: 0 0 4px;
	color: var(--vn-ink);
}
@media (min-width: 600px) { .vn .vnc__name, .vnc__name { font-size: 17px !important; } }
.vnc__name a { color: var(--vn-ink); text-decoration: none; }
.vnc__name a:hover { color: var(--vn-sand-dk); }

.vnc__unit { display: flex; gap: 6px; align-items: baseline; font-size: 14px; color: var(--vn-muted); margin: 0 0 14px; }
.vnc__unit > span:first-child::after { content: ':'; }

.vnc__info dl.variation { font-size: 13px; color: var(--vn-muted); margin: 0 0 8px; }

.vnc__controls { display: flex; align-items: center; justify-content: space-between; gap: 14px; flex-wrap: wrap; }

/* adet kutusu */
.vnc__qty .quantity { display: inline-flex; }
.vn .vnc__qty input.qty,
.vn .vnc__qty input[type="number"],
.vnc__qty input.qty,
.vnc__qty input[type="number"] {
	width: 74px !important;
	border-width: 1px !important;
	border-style: solid !important;
	min-height: 46px;
	padding: 8px 6px;
	text-align: center;
	font-size: 16px;              /* iOS'ta otomatik yakınlaştırmayı önler */
	font-family: var(--vn-body);
	color: var(--vn-ink);
	border: 1px solid var(--vn-line);
	border-radius: var(--vn-radius);
	background: var(--vn-white);
}
.vnc__qty input.qty:focus { border-color: var(--vn-ink); outline: none; }

.vnc__line { font-family: var(--vn-display); font-size: 17px; font-weight: 500; margin-inline-start: auto; }

/* kaldır */
.vnc__remove {
	position: absolute;
	inset-block-start: 18px;
	inset-inline-end: 0;
	display: inline-flex; align-items: center; justify-content: center;
	width: 32px; height: 32px;
	font-size: 21px; line-height: 1;
	text-decoration: none;
	color: var(--vn-muted);
	border-radius: 50%;
	transition: background .15s ease, color .15s ease;
}
.vnc__remove:hover, .vnc__remove:focus-visible { background: var(--vn-surface); color: #b32d2e; }

/* ---- Kupon + güncelle ---- */
.vnc__actions { display: flex; flex-wrap: wrap; gap: 10px; align-items: center; }

.vnc__coupon { display: flex; gap: 8px; flex: 1 1 260px; min-width: 0; }
.vnc__coupon input {
	flex: 1 1 auto; min-width: 0;
	min-height: 48px; padding: 10px 14px;
	font-size: 16px; font-family: var(--vn-body);
	border: 1px solid var(--vn-line); border-radius: var(--vn-radius);
	background: var(--vn-white);
}
.vnc__coupon input:focus { border-color: var(--vn-ink); outline: none; }

.vnc__btn {
	display: inline-flex; align-items: center; justify-content: center;
	font-family: var(--vn-display); font-size: 13px; font-weight: 500;
	letter-spacing: .1em; text-transform: uppercase; text-decoration: none;
	padding: 13px 22px; min-height: 48px;
	border: 1px solid var(--vn-ink); border-radius: var(--vn-radius);
	background: var(--vn-ink); color: var(--vn-white);
	cursor: pointer; white-space: nowrap;
	transition: background .18s ease, border-color .18s ease, color .18s ease;
}
.vnc__btn:hover:not(:disabled) { background: var(--vn-sand-dk); border-color: var(--vn-sand-dk); color: var(--vn-white); }

.vnc__btn--ghost { background: transparent; color: var(--vn-ink); }
.vnc__btn--ghost:hover:not(:disabled) { background: var(--vn-ink); color: var(--vn-white); }

.vnc__btn--quiet { background: transparent; color: var(--vn-muted); border-color: var(--vn-line); }
.vnc__btn--quiet:hover:not(:disabled) { background: var(--vn-surface); color: var(--vn-ink); border-color: var(--vn-line); }

.vnc__btn:disabled { opacity: .45; cursor: not-allowed; }

/* ---- Sipariş özeti ---- */
.vnc__summary { position: sticky; top: 24px; }

.vnc__card { border: 1px solid var(--vn-line); border-radius: var(--vn-radius); background: var(--vn-surface); padding: 24px; }
.vnc__card-title { font-size: 18px; margin: 0 0 16px; }

.vnc__rows { margin: 0 0 20px; }
.vnc__row { display: flex; justify-content: space-between; gap: 14px; align-items: baseline; padding: 11px 0; border-bottom: 1px solid var(--vn-line); font-size: 15px; }
.vnc__row dt { color: var(--vn-muted); margin: 0; }
.vnc__row dd { margin: 0; text-align: end; font-weight: 400; }
.vnc__row--coupon dd { color: var(--vn-ok); }
.vnc__row--total { border-bottom: 0; padding-top: 16px; }
.vnc__row--total dt { color: var(--vn-ink); font-family: var(--vn-display); font-size: 17px; font-weight: 500; }
.vnc__row--total dd { font-family: var(--vn-display); font-size: 20px; font-weight: 500; }

/* WooCommerce'in kargo satırı kendi <tr> yapısını basar; hizalıyoruz */
.vnc__rows tr.woocommerce-shipping-totals,
.vnc__rows .woocommerce-shipping-totals { display: block; padding: 11px 0; border-bottom: 1px solid var(--vn-line); font-size: 15px; }
.vnc__rows .woocommerce-shipping-totals th { display: block; text-align: start; color: var(--vn-muted); font-weight: 400; padding: 0 0 6px; }
.vnc__rows .woocommerce-shipping-totals td { display: block; padding: 0; }
.vnc__rows ul#shipping_method { list-style: none; margin: 0; padding: 0; }
.vnc__rows ul#shipping_method li { padding: 4px 0; }
.vnc__rows .woocommerce-shipping-destination { color: var(--vn-muted); font-size: 13px; margin-top: 6px; }

/* ödeme butonu */
.vnc__summary .wc-proceed-to-checkout { padding: 0; }
.vnc__summary .checkout-button,
.vnc__summary a.button.alt {
	display: flex; align-items: center; justify-content: center;
	width: 100%; min-height: 54px;
	font-family: var(--vn-display); font-size: 15px; font-weight: 500;
	letter-spacing: .1em; text-transform: uppercase; text-decoration: none;
	background: var(--vn-ink) !important; color: var(--vn-white) !important;
	border: 1px solid var(--vn-ink); border-radius: var(--vn-radius);
}
.vnc__summary .checkout-button:hover { background: var(--vn-sand-dk) !important; border-color: var(--vn-sand-dk); }

/* güven notları */
.vnc__reassure { list-style: none; margin: 20px 0 0; padding: 18px 0 0; border-top: 1px solid var(--vn-line); display: grid; gap: 10px; }
.vnc__reassure li { position: relative; padding-inline-start: 24px; font-size: 13.5px; line-height: 1.55; color: var(--vn-muted); }
.vnc__reassure li::before {
	content: ''; position: absolute; inset-inline-start: 0; top: 5px;
	width: 13px; height: 8px; border-inline-start: 2px solid var(--vn-ok); border-block-end: 2px solid var(--vn-ok);
	transform: rotate(-45deg);
}
.vnc__reassure a { color: var(--vn-ink); text-decoration: underline; text-underline-offset: 2px; }

/* ---- Boş sepet ---- */
.vnc__empty { text-align: center; padding: clamp(40px, 9vw, 80px) 20px; border: 1px solid var(--vn-line); border-radius: var(--vn-radius); }
.vnc__empty svg { width: 52px; height: 52px; margin: 0 auto 18px; stroke: var(--vn-sand-dk); }
.vnc__empty h2 { font-size: 22px; margin-bottom: 6px; }
.vnc__empty p { color: var(--vn-muted); margin-bottom: 24px; }

/* ---- WooCommerce bildirimleri ---- */
.vn-cart .woocommerce-message,
.vn-cart .woocommerce-info,
.vn-cart .woocommerce-error {
	border-top-color: var(--vn-sand-dk);
	background: var(--vn-surface);
	border-radius: var(--vn-radius);
	font-size: 15px;
	list-style: none;
}
.vn-cart .woocommerce-message .button,
.vn-cart .woocommerce-info .button { background: var(--vn-ink); color: var(--vn-white); border-radius: var(--vn-radius); }

/* blok sepetten kalan negatif marj güvenliği */
.wp-block-woocommerce-cart,
.wp-block-woocommerce-cart.alignwide { margin-inline: 0 !important; max-width: 100% !important; }

/* ============================================================
   10. DİL SEÇİCİ ÇAKIŞMASI
   Yüzen dil seçici mobilde ödeme butonunun üstüne biniyordu.
   ============================================================ */
@media (max-width: 767px) {
	body.woocommerce-cart .trp-floating-switcher,
	body.woocommerce-checkout .trp-floating-switcher { display: none !important; }
}

.vn-cart__lang { display: flex; justify-content: flex-end; margin-bottom: 12px; }
.vn-cart__lang .trp-language-switcher { position: static !important; box-shadow: none; }

/* ============================================================
   11. ERİŞİLEBİLİRLİK
   ============================================================ */
@media (prefers-reduced-motion: reduce) {
	.vn *, .vn *::before, .vn *::after {
		animation-duration: .01ms !important;
		transition-duration: .01ms !important;
	}
}

.vn-visually-hidden {
	position: absolute !important; width: 1px; height: 1px;
	padding: 0; margin: -1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; border: 0;
}

/* ============================================================
   12. SEPET — tema/Elementor form stillerini bastıran düzeltmeler
   ------------------------------------------------------------
   Elementor'un global form stili tüm input'lara yalnızca alt çizgi
   veriyor ve buton renklerini eziyordu. Sepet alanında kendi
   kurallarımızı kesinleştiriyoruz.
   ============================================================ */

/* --- Kupon alanı --- */
.vn .vnc__coupon input,
.vn .vnc__coupon input[type="text"] {
	border: 1px solid var(--vn-line) !important;
	border-radius: var(--vn-radius) !important;
	background: var(--vn-white) !important;
	color: var(--vn-ink) !important;
	padding: 10px 14px !important;
	min-height: 48px !important;
	box-shadow: none !important;
}
.vn .vnc__coupon input:focus { border-color: var(--vn-ink) !important; }

/* --- Butonlar --- */
.vn .vnc__btn,
.vn button.vnc__btn,
.vn .vnc__actions button {
	border-radius: var(--vn-radius) !important;
	text-transform: uppercase;
	letter-spacing: .1em;
}

.vn .vnc__btn--quiet,
.vn button.vnc__btn--quiet {
	background: transparent !important;
	color: var(--vn-muted) !important;
	border: 1px solid var(--vn-line) !important;
}
.vn .vnc__btn--quiet:hover:not(:disabled) {
	background: var(--vn-surface) !important;
	color: var(--vn-ink) !important;
}
.vn .vnc__btn--quiet:disabled,
.vn button.vnc__btn--quiet:disabled {
	background: transparent !important;
	color: #B9B9B9 !important;
	border-color: var(--vn-line) !important;
	opacity: 1 !important;
}

/* --- Sipariş özeti: kargo satırı --- */
/* WooCommerce kargo bloğunu <tr>/<th>/<td> olarak basıyor; diğer
   satırlarla aynı "etiket solda, değer sağda" düzenine oturtuyoruz. */
.vn .vnc__rows .woocommerce-shipping-totals {
	display: block !important;
	justify-content: space-between;
	align-items: baseline;
	gap: 14px;
	padding: 11px 0;
	border-bottom: 1px solid var(--vn-line);
	font-size: 15px;
}
.vn .vnc__rows .woocommerce-shipping-totals th {
	display: block !important;
	width: 100% !important;
	text-align: start !important;
	padding: 0;
	border: 0;
	font-weight: 400;
	color: var(--vn-muted);
	font-family: var(--vn-body);
	font-size: 15px;
	text-transform: none;
	letter-spacing: 0;
}
.vn .vnc__rows .woocommerce-shipping-totals td {
	display: block !important;
	width: 100% !important;
	text-align: start !important;
	padding: 0;
	border: 0;
}
.vn .vnc__rows ul#shipping_method { list-style: none; margin: 0; padding: 0; }
.vn .vnc__rows ul#shipping_method li { padding: 0; }
.vn .vnc__rows ul#shipping_method label { color: var(--vn-ink); font-size: 15px; }
.vn .vnc__rows .woocommerce-shipping-destination {
	display: block;
	margin-top: 6px;
	font-size: 13px;
	color: var(--vn-muted);
	line-height: 1.45;
}
.vn .vnc__rows .shipping-calculator-button {
	display: inline-block;
	margin-top: 4px;
	font-size: 13px;
	color: var(--vn-sand-dk);
	text-decoration: underline;
	text-underline-offset: 2px;
}

/* --- Ödeme butonu --- */
.vn .vnc__summary .checkout-button {
	text-transform: uppercase;
	letter-spacing: .1em;
	line-height: 1.3;
	padding: 14px 18px;
	text-align: center;
}

/* --- Masaüstünde sol sütun boş kalmasın: eylemler alta hizalansın --- */
@media (min-width: 900px) {
	.vnc__form { display: flex; flex-direction: column; }
	.vnc__actions { margin-top: auto; }
}

/* --- Dar ekranda kupon + güncelle alt alta --- */
@media (max-width: 599px) {
	.vnc__actions { flex-direction: column; align-items: stretch; }
	.vnc__coupon { flex: 1 1 auto; }
	.vnc__actions .vnc__btn { width: 100%; }
}

/* WooCommerce'in varsayılan .cart-collaterals kuralı özet kartına
   float:right ve width:48% veriyordu; kart daralıp başlık kırılıyordu. */
.vn .cart-collaterals,
.vn .vnc__summary { width: 100%; float: none; }
.vn .cart-collaterals .cart_totals,
.vn .vnc__summary .cart_totals,
.vn .vnc__card {
	float: none !important;
	width: 100% !important;
	margin: 0 !important;
}
.vn .vnc__card-title { font-size: 18px; line-height: 1.25; }

/* ============================================================
   13. SEPET BAŞLIĞI — üstteki boşluğu toparla
   Başlık ile dil seçici aynı satırda; sayfa üstü fazla boşluk yok.
   ============================================================ */
.vn-cart { padding-block: clamp(20px, 3.5vw, 40px) clamp(40px, 7vw, 72px); }

.vn-cart__head {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 16px;
	flex-wrap: wrap;
	margin-bottom: clamp(18px, 3vw, 28px);
}
.vn-cart__title { margin: 0 0 4px; }
.vn-cart__count { color: var(--vn-muted); font-size: 15px; margin: 0; }

.vn-cart__lang { margin: 0; flex: 0 0 auto; }
.vn-cart__lang .trp-language-switcher { position: static !important; box-shadow: none; margin: 0; }

/* Özet tablosu — <table> yapısına geçtikten sonraki hizalama */
.vn table.vnc__rows { width: 100%; border-collapse: collapse; margin: 0 0 20px; border: 0; }
.vn table.vnc__rows tr.vnc__row { display: table-row; }
.vn table.vnc__rows th,
.vn table.vnc__rows td {
	padding: 11px 0;
	border: 0;
	border-bottom: 1px solid var(--vn-line);
	font-size: 15px;
	vertical-align: baseline;
	background: transparent;
}
.vn table.vnc__rows th {
	text-align: start;
	font-family: var(--vn-body);
	font-weight: 400;
	color: var(--vn-muted);
	text-transform: none;
	letter-spacing: 0;
	white-space: nowrap;
}
.vn table.vnc__rows td { text-align: end; color: var(--vn-ink); }

.vn table.vnc__rows tr.order-total th { color: var(--vn-ink); font-family: var(--vn-display); font-size: 17px; font-weight: 500; }
.vn table.vnc__rows tr.order-total td { font-family: var(--vn-display); font-size: 20px; font-weight: 500; }
.vn table.vnc__rows tr.order-total th,
.vn table.vnc__rows tr.order-total td { border-bottom: 0; padding-top: 16px; }

/* kargo satırı artık gerçek bir <tr> — içindekileri sadeleştir */
.vn table.vnc__rows ul#shipping_method,
.vn table.vnc__rows ul.woocommerce-shipping-methods { list-style: none; margin: 0; padding: 0; }
.vn table.vnc__rows ul#shipping_method li { padding: 0; }
.vn table.vnc__rows .woocommerce-shipping-destination { font-size: 13px; color: var(--vn-muted); margin: 6px 0 0; line-height: 1.45; }
.vn table.vnc__rows .shipping-calculator-button { font-size: 13px; color: var(--vn-sand-dk); text-decoration: underline; text-underline-offset: 2px; }

/* ============================================================
   14. SEPET — son rötuşlar
   ============================================================ */

/* Kargo satırı: etiket üstte, seçenek altta — dar sütunda sıkışmasın */
.vn table.vnc__rows tr.woocommerce-shipping-totals {
	display: block;
	padding: 12px 0;
	border-bottom: 1px solid var(--vn-line);
}
.vn table.vnc__rows tr.woocommerce-shipping-totals th,
.vn table.vnc__rows tr.woocommerce-shipping-totals td {
	display: block;
	width: 100%;
	border: 0;
	padding: 0;
	text-align: start;
	white-space: normal;
}
.vn table.vnc__rows tr.woocommerce-shipping-totals th { margin-bottom: 6px; }
.vn table.vnc__rows tr.woocommerce-shipping-totals label { color: var(--vn-ink); font-size: 15px; }

/* Ödeme butonu: tema/WooCommerce'ten gelen sözde-öğe artığını temizle */
.vn .checkout-button::before,
.vn .checkout-button::after,
.vn .vnc__summary a.button.alt::before,
.vn .vnc__summary a.button.alt::after {
	content: none !important;
	display: none !important;
}

/* ============================================================
   15. ÜRÜNLER SAYFASI — filtre şeridi + ızgara
   ============================================================ */
.vn-shop__head {
	background: var(--vn-surface);
	padding-block: clamp(32px, 6vw, 64px);
	margin-bottom: clamp(24px, 4vw, 40px);
}
.vn-shop__head h1 { margin: 0 0 10px; }
.vn-shop__lead { color: var(--vn-muted); font-size: 16px; max-width: 52ch; margin: 0; }

.vn-shop { padding-bottom: clamp(48px, 8vw, 88px); }

/* --- Filtre sekmeleri --- */
.vn-filters { margin-bottom: clamp(22px, 3.5vw, 34px); }

.vn-filters__list {
	display: flex;
	gap: 10px;
	list-style: none;
	margin: 0;
	padding: 0 0 4px;
	overflow-x: auto;                 /* mobilde yatay kaydırma */
	scrollbar-width: none;
	-webkit-overflow-scrolling: touch;
}
.vn-filters__list::-webkit-scrollbar { display: none; }
.vn-filters__list li { flex: 0 0 auto; }

.vn-chip {
	display: inline-flex;
	align-items: center;
	gap: 7px;
	padding: 11px 18px;
	min-height: 44px;                 /* dokunma hedefi */
	font-family: var(--vn-display);
	font-size: 14px;
	font-weight: 500;
	letter-spacing: .04em;
	text-decoration: none;
	white-space: nowrap;
	color: var(--vn-ink);
	background: var(--vn-white);
	border: 1px solid var(--vn-line);
	border-radius: 999px;
	cursor: pointer;
	transition: background .18s ease, border-color .18s ease, color .18s ease;
}
.vn-chip:hover { border-color: var(--vn-ink); }
.vn-chip.is-active { background: var(--vn-ink); border-color: var(--vn-ink); color: var(--vn-white); }

.vn-chip__n {
	font-size: 12px;
	font-weight: 400;
	color: var(--vn-muted);
	background: var(--vn-surface);
	border-radius: 999px;
	padding: 1px 7px;
	min-width: 20px;
	text-align: center;
}
.vn-chip.is-active .vn-chip__n { background: rgba(255,255,255,.16); color: var(--vn-white); }

/* --- Izgara + yükleniyor durumu --- */
.vn-shop__grid { transition: opacity .18s ease; min-height: 200px; }
.vn-shop__grid.is-loading { opacity: .45; pointer-events: none; }

.vn-shop__empty {
	padding: 48px 20px;
	text-align: center;
	color: var(--vn-muted);
	border: 1px dashed var(--vn-line);
	border-radius: var(--vn-radius);
}

/* Ürün kartı başlığı: tema büyük-harf kuralını bastır */
.vn .vn-card__title,
.vn .vn-card__title a {
	text-transform: none !important;
	letter-spacing: 0;
	font-size: 15px !important;
	line-height: 1.35;
}
@media (min-width: 720px) {
	.vn .vn-card__title,
	.vn .vn-card__title a { font-size: 16px !important; }
}
.vn .vn-card__price { font-size: 16px; color: var(--vn-ink); }
.vn .vn-card__price .amount { color: var(--vn-ink); }

/* ============================================================
   16. BAŞLIK — ince, sabit, sade
   ============================================================ */
.vn-skip {
	position: absolute; left: -9999px; top: 0; z-index: 200;
	background: var(--vn-ink); color: #fff; padding: 10px 16px; border-radius: 0 0 4px 0;
}
.vn-skip:focus { left: 0; }

.vnh {
	position: sticky; top: 0; z-index: 90;
	background: var(--vn-white);
	border-bottom: 1px solid var(--vn-line);
	font-family: var(--vn-body);
}
.vnh.is-stuck { box-shadow: 0 1px 12px rgba(41,41,41,.06); }

.vnh__bar {
	display: flex; align-items: center; gap: 16px;
	max-width: var(--vn-max); margin-inline: auto;
	padding: 0 var(--vn-gap);
	height: 62px;                       /* ince */
}
@media (min-width: 900px) { .vnh__bar { height: 68px; } }

.vnh__burger {
	display: inline-flex; flex-direction: column; justify-content: center; gap: 5px;
	width: 40px; height: 40px; margin-inline-start: -8px;
	background: none; border: 0; cursor: pointer; padding: 0;
}
.vnh__burger span { display: block; width: 21px; height: 1.5px; background: var(--vn-ink); transition: transform .2s ease; }
@media (min-width: 900px) { .vnh__burger { display: none; } }

.vnh__logo { display: flex; align-items: center; text-decoration: none; margin-inline: auto; }
@media (min-width: 900px) { .vnh__logo { margin-inline: 0; } }
.vnh__logo img { height: 26px; width: auto; object-fit: contain; }
.vnh__wordmark {
	font-family: var(--vn-display); font-size: 19px; font-weight: 500;
	letter-spacing: .22em; color: var(--vn-ink);
}

/* --- Masaüstü menü --- */
.vnh__nav { display: none; }
@media (min-width: 900px) {
	.vnh__nav { display: block; margin-inline: auto; }
	.vnh__nav > ul { display: flex; gap: 34px; list-style: none; margin: 0; padding: 0; }
	.vnh__nav > ul > li { position: static; }
	.vnh__nav a {
		display: inline-flex; align-items: center; gap: 6px;
		font-family: var(--vn-display); font-size: 13px; font-weight: 500;
		letter-spacing: .14em; text-transform: uppercase; text-decoration: none;
		color: var(--vn-ink) !important; padding: 22px 0;
	}
	.vnh__nav a:hover { color: var(--vn-sand-dk) !important; }
	.vnh__caret { width: 10px; height: 7px; transition: transform .2s ease; }
	.vnh__has-mega.is-open .vnh__caret { transform: rotate(180deg); }
}

/* --- Mega menü --- */
.vnh__mega { display: none; }
@media (min-width: 900px) {
	.vnh__mega {
		display: block;
		position: absolute; inset-inline: 0; top: 100%;
		background: var(--vn-white);
		border-top: 1px solid var(--vn-line);
		border-bottom: 1px solid var(--vn-line);
		box-shadow: 0 14px 34px rgba(41,41,41,.07);
		opacity: 0; visibility: hidden; transform: translateY(-6px);
		transition: opacity .18s ease, transform .18s ease, visibility .18s;
	}
	.vnh__has-mega.is-open .vnh__mega { opacity: 1; visibility: visible; transform: none; }

	.vnh__mega-inner {
		display: grid; grid-template-columns: 220px 1fr; gap: 44px;
		max-width: var(--vn-max); margin-inline: auto;
		padding: 30px var(--vn-gap) 34px;
	}
	.vnh__mega-label {
		font-family: var(--vn-display); font-size: 11px; font-weight: 500;
		letter-spacing: .18em; text-transform: uppercase; color: var(--vn-sand-dk);
		margin: 0 0 14px;
	}
	.vnh__mega-links { list-style: none; margin: 0; padding: 0; }
	.vnh__mega-links li + li { margin-top: 2px; }
	.vnh__mega-links a {
		display: flex; justify-content: space-between; align-items: center; gap: 10px;
		padding: 9px 10px 9px 0;
		font-family: var(--vn-body); font-size: 15px; font-weight: 400;
		letter-spacing: 0; text-transform: none;
		color: var(--vn-ink) !important; text-decoration: none; border-radius: var(--vn-radius);
	}
	.vnh__mega-links a:hover { color: var(--vn-sand-dk) !important; padding-inline-start: 8px; }
	.vnh__mega-links span { font-size: 12px; color: var(--vn-muted); }

	.vnh__mega-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 20px; }
	.vnh__mega-card { display: block; text-decoration: none; padding: 0 !important; }
	.vnh__mega-card img { width: 100%; aspect-ratio: 1/1; object-fit: cover; border-radius: var(--vn-radius); background: var(--vn-surface); margin-bottom: 9px; }
	.vnh__mega-name {
		display: block; font-family: var(--vn-body); font-size: 13.5px; line-height: 1.4;
		letter-spacing: 0; text-transform: none; color: var(--vn-ink) !important; margin-bottom: 3px;
	}
	.vnh__mega-price { display: block; font-family: var(--vn-display); font-size: 13.5px; font-weight: 500; color: var(--vn-ink); }
	.vnh__mega-price .amount { color: var(--vn-ink); }
}

/* --- Sepet ikonu --- */
.vnh__cart { position: relative; display: inline-flex; color: var(--vn-ink) !important; text-decoration: none; padding: 6px; }
.vnh__cart svg { width: 22px; height: 22px; }
.vnh__cart-n {
	position: absolute; top: -1px; inset-inline-end: -3px;
	min-width: 17px; height: 17px; padding: 0 4px;
	display: inline-flex; align-items: center; justify-content: center;
	font-family: var(--vn-display); font-size: 10.5px; font-weight: 500;
	background: var(--vn-sand-dk); color: #fff; border-radius: 999px;
}

/* ============================================================
   17. MOBİL YAN PANEL
   ============================================================ */
.vn-drawer { position: fixed; inset: 0; z-index: 120; }
.vn-drawer[hidden] { display: none; }
.vn-drawer__scrim {
	position: absolute; inset: 0; background: rgba(41,41,41,.42);
	opacity: 0; transition: opacity .25s ease;
}
.vn-drawer.is-open .vn-drawer__scrim { opacity: 1; }

.vn-drawer__panel {
	position: absolute; inset-block: 0; inset-inline-start: 0;
	width: min(86vw, 330px);
	background: var(--vn-white);
	padding: 20px 24px 32px;
	overflow-y: auto; z-index: 1;
	transform: translateX(-100%);
	transition: transform .25s ease;
}
.vn-drawer.is-open .vn-drawer__panel { transform: none; }
[dir="rtl"] .vn-drawer__panel { transform: translateX(100%); }

.vn-drawer__close {
	background: none; border: 0; font-size: 30px; line-height: 1;
	color: var(--vn-muted); cursor: pointer; padding: 0 0 14px; margin-inline-start: -4px;
}

.vn-drawer__nav { list-style: none; margin: 0 0 22px; padding: 0; }
.vn-drawer__nav a {
	display: flex; justify-content: space-between; align-items: center;
	padding: 13px 0; border-bottom: 1px solid var(--vn-line);
	font-family: var(--vn-display); font-size: 16px; font-weight: 500;
	color: var(--vn-ink) !important; text-decoration: none;
}
.vn-drawer__nav--sub a { font-family: var(--vn-body); font-size: 15px; font-weight: 400; }
.vn-drawer__nav--sub span { font-size: 12px; color: var(--vn-muted); }
.vn-drawer__nav--foot { margin-bottom: 0; }
.vn-drawer__label {
	font-family: var(--vn-display); font-size: 11px; font-weight: 500;
	letter-spacing: .18em; text-transform: uppercase; color: var(--vn-sand-dk); margin: 0 0 6px;
}

/* ============================================================
   18. ALT BİLGİ
   ============================================================ */
.vnf { background: var(--vn-ink); color: rgba(255,255,255,.72); font-family: var(--vn-body); }
.vnf__inner {
	display: grid; gap: 34px;
	grid-template-columns: 1fr;
	max-width: var(--vn-max); margin-inline: auto;
	padding: clamp(40px, 6vw, 64px) var(--vn-gap);
}
@media (min-width: 640px) { .vnf__inner { grid-template-columns: repeat(2, 1fr); } }
@media (min-width: 960px) { .vnf__inner { grid-template-columns: 1.6fr 1fr 1fr 1fr; gap: 44px; } }

.vnf__logo {
	display: inline-block; font-family: var(--vn-display); font-size: 19px; font-weight: 500;
	letter-spacing: .22em; color: #fff !important; text-decoration: none; margin-bottom: 12px;
}
.vnf__tagline { color: rgba(255,255,255,.6); font-size: 14.5px; margin: 0 0 18px; max-width: 34ch; }

.vnf__badges { list-style: none; margin: 0; padding: 0; display: grid; gap: 8px; }
.vnf__badges li { position: relative; padding-inline-start: 22px; font-size: 13.5px; color: rgba(255,255,255,.72); }
.vnf__badges li::before {
	content: ''; position: absolute; inset-inline-start: 0; top: 6px;
	width: 11px; height: 6px;
	border-inline-start: 1.5px solid var(--vn-sand); border-block-end: 1.5px solid var(--vn-sand);
	transform: rotate(-45deg);
}
.vnf__badges em { font-style: normal; color: rgba(255,255,255,.45); }

.vnf__title {
	font-family: var(--vn-display); font-size: 12px; font-weight: 500;
	letter-spacing: .16em; text-transform: uppercase; color: #fff; margin: 0 0 14px;
}
.vnf__links { list-style: none; margin: 0; padding: 0; display: grid; gap: 9px; }
.vnf__links a { color: rgba(255,255,255,.72) !important; text-decoration: none; font-size: 14.5px; }
.vnf__links a:hover { color: var(--vn-sand) !important; }

.vnf__bottom { border-top: 1px solid rgba(255,255,255,.1); }
.vnf__bottom p {
	max-width: var(--vn-max); margin-inline: auto;
	padding: 18px var(--vn-gap); font-size: 13px; color: rgba(255,255,255,.45); margin-block: 0;
}

/* ============================================================
   19. ÜRÜNLER SAYFASI BAŞLIĞI — ince ve sade
   ============================================================ */
.vn-shop__head {
	background: transparent;
	border-bottom: 1px solid var(--vn-line);
	padding-block: clamp(22px, 3vw, 34px);
	margin-bottom: clamp(20px, 3vw, 30px);
}
.vn-shop__head h1 { font-size: clamp(24px, 4vw, 34px); margin: 0 0 6px; }
.vn-shop__lead { font-size: 15px; }

/* Tema tüm bağlantılara altın rengi veriyordu — sepet/çip metinlerini düzelt */
.vn .vn-chip { color: var(--vn-ink) !important; }
.vn .vn-chip.is-active { color: var(--vn-white) !important; }
.vn .vn-btn { color: var(--vn-white) !important; }
.vn .vn-btn--ghost { color: var(--vn-ink) !important; }
.vn .vn-btn--ghost:hover { color: var(--vn-white) !important; }
.vn .vn-card__title a { color: var(--vn-ink) !important; }
.vn .vn-card__title a:hover { color: var(--vn-sand-dk) !important; }

/* ============================================================
   20. ÜRÜNLER BAŞLIĞI — tek satır, ince
   Başlık ve açıklama yan yana; sayfa üstü minimum yer kaplar.
   ============================================================ */
.vn-shop__head {
	background: transparent;
	border-bottom: 1px solid var(--vn-line);
	padding-block: 14px !important;
	margin-bottom: 20px !important;
}
.vn-shop__head-row {
	display: flex;
	align-items: baseline;
	gap: 16px;
	flex-wrap: wrap;
}
.vn .vn-shop__head h1 {
	font-size: 22px !important;
	line-height: 1.2;
	margin: 0 !important;
	white-space: nowrap;
}
@media (min-width: 900px) { .vn .vn-shop__head h1 { font-size: 26px !important; } }

.vn-shop__lead {
	margin: 0 !important;
	font-size: 14px;
	color: var(--vn-muted);
}
@media (max-width: 699px) { .vn-shop__lead { display: none; } }  /* mobilde başlık tek başına */

.vn-filters { margin-bottom: 20px; }

/* ============================================================
   21. MEGA MENÜ DÜZELTMESİ
   ------------------------------------------------------------
   Sorun: `.vnh__nav a` kuralı menü içindeki TÜM bağlantılara
   inline-flex + dikey ortalama + 22px dolgu veriyordu. Mega menü
   ürün kartları da bundan etkilenip görsel ve yazı yan yana
   binmişti. Kuralı yalnızca üst düzey menü öğelerine bağlıyoruz.
   ============================================================ */
@media (min-width: 900px) {

	/* üst düzey öğeler dışındaki bağlantılar nav kuralından muaf */
	.vnh__nav .vnh__mega a {
		display: block;
		padding: 0;
		font-family: var(--vn-body);
		font-size: 14px;
		font-weight: 400;
		letter-spacing: 0;
		text-transform: none;
	}

	/* kategori listesi: ad solda, adet sağda */
	.vnh__nav .vnh__mega .vnh__mega-links a {
		display: flex !important;
		justify-content: space-between;
		align-items: center;
		gap: 10px;
		padding: 9px 0 !important;
		font-size: 15px;
		border-bottom: 1px solid transparent;
		transition: color .15s ease, border-color .15s ease;
	}
	.vnh__nav .vnh__mega .vnh__mega-links a:hover {
		color: var(--vn-sand-dk) !important;
		border-bottom-color: var(--vn-line);
		padding-inline-start: 0 !important;
	}

	/* ürün kartı: görsel üstte, ad ve fiyat altta */
	.vnh__nav .vnh__mega .vnh__mega-card {
		display: flex !important;
		flex-direction: column;
		gap: 0;
		padding: 0 !important;
		align-items: stretch;
	}
	.vnh__mega-card img {
		display: block;
		width: 100%;
		height: auto;
		aspect-ratio: 1 / 1;
		object-fit: cover;
		border-radius: var(--vn-radius);
		background: var(--vn-surface);
		margin: 0 0 10px;
	}
	.vnh__mega-name {
		display: block;
		font-size: 13.5px;
		line-height: 1.4;
		color: var(--vn-ink) !important;
		margin-bottom: 4px;
		/* uzun adlar kartı bozmasın */
		display: -webkit-box;
		-webkit-line-clamp: 2;
		-webkit-box-orient: vertical;
		overflow: hidden;
	}
	.vnh__mega-price {
		display: block;
		font-family: var(--vn-display);
		font-size: 13.5px;
		font-weight: 500;
		color: var(--vn-ink) !important;
		margin-top: auto;
	}
	.vnh__mega-price .amount,
	.vnh__mega-price bdi { color: var(--vn-ink); }

	/* ızgara ve sütun ölçüleri */
	.vnh__mega-inner {
		grid-template-columns: 200px minmax(0, 1fr);
		gap: 48px;
		padding-block: 28px 32px;
		align-items: start;
	}
	.vnh__mega-grid {
		display: grid !important;
		grid-template-columns: repeat(4, minmax(0, 1fr));
		gap: 22px;
	}
}

/* Ürünler başlığı: beyaz zeminde sayfa dağınık görünüyordu —
   hafif gri bir şerit başlığı içerikten ayırıyor. */
.vn-shop__head {
	background: var(--vn-surface) !important;
	border-bottom: 1px solid var(--vn-line);
	margin-bottom: 24px !important;
}

/* ============================================================
   22. BAŞLIK — tema buton/eleman stillerini bastır
   Temanın global `button` kuralı hamburgere siyah zemin, kenarlık
   ve 15px/28px dolgu veriyordu; çizgilerin yüksekliği de siliniyordu.
   ============================================================ */
.vnh__burger,
.vnh button.vnh__burger {
	background: none !important;
	background-color: transparent !important;
	border: 0 !important;
	box-shadow: none !important;
	padding: 0 !important;
	width: 40px !important;
	height: 40px !important;
	min-height: 0 !important;
	border-radius: 0 !important;
	display: inline-flex !important;
	flex-direction: column;
	justify-content: center;
	align-items: flex-start;
	gap: 5px;
}
@media (min-width: 900px) { .vnh__burger, .vnh button.vnh__burger { display: none !important; } }

.vnh__burger span {
	display: block !important;
	width: 21px !important;
	height: 2px !important;
	min-height: 2px !important;
	background: var(--vn-ink) !important;
	border-radius: 2px;
}

/* Kelime-logo */
.vnh__wordmark {
	font-family: var(--vn-display);
	font-size: 18px;
	font-weight: 500;
	letter-spacing: .24em;
	color: var(--vn-ink) !important;
	white-space: nowrap;
}
@media (min-width: 900px) { .vnh__wordmark { font-size: 19px; } }
.vnh__logo { text-decoration: none !important; }

/* Sepet ikonu tema buton stilinden etkilenmesin */
.vnh__cart {
	background: none !important;
	border: 0 !important;
	padding: 6px !important;
	min-height: 0 !important;
}

/* Marka logosu — logo1.png (koyu kahve VIVONEST kelime-logosu) */
.vnh__logo-img {
	display: block;
	height: 22px;
	width: auto;
	max-width: 170px;
	object-fit: contain;
}
@media (min-width: 900px) { .vnh__logo-img { height: 26px; max-width: 200px; } }

/* ============================================================
   23. ÜRÜN KARTI — yeniden tasarım
   ------------------------------------------------------------
   Önceki hâlinde başlık ile fiyat arasında satır sayısına göre
   değişen boşluk oluşuyor, dört ağır siyah buton yan yana gelince
   ızgara ezici görünüyordu. Artık başlık iki satıra sabitleniyor,
   buton hafif çerçeveli — üzerine gelince doluyor.
   ============================================================ */
.vn .vn-card {
	position: relative;
	display: flex;
	flex-direction: column;
	background: var(--vn-white);
	border: 1px solid var(--vn-line);
	border-radius: 6px;
	overflow: hidden;
	transition: border-color .2s ease, box-shadow .25s ease, transform .25s ease;
}
.vn .vn-card:hover {
	border-color: #DDD6C8;
	box-shadow: 0 6px 22px rgba(41, 41, 41, .07);
	transform: translateY(-2px);
}

.vn .vn-card__media {
	position: relative;
	display: block;
	overflow: hidden;
	background: var(--vn-surface);
}
.vn .vn-card__media img {
	width: 100%;
	aspect-ratio: 1 / 1;
	object-fit: cover;
	transition: transform .5s cubic-bezier(.2, .6, .3, 1);
}
.vn .vn-card:hover .vn-card__media img { transform: scale(1.045); }

.vn .vn-card__body {
	display: flex;
	flex-direction: column;
	flex: 1;
	padding: 14px 14px 16px;
	gap: 0;
}
@media (min-width: 720px) { .vn .vn-card__body { padding: 16px 16px 18px; } }

.vn .vn-card__cat {
	font-family: var(--vn-display);
	font-size: 10.5px;
	font-weight: 500;
	letter-spacing: .16em;
	text-transform: uppercase;
	color: var(--vn-muted);
	margin: 0 0 7px;
}

/* başlık iki satıra sabit — kartlar aynı hizada kalsın */
.vn .vn-card__title {
	margin: 0 0 10px;
	min-height: 2.7em;
	display: -webkit-box;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
	overflow: hidden;
}

.vn .vn-card__price {
	font-family: var(--vn-display);
	font-size: 17px !important;
	font-weight: 500;
	color: var(--vn-ink);
	margin: 0 0 14px;
	line-height: 1.2;
}
.vn .vn-card__price del { color: #AFAFAF; font-weight: 300; font-size: 14px; margin-inline-end: 7px; }
.vn .vn-card__price ins { text-decoration: none; color: var(--vn-sand-dk); }

/* buton: hafif çerçeve, üzerine gelince dolar */
.vn .vn-card .vn-btn {
	width: 100%;
	margin-top: auto;
	padding: 12px 10px;
	min-height: 44px;
	font-size: 11.5px;
	letter-spacing: .14em;
	border-radius: 4px;
	background: transparent !important;
	color: var(--vn-ink) !important;
	border: 1px solid var(--vn-ink);
	transition: background .2s ease, color .2s ease, border-color .2s ease;
}
.vn .vn-card .vn-btn:hover,
.vn .vn-card .vn-btn:focus-visible {
	background: var(--vn-ink) !important;
	color: var(--vn-white) !important;
	border-color: var(--vn-ink);
}

/* rozet */
.vn .vn-card__badge {
	inset-block-start: 12px;
	inset-inline-start: 12px;
	font-size: 10px;
	letter-spacing: .12em;
	padding: 5px 9px;
	border-radius: 3px;
	backdrop-filter: blur(2px);
}

/* ızgara aralığı biraz daha ferah */
.vn-products { gap: clamp(12px, 2.4vw, 22px); }

/* ============================================================
   24. METİN SAYFALARI — İletişim, Gizlilik, İptal-İade
   ============================================================ */
.vn-page__head {
	background: var(--vn-surface);
	border-bottom: 1px solid var(--vn-line);
	padding-block: 22px;
	margin-bottom: clamp(28px, 4vw, 44px);
}
.vn .vn-page__head h1 { font-size: clamp(22px, 3.4vw, 28px) !important; margin: 0 !important; }

.vn-page { padding-bottom: clamp(48px, 8vw, 88px); }

/* Okunabilir metin sütunu */
.vn-prose { max-width: 74ch; font-size: 16px; line-height: 1.75; color: #444; }
.vn-prose > *:first-child { margin-top: 0; }

.vn .vn-prose h2 { font-size: clamp(19px, 2.6vw, 23px); margin: 2em 0 .6em; }
.vn .vn-prose h3 { font-size: clamp(16px, 2.2vw, 18px); margin: 1.7em 0 .5em; }
.vn-prose p { margin: 0 0 1.15em; }
.vn-prose ul, .vn-prose ol { margin: 0 0 1.3em; padding-inline-start: 1.3em; }
.vn-prose li { margin-bottom: .5em; }
.vn-prose a { color: var(--vn-ink); text-decoration: underline; text-underline-offset: 3px; text-decoration-color: var(--vn-sand); }
.vn-prose a:hover { color: var(--vn-sand-dk); }
.vn-prose strong { color: var(--vn-ink); font-weight: 500; }
.vn-prose img { border-radius: var(--vn-radius); margin: 1.5em 0; }
.vn-prose hr { border: 0; border-top: 1px solid var(--vn-line); margin: 2.4em 0; }
.vn-prose blockquote {
	margin: 1.6em 0; padding: 4px 0 4px 18px;
	border-inline-start: 2px solid var(--vn-sand);
	color: var(--vn-muted); font-style: normal;
}
.vn-prose table { width: 100%; border-collapse: collapse; margin: 1.5em 0; font-size: 15px; }
.vn-prose th, .vn-prose td { padding: 11px 12px; border: 1px solid var(--vn-line); text-align: start; }
.vn-prose th { background: var(--vn-surface); font-family: var(--vn-display); font-weight: 500; }

/* Uzun metinlerde yatay taşmayı engelle */
.vn-prose { overflow-wrap: anywhere; }
.vn-prose pre { overflow-x: auto; }

/* Elementor'dan kalan boş paragraf/aralık öğeleri metin sayfalarında
   büyük bir boşluk bırakıyordu — toparlıyoruz. */
.vn-prose p:empty,
.vn-prose div:empty,
.vn-prose p > br:only-child { display: none; }
.vn-prose > p:first-child:has(> br:only-child) { display: none; }
.vn-page { padding-top: 0; }
.vn-prose > br { display: none; }

/* ============================================================
   25. KURUMSAL MEGA MENÜSÜ — yasal sayfalar
   ============================================================ */
@media (min-width: 900px) {
	.vnh__mega-inner--legal {
		display: grid;
		grid-template-columns: repeat(4, minmax(0, 1fr));
		gap: 14px;
		padding-block: 26px 30px;
	}

	.vnh__nav .vnh__mega .vnh__mega-tile {
		display: flex !important;
		flex-direction: column;
		gap: 5px;
		padding: 16px 18px !important;
		border: 1px solid var(--vn-line);
		border-radius: 6px;
		background: var(--vn-white);
		transition: border-color .18s ease, background .18s ease, transform .18s ease;
	}
	.vnh__nav .vnh__mega .vnh__mega-tile:hover {
		border-color: var(--vn-sand);
		background: var(--vn-surface);
		transform: translateY(-2px);
	}

	.vnh__mega-tile-title {
		font-family: var(--vn-display);
		font-size: 14.5px;
		font-weight: 500;
		letter-spacing: 0;
		text-transform: none;
		color: var(--vn-ink) !important;
		line-height: 1.3;
	}
	.vnh__mega-tile-desc {
		font-family: var(--vn-body);
		font-size: 12.5px;
		font-weight: 300;
		line-height: 1.45;
		color: var(--vn-muted) !important;
		text-transform: none;
		letter-spacing: 0;
	}
}

/* ============================================================
   26. METİN SAYFALARI — giriş paragrafı
   ============================================================ */
.vn-prose .vn-lede {
	font-size: 17px;
	line-height: 1.6;
	color: var(--vn-ink);
	padding: 18px 20px;
	background: var(--vn-surface);
	border-inline-start: 3px solid var(--vn-sand);
	border-radius: 0 var(--vn-radius) var(--vn-radius) 0;
	margin-bottom: 26px;
}
.vn-prose > p > em:only-child { color: var(--vn-muted); font-size: 13.5px; font-style: normal; }

/* ============================================================
   27. İLETİŞİM SAYFASI — bilgi kartları + harita
   ============================================================ */
.vn-contact { margin: 0 0 40px; }

.vn-contact__grid {
	display: grid;
	grid-template-columns: 1fr;
	gap: 12px;
	margin-bottom: 24px;
}
@media (min-width: 560px) { .vn-contact__grid { grid-template-columns: repeat(2, 1fr); } }

.vn-contact__card {
	display: flex;
	flex-direction: column;
	gap: 5px;
	padding: 18px 20px;
	border: 1px solid var(--vn-line);
	border-radius: 6px;
	background: var(--vn-white);
	transition: border-color .18s ease;
}
.vn-contact__card:hover { border-color: var(--vn-sand); }

.vn-contact__label {
	font-family: var(--vn-display);
	font-size: 10.5px;
	font-weight: 500;
	letter-spacing: .16em;
	text-transform: uppercase;
	color: var(--vn-sand-dk);
}
.vn-contact__value {
	font-family: var(--vn-display);
	font-size: 18px;
	font-weight: 500;
	color: var(--vn-ink) !important;
	text-decoration: none !important;
	line-height: 1.3;
	overflow-wrap: anywhere;
}
a.vn-contact__value:hover { color: var(--vn-sand-dk) !important; }
.vn-contact__value--sm { font-size: 15.5px; font-weight: 400; font-family: var(--vn-body); }
.vn-contact__note { font-size: 13px; color: var(--vn-muted); line-height: 1.45; }

/* Harita */
.vn-contact__map {
	position: relative;
	overflow: hidden;
	border: 1px solid var(--vn-line);
	border-radius: 6px;
	background: var(--vn-surface);
	aspect-ratio: 16 / 10;
}
@media (min-width: 760px) { .vn-contact__map { aspect-ratio: 21 / 8; } }
.vn-contact__map iframe {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	border: 0;
	display: block;
	filter: grayscale(.25);
}

.vn-contact__maplink { margin: 12px 0 0; }
.vn-contact__maplink a {
	font-family: var(--vn-display);
	font-size: 13px;
	font-weight: 500;
	letter-spacing: .1em;
	text-transform: uppercase;
	color: var(--vn-ink) !important;
	text-decoration: none !important;
	border-bottom: 1px solid var(--vn-sand);
	padding-bottom: 3px;
}
.vn-contact__maplink a:hover { color: var(--vn-sand-dk) !important; border-color: var(--vn-sand-dk); }

/* İletişim sayfasındaki dev logo görselini kaldır */
.page-id-3 .vn-prose > p > img,
.page-id-3 .vn-prose > figure > img { max-width: 200px; height: auto; }

/* ============================================================
   28. SEPET ROZETİ VE MİNİ SEPET
   ============================================================ */
.vnh__cart-wrap { position: relative; display: inline-flex; }

.vnh__cart-n {
	position: absolute; top: -2px; inset-inline-end: -4px;
	min-width: 18px; height: 18px; padding: 0 5px;
	display: inline-flex; align-items: center; justify-content: center;
	font-family: var(--vn-display); font-size: 10.5px; font-weight: 500; line-height: 1;
	background: var(--vn-sand-dk); color: #fff !important; border-radius: 999px;
	transition: transform .18s ease;
}
.vnh__cart-n.is-empty { display: none; }
.vnh__cart-n.is-bump { transform: scale(1.28); }

/* --- Açılır panel --- */
.vnh__minicart {
	position: absolute; top: calc(100% + 10px); inset-inline-end: 0;
	width: min(92vw, 340px);
	background: var(--vn-white);
	border: 1px solid var(--vn-line);
	border-radius: 8px;
	box-shadow: 0 14px 38px rgba(41,41,41,.12);
	padding: 16px;
	z-index: 120;
	opacity: 0; visibility: hidden; transform: translateY(-6px);
	transition: opacity .18s ease, transform .18s ease, visibility .18s;
}
.vnh__cart-wrap.is-open .vnh__minicart { opacity: 1; visibility: visible; transform: none; }

.vnh__minicart-empty { color: var(--vn-muted); font-size: 14.5px; text-align: center; margin: 8px 0 14px; }

.vnh__minicart-list { list-style: none; margin: 0 0 14px; padding: 0; max-height: 300px; overflow-y: auto; }
.vnh__minicart-item {
	display: grid; grid-template-columns: 52px 1fr 22px; gap: 12px; align-items: center;
	padding: 10px 0; border-bottom: 1px solid var(--vn-line);
}
.vnh__minicart-item:last-child { border-bottom: 0; }
.vnh__minicart-thumb img { width: 52px; height: 52px; object-fit: cover; border-radius: 4px; background: var(--vn-surface); }
.vnh__minicart-info { min-width: 0; }
.vnh__minicart-name {
	display: block; font-family: var(--vn-display); font-size: 13.5px; font-weight: 500;
	line-height: 1.35; color: var(--vn-ink) !important; text-decoration: none;
	overflow: hidden; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical;
}
.vnh__minicart-name:hover { color: var(--vn-sand-dk) !important; }
.vnh__minicart-meta { display: block; font-size: 12.5px; color: var(--vn-muted); margin-top: 3px; }
.vnh__minicart-meta .amount { color: var(--vn-muted); }
.vnh__minicart-x {
	display: inline-flex; align-items: center; justify-content: center;
	width: 22px; height: 22px; font-size: 17px; line-height: 1;
	color: var(--vn-muted) !important; text-decoration: none; border-radius: 50%;
}
.vnh__minicart-x:hover { background: var(--vn-surface); color: #b32d2e !important; }

.vnh__minicart-total {
	display: flex; justify-content: space-between; align-items: baseline;
	padding: 12px 0; border-top: 1px solid var(--vn-line); font-size: 14px;
}
.vnh__minicart-total span { color: var(--vn-muted); }
.vnh__minicart-total strong { font-family: var(--vn-display); font-size: 17px; font-weight: 500; }

.vnh__minicart-actions { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; }
.vnh__minicart-btn {
	display: inline-flex; align-items: center; justify-content: center;
	padding: 11px 8px; min-height: 44px;
	font-family: var(--vn-display); font-size: 11.5px; font-weight: 500;
	letter-spacing: .1em; text-transform: uppercase; text-align: center;
	text-decoration: none !important; border-radius: 4px;
	background: var(--vn-ink); color: var(--vn-white) !important;
	border: 1px solid var(--vn-ink);
	transition: background .18s ease, color .18s ease;
}
.vnh__minicart-btn:hover { background: var(--vn-sand-dk); border-color: var(--vn-sand-dk); }
.vnh__minicart-btn--ghost { background: transparent; color: var(--vn-ink) !important; }
.vnh__minicart-btn--ghost:hover { background: var(--vn-ink); color: var(--vn-white) !important; }
.vnh__minicart-empty + .vnh__minicart-btn { width: 100%; }

/* "Sepete eklendi" geri bildirimi */
.vn .vn-btn.added { position: relative; }
.vn .vn-btn.loading { opacity: .6; pointer-events: none; }
.vn .added_to_cart { display: none; }   /* WooCommerce'in kendi "sepeti görüntüle" bağlantısı */

/* ============================================================
   29. SEPET — kargo (yalnızca ülke seçimi)
   ============================================================ */
.vnc__ship { margin-top: 8px; }
.vnc__ship-label {
	font-family: var(--vn-display); font-size: 12px; font-weight: 500;
	letter-spacing: .1em; text-transform: uppercase; color: var(--vn-muted);
	margin: 0 0 8px;
}
.vnc__ship-row { display: flex; gap: 8px; align-items: stretch; }

.vn .vnc__ship-select {
	flex: 1 1 auto; min-width: 0;
	min-height: 44px; padding: 9px 12px;
	font-family: var(--vn-body); font-size: 15px; color: var(--vn-ink);
	background: var(--vn-white) !important;
	border: 1px solid var(--vn-line) !important;
	border-radius: var(--vn-radius) !important;
	appearance: none;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 8'%3E%3Cpath d='M1 1.5 6 6.5l5-5' fill='none' stroke='%237A7A7A' stroke-width='1.4' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") !important;
	background-repeat: no-repeat !important;
	background-position: right 12px center !important;
	background-size: 11px !important;
	padding-inline-end: 32px;
}
.vn .vnc__ship-select:focus { border-color: var(--vn-ink) !important; outline: none; }

.vnc__ship .vnc__btn { flex: 0 0 auto; padding: 10px 16px; min-height: 44px; font-size: 11.5px; }

.vnc__ship-note {
	margin: 10px 0 0; font-size: 12.5px; line-height: 1.5; color: var(--vn-muted);
}

/* WooCommerce'in kendi eyalet/şehir/posta alanlarını sepette gizle */
.vnc__ship .woocommerce-shipping-calculator p:not(.vnc__ship-label):not(.vnc__ship-note),
.vnc__ship #calc_shipping_state_field,
.vnc__ship #calc_shipping_city_field,
.vnc__ship #calc_shipping_postcode_field { display: none !important; }

/* ============================================================
   30. ÖDEME SAYFASI
   ============================================================ */
.vnck { padding-block: clamp(20px, 3vw, 34px) clamp(48px, 7vw, 80px); }

.vnck__head {
	display: flex; align-items: flex-start; justify-content: space-between;
	gap: 16px; flex-wrap: wrap;
	padding-bottom: 18px; margin-bottom: clamp(20px, 3vw, 30px);
	border-bottom: 1px solid var(--vn-line);
}
.vn .vnck__title { font-size: clamp(22px, 3.4vw, 28px) !important; margin: 0 0 6px !important; }

.vnck__steps { display: flex; gap: 8px; align-items: center; flex-wrap: wrap; font-size: 13px; color: var(--vn-muted); margin: 0; }
.vnck__steps a { color: var(--vn-muted) !important; text-decoration: none; }
.vnck__steps a:hover { color: var(--vn-ink) !important; }
.vnck__steps strong { color: var(--vn-ink); font-weight: 500; }

.vnck__back {
	font-family: var(--vn-display); font-size: 12px; font-weight: 500;
	letter-spacing: .1em; text-transform: uppercase;
	color: var(--vn-ink) !important; text-decoration: none !important;
	border-bottom: 1px solid var(--vn-sand); padding-bottom: 3px;
}

/* --- Izgara --- */
.vnck__grid { display: grid; gap: clamp(20px, 3vw, 36px); align-items: start; }
@media (min-width: 960px) { .vnck__grid { grid-template-columns: minmax(0, 1fr) 380px; } }

.vnck__card {
	border: 1px solid var(--vn-line); border-radius: 8px;
	background: #fff; padding: clamp(18px, 3vw, 26px);
	margin-bottom: 18px;
}
.vn .vnck__card-title { font-size: 17px !important; margin: 0 0 18px !important; }

/* --- Form alanları --- */
.vnck .form-row { margin: 0 0 14px; padding: 0; }
.vnck .form-row label {
	display: block; font-size: 13px; color: var(--vn-muted);
	margin-bottom: 6px; font-weight: 400;
}
.vnck .form-row .required { color: #B3261E; text-decoration: none; }

.vnck input[type="text"], .vnck input[type="email"], .vnck input[type="tel"],
.vnck input[type="password"], .vnck textarea, .vnck select,
.vnck .select2-selection {
	width: 100%; min-height: 48px; padding: 11px 14px !important;
	font-family: var(--vn-body) !important; font-size: 15px !important;
	color: var(--vn-ink) !important;
	background: #fff !important;
	border: 1px solid var(--vn-line) !important;
	border-radius: 6px !important;
	box-shadow: none !important;
}
.vnck textarea { min-height: 92px; }
.vnck input:focus, .vnck textarea:focus, .vnck select:focus { border-color: var(--vn-ink) !important; outline: none; }

@media (min-width: 620px) {
	.vnck .vnck__fields > .woocommerce-billing-fields__field-wrapper { display: grid; grid-template-columns: 1fr 1fr; gap: 0 14px; }
	.vnck #billing_first_name_field, .vnck #billing_last_name_field { grid-column: span 1; }
	.vnck #billing_email_field, .vnck #billing_phone_field { grid-column: span 1; }
	.vnck .form-row-wide, .vnck #billing_address_1_field, .vnck #billing_address_2_field,
	.vnck #billing_country_field, .vnck #order_comments_field { grid-column: 1 / -1; }
}

/* --- Sipariş özeti --- */
.vnck__summary {
	border: 1px solid var(--vn-line); border-radius: 8px;
	background: var(--vn-surface); overflow: hidden;
}
@media (min-width: 960px) { .vnck__summary { position: sticky; top: 84px; } }

.vnck__summary-toggle {
	display: flex; align-items: center; justify-content: space-between; gap: 12px;
	width: 100%; padding: 16px 18px;
	background: none; border: 0; cursor: pointer; text-align: start;
	font-family: var(--vn-body);
}
@media (min-width: 960px) { .vnck__summary-toggle { cursor: default; pointer-events: none; } }

.vnck__summary-label { font-family: var(--vn-display); font-size: 15px; font-weight: 500; color: var(--vn-ink); }
.vnck__summary-count { display: block; font-family: var(--vn-body); font-size: 12.5px; font-weight: 400; color: var(--vn-muted); margin-top: 2px; }
.vnck__summary-right { display: flex; align-items: center; gap: 10px; }
.vnck__summary-total { font-family: var(--vn-display); font-size: 17px; font-weight: 500; color: var(--vn-ink); }
.vnck__summary-caret { width: 12px; height: 8px; color: var(--vn-muted); transition: transform .2s ease; }
.vnck__summary-toggle[aria-expanded="true"] .vnck__summary-caret { transform: rotate(180deg); }
@media (min-width: 960px) { .vnck__summary-caret { display: none; } }

.vnck__summary-body { padding: 0 18px 18px; border-top: 1px solid var(--vn-line); }
@media (max-width: 959px) { .vnck__summary-body[hidden] { display: none; } }
@media (min-width: 960px) { .vnck__summary-body[hidden] { display: block !important; } }

/* --- Ürün satırları --- */
.vnck__items { list-style: none; margin: 16px 0; padding: 0; display: grid; gap: 14px; }
.vnck__item { display: grid; grid-template-columns: 56px 1fr auto; gap: 12px; align-items: center; }

.vnck__item-media { position: relative; }
.vnck__item-media img { width: 56px; height: 56px; object-fit: cover; border-radius: 6px; background: #fff; border: 1px solid var(--vn-line); }
.vnck__item-qty {
	position: absolute; top: -7px; inset-inline-end: -7px;
	min-width: 20px; height: 20px; padding: 0 5px;
	display: inline-flex; align-items: center; justify-content: center;
	font-family: var(--vn-display); font-size: 11px; font-weight: 500;
	background: var(--vn-ink); color: #fff; border-radius: 999px;
}

.vnck__item-info { min-width: 0; }
.vnck__item-name { display: block; font-size: 13.5px; line-height: 1.4; color: var(--vn-ink); }
.vnck__item-info dl.variation { font-size: 12px; color: var(--vn-muted); margin: 3px 0 0; }
.vnck__item-price { font-family: var(--vn-display); font-size: 14.5px; font-weight: 500; white-space: nowrap; }

/* --- Toplamlar --- */
.vnck__totals { margin: 18px 0 0; padding-top: 14px; border-top: 1px solid var(--vn-line); }
.vnck__total-row { display: flex; justify-content: space-between; gap: 12px; align-items: baseline; padding: 8px 0; font-size: 14px; }
.vnck__total-row dt { color: var(--vn-muted); margin: 0; }
.vnck__total-row dd { margin: 0; text-align: end; }
.vnck__total-row--discount dd { color: #2E7D32; }
.vnck__total-row--grand { border-top: 1px solid var(--vn-line); margin-top: 8px; padding-top: 14px; }
.vnck__total-row--grand dt { color: var(--vn-ink); font-family: var(--vn-display); font-size: 16px; font-weight: 500; }
.vnck__total-row--grand dd { font-family: var(--vn-display); font-size: 20px; font-weight: 500; }

/* WooCommerce kargo satırı tablo etiketleriyle geliyor */
.vnck__total-row--shipping { display: block; }
.vnck__total-row--shipping table,
.vnck__total-row--shipping tbody,
.vnck__total-row--shipping tr { display: block; width: 100%; }
.vnck__total-row--shipping th,
.vnck__total-row--shipping td { display: block; width: 100%; padding: 0; border: 0; text-align: start; font-weight: 400; }
.vnck__total-row--shipping th { color: var(--vn-muted); font-size: 14px; margin-bottom: 4px; font-family: var(--vn-body); text-transform: none; letter-spacing: 0; }
.vnck__total-row--shipping ul { list-style: none; margin: 0; padding: 0; }
.vnck__total-row--shipping label { font-size: 14px; color: var(--vn-ink); }

/* --- Ödeme yöntemleri --- */
.vnck__payment { margin-top: 18px; padding-top: 18px; border-top: 1px solid var(--vn-line); }
.vnck .wc_payment_methods { list-style: none; margin: 0 0 16px; padding: 0; display: grid; gap: 8px; }
.vnck .wc_payment_method > label {
	display: flex !important; align-items: center; gap: 10px;
	padding: 13px 14px; border: 1px solid var(--vn-line); border-radius: 6px;
	background: #fff; cursor: pointer; font-size: 14.5px; color: var(--vn-ink); margin: 0;
}
.vnck .wc_payment_method input:checked + label { border-color: var(--vn-ink); }
.vnck .payment_box {
	background: #fff !important; border: 1px solid var(--vn-line); border-radius: 6px;
	padding: 14px !important; margin: 6px 0 0 !important; font-size: 13.5px; color: var(--vn-muted);
}
.vnck .payment_box::before { display: none !important; }

.vnck #place_order,
.vnck .woocommerce-form__label + button,
.vnck button[name="woocommerce_checkout_place_order"] {
	width: 100%; min-height: 56px; margin-top: 8px;
	font-family: var(--vn-display) !important; font-size: 14px !important; font-weight: 500 !important;
	letter-spacing: .12em; text-transform: uppercase;
	background: var(--vn-ink) !important; color: #fff !important;
	border: 1px solid var(--vn-ink) !important; border-radius: 6px !important;
}
.vnck #place_order:hover { background: var(--vn-sand-dk) !important; border-color: var(--vn-sand-dk) !important; }

.vnck .woocommerce-terms-and-conditions-wrapper { font-size: 13px; color: var(--vn-muted); margin-bottom: 12px; }

/* --- Bildirimler --- */
.vnck .woocommerce-error, .vnck .woocommerce-info, .vnck .woocommerce-message {
	border-top-color: var(--vn-sand-dk); background: var(--vn-surface);
	border-radius: 6px; font-size: 14.5px; list-style: none;
}

/* ============================================================
   31. ÜRÜN SAYFASI
   ============================================================ */
.vnp {
	max-width: var(--vn-max);
	margin-inline: auto;
	padding: clamp(14px, 2.5vw, 24px) var(--vn-gap) clamp(48px, 7vw, 80px);
}

.vnp__crumbs { display: flex; gap: 7px; flex-wrap: wrap; font-size: 12.5px; color: var(--vn-muted); margin-bottom: 18px; }
.vnp__crumbs a { color: var(--vn-muted) !important; text-decoration: none; }
.vnp__crumbs a:hover { color: var(--vn-ink) !important; }

/* --- Üst blok --- */
.vnp__top { display: grid; gap: clamp(22px, 4vw, 48px); align-items: start; }
@media (min-width: 900px) { .vnp__top { grid-template-columns: minmax(0, 1.05fr) minmax(0, .95fr); } }

/* --- Galeri --- */
@media (min-width: 900px) { .vnp__gallery { position: sticky; top: 88px; } }

.vnp__stage { position: relative; border: 1px solid var(--vn-line); border-radius: 10px; overflow: hidden; background: var(--vn-surface); }
.vnp__stage img { width: 100%; aspect-ratio: 1 / 1; object-fit: cover; display: block; }

.vnp__badge {
	position: absolute; inset-block-start: 14px; inset-inline-start: 14px;
	font-family: var(--vn-display); font-size: 11px; font-weight: 500;
	letter-spacing: .12em; text-transform: uppercase;
	padding: 6px 12px; border-radius: 3px;
	background: var(--vn-sand-dk); color: #fff;
}
.vnp__badge--muted { background: var(--vn-muted); }

.vnp__thumbs { display: flex; gap: 10px; margin-top: 12px; overflow-x: auto; padding-bottom: 4px; scrollbar-width: none; }
.vnp__thumbs::-webkit-scrollbar { display: none; }
.vnp__thumb {
	flex: 0 0 auto; width: 72px; height: 72px; padding: 0;
	border: 1px solid var(--vn-line); border-radius: 6px; overflow: hidden;
	background: var(--vn-surface); cursor: pointer;
	transition: border-color .18s ease;
}
.vnp__thumb img { width: 100%; height: 100%; object-fit: cover; display: block; }
.vnp__thumb.is-active, .vnp__thumb:hover { border-color: var(--vn-ink); }

/* --- Satın alma kutusu --- */
.vnp__cat {
	font-family: var(--vn-display); font-size: 11px; font-weight: 500;
	letter-spacing: .18em; text-transform: uppercase;
	color: var(--vn-sand-dk); margin: 0 0 10px;
}
.vn .vnp__title {
	font-size: clamp(24px, 3.6vw, 34px) !important;
	line-height: 1.2; margin: 0 0 14px !important;
	text-transform: none !important; letter-spacing: 0;
}

.vnp__price { font-family: var(--vn-display); font-size: clamp(26px, 3.4vw, 32px); font-weight: 500; color: var(--vn-ink); margin-bottom: 16px; }
.vnp__price del { color: #AFAFAF; font-weight: 300; font-size: .62em; margin-inline-end: 10px; }
.vnp__price ins { text-decoration: none; color: var(--vn-sand-dk); }
.vnp__price .amount { color: inherit; }

.vnp__short { font-size: 15.5px; line-height: 1.65; color: var(--vn-muted); margin-bottom: 18px; }
.vnp__short p:last-child { margin-bottom: 0; }

.vnp__stock { display: inline-flex; align-items: center; gap: 8px; font-size: 14px; margin: 0 0 20px; }
.vnp__stock::before { content: ''; width: 8px; height: 8px; border-radius: 50%; }
.vnp__stock.is-in { color: #2E7D32; }
.vnp__stock.is-in::before { background: #2E7D32; }
.vnp__stock.is-out { color: #B3261E; }
.vnp__stock.is-out::before { background: #B3261E; }

/* --- Sepete ekle formu --- */
.vnp form.cart { display: flex; gap: 10px; flex-wrap: wrap; align-items: stretch; margin: 0 0 22px; }
.vnp form.cart .quantity { flex: 0 0 auto; }
.vnp form.cart input.qty,
.vnp form.cart input[type="number"] {
	width: 84px !important; min-height: 56px;
	padding: 10px !important; text-align: center;
	font-size: 16px !important; font-family: var(--vn-body) !important;
	color: var(--vn-ink) !important;
	background: #fff !important;
	border: 1px solid var(--vn-line) !important;
	border-radius: 6px !important;
}
.vnp form.cart button[type="submit"],
.vnp form.cart .single_add_to_cart_button {
	flex: 1 1 220px; min-height: 56px;
	font-family: var(--vn-display) !important; font-size: 14px !important; font-weight: 500 !important;
	letter-spacing: .12em; text-transform: uppercase;
	background: var(--vn-ink) !important; color: #fff !important;
	border: 1px solid var(--vn-ink) !important; border-radius: 6px !important;
	cursor: pointer;
	transition: background .18s ease, border-color .18s ease;
}
.vnp form.cart button[type="submit"]:hover { background: var(--vn-sand-dk) !important; border-color: var(--vn-sand-dk) !important; }

/* --- Güven satırı --- */
.vnp__trust { list-style: none; margin: 0 0 18px; padding: 18px 0; border-block: 1px solid var(--vn-line); display: grid; gap: 12px; }
.vnp__trust li { display: flex; gap: 11px; align-items: flex-start; font-size: 13.5px; line-height: 1.5; color: var(--vn-muted); }
.vnp__trust svg { flex: 0 0 19px; width: 19px; height: 19px; margin-top: 1px; fill: none; stroke: var(--vn-sand-dk); stroke-width: 1.5; stroke-linecap: round; stroke-linejoin: round; }
.vnp__trust strong { color: var(--vn-ink); font-weight: 500; }

.vnp__help { font-size: 13.5px; line-height: 1.6; color: var(--vn-muted); margin: 0; }
.vnp__help a { color: var(--vn-ink); text-decoration: underline; text-underline-offset: 3px; }

/* --- Detay bölümleri --- */
.vnp__detail { margin-top: clamp(44px, 6vw, 72px); }
.vnp__section { padding-top: clamp(28px, 4vw, 40px); border-top: 1px solid var(--vn-line); margin-bottom: clamp(28px, 4vw, 40px); }
.vn .vnp__section h2 { font-size: clamp(19px, 2.6vw, 23px) !important; margin: 0 0 18px !important; }
.vnp__section .vn-prose { max-width: 68ch; }

.vnp__attrs table { width: 100%; border-collapse: collapse; max-width: 620px; font-size: 14.5px; }
.vnp__attrs th, .vnp__attrs td { padding: 12px 14px; border: 1px solid var(--vn-line); text-align: start; }
.vnp__attrs th { background: var(--vn-surface); font-family: var(--vn-display); font-weight: 500; width: 40%; }
.vnp__attrs p { margin: 0; }

.vnp__cards { display: grid; gap: 14px; grid-template-columns: 1fr; }
@media (min-width: 720px) { .vnp__cards { grid-template-columns: repeat(3, 1fr); } }
.vnp__info-card { border: 1px solid var(--vn-line); border-radius: 8px; padding: 20px; background: #fff; }
.vn .vnp__info-card h3 { font-size: 15px !important; margin: 0 0 8px !important; }
.vnp__info-card p { font-size: 13.5px; line-height: 1.6; color: var(--vn-muted); margin: 0; }
.vnp__info-card a { color: var(--vn-ink); text-decoration: underline; text-underline-offset: 3px; }

/* --- İlgili ürünler --- */
.vnp__related { margin-top: clamp(44px, 6vw, 72px); padding-top: clamp(28px, 4vw, 40px); border-top: 1px solid var(--vn-line); }
.vnp__related-head { display: flex; align-items: baseline; justify-content: space-between; gap: 16px; margin-bottom: 22px; flex-wrap: wrap; }
.vn .vnp__related-head h2 { font-size: clamp(19px, 2.6vw, 23px) !important; margin: 0 !important; }
.vnp__related-all {
	font-family: var(--vn-display); font-size: 12px; font-weight: 500;
	letter-spacing: .1em; text-transform: uppercase;
	color: var(--vn-ink) !important; text-decoration: none !important;
	border-bottom: 1px solid var(--vn-sand); padding-bottom: 3px; white-space: nowrap;
}

/* --- Mobil yapışkan satın alma çubuğu --- */
.vnp__sticky {
	position: fixed; inset-inline: 0; bottom: 0; z-index: 95;
	display: flex; align-items: center; gap: 12px;
	padding: 10px 16px calc(10px + env(safe-area-inset-bottom));
	background: #fff; border-top: 1px solid var(--vn-line);
	box-shadow: 0 -4px 18px rgba(41,41,41,.08);
	transform: translateY(100%); transition: transform .25s ease;
}
.vnp__sticky.is-on { transform: none; }
@media (min-width: 900px) { .vnp__sticky { display: none !important; } }

.vnp__sticky-info { min-width: 0; flex: 1 1 auto; }
.vnp__sticky-name { display: block; font-size: 12.5px; color: var(--vn-muted); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.vnp__sticky-price { display: block; font-family: var(--vn-display); font-size: 16px; font-weight: 500; color: var(--vn-ink); }
.vnp__sticky-price .amount { color: inherit; }

.vnp__sticky-btn {
	flex: 0 0 auto; min-height: 48px; padding: 12px 24px;
	font-family: var(--vn-display); font-size: 12.5px; font-weight: 500;
	letter-spacing: .1em; text-transform: uppercase;
	background: var(--vn-ink); color: #fff;
	border: 0; border-radius: 6px; cursor: pointer;
}

/* Değerlendirmeler bloğunu sadeleştir */
.vnp #reviews { margin-top: clamp(44px, 6vw, 72px); padding-top: clamp(28px, 4vw, 40px); border-top: 1px solid var(--vn-line); }
.vn .vnp #reviews h2 { font-size: clamp(19px, 2.6vw, 23px) !important; }

/* ============================================================
   32. ÜRÜN SAYFASI — düzeltmeler
   ============================================================ */

/* --- Küçük görseller ---
   Bunlar <button> olduğu için temanın global buton stili siyah zemin ve
   iç boşluk veriyordu; görsel küçücük kalıp koyu bir kare içinde yüzüyordu. */
.vn .vnp__thumb,
.vnp button.vnp__thumb {
	background: var(--vn-surface) !important;
	background-color: var(--vn-surface) !important;
	padding: 0 !important;
	border: 1px solid var(--vn-line) !important;
	border-radius: 6px !important;
	box-shadow: none !important;
	min-height: 0 !important;
	overflow: hidden;
	display: block !important;
	width: 72px !important;
	height: 72px !important;
	flex: 0 0 72px;
}
.vn .vnp__thumb.is-active,
.vn .vnp__thumb:hover { border-color: var(--vn-ink) !important; }

.vn .vnp__thumb img {
	width: 100% !important;
	height: 100% !important;
	max-width: none !important;
	object-fit: cover !important;
	display: block !important;
	margin: 0 !important;
}

/* Ana görsel de tam otursun */
.vn .vnp__stage img { width: 100% !important; height: auto !important; aspect-ratio: 1/1; object-fit: cover; }

/* --- Sayfa yolu: menüye yapışmasın --- */
.vnp__crumbs { margin: 22px 0 20px; font-size: 13px; }
@media (min-width: 900px) { .vnp__crumbs { margin: 28px 0 22px; } }

/* ============================================================
   33. ÖZELLİKLER TABLOSU — yeniden tasarım
   Varsayılan WooCommerce tablosu noktalı çerçeve ve italik değerlerle
   geliyordu; sade satırlara çeviriyoruz.
   ============================================================ */
.vn .vnp__section h2 { text-transform: none !important; letter-spacing: 0; }

.vnp__attrs table,
.vnp__attrs table.shop_attributes,
.vnp__attrs table.woocommerce-product-attributes {
	width: 100%; max-width: 560px;
	border-collapse: collapse;
	border: 1px solid var(--vn-line) !important;
	border-radius: 8px;
	overflow: hidden;
	font-size: 15px;
	margin: 0;
}

.vnp__attrs tr { border: 0 !important; }
.vnp__attrs tr:not(:last-child) th,
.vnp__attrs tr:not(:last-child) td { border-bottom: 1px solid var(--vn-line) !important; }

.vnp__attrs th,
.vnp__attrs table th {
	width: 42%;
	padding: 14px 18px !important;
	text-align: start !important;
	vertical-align: middle;
	font-family: var(--vn-body) !important;
	font-size: 14px !important;
	font-weight: 400 !important;
	font-style: normal !important;
	letter-spacing: 0 !important;
	text-transform: none !important;
	color: var(--vn-muted) !important;
	background: transparent !important;
	border: 0;
	border-inline-end: 1px solid var(--vn-line) !important;
}

.vnp__attrs td,
.vnp__attrs table td {
	padding: 14px 18px !important;
	vertical-align: middle;
	font-family: var(--vn-display) !important;
	font-size: 15px !important;
	font-weight: 500 !important;
	font-style: normal !important;
	color: var(--vn-ink) !important;
	background: transparent !important;
	border: 0;
}
.vnp__attrs td p,
.vnp__attrs th p { margin: 0 !important; font-style: normal !important; }

/* satır vurgusu */
.vnp__attrs tr:nth-child(odd) th,
.vnp__attrs tr:nth-child(odd) td { background: var(--vn-surface) !important; }

@media (max-width: 480px) {
	.vnp__attrs th { width: 46%; padding: 12px 14px !important; font-size: 13px !important; }
	.vnp__attrs td { padding: 12px 14px !important; font-size: 14px !important; }
}

/* --- Değerlendirmeler bölümü başlığı --- */
.vnp__reviews { margin-top: clamp(44px, 6vw, 72px); padding-top: clamp(28px, 4vw, 40px); border-top: 1px solid var(--vn-line); }
.vn .vnp__reviews h2 { font-size: clamp(19px, 2.6vw, 23px) !important; text-transform: none !important; }

/* ============================================================
   34. ÜRÜN SAYFASI — mobil taşma güvenliği
   ------------------------------------------------------------
   Ürün bloğu tema kökünün dışında da basılabildiği için temel
   kuralları burada tekrar tanımlıyoruz. Aksi hâlde kutu modeli ve
   görsel genişliği devreye girmiyor, içerik ekranı aşıyordu.
   ============================================================ */
.vnp, .vnp *, .vnp *::before, .vnp *::after { box-sizing: border-box; }

.vnp { overflow-x: clip; }
.vnp img,
.vnp video,
.vnp iframe { max-width: 100%; height: auto; }

/* Uzun ürün adları ve kesintisiz metinler satırı taşırmasın */
.vnp,
.vnp p, .vnp li, .vnp td, .vnp th,
.vnp h1, .vnp h2, .vnp h3 { overflow-wrap: anywhere; word-break: normal; }

/* Izgara sütunları içeriğe göre şişmesin */
.vnp__top, .vnp__cards, .vn-products { min-width: 0; }
.vnp__top > *, .vnp__cards > *, .vn-products > * { min-width: 0; }

/* Küçük görsel şeridi yalnızca kendi içinde kaysın */
.vnp__thumbs { max-width: 100%; }

/* Özellikler tablosu dar ekranda kendi içinde kaysın */
.vnp__attrs { max-width: 100%; overflow-x: auto; -webkit-overflow-scrolling: touch; }
.vnp__attrs table { min-width: 0; }

/* Ürün açıklamasındaki gömülü tablo/kod blokları */
.vnp .vn-prose table { display: block; max-width: 100%; overflow-x: auto; }
.vnp .vn-prose pre { overflow-x: auto; }

/* Not: body üzerine overflow-x: clip KOYMUYORUZ — bu, içindeki
   position: sticky öğeleri (başlık, galeri, sipariş özeti) bozabiliyor.
   Yatay taşma her bileşende kendi içinde sınırlanıyor. */

/* Yapışkan çubuk güvenli alan içinde kalsın */
.vnp__sticky { max-width: 100vw; }
.vnp__sticky-info { overflow: hidden; }

/* ============================================================
   35. DEĞERLENDİRMELER — çift boşluk düzeltmesi
   ------------------------------------------------------------
   Hem sardığımız .vnp__reviews hem WooCommerce'in kendi #reviews
   kabı aynı üst boşluğu ve çizgiyi uyguluyordu: 44+28+44+28 = 144px
   boşluk ve iki ayrı yatay çizgi oluşuyordu. İçteki kabı sıfırlıyoruz.
   ============================================================ */
.vnp__reviews #reviews,
.vnp #reviews.woocommerce-Reviews,
.vnp #reviews {
	margin-top: 0 !important;
	padding-top: 0 !important;
	border-top: 0 !important;
}

.vnp__reviews { margin-top: clamp(36px, 5vw, 56px); padding-top: clamp(24px, 3.5vw, 34px); }
.vnp__reviews #comments { margin-bottom: 22px; }
.vn .vnp__reviews .woocommerce-Reviews-title { margin: 0 0 10px !important; }
.vnp__reviews .woocommerce-noreviews { color: var(--vn-muted); font-size: 14.5px; margin: 0; }

/* Yorum formu sadeleştirme */
.vnp__reviews #respond { border: 1px solid var(--vn-line); border-radius: 8px; padding: 20px; background: #fff; }
.vn .vnp__reviews #reply-title { font-family: var(--vn-display); font-size: 16px !important; font-weight: 500; margin: 0 0 6px !important; display: block; }
.vnp__reviews .comment-notes { font-size: 13px; color: var(--vn-muted); margin-bottom: 14px; }
.vnp__reviews .comment-form-comment label,
.vnp__reviews .comment-form-author label,
.vnp__reviews .comment-form-email label,
.vnp__reviews .comment-form-rating label { display: block; font-size: 13px; color: var(--vn-muted); margin-bottom: 6px; }
.vnp__reviews input[type="text"],
.vnp__reviews input[type="email"],
.vnp__reviews textarea {
	width: 100%; padding: 11px 14px !important; min-height: 46px;
	font-family: var(--vn-body) !important; font-size: 15px !important;
	border: 1px solid var(--vn-line) !important; border-radius: 6px !important;
	background: #fff !important;
}
.vnp__reviews textarea { min-height: 110px; }
.vnp__reviews .form-submit input[type="submit"] {
	min-height: 48px; padding: 12px 28px;
	font-family: var(--vn-display) !important; font-size: 12.5px !important; font-weight: 500 !important;
	letter-spacing: .1em; text-transform: uppercase;
	background: var(--vn-ink) !important; color: #fff !important;
	border: 1px solid var(--vn-ink) !important; border-radius: 6px !important; cursor: pointer;
}
.vnp__reviews .form-submit input[type="submit"]:hover { background: var(--vn-sand-dk) !important; border-color: var(--vn-sand-dk) !important; }

/* ============================================================
   36. ÖZELLİKLER TABLOSU — mobilde satır yapısını koru
   ------------------------------------------------------------
   WooCommerce'in mobil stil dosyası tr/th/td'yi display:block
   yapıyordu; etiket ve değer alt alta düşüp tablo dağılıyordu.
   Etiket solda, değer sağda olacak şekilde satır düzenini geri alıyoruz.
   ============================================================ */
.vnp__attrs table,
.vnp__attrs table.shop_attributes,
.vnp__attrs table.woocommerce-product-attributes { display: table !important; width: 100% !important; }

.vnp__attrs tbody { display: table-row-group !important; }

.vnp__attrs tr,
.vnp__attrs table tr { display: table-row !important; }

.vnp__attrs th,
.vnp__attrs td,
.vnp__attrs table th,
.vnp__attrs table td {
	display: table-cell !important;
	float: none !important;
	width: auto;
	vertical-align: middle !important;
}

.vnp__attrs th, .vnp__attrs table th { width: 42% !important; }
.vnp__attrs td, .vnp__attrs table td { width: 58% !important; }

/* Mobilde etiket biraz daralsın, değere yer kalsın */
@media (max-width: 520px) {
	.vnp__attrs th, .vnp__attrs table th { width: 44% !important; padding: 12px 14px !important; font-size: 13px !important; }
	.vnp__attrs td, .vnp__attrs table td { width: 56% !important; padding: 12px 14px !important; font-size: 14px !important; }
}

/* WooCommerce'in "data-title" etiket kopyalarını gizle */
.vnp__attrs td::before, .vnp__attrs th::before { content: none !important; }

/* ============================================================
   37. DİL SEÇİCİ — yapışkan satın alma çubuğuyla çakışma
   ------------------------------------------------------------
   Yüzen dil seçici sağ altta sabit duruyor ve ürün sayfasındaki
   "Sepete Ekle" çubuğunun üstüne biniyordu. Seçiciyi gizlemek
   yerine ürün sayfalarında çubuğun üstüne alıyoruz: hem dil
   değiştirilebiliyor hem satın alma butonu açıkta kalıyor.
   (:has() yerine sade kural — her tarayıcıda aynı davranır.)
   ============================================================ */
@media (max-width: 899px) {
	body.single-product .trp-floating-switcher,
	body.single-product #trp-floater-ls,
	body.single-product .trp-language-switcher.trp-floating-switcher {
		bottom: 94px !important;
	}

	/* Çubuk her durumda seçicinin üstünde kalsın */
	.vnp__sticky { z-index: 99999 !important; }

	/* Görünür duruma geçişi hiçbir kural ezmesin */
	.vnp__sticky.is-on { transform: none !important; }
}

/* ============================================================
   38. DİL ANAHTARI — yüzen seçici yerine başlıkta küçük TR/EN
   ------------------------------------------------------------
   TranslatePress'in yüzen kutusu ekranın sağ altında sabit durup
   satın alma butonlarının üstüne biniyordu. Tamamen kaldırıp
   yerine başlıkta ve yan panelde sade bir anahtar koyduk.
   ============================================================ */
.trp-floating-switcher,
#trp-floater-ls,
.trp-language-switcher.trp-floating-switcher,
.trp-floater-ls-names { display: none !important; }

/* --- Anahtar --- */
.vn-lang { display: inline-flex; align-items: center; gap: 2px; flex: 0 0 auto; }

.vn-lang__item {
	display: inline-flex; align-items: center; justify-content: center;
	min-width: 30px; padding: 5px 7px;
	font-family: var(--vn-display); font-size: 11.5px; font-weight: 500;
	letter-spacing: .08em;
	color: var(--vn-muted) !important;
	text-decoration: none !important;
	border-radius: 4px;
	transition: color .16s ease, background .16s ease;
}
.vn-lang__item:hover { color: var(--vn-ink) !important; background: var(--vn-surface); }
.vn-lang__item.is-active { color: var(--vn-ink) !important; background: var(--vn-surface); }

/* diller arasına ince ayraç */
.vn-lang__item + .vn-lang__item { position: relative; }
.vn-lang__item + .vn-lang__item::before {
	content: ''; position: absolute; inset-inline-start: -2px; top: 50%;
	transform: translateY(-50%); width: 1px; height: 11px; background: var(--vn-line);
}

/* --- Başlıktaki hâli --- */
.vn-lang--head { margin-inline-start: auto; }
@media (min-width: 900px) { .vn-lang--head { margin-inline-start: 0; margin-inline-end: 4px; } }

/* Mobilde logo ortada kalsın diye anahtar sepetin hemen soluna otursun */
@media (max-width: 899px) {
	.vn-lang--head { margin-inline-start: 0; }
	.vn-lang--head .vn-lang__item { min-width: 26px; padding: 4px 5px; font-size: 11px; }
}

/* --- Yan paneldeki hâli --- */
.vn-lang--drawer { display: flex; gap: 8px; margin-top: 4px; }
.vn-lang--drawer .vn-lang__item {
	flex: 1 1 auto; min-height: 42px; font-size: 13px;
	border: 1px solid var(--vn-line); border-radius: 6px;
}
.vn-lang--drawer .vn-lang__item.is-active {
	background: var(--vn-ink); border-color: var(--vn-ink); color: #fff !important;
}
.vn-lang--drawer .vn-lang__item + .vn-lang__item::before { display: none; }

/* Ürün sayfasında artık kaydırmaya gerek yok */
@media (max-width: 899px) {
	body.single-product .trp-floating-switcher { bottom: auto !important; }
}

/* ============================================================
   39. SEPETE UÇUŞ — geri bildirim
   ============================================================ */
.vn-fly { box-shadow: 0 8px 26px rgba(41,41,41,.22); }

/* Rozet zıplaması */
.vnh__cart-n { transition: transform .18s cubic-bezier(.34,1.56,.64,1); }
.vnh__cart-n.is-bump { transform: scale(1.45); }

/* Buton geri bildirimi */
.vn .vn-btn.loading,
.vnp .single_add_to_cart_button.loading {
	opacity: .65; pointer-events: none; position: relative;
}
.vn .vn-btn.added,
.vnp .single_add_to_cart_button.added {
	background: #2E7D32 !important; border-color: #2E7D32 !important; color: #fff !important;
}

/* WooCommerce'in kendi "sepeti görüntüle" bağlantısını gizle —
   mini sepet zaten açılıyor, iki ayrı geri bildirim kafa karıştırıyor */
.vn .added_to_cart,
.vnp .added_to_cart { display: none !important; }

@media (prefers-reduced-motion: reduce) {
	.vn-fly { display: none !important; }
	.vnh__cart-n.is-bump { transform: none; }
}

/* ============================================================
   40. MEGA MENÜ — kategori adetleri
   Sayılar çıplak duruyordu ve sağ kenara yapışıyordu; rozet
   biçimine alıp sağdan boşluk veriyoruz.
   ============================================================ */
@media (min-width: 900px) {
	.vnh__nav .vnh__mega .vnh__mega-links a {
		padding: 9px 12px 9px 10px !important;
		gap: 14px;
		border-radius: 6px;
	}
	.vnh__nav .vnh__mega .vnh__mega-links a:hover {
		background: var(--vn-surface);
		padding-inline-start: 10px !important;
	}

	.vnh__mega-links a span {
		flex: 0 0 auto;
		min-width: 24px;
		padding: 3px 8px;
		font-family: var(--vn-display);
		font-size: 11.5px;
		font-weight: 500;
		line-height: 1.4;
		text-align: center;
		color: var(--vn-muted);
		background: var(--vn-surface);
		border: 1px solid var(--vn-line);
		border-radius: 999px;
		transition: background .16s ease, color .16s ease, border-color .16s ease;
	}
	.vnh__mega-links a:hover span {
		background: var(--vn-ink);
		border-color: var(--vn-ink);
		color: #fff;
	}
}

/* Yan paneldeki adetler de aynı rozet biçiminde */
.vn-drawer__nav--sub a span {
	min-width: 24px;
	padding: 2px 8px;
	font-family: var(--vn-display);
	font-size: 11.5px;
	font-weight: 500;
	text-align: center;
	color: var(--vn-muted);
	background: var(--vn-surface);
	border: 1px solid var(--vn-line);
	border-radius: 999px;
}

/* ============================================================
   41. MEGA MENÜ — sütunlar arası ayraç
   Solda kategoriler, sağda ürünler olduğu ince bir çizgiyle belli olsun.
   ============================================================ */
@media (min-width: 900px) {
	.vnh__mega-inner:not(.vnh__mega-inner--legal) .vnh__mega-col:first-child {
		padding-inline-end: 30px;
		border-inline-end: 1px solid var(--vn-line);
	}
	.vnh__mega-inner:not(.vnh__mega-inner--legal) { gap: 34px; }
}

/* ============================================================
   42. MİNİ SEPET — adet değiştirme ve silme
   ============================================================ */
.vnh__minicart-item { grid-template-columns: 52px 1fr; align-items: start; }
.vnh__minicart-meta { margin-top: 2px; }

.vnh__qty { display: flex; align-items: center; gap: 4px; margin-top: 8px; flex-wrap: wrap; }

.vn .vnh__qty-btn,
.vnh button.vnh__qty-btn {
	width: 26px; height: 26px; padding: 0 !important;
	display: inline-flex; align-items: center; justify-content: center;
	font-family: var(--vn-body); font-size: 15px; line-height: 1;
	color: var(--vn-ink) !important;
	background: #fff !important;
	border: 1px solid var(--vn-line) !important;
	border-radius: 5px !important;
	min-height: 0 !important;
	cursor: pointer;
	transition: border-color .15s ease, background .15s ease;
}
.vn .vnh__qty-btn:hover:not(:disabled) { border-color: var(--vn-ink) !important; background: var(--vn-surface) !important; }
.vn .vnh__qty-btn:disabled { opacity: .35; cursor: not-allowed; }

.vnh__qty-n {
	min-width: 26px; text-align: center;
	font-family: var(--vn-display); font-size: 13.5px; font-weight: 500;
	color: var(--vn-ink);
}

.vn .vnh__minicart-del,
.vnh button.vnh__minicart-del {
	display: inline-flex; align-items: center; gap: 5px;
	margin-inline-start: 8px; padding: 4px 8px !important;
	font-family: var(--vn-body); font-size: 12px;
	color: var(--vn-muted) !important;
	background: none !important;
	border: 0 !important;
	min-height: 0 !important;
	cursor: pointer; border-radius: 4px !important;
	transition: color .15s ease, background .15s ease;
}
.vn .vnh__minicart-del:hover { color: #b32d2e !important; background: var(--vn-surface) !important; }
.vnh__minicart-del svg { width: 13px; height: 13px; flex: 0 0 auto; }

.vnh__minicart.is-busy { opacity: .55; pointer-events: none; }
.vnh__minicart { transition: opacity .15s ease; }

/* ============================================================
   43. ÖDEME — sipariş özeti başlığı ve form sütunları
   ============================================================ */

/* Özet başlığı masaüstünde tamamen kalksın (siyah buton görüntüsü veriyordu) */
@media (min-width: 960px) {
	.vnck__summary-toggle { display: none !important; }
	.vnck__summary-body { border-top: 0; padding-top: 18px; }
}

/* Mobilde başlık kalır ama tema buton stilinden arındırılır */
.vn .vnck__summary-toggle,
.vnck button.vnck__summary-toggle {
	background: transparent !important;
	background-color: transparent !important;
	border: 0 !important;
	border-radius: 0 !important;
	box-shadow: none !important;
	color: var(--vn-ink) !important;
	min-height: 0 !important;
	letter-spacing: 0 !important;
	text-transform: none !important;
}

/* --- Form: masaüstünde iki sütun --- */
@media (min-width: 760px) {
	.vnck .woocommerce-billing-fields__field-wrapper,
	.vnck .woocommerce-shipping-fields__field-wrapper,
	.vnck .woocommerce-additional-fields__field-wrapper {
		display: grid;
		grid-template-columns: 1fr 1fr;
		gap: 0 16px;
		align-items: start;
	}

	/* Tam genişlik isteyen alanlar */
	.vnck #billing_country_field,
	.vnck #billing_address_1_field,
	.vnck #billing_address_2_field,
	.vnck #billing_email_field,
	.vnck #order_comments_field,
	.vnck #shipping_country_field,
	.vnck #shipping_address_1_field,
	.vnck #shipping_address_2_field,
	.vnck .form-row-wide.create-account,
	.vnck .woocommerce-account-fields { grid-column: 1 / -1; }

	/* Yan yana duracak alanlar */
	.vnck #billing_first_name_field,
	.vnck #billing_last_name_field,
	.vnck #billing_postcode_field,
	.vnck #billing_city_field,
	.vnck #billing_state_field,
	.vnck #billing_phone_field,
	.vnck #shipping_first_name_field,
	.vnck #shipping_last_name_field,
	.vnck #shipping_postcode_field,
	.vnck #shipping_city_field,
	.vnck #shipping_state_field { grid-column: span 1; }

	/* WooCommerce'in kendi first/last sınıfları grid içinde float yapmasın */
	.vnck .form-row-first,
	.vnck .form-row-last,
	.vnck .form-row-wide { float: none !important; width: auto !important; margin-inline: 0 !important; }
}

/* Doğrulama kutusu her zaman tam genişlik */
.vnck #vnv { grid-column: 1 / -1; }

/* ============================================================
   44. PAZARYERİ KARTLARI — üst konum düzenlemesi
   Bölüm artık güven şeridinin hemen altında; tek mağaza tanımlıysa
   kart ortalanır, iki mağaza varsa yan yana durur.
   ============================================================ */
.vn-mpc-wrap { padding-block: clamp(36px, 5vw, 56px); background: var(--vn-surface); }
.vn-mpc-wrap .vn-head { margin-bottom: clamp(20px, 3vw, 28px); }
.vn .vn-mpc-wrap h2 { font-size: clamp(21px, 3vw, 27px) !important; }

.vn-mpc { max-width: 900px; margin-inline: auto; }
.vn-mpc__card { width: 100%; }

/* Tek mağaza tanımlıysa iki sütunluk ızgara kartı yarıya düşürüyordu;
   bu durumda tek sütuna geçip kartı rahat bir genişlikte ortalıyoruz. */
@media (min-width: 700px) {
	.vn-mpc:has(> .vn-mpc__card:only-child) {
		grid-template-columns: 1fr;
		max-width: 560px;
	}
}

@media (max-width: 699px) {
	.vn-mpc__card { padding: 24px 22px 22px; }
}

/* Tek kartta içeriği biraz ferahlat */
@media (min-width: 700px) {
	.vn-mpc:has(> .vn-mpc__card:only-child) .vn-mpc__card { padding: 34px 34px 30px; }
	.vn-mpc:has(> .vn-mpc__card:only-child) .vn-mpc__text { max-width: 42ch; }
}

/* ============================================================
   45. ÜRÜN ARŞİVİ — kategori sayfaları
   /urunler/ ile aynı görünüm; sıralama kutusu sadeleştirildi.
   ============================================================ */
.vn-shop__bar {
	display: flex; align-items: center; justify-content: space-between;
	gap: 14px; flex-wrap: wrap;
	margin-bottom: 18px;
}

.vn-shop__count { margin: 0; font-size: 14px; color: var(--vn-muted); }

/* WooCommerce sıralama formu */
.vn .woocommerce-ordering { margin: 0 !important; }
.vn .woocommerce-ordering select,
.vn select.orderby {
	min-height: 42px;
	padding: 8px 34px 8px 14px !important;
	font-family: var(--vn-body) !important;
	font-size: 14px !important;
	color: var(--vn-ink) !important;
	background-color: #fff !important;
	border: 1px solid var(--vn-line) !important;
	border-radius: 999px !important;
	appearance: none;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 8'%3E%3Cpath d='M1 1.5 6 6.5l5-5' fill='none' stroke='%237A7A7A' stroke-width='1.4' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") !important;
	background-repeat: no-repeat !important;
	background-position: right 14px center !important;
	background-size: 11px !important;
	cursor: pointer;
}
.vn .woocommerce-ordering select:focus { border-color: var(--vn-ink) !important; outline: none; }

/* WooCommerce'in kendi sonuç sayacını gizle — kendimizinkini basıyoruz */
.vn .woocommerce-result-count { display: none !important; }

/* --- Sayfalama --- */
.vn .woocommerce-pagination { margin-top: clamp(28px, 4vw, 44px); text-align: center; }
.vn .woocommerce-pagination ul {
	display: inline-flex; gap: 6px; list-style: none;
	margin: 0; padding: 0; border: 0 !important;
}
.vn .woocommerce-pagination li { border: 0 !important; margin: 0; }
.vn .woocommerce-pagination a,
.vn .woocommerce-pagination span {
	display: inline-flex; align-items: center; justify-content: center;
	min-width: 40px; height: 40px; padding: 0 12px;
	font-family: var(--vn-display); font-size: 14px; font-weight: 500;
	color: var(--vn-ink) !important;
	background: #fff !important;
	border: 1px solid var(--vn-line) !important;
	border-radius: 8px;
	text-decoration: none !important;
	transition: border-color .16s ease, background .16s ease, color .16s ease;
}
.vn .woocommerce-pagination a:hover { border-color: var(--vn-ink) !important; }
.vn .woocommerce-pagination .current {
	background: var(--vn-ink) !important;
	border-color: var(--vn-ink) !important;
	color: #fff !important;
}

/* Arşivde de başlık tek satır ve ince kalsın */
.vn-shop__head-row h1 { text-transform: none !important; }

@media (max-width: 560px) {
	.vn-shop__bar { gap: 10px; }
	.vn-shop__count { order: 2; }
	.vn .woocommerce-ordering { order: 1; width: 100%; }
	.vn .woocommerce-ordering select { width: 100%; }
}

/* ============================================================
   46. YAPIŞKAN ÜST YIĞIN — başlık + pazaryeri şeridi
   ------------------------------------------------------------
   Şerit artık başlıkla birlikte sayfanın üstünde kalıyor.
   Aşağı kaydırırken açık durur (müşterinin gözüne girsin),
   yukarı kaydırırken kapanıp yer açar.
   ============================================================ */
.vn-stickytop {
	position: sticky;
	top: 0;
	z-index: 90;
	background: var(--vn-white);
}

/* Başlık artık yığının içinde — kendi sticky'sine gerek yok */
.vnh { position: relative; top: auto; z-index: auto; }

/* Şeridin açılıp kapanması */
.vn-mpbar {
	max-height: 46px;
	overflow: hidden;
	transition: max-height .28s cubic-bezier(.4,0,.2,1), opacity .2s ease;
}
.vn-stickytop.is-bar-hidden .vn-mpbar { max-height: 0; opacity: 0; }

/* Sayfa en üstteyken şerit her zaman açık */
.vn-stickytop.is-top .vn-mpbar { max-height: 46px; opacity: 1; }

/* Kaydırınca yığına gölge */
.vn-stickytop.is-stuck { box-shadow: 0 1px 14px rgba(41,41,41,.07); }

/* Diğer yapışkan öğeler yığının altında başlasın */
@media (min-width: 900px) {
	.vnp__gallery { top: calc(var(--vn-headh, 108px) + 16px); }
}
@media (min-width: 960px) {
	.vnck__summary { top: calc(var(--vn-headh, 108px) + 16px); }
}
.vnc__summary { top: calc(var(--vn-headh, 108px) + 16px); }

@media (prefers-reduced-motion: reduce) {
	.vn-mpbar { transition: none; }
}

/* ============================================================
   47. ÖDEME — kupon satırı ve bildirimler
   ------------------------------------------------------------
   Kupon bağlantısı büyük bir uyarı kutusu gibi duruyordu; oysa
   bir eylem bağlantısı. Sade bir satıra indiriyoruz.
   ============================================================ */
.vnck .woocommerce-form-coupon-toggle .woocommerce-info {
	display: flex; align-items: center; gap: 8px; flex-wrap: wrap;
	margin: 0 0 18px !important;
	padding: 12px 16px !important;
	background: transparent !important;
	border: 1px dashed var(--vn-line) !important;
	border-top: 1px dashed var(--vn-line) !important;
	border-radius: 6px !important;
	font-size: 13.5px !important;
	color: var(--vn-muted) !important;
	list-style: none;
}
.vnck .woocommerce-form-coupon-toggle .woocommerce-info::before {
	content: '';
	width: 15px; height: 15px; flex: 0 0 auto;
	background: no-repeat center/contain url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23B99F70' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 12a2 2 0 0 1 2-2V7a1 1 0 0 0-1-1H3a1 1 0 0 0-1 1v3a2 2 0 0 1 0 4v3a1 1 0 0 0 1 1h18a1 1 0 0 0 1-1v-3a2 2 0 0 1-2-2Z'/%3E%3Cpath d='M9 8v8'/%3E%3C/svg%3E");
	position: static !important;
	margin: 0 !important;
	font-size: 0 !important;
}
.vnck .woocommerce-form-coupon-toggle .showcoupon {
	color: var(--vn-ink) !important;
	font-weight: 500;
	text-decoration: underline;
	text-underline-offset: 3px;
	text-decoration-color: var(--vn-sand);
}

/* Kupon formu açıldığında */
.vnck form.checkout_coupon {
	margin: 0 0 20px !important;
	padding: 16px !important;
	border: 1px solid var(--vn-line) !important;
	border-radius: 8px !important;
	background: var(--vn-surface) !important;
}
.vnck form.checkout_coupon .form-row { margin-bottom: 0; }
.vnck form.checkout_coupon button {
	min-height: 46px;
	font-family: var(--vn-display) !important; font-size: 12px !important; font-weight: 500 !important;
	letter-spacing: .1em; text-transform: uppercase;
	background: var(--vn-ink) !important; color: #fff !important;
	border: 1px solid var(--vn-ink) !important; border-radius: 6px !important;
}

/* Kalan bildirimler sade kalsın */
.vnck .woocommerce-error {
	border: 1px solid #E5C4C2 !important;
	border-top-color: #B3261E !important;
	background: #FCF6F5 !important;
	border-radius: 6px !important;
}

/* ============================================================
   48. ÖDEME ÖZETİ — adet değiştirme ve çıkarma
   ============================================================ */
.vnck__item { align-items: start; }
.vnck__item-info { display: flex; flex-direction: column; gap: 2px; }

.vnck__item-ctl { display: flex; align-items: center; gap: 4px; margin-top: 7px; }

.vn .vnck__step,
.vnck button.vnck__step {
	width: 24px; height: 24px; padding: 0 !important;
	display: inline-flex; align-items: center; justify-content: center;
	font-family: var(--vn-body); font-size: 14px; line-height: 1;
	color: var(--vn-ink) !important;
	background: #fff !important;
	border: 1px solid var(--vn-line) !important;
	border-radius: 5px !important;
	min-height: 0 !important;
	cursor: pointer;
	transition: border-color .15s ease, background .15s ease;
}
.vn .vnck__step:hover:not(:disabled) { border-color: var(--vn-ink) !important; }
.vn .vnck__step:disabled { opacity: .35; cursor: not-allowed; }

.vnck__step-n {
	min-width: 22px; text-align: center;
	font-family: var(--vn-display); font-size: 13px; font-weight: 500;
	color: var(--vn-ink);
}

.vn .vnck__item-del,
.vnck button.vnck__item-del {
	display: inline-flex; align-items: center; justify-content: center;
	width: 24px; height: 24px; padding: 0 !important;
	margin-inline-start: 6px;
	color: var(--vn-muted) !important;
	background: none !important;
	border: 0 !important;
	min-height: 0 !important;
	border-radius: 5px !important;
	cursor: pointer;
	transition: color .15s ease, background .15s ease;
}
.vn .vnck__item-del:hover { color: #b32d2e !important; background: #fff !important; }
.vnck__item-del svg { width: 14px; height: 14px; }

/* İşlem sürerken özet donsun */
.vnck__summary.is-busy,
.vnck__review.is-busy { opacity: .55; pointer-events: none; }
.vnck__summary, .vnck__review { transition: opacity .15s ease; }

/* Görsel üzerindeki adet rozeti artık gereksiz tekrar — gizle */
.vnck__item-qty { display: none; }

/* ============================================================
   49. MEGA MENÜ — pazaryeri şeridinin altında açılsın
   ------------------------------------------------------------
   Panel `top: 100%` ile konumlanıyor ve bu değer en yakın
   konumlanmış ataya göre hesaplanıyordu. O ata başlıktı, dolayısıyla
   panel şeridin arkasında kalıyordu. Başlığı static yapıp konumlanmayı
   yapışkan yığına devrediyoruz: artık şerit dâhil her şeyin altında açılır.
   Şerit kapanınca panel de kendiliğinden yukarı kayar.
   ============================================================ */
@media (min-width: 900px) {
	.vnh { position: static !important; }

	.vnh__mega {
		top: 100%;
		z-index: 5;
	}

	/* Şerit panelin üstüne binmesin */
	.vn-mpbar { position: relative; z-index: 1; }

	/* Yığın, panelin gölgesini kırpmasın */
	.vn-stickytop { overflow: visible; }
}

/* ============================================================
   50. DİKEY RİTİM — bölümler ve başlık blokları
   ------------------------------------------------------------
   Bölüm dolguları geniş ekranda 92px'e kadar çıkıyor, başlık bloğu
   da altına 48px bırakıyordu; üst üste gelince sayfa gereksiz uzuyor
   ve başlık ile içerik arasındaki bağ kopuyordu. Ritmi sıkıştırıp
   başlık bloğunu daraltıyoruz.
   ============================================================ */
:root {
	--vn-section: clamp(38px, 5.5vw, 64px);
}

.vn-head {
	max-width: 540px;
	margin-bottom: clamp(20px, 2.8vw, 30px);
}
.vn-head--center { max-width: 560px; }

.vn-eyebrow { margin-bottom: 7px; font-size: 11px; }

.vn .vn-head h2 {
	margin-bottom: 10px !important;
	font-size: clamp(22px, 3.2vw, 30px) !important;
	line-height: 1.18;
}

.vn-head p {
	font-size: 15px;
	line-height: 1.6;
	max-width: 46ch;
}
.vn-head--center p { margin-inline: auto; }

/* Kategori kartları başlığa biraz daha yakın dursun */
.vn-cats { margin-top: 2px; }

/* ============================================================
   51. BAŞLIK — HESAP BAĞLANTISI
   ============================================================ */
.vnh__account {
	display: inline-flex; align-items: center; gap: 6px;
	flex: 0 0 auto; padding: 6px 8px;
	color: var(--vn-ink) !important;
	text-decoration: none !important;
	border-radius: 6px;
	transition: background .16s ease;
}
.vnh__account:hover { background: var(--vn-surface); }
.vnh__account svg { width: 21px; height: 21px; flex: 0 0 auto; }

.vnh__account-label {
	font-family: var(--vn-display); font-size: 12px; font-weight: 500;
	letter-spacing: .08em; text-transform: uppercase;
	max-width: 90px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap;
}
@media (max-width: 899px) { .vnh__account-label { display: none; } }

.vnh__account.is-in svg { stroke: var(--vn-sand-dk); }

/* ============================================================
   52. MÜŞTERİ HESABI PANELİ
   ------------------------------------------------------------
   WooCommerce'in varsayılan panosu düz bir madde imli liste ve
   tablolardan ibaretti; sitenin geri kalanıyla hiçbir ortak dili
   yoktu. Panelin tamamı burada yeniden kuruluyor:
   solda menü kartı, sağda içerik kartları.

   Ana temanın genel `button` ve `a` kuralları bu bileşenlere de
   sızdığı için buton ve bağlantı kuralları `!important` ile
   sabitlendi — daha önce mega menü ve galeri kartlarında aynı
   çakışma yaşanmıştı.
   ============================================================ */

.vn-page__head--slim { padding-block: 16px; margin-bottom: clamp(20px, 3vw, 32px); }

/* ---- Izgara ---- */
.vna {
	display: grid;
	grid-template-columns: 250px minmax(0, 1fr);
	gap: clamp(18px, 2.6vw, 34px);
	align-items: start;
}

@media (max-width: 899px) {
	.vna { grid-template-columns: minmax(0, 1fr); gap: 18px; }
}

/* ---- Menü kartı ---- */
.vna__nav {
	background: var(--vn-white);
	border: 1px solid var(--vn-line);
	border-radius: 10px;
	overflow: hidden;
	position: sticky;
	top: 96px;
}

@media (max-width: 899px) {
	.vna__nav { position: static; }
}

.vna__who {
	display: flex; align-items: center; gap: 11px;
	padding: 16px 16px 15px;
	border-bottom: 1px solid var(--vn-line);
	background: var(--vn-surface);
}

.vna__avatar {
	flex: 0 0 auto;
	width: 40px; height: 40px;
	display: grid; place-items: center;
	border-radius: 50%;
	background: var(--vn-ink);
	color: var(--vn-white);
	font-family: var(--vn-display);
	font-size: 17px; font-weight: 500;
	line-height: 1;
}

.vna__who-text { min-width: 0; display: block; }

.vna__who-name {
	display: block;
	font-family: var(--vn-display);
	font-size: 14px; font-weight: 500; color: var(--vn-ink);
	line-height: 1.3;
	overflow: hidden; text-overflow: ellipsis; white-space: nowrap;
}

.vna__who-mail {
	display: block;
	font-size: 12px; color: var(--vn-muted);
	overflow: hidden; text-overflow: ellipsis; white-space: nowrap;
}

/* ---- Menü listesi ---- */
.vna .vna__list {
	list-style: none !important;
	margin: 0 !important;
	padding: 6px !important;
}
.vna .vna__item { margin: 0 !important; padding: 0 !important; list-style: none !important; }
.vna .vna__item::marker { content: none; }

.vna .vna__link {
	display: flex; align-items: center; gap: 10px;
	padding: 10px 11px;
	border-radius: 7px;
	font-family: var(--vn-display);
	font-size: 14px; font-weight: 400;
	color: var(--vn-ink) !important;
	text-decoration: none !important;
	border: 0 !important;
	background: transparent !important;
	transition: background .16s ease, color .16s ease;
}
.vna .vna__link:hover { background: var(--vn-surface) !important; }

.vna .is-active > .vna__link {
	background: var(--vn-ink) !important;
	color: var(--vn-white) !important;
	font-weight: 500;
}

.vna__ico { width: 18px; height: 18px; flex: 0 0 auto; }

.vna .vna__link--out { color: var(--vn-muted) !important; }
.vna .vna__link--out:hover { color: #b3261e !important; }

/* Mobilde menü yatay bir sekme şeridine dönüşür */
@media (max-width: 899px) {
	.vna .vna__list {
		display: flex;
		gap: 6px;
		overflow-x: auto;
		padding: 8px !important;
		scrollbar-width: none;
		-webkit-overflow-scrolling: touch;
	}
	.vna .vna__list::-webkit-scrollbar { display: none; }
	.vna .vna__item { flex: 0 0 auto; }
	.vna .vna__link { white-space: nowrap; padding: 9px 13px; }
}

/* ============================================================
   52.1 İÇERİK — ortak parçalar
   ============================================================ */

.vna__main { min-width: 0; }

.vna-btn {
	display: inline-flex; align-items: center; justify-content: center;
	gap: 7px;
	font-family: var(--vn-display);
	font-size: 13px; font-weight: 500;
	letter-spacing: .08em; text-transform: uppercase;
	padding: 12px 20px;
	min-height: 44px;
	border-radius: 7px;
	border: 1px solid var(--vn-ink) !important;
	background: var(--vn-ink) !important;
	color: var(--vn-white) !important;
	text-decoration: none !important;
	cursor: pointer;
	transition: background .16s ease, border-color .16s ease, color .16s ease;
}
.vna-btn:hover, .vna-btn:focus-visible {
	background: var(--vn-sand-dk) !important;
	border-color: var(--vn-sand-dk) !important;
	color: var(--vn-white) !important;
}

.vna-btn--ghost {
	background: transparent !important;
	color: var(--vn-ink) !important;
	border-color: var(--vn-line) !important;
}
.vna-btn--ghost:hover, .vna-btn--ghost:focus-visible {
	background: var(--vn-ink) !important;
	border-color: var(--vn-ink) !important;
	color: var(--vn-white) !important;
}

/* Durum rozeti */
.vna-badge {
	display: inline-flex; align-items: center;
	flex: 0 0 auto;
	gap: 6px;
	padding: 5px 11px;
	border-radius: 999px;
	font-family: var(--vn-display);
	font-size: 11.5px; font-weight: 500;
	letter-spacing: .05em;
	white-space: nowrap;
	background: var(--vn-surface);
	color: var(--vn-muted);
}
.vna-badge--wait { background: #FDF3E2; color: #8A6018; }
.vna-badge--work { background: #EAF1FB; color: #1F4E85; }
.vna-badge--done { background: #E9F5EC; color: #1F6B32; }
.vna-badge--off  { background: #F1F1F1; color: #6A6A6A; }
.vna-badge--bad  { background: #FCECEA; color: #A32219; }

/* Bölüm başlığı */
.vna-block { margin-top: clamp(22px, 3vw, 32px); }
.vna-block__head {
	display: flex; align-items: baseline; justify-content: space-between;
	gap: 12px; margin-bottom: 13px;
}
.vn .vna-block__head h3 {
	font-size: 16px !important;
	margin: 0 !important;
	letter-spacing: .01em;
}
.vna .vna-block__more {
	font-family: var(--vn-display);
	font-size: 12.5px;
	color: var(--vn-sand-dk) !important;
	text-decoration: none !important;
	white-space: nowrap;
}
.vna .vna-block__more:hover { text-decoration: underline !important; }

.vna-lead { font-size: 14.5px; color: var(--vn-muted); margin: 0 0 16px; }

/* ============================================================
   52.2 ÖZET
   ============================================================ */

.vna-hello { margin-bottom: 18px; }
.vn .vna-hello__title { font-size: clamp(20px, 3vw, 25px) !important; margin: 0 0 6px !important; }
.vna-hello__lead { font-size: 14.5px; color: var(--vn-muted); margin: 0; max-width: 52ch; }

.vna-stats {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 10px;
}

.vna-stat {
	background: var(--vn-white);
	border: 1px solid var(--vn-line);
	border-radius: 10px;
	padding: 16px 14px;
	text-align: center;
}
.vna-stat__n {
	display: block;
	font-family: var(--vn-display);
	font-size: 26px; font-weight: 500; line-height: 1.1;
	color: var(--vn-ink);
}
.vna-stat__n--word { font-size: 17px; padding-block: 5px; }
.vna-stat__k {
	display: block; margin-top: 5px;
	font-size: 11.5px; letter-spacing: .04em;
	color: var(--vn-muted);
}

@media (max-width: 420px) {
	.vna-stat { padding: 13px 8px; }
	.vna-stat__n { font-size: 22px; }
	.vna-stat__n--word { font-size: 14px; }
	.vna-stat__k { font-size: 10.5px; }
}

/* Uyarı / yardım şeritleri */
.vna-note, .vna-help {
	display: flex; align-items: center; justify-content: space-between;
	gap: 16px; flex-wrap: wrap;
	margin-top: clamp(22px, 3vw, 32px);
	padding: 17px 18px;
	border-radius: 10px;
	border: 1px solid var(--vn-line);
	background: var(--vn-white);
}
.vna-note { background: #FDF9F1; border-color: #EBDCC1; }
.vna-note p, .vna-help p { margin: 0; font-size: 14px; color: var(--vn-muted); }
.vna-note p strong { color: var(--vn-ink); font-weight: 500; }
.vn .vna-help h3 { font-size: 15px !important; margin: 0 0 3px !important; }
.vna-note .vna-btn, .vna-help .vna-btn { flex: 0 0 auto; }

/* ============================================================
   52.3 SİPARİŞ KARTLARI
   ============================================================ */

.vna-orders { display: grid; gap: 12px; }

.vna-order {
	background: var(--vn-white);
	border: 1px solid var(--vn-line);
	border-radius: 10px;
	padding: 15px 16px;
	transition: border-color .16s ease, box-shadow .16s ease;
}
.vna-order:hover { border-color: #DCDCDC; box-shadow: var(--vn-shadow); }

.vna-order__top {
	display: flex; align-items: flex-start; justify-content: space-between;
	gap: 12px;
}
.vna-order__no {
	margin: 0;
	font-family: var(--vn-display);
	font-size: 15px; font-weight: 500; color: var(--vn-ink);
}
.vna-order__date { margin: 2px 0 0; font-size: 12.5px; color: var(--vn-muted); }

.vna-order__thumbs {
	display: flex; align-items: center; gap: 7px;
	margin: 13px 0 14px;
}
.vna-order__thumbs img {
	width: 52px; height: 52px;
	object-fit: cover;
	border-radius: 7px;
	border: 1px solid var(--vn-line);
	background: var(--vn-surface);
}
.vna-order__more {
	width: 52px; height: 52px;
	display: grid; place-items: center;
	border-radius: 7px;
	background: var(--vn-surface);
	color: var(--vn-muted);
	font-family: var(--vn-display); font-size: 13px;
}

.vna-order__foot {
	display: flex; align-items: center; justify-content: space-between;
	gap: 12px; flex-wrap: wrap;
	padding-top: 13px;
	border-top: 1px solid var(--vn-line);
}
.vna-order__sum { display: flex; align-items: baseline; gap: 10px; }
.vna-order__sum span { font-size: 12.5px; color: var(--vn-muted); }
.vna-order__sum strong {
	font-family: var(--vn-display);
	font-size: 16px; font-weight: 500; color: var(--vn-ink);
}
.vna-order__sum del { color: var(--vn-muted); font-weight: 300; margin-inline-end: 5px; }

.vna-order__acts { display: flex; gap: 8px; flex-wrap: wrap; }
.vna-order__acts .vna-btn { padding: 9px 16px; min-height: 38px; font-size: 12px; }

@media (max-width: 480px) {
	.vna-order__foot { flex-direction: column; align-items: stretch; }
	.vna-order__acts { display: grid; grid-template-columns: repeat(auto-fit, minmax(120px, 1fr)); }
}

/* Sayfalama */
.vna-pager {
	display: flex; align-items: center; justify-content: center;
	gap: 14px; margin-top: 20px;
}
.vna-pager__n { font-size: 13px; color: var(--vn-muted); }

/* Boş durum */
.vna-empty {
	background: var(--vn-white);
	border: 1px solid var(--vn-line);
	border-radius: 10px;
	padding: clamp(28px, 5vw, 44px) 22px;
	text-align: center;
}
.vn .vna-empty h3 { font-size: 17px !important; margin: 0 0 8px !important; }
.vna-empty p { font-size: 14.5px; color: var(--vn-muted); margin: 0 0 18px; max-width: 44ch; margin-inline: auto; }

/* ============================================================
   52.4 SİPARİŞ DETAYI
   ============================================================ */

.vna-detail {
	background: var(--vn-white);
	border: 1px solid var(--vn-line);
	border-radius: 10px;
	padding: 17px 18px;
}
.vna-detail__top {
	display: flex; align-items: flex-start; justify-content: space-between; gap: 12px;
}
.vna-detail__no {
	margin: 0; font-family: var(--vn-display);
	font-size: 17px; font-weight: 500; color: var(--vn-ink);
}
.vna-detail__date { margin: 3px 0 0; font-size: 12.5px; color: var(--vn-muted); }
.vna-detail__note { margin: 15px 0 0; font-size: 14px; color: var(--vn-muted); }
.vna-detail__note strong { color: var(--vn-ink); font-weight: 500; }

/* Durum şeridi */
.vna .vna-flow {
	list-style: none !important;
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	margin: 22px 0 6px !important;
	padding: 0 !important;
	counter-reset: none;
}
.vna .vna-flow__step {
	position: relative;
	margin: 0 !important; padding: 0 !important;
	list-style: none !important;
	text-align: center;
}
.vna .vna-flow__step::before {
	content: '';
	position: absolute;
	top: 6px; left: -50%;
	width: 100%; height: 2px;
	background: var(--vn-line);
}
.vna .vna-flow__step:first-child::before { display: none; }
.vna .vna-flow__step.is-done::before { background: var(--vn-sand-dk); }

.vna-flow__dot {
	position: relative;
	display: block;
	width: 14px; height: 14px;
	margin: 0 auto 8px;
	border-radius: 50%;
	background: var(--vn-white);
	border: 2px solid var(--vn-line);
}
.vna-flow__step.is-done .vna-flow__dot { background: var(--vn-sand-dk); border-color: var(--vn-sand-dk); }
.vna-flow__step.is-now  .vna-flow__dot { box-shadow: 0 0 0 4px rgba(185, 159, 112, .22); }

.vna-flow__label {
	display: block;
	font-size: 11.5px; line-height: 1.35;
	color: var(--vn-muted);
	padding-inline: 3px;
}
.vna-flow__step.is-done .vna-flow__label { color: var(--vn-ink); }
.vna-flow__step.is-now .vna-flow__label { font-weight: 500; }

/* Sipariş güncellemeleri */
.vna .vna-notes { list-style: none !important; margin: 0 !important; padding: 0 !important; display: grid; gap: 10px; }
.vna .vna-note-row {
	list-style: none !important;
	margin: 0 !important;
	padding: 13px 15px;
	background: var(--vn-white);
	border: 1px solid var(--vn-line);
	border-inline-start: 3px solid var(--vn-sand);
	border-radius: 8px;
}
.vna-note-row__date { margin: 0 0 5px; font-size: 11.5px; color: var(--vn-muted); }
.vna-note-row__text { font-size: 14px; }
.vna-note-row__text p { margin: 0; }

.vna-back { margin-top: 22px; }

/* ============================================================
   52.5 ADRES KARTLARI
   ============================================================ */

.vna-cards {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
	gap: 12px;
}

.vna-card {
	display: flex; flex-direction: column;
	background: var(--vn-white);
	border: 1px solid var(--vn-line);
	border-radius: 10px;
	padding: 16px 17px;
}
.vn .vna-card__head h3 { font-size: 15px !important; margin: 0 0 10px !important; }
.vna-card__body {
	flex: 1 1 auto;
	font-style: normal;
	font-size: 14px; line-height: 1.7; color: #555;
	margin-bottom: 15px;
}
.vna-card__empty { color: var(--vn-muted); }
.vna-card .vna-btn { align-self: flex-start; }

/* ============================================================
   52.6 FORMLAR
   ============================================================ */

.vna-form { margin: 0; }

.vna-form__grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 14px 16px;
}
@media (max-width: 600px) {
	.vna-form__grid { grid-template-columns: minmax(0, 1fr); }
}

/* Tam satır isteyen alanlar (adres, şehir açıklamaları vb.) */
.vna-form__grid .form-row-wide,
.vna-form__grid .vna-field--wide { grid-column: 1 / -1; }

.vna-field, .vna-form .form-row {
	display: flex; flex-direction: column;
	margin: 0 !important;
	padding: 0 !important;
}

.vna-field + .vna-field, .vna-form > .vna-field { margin-top: 14px !important; }
.vna-form__grid > .vna-field { margin-top: 0 !important; }

.vna-form label,
.vna-field label {
	font-size: 12.5px;
	color: var(--vn-muted);
	margin-bottom: 6px;
	font-weight: 400;
}
.vna-req { color: #b3261e; }

.vna-form input[type="text"],
.vna-form input[type="email"],
.vna-form input[type="tel"],
.vna-form input[type="number"],
.vna-form textarea,
.vna-form select,
.vna-form .select2-container .select2-selection--single {
	width: 100%;
	font-family: var(--vn-body);
	font-size: 15px;
	color: var(--vn-ink);
	background: var(--vn-white) !important;
	padding: 12px 13px !important;
	min-height: 46px;
	border: 1px solid var(--vn-line) !important;
	border-radius: 7px !important;
	box-shadow: none !important;
}
.vna-form input:focus, .vna-form textarea:focus, .vna-form select:focus {
	border-color: var(--vn-ink) !important;
	outline: none;
}

.vna-field--locked input { background: var(--vn-surface) !important; color: var(--vn-muted); cursor: default; }

.vna-hint { margin-top: 6px; font-size: 12px; color: var(--vn-muted); line-height: 1.5; }
.vna-hint a { color: var(--vn-ink); text-decoration: underline; text-underline-offset: 2px; }

.vna-form__foot { margin: 20px 0 0 !important; }

/* WooCommerce'in kendi seçim kutusu paneli kart içinde de doğru dursun */
.vna-form .select2-container--default .select2-selection--single .select2-selection__rendered {
	line-height: 22px; padding-left: 0;
}
.vna-form .select2-container--default .select2-selection--single .select2-selection__arrow { top: 11px; }

/* ============================================================
   52.7 WOOCOMMERCE'DEN GELEN PARÇALAR
   ------------------------------------------------------------
   Bildirimler kendi ikon yazı tipini kullanıyor; yazı tipi
   yüklenmediğinde metnin başında boş bir kutu çiziliyordu.
   Ekran görüntülerinde görünen "onay kutusu" işte oydu.
   ============================================================ */

.vn-account .woocommerce-message,
.vn-account .woocommerce-info,
.vn-account .woocommerce-error {
	list-style: none !important;
	margin: 0 0 16px !important;
	padding: 14px 16px !important;
	border: 1px solid var(--vn-line) !important;
	border-inline-start: 3px solid var(--vn-sand-dk) !important;
	border-radius: 8px !important;
	background: var(--vn-white) !important;
	color: var(--vn-ink) !important;
	font-size: 14px;
	line-height: 1.6;
	display: flex; align-items: center; justify-content: space-between;
	gap: 14px; flex-wrap: wrap;
}
.vn-account .woocommerce-message::before,
.vn-account .woocommerce-info::before,
.vn-account .woocommerce-error::before { content: none !important; display: none !important; }

.vn-account .woocommerce-message { border-inline-start-color: var(--vn-ok) !important; }
.vn-account .woocommerce-error   { border-inline-start-color: #b3261e !important; }
.vn-account .woocommerce-error li { list-style: none; margin: 0; }

.vn-account .woocommerce-message .button,
.vn-account .woocommerce-info .button {
	float: none !important;
	flex: 0 0 auto;
	font-family: var(--vn-display) !important;
	font-size: 12px !important;
	letter-spacing: .08em; text-transform: uppercase;
	padding: 10px 17px !important;
	min-height: 38px;
	border-radius: 7px !important;
	background: var(--vn-ink) !important;
	color: var(--vn-white) !important;
	border: 1px solid var(--vn-ink) !important;
	text-decoration: none !important;
}
.vn-account .woocommerce-message .button:hover,
.vn-account .woocommerce-info .button:hover {
	background: var(--vn-sand-dk) !important;
	border-color: var(--vn-sand-dk) !important;
}

/* Sipariş detayı tablosu */
.vna-block--table { margin-top: clamp(22px, 3vw, 32px); }

.vn .vna__main h2 { font-size: 16px !important; margin: 0 0 12px !important; }

.vna__main .woocommerce-table--order-details,
.vna__main .woocommerce-table--customer-details {
	width: 100%;
	border-collapse: collapse;
	background: var(--vn-white);
	border: 1px solid var(--vn-line);
	border-radius: 10px;
	overflow: hidden;
	font-size: 14px;
	margin-bottom: 20px;
}
.vna__main .woocommerce-table--order-details th,
.vna__main .woocommerce-table--order-details td,
.vna__main .woocommerce-table--customer-details th,
.vna__main .woocommerce-table--customer-details td {
	padding: 12px 14px !important;
	border: 0;
	border-bottom: 1px solid var(--vn-line);
	text-align: start;
	vertical-align: top;
}
.vna__main .woocommerce-table--order-details thead th {
	background: var(--vn-surface);
	font-family: var(--vn-display);
	font-size: 12px; font-weight: 500;
	letter-spacing: .06em; text-transform: uppercase;
	color: var(--vn-muted);
}
.vna__main .woocommerce-table--order-details tfoot td,
.vna__main .woocommerce-table--order-details tfoot th { font-size: 14px; }
.vna__main .woocommerce-table--order-details tfoot tr:last-child th,
.vna__main .woocommerce-table--order-details tfoot tr:last-child td {
	font-family: var(--vn-display);
	font-size: 16px; font-weight: 500;
	color: var(--vn-ink);
	border-bottom: 0;
}
.vna__main .woocommerce-table--order-details td.product-total,
.vna__main .woocommerce-table--order-details th.product-total,
.vna__main .woocommerce-table--order-details tfoot td { text-align: end; }

.vna__main .woocommerce-table--order-details a {
	color: var(--vn-ink) !important;
	text-decoration: none !important;
}
.vna__main .woocommerce-table--order-details a:hover { color: var(--vn-sand-dk) !important; }

.vna__main .woocommerce-customer-details address {
	font-style: normal;
	background: var(--vn-white);
	border: 1px solid var(--vn-line);
	border-radius: 10px;
	padding: 15px 16px;
	font-size: 14px; line-height: 1.7; color: #555;
}

/* Mobilde detay tablosu taşmasın */
@media (max-width: 560px) {
	.vna-block--table { overflow-x: auto; }
	.vna__main .woocommerce-table--order-details { min-width: 340px; }
}

/* WooCommerce'in kendi hesap düzeni kalıntıları */
.vna__main .woocommerce-MyAccount-content > p:empty { display: none; }
.vna .woocommerce-Addresses.col2-set::after { content: none; }

/* WooCommerce adres formundaki sarmalayıcı — alan genişliğini taşısın */
.vna-form .woocommerce-input-wrapper { display: block; width: 100%; }
.vna-form .woocommerce-address-fields__field-wrapper::after,
.vna-form .woocommerce-address-fields::after { content: none !important; }
.vna-form .select2-container { width: 100% !important; }
.vna-form .select2-container--default .select2-selection--single {
	height: auto;
	display: flex; align-items: center;
}
.vna-form .form-row .optional { color: var(--vn-muted); font-weight: 300; }
.vna-form .form-row .required { color: #b3261e; text-decoration: none; }

/* Doğrulama geri bildirimi */
.vna-form .woocommerce-invalid input.input-text,
.vna-form .woocommerce-invalid select { border-color: #b3261e !important; }
.vna-form .woocommerce-validated input.input-text { border-color: var(--vn-line) !important; }

/* ============================================================
   53. SEPET — daha sıkı satırlar, sitenin geri kalanıyla aynı adet
       kontrolleri, mobilde alt çubuk
   ------------------------------------------------------------
   Önceki düzende satırlar 116px görsel + geniş dolgu ile ekranın
   yarısını kaplıyordu; adet kutusu ise WooCommerce'in kendi sayı
   girdisiydi ve mini sepetteki eksi/artı düzenine hiç benzemiyordu.
   ============================================================ */

.vnc__list { margin-bottom: 8px; transition: opacity .15s ease; }
.vnc__list.is-busy { opacity: .5; pointer-events: none; }
.vnc__summary.is-busy { opacity: .5; pointer-events: none; }
.vnc__summary { transition: opacity .15s ease; }

.vnc__item {
	grid-template-columns: 72px minmax(0, 1fr) !important;
	gap: 14px !important;
	padding-block: 14px !important;
	position: relative;
}
@media (min-width: 600px) {
	.vnc__item {
		grid-template-columns: 92px minmax(0, 1fr) !important;
		gap: 18px !important;
		padding-block: 18px !important;
	}
}

.vnc__media img { border-radius: 6px; }

.vn .vnc__name, .vnc__name { font-size: 15px !important; margin-bottom: 4px !important; line-height: 1.35; }
@media (min-width: 600px) { .vn .vnc__name, .vnc__name { font-size: 16px !important; } }

.vnc__unit { font-size: 13px; margin: 0 0 10px; }

.vnc__controls {
	display: flex; align-items: center; gap: 10px;
	flex-wrap: wrap;
}

/* Adet — mini sepetteki kontrollerin aynısı */
.vnc__qty {
	display: inline-flex; align-items: center; gap: 4px;
	flex: 0 0 auto;
}
.vn .vnc__qty-btn,
.vnc button.vnc__qty-btn {
	width: 30px; height: 30px; padding: 0 !important;
	display: inline-flex; align-items: center; justify-content: center;
	font-family: var(--vn-body); font-size: 16px; line-height: 1;
	color: var(--vn-ink) !important;
	background: var(--vn-white) !important;
	border: 1px solid var(--vn-line) !important;
	border-radius: 6px !important;
	min-height: 0 !important;
	cursor: pointer;
	transition: border-color .15s ease, background .15s ease;
}
.vn .vnc__qty-btn:hover:not(:disabled) { border-color: var(--vn-ink) !important; background: var(--vn-surface) !important; }
.vn .vnc__qty-btn:disabled { opacity: .35; cursor: not-allowed; }

.vn .vnc__qty-n,
.vnc input.vnc__qty-n {
	width: 42px !important;
	min-width: 0 !important;
	height: 30px !important;
	min-height: 0 !important;
	padding: 0 !important;
	text-align: center;
	font-family: var(--vn-display) !important;
	font-size: 14px !important;
	font-weight: 500;
	color: var(--vn-ink) !important;
	background: var(--vn-white) !important;
	border: 1px solid var(--vn-line) !important;
	border-radius: 6px !important;
	-moz-appearance: textfield;
}
.vnc__qty-n::-webkit-outer-spin-button,
.vnc__qty-n::-webkit-inner-spin-button { -webkit-appearance: none; margin: 0; }
.vn .vnc__qty-n:focus { border-color: var(--vn-ink) !important; outline: none; }

/* Sil — mini sepetteki düğmenin aynısı */
.vn .vnc__del,
.vnc button.vnc__del {
	display: inline-flex; align-items: center; gap: 5px;
	padding: 5px 8px !important;
	font-family: var(--vn-body); font-size: 12.5px;
	color: var(--vn-muted) !important;
	background: none !important;
	border: 0 !important;
	min-height: 0 !important;
	border-radius: 5px !important;
	cursor: pointer;
	transition: color .15s ease, background .15s ease;
}
.vn .vnc__del:hover { color: #b32d2e !important; background: var(--vn-surface) !important; }
.vnc__del svg { width: 14px; height: 14px; flex: 0 0 auto; }

.vnc__line { margin-inline-start: auto; font-size: 16px; }

@media (max-width: 420px) {
	.vnc__controls { gap: 6px; }
	.vnc__line { width: 100%; margin-inline-start: 0; text-align: end; }
}

/* Kupon sepetten kalktı; kalan boşlukları kapat */
.vnc__actions { margin-top: 12px; }

/* --- Kargo bloğu: özet kartının tam genişliğini kullansın --- */
.vnc__ship { width: 100%; }
.vnc__ship-label {
	margin: 12px 0 6px;
	font-family: var(--vn-display);
	font-size: 11px; font-weight: 500;
	letter-spacing: .12em; text-transform: uppercase;
	color: var(--vn-muted);
}
.vnc__ship-row {
	display: flex; align-items: stretch; gap: 8px;
	width: 100%;
}
.vn .vnc__ship-select,
.vnc select.vnc__ship-select {
	flex: 1 1 auto;
	min-width: 0;
	width: 100% !important;
	height: 44px;
	padding: 0 34px 0 12px !important;
	font-family: var(--vn-body); font-size: 14px;
	color: var(--vn-ink) !important;
	background-color: var(--vn-white) !important;
	border: 1px solid var(--vn-line) !important;
	border-radius: 6px !important;
}
.vn .vnc__ship-row .vnc__btn {
	flex: 0 0 auto;
	min-height: 44px;
	padding: 0 16px !important;
	font-size: 12px;
	white-space: nowrap;
}
.vnc__ship-note {
	margin: 8px 0 0;
	font-size: 12.5px; line-height: 1.5;
	color: var(--vn-muted);
}

/* select2 devreye girerse de aynı genişlikte dursun */
.vnc__ship .select2-container { width: 100% !important; }

/* --- Mobilde alt çubuk --- */
.vn-cartbar {
	position: fixed;
	inset-inline: 0;
	bottom: 0;
	z-index: 60;
	display: none;
	align-items: center;
	gap: 12px;
	padding: 10px 14px calc(10px + env(safe-area-inset-bottom));
	background: var(--vn-white);
	border-top: 1px solid var(--vn-line);
	box-shadow: 0 -4px 18px rgba(41, 41, 41, .08);
}
.vn-cartbar:not(:empty) { display: flex; }
@media (min-width: 900px) { .vn-cartbar { display: none !important; } }

.vn-cartbar__sum { display: flex; flex-direction: column; min-width: 0; }
.vn-cartbar__k { font-size: 11px; letter-spacing: .06em; text-transform: uppercase; color: var(--vn-muted); }
.vn-cartbar__v { font-family: var(--vn-display); font-size: 17px; font-weight: 500; color: var(--vn-ink); }
.vn-cartbar__v .woocommerce-Price-amount { font-size: inherit; }

.vn .vn-cartbar__go {
	flex: 1 1 auto;
	display: inline-flex; align-items: center; justify-content: center;
	max-width: 62%;
	min-height: 48px;
	padding: 13px 18px;
	font-family: var(--vn-display); font-size: 13px; font-weight: 500;
	letter-spacing: .1em; text-transform: uppercase;
	color: var(--vn-white) !important;
	background: var(--vn-ink) !important;
	border: 1px solid var(--vn-ink) !important;
	border-radius: 7px;
	text-decoration: none !important;
}
.vn .vn-cartbar__go:hover { background: var(--vn-sand-dk) !important; border-color: var(--vn-sand-dk) !important; }

/* Çubuk sayfanın son satırını örtmesin */
@media (max-width: 899px) {
	body.woocommerce-cart .vn-cart { padding-bottom: 96px; }
}

/* ============================================================
   54. YAN PANEL — kapatma sağda, kurumsal bölüm açılır-kapanır
   ============================================================ */

.vn-drawer__top {
	display: flex; align-items: center; justify-content: flex-end;
	padding-bottom: 14px;
	margin-bottom: 6px;
	border-bottom: 1px solid var(--vn-line);
}

/* Panelin içindeki tüm satır içi ikonlar — ölçüsüz SVG dev gibi büyüyordu */
.vn-drawer svg { width: 16px; height: 16px; flex: 0 0 auto; }

.vn .vn-drawer__close,
.vn-drawer button.vn-drawer__close {
	position: static !important;
	margin: 0 !important;
	width: 38px; height: 38px;
	display: inline-flex; align-items: center; justify-content: center;
	font-size: 22px; line-height: 1;
	color: var(--vn-ink) !important;
	background: transparent !important;
	border: 1px solid var(--vn-line) !important;
	border-radius: 8px !important;
	min-height: 0 !important;
	padding: 0 !important;
	cursor: pointer;
}
.vn .vn-drawer__close:hover { background: var(--vn-surface) !important; }

/* Açılır bölüm */
.vn-drawer__acc { border-top: 1px solid var(--vn-line); margin-top: 6px; }
.vn .vn-drawer__acc-btn,
.vn-drawer button.vn-drawer__acc-btn {
	width: 100%;
	display: flex; align-items: center; justify-content: space-between;
	gap: 10px;
	padding: 14px 0 !important;
	font-family: var(--vn-display);
	font-size: 11px; font-weight: 500;
	letter-spacing: .18em; text-transform: uppercase;
	color: var(--vn-sand-dk) !important;
	background: transparent !important;
	border: 0 !important;
	min-height: 0 !important;
	cursor: pointer;
	text-align: start;
}
.vn-drawer__acc-caret {
	width: 11px; height: 8px; flex: 0 0 auto;
	transition: transform .2s ease;
}
.vn-drawer__acc-btn[aria-expanded="true"] .vn-drawer__acc-caret { transform: rotate(180deg); }
.vn-drawer__acc-body[hidden] { display: none; }

/* Hızlı ulaşım satırı */
.vn-drawer__reach {
	display: flex; gap: 8px;
	margin-top: 18px; padding-top: 16px;
	border-top: 1px solid var(--vn-line);
}
.vn .vn-drawer__reach a {
	flex: 1 1 0;
	display: inline-flex; align-items: center; justify-content: center; gap: 7px;
	padding: 11px 10px;
	font-family: var(--vn-display); font-size: 12px; font-weight: 500;
	letter-spacing: .06em;
	color: var(--vn-ink) !important;
	background: var(--vn-surface) !important;
	border: 1px solid var(--vn-line) !important;
	border-radius: 7px;
	text-decoration: none !important;
}
.vn .vn-drawer__reach a:hover { border-color: var(--vn-ink) !important; }
.vn-drawer__reach svg { width: 16px; height: 16px; flex: 0 0 auto; }

/* ============================================================
   55. İLETİŞİM — WhatsApp şeridi ve alt bilgi sosyal düğmeleri
   ============================================================ */

.vn .vn-wa {
	display: flex; align-items: center; gap: 14px;
	margin: 0 0 clamp(20px, 3vw, 28px);
	padding: 16px 18px;
	background: var(--vn-white);
	border: 1px solid var(--vn-line);
	border-inline-start: 3px solid #25D366;
	border-radius: 10px;
	text-decoration: none !important;
	color: var(--vn-ink) !important;
	transition: border-color .16s ease, box-shadow .16s ease;
}
.vn .vn-wa:hover { box-shadow: var(--vn-shadow); }

.vn-wa__ico {
	flex: 0 0 auto;
	width: 42px; height: 42px;
	display: grid; place-items: center;
	border-radius: 50%;
	background: #25D366;
	color: #fff;
}
.vn-wa__ico svg { width: 22px; height: 22px; }

.vn-wa__text { display: flex; flex-direction: column; min-width: 0; }
.vn-wa__text strong { font-family: var(--vn-display); font-size: 15px; font-weight: 500; }
.vn-wa__text span { font-size: 13px; color: var(--vn-muted); }
.vn-wa__go { margin-inline-start: auto; color: var(--vn-muted); font-size: 18px; }

.vnf__social { display: flex; gap: 8px; margin-top: 18px; }
.vnf .vnf__social-btn {
	width: 38px; height: 38px;
	display: inline-flex; align-items: center; justify-content: center;
	border: 1px solid rgba(255, 255, 255, .22);
	border-radius: 8px;
	color: inherit !important;
	text-decoration: none !important;
	transition: border-color .16s ease, background .16s ease;
}
.vnf .vnf__social-btn:hover { border-color: currentColor; background: rgba(255, 255, 255, .08); }
.vnf__social-btn svg { width: 18px; height: 18px; }

.vnf__contact { margin: 14px 0 0; font-size: 13.5px; line-height: 1.9; }
.vnf .vnf__contact a { color: inherit !important; text-decoration: none !important; opacity: .85; }
.vnf .vnf__contact a:hover { opacity: 1; text-decoration: underline !important; }

/* Yan panel ikon ölçüleri — genel kuralın üstüne yazıyoruz */
.vn-drawer__acc-caret { width: 11px !important; height: 8px !important; }
.vn-drawer__reach svg { width: 16px !important; height: 16px !important; }
.vn-drawer__close svg { width: auto !important; height: auto !important; }

/* ============================================================
   56. SEPET ÖZETİ — kargo bloğu kartın tam genişliğini kullansın
   ------------------------------------------------------------
   Tabloyu `display: block` yapmak satırları da kırıyordu (her satır
   içeriğine göre büzülüp "Ara toplam" değerini ortada bırakıyordu).
   Tablo düzeni olduğu gibi kalıyor; yalnızca kargo hücresinin
   içindeki kutular tam genişliğe zorlanıyor.

   Ayrıca ızgara sütunları varsayılan olarak min-content'ten daha
   fazla daralamaz. Ülke listesindeki uzun adlar ("Amerika Birleşik
   Devletleri (ABD) Küçük Dış Adaları") seçicinin min-content
   genişliğini ekrandan büyük yapıyor ve tüm sepeti sağa taşırıyordu;
   `min-width: 0` o tabanı kaldırır.
   ============================================================ */
.vnc > * { min-width: 0; }
.vnc__summary, .vnc__card { min-width: 0; max-width: 100%; }

.vn table.vnc__rows { max-width: 100%; }

/* Hesaplayıcı artık tablonun dışında, kartın tam genişliğinde */
.vnc__shipwrap {
	width: 100%;
	margin: 0 0 16px;
	padding-bottom: 16px;
	border-bottom: 1px solid var(--vn-line);
}
.vnc__shipwrap .vnc__ship-label { margin-top: 0; }

.vnc__ship,
.vnc__ship-row,
.vnc__ship-note { width: 100%; min-width: 0; max-width: 100%; }

/* Seçici kalan alanı alsın — genişliğini içeriğinden değil, kutudan alır */
.vn .vnc__ship-select,
.vnc select.vnc__ship-select {
	flex: 1 1 0 !important;
	width: 100% !important;
	min-width: 0 !important;
	max-width: 100%;
	text-overflow: ellipsis;
}

.vnc__ship-note { overflow-wrap: anywhere; }

/* ============================================================
   57. SEPET ALT ÇUBUĞU — tutar solda, eylem sağda
   ============================================================ */
.vn-cartbar { justify-content: space-between; }
.vn-cartbar__sum { flex: 0 0 auto; margin-inline-end: auto; }

.vn .vn-cartbar__go {
	flex: 0 1 auto;
	margin-inline-start: auto;
	min-width: 190px;
	max-width: 68%;
}
@media (max-width: 380px) {
	.vn .vn-cartbar__go { min-width: 150px; padding-inline: 12px; }
}

/* ============================================================
   58. YAN PANEL — üst boşluğu topla
   ------------------------------------------------------------
   Kapatma düğmesi kendi satırında koca bir blok gibi duruyor,
   menü de sayfanın ortasından başlıyordu.
   ============================================================ */
.vn-drawer__panel { padding-top: 10px !important; }

.vn-drawer__top {
	padding-bottom: 4px;
	margin-bottom: 0;
	border-bottom: 0;
	min-height: 0;
}

.vn .vn-drawer__close,
.vn-drawer button.vn-drawer__close {
	width: 34px; height: 34px;
	font-size: 20px !important;
}

/* İlk menü grubu düğmenin hemen altından başlasın */
.vn-drawer__top + nav .vn-drawer__nav:first-child { margin-top: 0; }
.vn-drawer__nav a { padding-block: 12px; }

/* Kargo satırı artık yalnızca "etiket / yöntem" taşıyor (seçici tablodan
   çıktı) — diğer özet satırlarıyla aynı iki sütunlu düzene dönsün. */
.vn table.vnc__rows tr.woocommerce-shipping-totals { display: table-row !important; }
.vn table.vnc__rows tr.woocommerce-shipping-totals th,
.vn table.vnc__rows tr.woocommerce-shipping-totals td {
	display: table-cell !important;
	margin: 0 !important;
}
.vn table.vnc__rows tr.woocommerce-shipping-totals td { text-align: end !important; }
.vn table.vnc__rows tr.woocommerce-shipping-totals ul#shipping_method li { text-align: end; }

/* Hedef satırı ("Gönderim hedefi: …") hemen altındaki ülke seçiciyle
   aynı bilgiyi tekrarlıyordu. */
.vn table.vnc__rows .woocommerce-shipping-destination { display: none; }

/* ============================================================
   59. BLOG
   ------------------------------------------------------------
   Okuma sütunu bilinçli olarak dar (~68 karakter): uzun satırlar
   göz için yorucu ve mobilde okunma oranını düşürüyor. Ürün
   kartları bu sütunun dışına taşıyor, böylece metnin akışını
   kesmeden dikkat çekiyor.
   ============================================================ */

.vn-wrap--narrow { max-width: 760px; }

.vn-page__lead {
	margin: 8px 0 0;
	font-size: 15px;
	color: var(--vn-muted);
	max-width: 60ch;
}

/* ---- Öne çıkan yazı ---- */
.vnb-hero {
	display: grid;
	gap: clamp(18px, 3vw, 34px);
	margin-bottom: clamp(30px, 5vw, 52px);
	padding-bottom: clamp(30px, 5vw, 52px);
	border-bottom: 1px solid var(--vn-line);
	align-items: center;
}
@media (min-width: 860px) { .vnb-hero { grid-template-columns: 1.15fr 1fr; } }

.vnb-hero__media {
	display: block;
	border-radius: 10px;
	overflow: hidden;
	background: var(--vn-surface);
	aspect-ratio: 5 / 3;
}
.vnb-hero__media img { width: 100%; height: 100%; object-fit: cover; }

.vn .vnb-hero__title { font-size: clamp(23px, 3.4vw, 33px) !important; margin: 8px 0 12px !important; line-height: 1.2; }
.vn .vnb-hero__title a { color: var(--vn-ink) !important; text-decoration: none !important; }
.vn .vnb-hero__title a:hover { color: var(--vn-sand-dk) !important; }
.vnb-hero__excerpt { font-size: 15.5px; line-height: 1.7; color: var(--vn-muted); margin: 0 0 14px; }
.vnb-hero .vn-btn { margin-top: 6px; }

/* ---- Kart ızgarası ---- */
.vnb-list {
	display: grid;
	gap: clamp(18px, 2.6vw, 28px);
	grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
}

.vnb-card { display: flex; flex-direction: column; min-width: 0; }

.vnb-card__media {
	display: block;
	border-radius: 10px;
	overflow: hidden;
	background: var(--vn-surface);
	aspect-ratio: 3 / 2;
	margin-bottom: 13px;
}
.vnb-card__media img {
	width: 100%; height: 100%; object-fit: cover;
	transition: transform .35s ease;
}
.vnb-card:hover .vnb-card__media img { transform: scale(1.03); }

.vnb-card__body { display: flex; flex-direction: column; flex: 1 1 auto; }

.vn .vnb-card__cat {
	align-self: flex-start;
	font-family: var(--vn-display);
	font-size: 11px; font-weight: 500;
	letter-spacing: .14em; text-transform: uppercase;
	color: var(--vn-sand-dk) !important;
	text-decoration: none !important;
	margin-bottom: 7px;
}
.vn .vnb-card__cat:hover { text-decoration: underline !important; }

.vn .vnb-card__title { font-size: 18px !important; line-height: 1.32; margin: 0 0 8px !important; }
.vn .vnb-card__title a { color: var(--vn-ink) !important; text-decoration: none !important; }
.vn .vnb-card__title a:hover { color: var(--vn-sand-dk) !important; }

.vnb-card__excerpt { font-size: 14.5px; line-height: 1.65; color: var(--vn-muted); margin: 0 0 12px; }

.vnb-card__meta {
	margin: auto 0 0;
	display: flex; gap: 7px; align-items: center;
	font-size: 12.5px; color: var(--vn-muted);
}

/* ---- Sayfalama ---- */
.vn .pagination, .vn .navigation.pagination {
	display: flex; justify-content: center; gap: 8px;
	margin-top: clamp(30px, 5vw, 48px);
}
.vn .nav-links { display: flex; gap: 8px; flex-wrap: wrap; justify-content: center; }
.vn .page-numbers {
	display: inline-flex; align-items: center; justify-content: center;
	min-width: 42px; min-height: 42px; padding: 0 13px;
	font-family: var(--vn-display); font-size: 14px;
	color: var(--vn-ink) !important;
	background: var(--vn-white);
	border: 1px solid var(--vn-line);
	border-radius: 7px;
	text-decoration: none !important;
}
.vn .page-numbers:hover { border-color: var(--vn-ink); }
.vn .page-numbers.current {
	background: var(--vn-ink); color: var(--vn-white) !important; border-color: var(--vn-ink);
}
.vn .screen-reader-text { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); }

/* ============================================================
   59.1 TEKİL YAZI
   ============================================================ */

.vnb-post__head { padding-block: clamp(26px, 4vw, 44px) clamp(18px, 2.5vw, 26px); }

.vnb-crumbs {
	display: flex; flex-wrap: wrap; gap: 7px;
	font-size: 12.5px; color: var(--vn-muted);
	margin-bottom: 16px;
}
.vn .vnb-crumbs a { color: var(--vn-muted) !important; text-decoration: none !important; }
.vn .vnb-crumbs a:hover { color: var(--vn-ink) !important; text-decoration: underline !important; }

.vn .vnb-post__title {
	font-size: clamp(26px, 4.6vw, 42px) !important;
	line-height: 1.18;
	margin: 0 0 14px !important;
	letter-spacing: -.01em;
}

.vnb-post__lead {
	font-size: clamp(16px, 2vw, 18px);
	line-height: 1.65;
	color: var(--vn-muted);
	margin: 0 0 16px;
}

.vnb-post__meta { display: flex; gap: 8px; font-size: 13px; color: var(--vn-muted); margin: 0; }

.vnb-post__cover { margin: 0 0 clamp(26px, 4vw, 44px); }
.vnb-post__cover img {
	width: 100%;
	aspect-ratio: 16 / 9;
	object-fit: cover;
	border-radius: 12px;
	background: var(--vn-surface);
}

.vnb-post__body { padding-bottom: clamp(46px, 8vw, 88px); }

/* Yazı gövdesi */
.vnb-prose { max-width: none; font-size: 17px; line-height: 1.78; color: #3c3c3c; }
.vn .vnb-prose h2 {
	font-size: clamp(21px, 2.8vw, 26px) !important;
	margin: 1.9em 0 .55em !important;
	line-height: 1.25;
	scroll-margin-top: 110px;
}
.vn .vnb-prose h3 {
	font-size: clamp(17px, 2.2vw, 20px) !important;
	margin: 1.6em 0 .45em !important;
	line-height: 1.3;
}
.vnb-prose p { margin: 0 0 1.15em; }
.vnb-prose ul, .vnb-prose ol { margin: 0 0 1.4em; padding-inline-start: 1.35em; }
.vnb-prose li { margin-bottom: .55em; }
.vnb-prose li::marker { color: var(--vn-sand-dk); }

.vnb-prose figure { margin: 1.9em 0; }
.vnb-prose figure img { border-radius: 10px; width: 100%; }
.vnb-prose figcaption {
	margin-top: 9px;
	font-size: 13px; color: var(--vn-muted); text-align: center; line-height: 1.5;
}

.vnb-prose table { font-size: 15px; }
.vnb-prose th { background: var(--vn-surface); }

/* ---- Yazı içi ipucu kutusu ---- */
.vnb-tip {
	margin: 1.9em 0;
	padding: 18px 20px;
	background: #FDF9F1;
	border: 1px solid #EBDCC1;
	border-inline-start: 3px solid var(--vn-sand-dk);
	border-radius: 10px;
	font-size: 15.5px;
	line-height: 1.7;
}
.vnb-tip__title {
	font-family: var(--vn-display);
	font-size: 12px; font-weight: 500;
	letter-spacing: .14em; text-transform: uppercase;
	color: var(--vn-sand-dk);
	margin: 0 0 8px !important;
}
.vnb-tip p:last-child { margin-bottom: 0; }

/* ---- Yazı içi ürün kartı ---- */
.vnb-cta {
	display: grid;
	grid-template-columns: 132px minmax(0, 1fr);
	gap: 18px;
	align-items: center;
	margin: 2.2em 0;
	padding: 18px;
	background: var(--vn-white);
	border: 1px solid var(--vn-line);
	border-radius: 12px;
	box-shadow: var(--vn-shadow);
}
@media (max-width: 560px) {
	.vnb-cta { grid-template-columns: 96px minmax(0, 1fr); gap: 14px; padding: 14px; }
}

.vnb-cta__media {
	display: block; border-radius: 8px; overflow: hidden;
	background: var(--vn-surface); aspect-ratio: 1;
}
.vnb-cta__media img { width: 100%; height: 100%; object-fit: cover; }

.vnb-cta__eyebrow {
	font-family: var(--vn-display);
	font-size: 10.5px; font-weight: 500;
	letter-spacing: .16em; text-transform: uppercase;
	color: var(--vn-sand-dk);
	margin: 0 0 5px !important;
}
.vn .vnb-cta__title { font-size: 17px !important; margin: 0 0 6px !important; line-height: 1.3; }
.vn .vnb-cta__title a { color: var(--vn-ink) !important; text-decoration: none !important; }
.vn .vnb-cta__title a:hover { color: var(--vn-sand-dk) !important; }

.vnb-cta__note {
	font-size: 14px; line-height: 1.55; color: var(--vn-muted);
	margin: 0 0 12px !important;
}

.vnb-cta__foot { display: flex; align-items: center; gap: 14px; flex-wrap: wrap; }
.vnb-cta__price { font-family: var(--vn-display); font-size: 17px; font-weight: 500; color: var(--vn-ink); }
.vnb-cta__price .woocommerce-Price-amount { font-size: inherit; }

.vn .vnb-cta__btn {
	display: inline-flex; align-items: center; justify-content: center;
	min-height: 42px; padding: 11px 20px;
	font-family: var(--vn-display); font-size: 12.5px; font-weight: 500;
	letter-spacing: .1em; text-transform: uppercase;
	color: var(--vn-white) !important;
	background: var(--vn-ink) !important;
	border: 1px solid var(--vn-ink) !important;
	border-radius: 7px;
	text-decoration: none !important;
	margin-inline-start: auto;
}
.vn .vnb-cta__btn:hover { background: var(--vn-sand-dk) !important; border-color: var(--vn-sand-dk) !important; }

/* ---- Yazı içi ürün ızgarası ---- */
.vnb-grid { margin: 2.4em 0; }
.vn .vnb-grid__title { font-size: 20px !important; margin: 0 0 16px !important; }
.vn-products--blog { grid-template-columns: repeat(auto-fill, minmax(210px, 1fr)); }

/* ---- SSS ---- */
.vnb-faq { margin-top: clamp(34px, 5vw, 54px); }
.vn .vnb-faq h2 { font-size: clamp(21px, 2.8vw, 26px) !important; margin: 0 0 16px !important; }

.vnb-faq__item {
	border: 1px solid var(--vn-line);
	border-radius: 10px;
	background: var(--vn-white);
	margin-bottom: 10px;
	overflow: hidden;
}
.vnb-faq__item summary {
	cursor: pointer;
	list-style: none;
	padding: 15px 46px 15px 17px;
	position: relative;
	font-family: var(--vn-display);
	font-size: 16px; font-weight: 500;
	color: var(--vn-ink);
	line-height: 1.4;
}
.vnb-faq__item summary::-webkit-details-marker { display: none; }
.vnb-faq__item summary::after {
	content: '+';
	position: absolute; inset-inline-end: 17px; top: 50%;
	transform: translateY(-50%);
	font-size: 20px; font-weight: 300; color: var(--vn-muted);
	transition: transform .2s ease;
}
.vnb-faq__item[open] summary::after { content: '−'; }
.vnb-faq__item summary:hover { background: var(--vn-surface); }

.vnb-faq__a {
	padding: 0 17px 16px;
	font-size: 15.5px; line-height: 1.7; color: #4a4a4a;
}
.vnb-faq__a p:last-child { margin-bottom: 0; }
.vnb-faq__a a { color: var(--vn-ink); text-decoration: underline; text-underline-offset: 3px; }

/* ---- İlgili yazılar ---- */
.vnb-related {
	margin-top: clamp(40px, 6vw, 66px);
	padding-top: clamp(30px, 4vw, 44px);
	border-top: 1px solid var(--vn-line);
}
.vn .vnb-related h2 { font-size: clamp(20px, 2.6vw, 24px) !important; margin: 0 0 20px !important; }
.vnb-related .vnb-list { grid-template-columns: repeat(auto-fill, minmax(220px, 1fr)); }
.vn .vnb-related .vnb-card__title { font-size: 16px !important; }

/* ============================================================
   59.2 YAZI GÖRSELLERİ — yüksekliği sınırla, kırpma
   ------------------------------------------------------------
   Ürün fotoğraflarının bir kısmı dikey (760×1351). Metin sütununun
   tamamına yayılınca tek görsel 1250 piksel yükseklik kaplıyordu —
   bir ekrandan fazla; okuyucu metnin akışını kaybediyor.

   İlk çözüm sabit orana kırpmaktı; ancak `object-fit: cover` dikey
   ürün fotoğraflarının üstünü ve altını kesiyor, yani ürünün
   kendisini. Bunun yerine YÜKSEKLİĞİ sınırlayıp genişliği serbest
   bırakıyoruz: dikey görseller dar ve ortalanmış, yatay görseller
   geniş görünüyor. Hiçbiri kırpılmıyor, hiçbiri ekranı doldurmuyor.
   ============================================================ */
.vnb-fig {
	margin: 1.9em 0;
	display: flex;
	flex-direction: column;
	align-items: center;
}

.vn .vnb-fig img,
.vnb-prose .vnb-fig img {
	display: block;
	width: auto;
	max-width: 100%;
	max-height: 460px;
	height: auto;
	object-fit: contain;
	border-radius: 10px;
	background: var(--vn-surface);
}

.vnb-fig figcaption { max-width: 56ch; }

/* Kapak görseli: burada kırpma sorun değil — geniş bir bant olması
   zaten isteniyor ve özne merkezde. */
.vn .vnb-post__cover img {
	aspect-ratio: 16 / 9;
	max-height: 460px;
	object-fit: cover;
	object-position: center;
}

@media (max-width: 600px) {
	.vn .vnb-fig img { max-height: 340px; }
	.vn .vnb-post__cover img { aspect-ratio: 4 / 3; max-height: 320px; }
}

/* Yazı içindeki diğer görseller de aynı sınırda kalsın */
.vnb-prose > p > img,
.vnb-prose figure:not(.vnb-fig) img {
	max-height: 460px;
	width: auto;
	max-width: 100%;
	border-radius: 10px;
}

/* ============================================================
   60. KURUMSAL BİLGİLER VE ÖDEME LOGOLARI
   ------------------------------------------------------------
   iyzico başvurusu, ticaret unvanı/MERSİS/KEP gibi bilgilerin
   İletişim başlığı altında ve "iyzico ile Öde" + Visa + Mastercard
   logolarının sitede bulunmasını şart koşuyor.
   ============================================================ */

.vn-kurumsal { margin: clamp(28px, 4vw, 44px) 0 0; }
.vn .vn-kurumsal__title { font-size: clamp(19px, 2.6vw, 23px) !important; margin: 0 0 14px !important; }

.vn-kurumsal__table {
	width: 100%;
	border-collapse: collapse;
	font-size: 15px;
	background: var(--vn-white);
	border: 1px solid var(--vn-line);
	border-radius: 10px;
	overflow: hidden;
}
.vn-kurumsal__table th,
.vn-kurumsal__table td {
	padding: 12px 14px;
	border-bottom: 1px solid var(--vn-line);
	text-align: start;
	vertical-align: top;
	line-height: 1.55;
}
.vn-kurumsal__table tr:last-child th,
.vn-kurumsal__table tr:last-child td { border-bottom: 0; }
.vn-kurumsal__table th {
	width: 38%;
	background: var(--vn-surface);
	font-family: var(--vn-display);
	font-weight: 500;
	color: var(--vn-muted);
}
.vn-kurumsal__table td { color: var(--vn-ink); overflow-wrap: anywhere; }

@media (max-width: 520px) {
	.vn-kurumsal__table th, .vn-kurumsal__table td { display: block; width: 100%; }
	.vn-kurumsal__table th { border-bottom: 0; padding-bottom: 4px; }
	.vn-kurumsal__table td { padding-top: 0; }
}

/* ---- Ödeme logoları ---- */
.vn-pay { text-align: center; }

.vn-pay__title {
	margin: 0 0 12px;
	font-family: var(--vn-display);
	font-size: 11px; font-weight: 500;
	letter-spacing: .16em; text-transform: uppercase;
	color: var(--vn-muted);
}

.vn-pay__list {
	list-style: none;
	margin: 0; padding: 0;
	display: flex; flex-wrap: wrap;
	align-items: center; justify-content: center;
	gap: 10px 14px;
}

.vn-pay__item {
	display: inline-flex; align-items: center; justify-content: center;
	min-height: 40px; padding: 6px 14px;
	background: var(--vn-white);
	border: 1px solid var(--vn-line);
	border-radius: 7px;
}
.vn-pay__item img { height: 26px; width: auto; display: block; }

/* Resmî logo dosyası henüz yüklenmediyse metin rozeti */
.vn-pay__text {
	font-family: var(--vn-display);
	font-size: 13px; font-weight: 500;
	letter-spacing: .04em;
	color: var(--vn-ink);
}

.vn-pay__note {
	margin: 12px auto 0;
	max-width: 56ch;
	font-size: 12.5px; line-height: 1.6;
	color: var(--vn-muted);
}

/* Alt bilgi içinde — koyu zemine göre */
.vnf__pay {
	padding: clamp(22px, 3vw, 30px) var(--vn-gap);
	border-top: 1px solid rgba(255, 255, 255, .12);
}
.vnf__pay .vn-pay__title { color: rgba(255, 255, 255, .55); }
.vnf__pay .vn-pay__note  { color: rgba(255, 255, 255, .5); }
.vnf__pay .vn-pay__item {
	background: rgba(255, 255, 255, .96);
	border-color: transparent;
}

/* Ödeme adımında — sipariş butonunun altında */
.vn-pay--checkout { margin-top: 16px; }
.vn-pay--checkout .vn-pay__item { min-height: 34px; padding: 5px 11px; }
.vn-pay--checkout .vn-pay__item img { height: 20px; }
.vn-pay--checkout .vn-pay__text { font-size: 12px; }

/* Resmî iyzico logo bandı — tek parça görsel */
.vn-pay--band .vn-pay__band {
	display: block;
	width: 100%;
	max-width: 460px;
	height: auto;
	margin-inline: auto;
}
.vn-pay--band.vn-pay--checkout .vn-pay__band { max-width: 320px; }

/* Bant koyu alt bilgi zemininde nefes alsın */
.vnf__pay .vn-pay__band {
	background: #fff;
	padding: 10px 16px;
	border-radius: 8px;
}

/* ============================================================
   61. ÜRÜN SATIŞ (LANDING) SAYFALARI
   ------------------------------------------------------------
   Yapı doğrudan yanıt sayfalarından; görsel dil siteye ait.
   Hazır şablonlardaki kırmızı aciliyet estetiği yerine sitenin
   sakin editoryal tonu korunuyor — güven, ahşap mobilyada
   aciliyetten daha çok satıyor.
   ============================================================ */

.vn-lp { padding-bottom: clamp(50px, 8vw, 90px); }

/* ---- Giriş ---- */
.vnlp__hero {
	max-width: 760px;
	margin: 0 auto clamp(34px, 5vw, 60px);
	padding-top: clamp(26px, 4vw, 46px);
	text-align: center;
}

.vnlp__eyebrow {
	font-family: var(--vn-display);
	font-size: 11px; font-weight: 500;
	letter-spacing: .2em; text-transform: uppercase;
	color: var(--vn-sand-dk);
	margin: 0 0 14px;
}

.vn .vnlp__title {
	font-size: clamp(28px, 5vw, 46px) !important;
	line-height: 1.14;
	letter-spacing: -.015em;
	margin: 0 0 18px !important;
}

.vnlp__lead {
	font-size: clamp(16px, 2.1vw, 19px);
	line-height: 1.65;
	color: var(--vn-muted);
	margin: 0 auto 16px;
	max-width: 58ch;
}

.vnlp__meta {
	display: flex; justify-content: center; gap: 8px;
	font-size: 12.5px; color: var(--vn-muted);
	margin: 0 0 26px;
}

.vnlp__trust {
	list-style: none; margin: 0; padding: 0;
	display: flex; flex-wrap: wrap; justify-content: center;
	gap: 10px 12px;
}
.vnlp__trust li {
	display: inline-flex; align-items: center; gap: 8px;
	padding: 9px 15px;
	background: var(--vn-white);
	border: 1px solid var(--vn-line);
	border-radius: 999px;
	font-size: 13px; color: var(--vn-ink);
}
.vnlp__trust svg {
	width: 16px; height: 16px; flex: 0 0 auto;
	fill: none; stroke: var(--vn-sand-dk); stroke-width: 1.6;
}

/* ---- Numaralı fayda bölümleri ---- */
.vnlp__item {
	display: grid;
	gap: clamp(20px, 3.4vw, 44px);
	align-items: center;
	max-width: 1040px;
	margin: 0 auto clamp(38px, 6vw, 70px);
}
@media (min-width: 820px) {
	.vnlp__item { grid-template-columns: 1fr 1fr; }
	/* Dönüşümlü yerleşim: göz sayfada zikzak çizerek ilerlesin */
	.vnlp__item:nth-child(even) .vnlp__item-media { order: 2; }
}

.vnlp__item-media {
	margin: 0;
	border-radius: 12px;
	overflow: hidden;
	background: var(--vn-surface);
}
.vnlp__item-media img {
	display: block; width: 100%;
	aspect-ratio: 4 / 3;
	object-fit: cover;
}

.vnlp__num {
	display: inline-grid; place-items: center;
	width: 34px; height: 34px;
	margin-bottom: 14px;
	border-radius: 50%;
	background: var(--vn-sand);
	color: var(--vn-ink);
	font-family: var(--vn-display);
	font-size: 15px; font-weight: 500;
}

.vn .vnlp__item-title {
	font-size: clamp(20px, 2.9vw, 27px) !important;
	line-height: 1.24;
	margin: 0 0 12px !important;
}

.vnlp__item-text {
	font-size: 16px; line-height: 1.72; color: #454545;
}
.vnlp__item-text p { margin: 0 0 1em; }
.vnlp__item-text p:last-child { margin-bottom: 0; }
.vnlp__item-text strong { color: var(--vn-ink); font-weight: 500; }
.vnlp__item-text ul { margin: 0 0 1em; padding-inline-start: 1.2em; }
.vnlp__item-text li { margin-bottom: .45em; }
.vnlp__item-text li::marker { color: var(--vn-sand-dk); }

/* ---- Karşılaştırma ---- */
.vnlp__compare {
	max-width: 860px;
	margin: 0 auto clamp(38px, 6vw, 70px);
}
.vn .vnlp__compare-title {
	font-size: clamp(21px, 3vw, 28px) !important;
	text-align: center;
	margin: 0 0 20px !important;
}
.vnlp__compare-scroll { overflow-x: auto; }

.vnlp__table {
	width: 100%;
	min-width: 480px;
	border-collapse: collapse;
	font-size: 15px;
	background: var(--vn-white);
	border: 1px solid var(--vn-line);
	border-radius: 12px;
	overflow: hidden;
}
.vnlp__table th, .vnlp__table td {
	padding: 13px 15px;
	border-bottom: 1px solid var(--vn-line);
	text-align: start;
	line-height: 1.5;
}
.vnlp__table tr:last-child th, .vnlp__table tr:last-child td { border-bottom: 0; }
.vnlp__table thead th {
	background: var(--vn-surface);
	font-family: var(--vn-display);
	font-size: 13px; font-weight: 500;
	letter-spacing: .04em;
	color: var(--vn-muted);
}
.vnlp__table tbody th { font-weight: 400; color: var(--vn-muted); width: 34%; }
.vnlp__table td { color: var(--vn-ink); }

/* Bizim sütun vurgulanır — ama abartılmadan */
.vnlp__table .is-us { background: #FDFAF4; }
.vnlp__table thead .is-us { background: #F6EFE1; color: var(--vn-ink); font-weight: 600; }

/* ---- Satın alma kutusu ---- */
.vnlp__buy {
	max-width: 900px;
	margin: 0 auto clamp(38px, 6vw, 70px);
	background: var(--vn-surface);
	border: 1px solid var(--vn-line);
	border-radius: 14px;
	padding: clamp(20px, 3vw, 34px);
}

.vnlp__buy-inner {
	display: grid;
	gap: clamp(18px, 3vw, 34px);
	align-items: center;
}
@media (min-width: 720px) { .vnlp__buy-inner { grid-template-columns: 260px minmax(0, 1fr); } }

.vnlp__buy-media {
	border-radius: 10px; overflow: hidden; background: var(--vn-white);
}
.vnlp__buy-media img { display: block; width: 100%; aspect-ratio: 1; object-fit: cover; }

.vnlp__buy-eyebrow {
	font-family: var(--vn-display);
	font-size: 11px; font-weight: 500;
	letter-spacing: .16em; text-transform: uppercase;
	color: var(--vn-sand-dk);
	margin: 0 0 8px;
}
.vn .vnlp__buy-title { font-size: clamp(20px, 2.8vw, 26px) !important; margin: 0 0 10px !important; }
.vnlp__buy-note { font-size: 15px; line-height: 1.65; color: var(--vn-muted); margin: 0 0 14px; }

.vnlp__buy-price {
	font-family: var(--vn-display);
	font-size: clamp(24px, 3.4vw, 30px); font-weight: 500;
	color: var(--vn-ink);
	margin: 0 0 18px;
}
.vnlp__buy-price .woocommerce-Price-amount { font-size: inherit; }

.vnlp__buy-actions { display: flex; flex-wrap: wrap; gap: 10px; margin-bottom: 18px; }

.vn .vnlp__cta {
	display: inline-flex; align-items: center; justify-content: center;
	flex: 1 1 190px;
	min-height: 54px; padding: 15px 26px;
	font-family: var(--vn-display);
	font-size: 14px; font-weight: 500;
	letter-spacing: .1em; text-transform: uppercase;
	color: var(--vn-white) !important;
	background: var(--vn-ink) !important;
	border: 1px solid var(--vn-ink) !important;
	border-radius: 8px;
	text-decoration: none !important;
	transition: background .16s ease, border-color .16s ease;
}
.vn .vnlp__cta:hover { background: var(--vn-sand-dk) !important; border-color: var(--vn-sand-dk) !important; }

.vn .vnlp__cta--ghost {
	background: transparent !important;
	color: var(--vn-ink) !important;
	border-color: var(--vn-ink) !important;
}
.vn .vnlp__cta--ghost:hover {
	background: var(--vn-ink) !important;
	color: var(--vn-white) !important;
}

.vnlp__buy-trust {
	list-style: none; margin: 0; padding: 0;
	display: grid; gap: 7px;
}
.vnlp__buy-trust li {
	position: relative; padding-inline-start: 22px;
	font-size: 13.5px; color: var(--vn-muted); line-height: 1.5;
}
.vnlp__buy-trust li::before {
	content: '';
	position: absolute; inset-inline-start: 0; top: 6px;
	width: 11px; height: 6px;
	border-inline-start: 1.6px solid var(--vn-sand-dk);
	border-bottom: 1.6px solid var(--vn-sand-dk);
	transform: rotate(-45deg);
}

/* Landing sayfasında SSS ortalanmış dar sütun */
.vn-lp .vnb-faq { max-width: 760px; margin-inline: auto; }
.vn-lp .vnb-tip { max-width: 760px; margin-inline: auto; }

/* ============================================================
   62. HESAP PANELİ — WooCommerce'in float düzenini etkisizleştir
   ------------------------------------------------------------
   woocommerce-layout.css şunu tanımlıyor:
       .woocommerce-MyAccount-navigation { float: left;  width: 30% }
       .woocommerce-MyAccount-content    { float: right; width: 68% }

   Izgara düzeninde `float` yok sayılıyor ama `width` geçerli kalıyor:
   250 piksellik menü sütunu %30'a düşüp 75 piksele iniyor ve menü
   etiketleri kartın içinde kırpılıyordu. Genişliği ızgaraya geri
   veriyoruz.
   ============================================================ */
.vna .vna__nav,
.vna .woocommerce-MyAccount-navigation,
.vna .vna__main,
.vna .woocommerce-MyAccount-content {
	width: auto !important;
	float: none !important;
}

/* Etiketler uzun olduğunda kırpılmak yerine sarsın */
.vna .vna__link span { min-width: 0; overflow-wrap: anywhere; }
