/*
Theme Name: rv-2026
Theme URI: https://romanyavatandasligi.com/
Author: romanyavatandasligi.com
Description: romanyavatandasligi.com için Gutenberg tabanlı blok teması. Mobil öncelikli, güven odaklı, sayfa oluşturucusuz. Görsel sözleşme: DESIGN.md — şablon yapısı: TEMPLATES.md.
Version: 0.6.4
Requires at least: 6.5
Tested up to: 7.0
Requires PHP: 8.0
License: GNU General Public License v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: rv-2026
Tags: block-theme, full-site-editing, accessibility-ready, e-commerce
*/

/* ==========================================================================
   Not: Renk, ölçü ve tipografi değerleri theme.json'dan gelir.
   Buraya sabit hex/px yazma — jetonu kullan (DESIGN.md §8).
   ========================================================================== */

/* --- Temel --------------------------------------------------------------- */

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

html { -webkit-text-size-adjust: 100%; }

body { margin: 0; }

/* theme.json blockGap'i içerik akışında yararlıdır; kök şablon çocuklarında
   header ile main arasına 24px boşluk eklememelidir. */
.wp-site-blocks > * { margin-block-start: 0 !important; }

::selection { background: var(--wp--preset--color--seal-tint); }

/* Odak halkası her yerde görünür — DESIGN.md §5. Asla kaldırma. */
:where(a, button, input, select, textarea, summary, [tabindex]):focus-visible {
	outline: 2px solid #2E6DB4;
	outline-offset: 2px;
	border-radius: 2px;
}

/* Klavye kullanıcısı için içeriğe atlama */
.rv-skip-link {
	position: absolute;
	left: -9999px;
	top: 0;
	z-index: 999;
	background: var(--wp--preset--color--brand-strong);
	color: #FFFFFF;
	padding: 12px 18px;
	font-weight: 600;
	border-radius: 0 0 var(--wp--custom--rounded--md) 0;
}
.rv-skip-link:focus { left: 0; }

/* --- Kaplar -------------------------------------------------------------- */

.rv-container {
	max-width: 72rem;
	margin-inline: auto;
	padding-inline: var(--wp--preset--spacing--40);
}

.rv-container--narrow { max-width: 38rem; }

@media (min-width: 48em) {
	.rv-container { padding-inline: var(--wp--preset--spacing--60); }
}

/* --- Tipografi yardımcıları --------------------------------------------- */

.rv-label {
	font-size: var(--wp--preset--font-size--label);
	font-weight: 600;
	letter-spacing: 0.06em;
	text-transform: uppercase;
	/* seal-strong: AA uyumlu altın. Dekoratif seal küçük metinde kullanılmaz. */
	color: var(--wp--preset--color--seal-strong);
}

.rv-label--muted { color: var(--wp--preset--color--ink-muted); }
.rv-label--brand { color: var(--wp--preset--color--brand); }
.rv-label--caution { color: var(--wp--preset--color--caution); }
.rv-label--on-dark { color: var(--wp--preset--color--seal-light); }

.rv-mono {
	font-family: var(--wp--preset--font-family--mono);
	font-size: var(--wp--preset--font-size--stamp);
}

.rv-lede {
	font-size: var(--wp--preset--font-size--lede);
	line-height: var(--wp--custom--line-height--lede);
	letter-spacing: 0.02em;
	color: var(--wp--preset--color--ink-soft);
}

/* --- Son doğrulama mührü ------------------------------------------------- */

.rv-stamp {
	display: inline-flex;
	align-items: center;
	gap: var(--wp--preset--spacing--20);
	font-family: var(--wp--preset--font-family--mono);
	font-size: var(--wp--preset--font-size--stamp);
	font-weight: 500;
	padding: 5px 12px;
	border-radius: var(--wp--custom--rounded--full);
	background: var(--wp--preset--color--verified-tint);
	color: var(--wp--preset--color--verified);
	border: 1px solid rgba(46, 125, 82, 0.35);
}

.rv-stamp--on-dark {
	background: rgba(46, 125, 82, 0.2);
	color: var(--wp--preset--color--verified-light);
	border-color: rgba(46, 125, 82, 0.55);
}

/* --- Butonlar ------------------------------------------------------------ */

.rv-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: var(--wp--preset--spacing--20);
	font-family: var(--wp--preset--font-family--body);
	font-size: var(--wp--preset--font-size--body);
	font-weight: 600;
	line-height: 1.2;
	padding: 14px 24px;
	border-radius: var(--wp--custom--rounded--md);
	border: 1px solid transparent;
	text-decoration: none;
	cursor: pointer;
	/* Dokunma hedefi — DESIGN.md §4 */
	min-height: 44px;
}

.rv-btn:hover { text-decoration: none; }

.rv-btn--primary {
	background: var(--wp--preset--gradient--button-primary);
	color: #FFFFFF;
}
.rv-btn--primary:hover { background: var(--wp--preset--color--brand-strong); color: #FFFFFF; }

/* Altın CTA: seal-strong: beyaz metinle 5,2:1 (AA). Dekoratif seal 3,9:1 ile kalırdı. */
.rv-btn--gold {
	background: var(--wp--preset--color--seal-strong);
	color: #FFFFFF;
}
.rv-btn--gold:hover { background: #7A551B; color: #FFFFFF; }

.rv-btn--secondary {
	background: transparent;
	border-color: var(--wp--preset--color--line-strong);
	color: var(--wp--preset--color--brand-strong);
}
.rv-btn--secondary:hover { border-color: var(--wp--preset--color--brand); color: var(--wp--preset--color--brand-strong); }

/* Lacivert zemin üstü ikincil */
.rv-btn--outline-light {
	background: transparent;
	border-color: rgba(233, 199, 130, 0.5);
	color: var(--wp--preset--color--seal-light);
}
.rv-btn--outline-light:hover { border-color: var(--wp--preset--color--seal-light); color: var(--wp--preset--color--seal-light); }

.rv-btn--on-dark {
	background: #FFFFFF;
	color: var(--wp--preset--color--brand-strong);
}
.rv-btn--on-dark:hover { background: var(--wp--preset--color--paper); color: var(--wp--preset--color--brand-strong); }

.rv-btn--sm { padding: 10px 16px; font-size: var(--wp--preset--font-size--small); }

/* --- Üst bar ------------------------------------------------------------- */

.rv-header {
	position: sticky;
	top: 0;
	z-index: 50;
	background: rgba(250, 248, 244, 0.92);
	backdrop-filter: blur(6px);
	border-bottom: 1px solid var(--wp--preset--color--line);
}

.rv-header__inner {
	max-width: 72rem;
	margin-inline: auto;
	padding: var(--wp--preset--spacing--30) var(--wp--preset--spacing--40);
	display: grid !important;
	grid-template-columns: minmax(190px, 1fr) auto minmax(190px, 1fr);
	align-items: center;
	gap: var(--wp--preset--spacing--40);
}

.rv-logo {
	display: flex;
	align-items: center;
	gap: 10px;
	flex-shrink: 0;
	text-decoration: none;
}
.rv-logo:hover { text-decoration: none; }

.rv-logo__text {
	font-family: var(--wp--preset--font-family--heading);
	font-weight: 700;
	font-size: 1.0625rem;
	line-height: 1.1;
	color: var(--wp--preset--color--brand-strong);
}

/* Dosyadaki masthead, Site Düzenleyici'nde daha önce kaydedilmiş `header`
   kaydından etkilenmesin diye ayrı bir template-part slug'ı kullanır. Marka
   işareti dosyadan gelir; panelde logo seçilmemiş olsa da referans görünür. */
.rv-brand {
	display: inline-flex;
	align-items: center;
	gap: 10px;
	flex-shrink: 0;
	color: var(--wp--preset--color--brand-strong);
	text-decoration: none;
	justify-self: start;
}

.rv-brand:hover { color: var(--wp--preset--color--brand-strong); text-decoration: none; }

.rv-brand__mark {
	position: relative;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 36px;
	height: 36px;
	border-radius: 9px;
	background: var(--wp--preset--color--brand-strong);
	color: var(--wp--preset--color--on-brand);
	font-family: var(--wp--preset--font-family--heading);
	font-size: 15px;
	font-weight: 700;
	letter-spacing: .03em;
}

.rv-brand__mark::after {
	content: "";
	position: absolute;
	left: 10px;
	right: 10px;
	bottom: 7px;
	height: 3px;
	border-radius: 2px;
	background: var(--wp--preset--color--seal);
}

.rv-brand__name {
	display: flex;
	flex-direction: column;
	font-family: var(--wp--preset--font-family--heading);
	font-size: 1.0625rem;
	font-weight: 700;
	line-height: 1.05;
}

/* Menü core/navigation'dır: sahibi menüyü panelden düzenler, mobil örtüyü
   ve erişilebilirliği WordPress çekirdeği taşır. Burada yalnızca giydiriyoruz. */

.rv-header .wp-block-navigation {
	font-size: var(--wp--preset--font-size--small);
	font-weight: 500;
	/* Güvenlik ağı: örtü herhangi bir sebeple devreye girmezse bile
	   menü yatay taşma yaratmasın (mobil çoğunluk). */
	min-width: 0;
	max-width: 100%;
	justify-self: center;
	grid-column: 2;
	grid-row: 1;
}

.rv-header__inner { min-width: 0; }

.rv-header .wp-block-navigation .wp-block-navigation-item__content {
	color: var(--wp--preset--color--ink-soft);
	text-decoration: none;
}
.rv-header .wp-block-navigation .wp-block-navigation-item__content:hover,
.rv-header .wp-block-navigation .current-menu-item .wp-block-navigation-item__content {
	color: var(--wp--preset--color--brand);
}

/* Hamburger — 44px dokunma hedefi.
   DİKKAT: burada `display` verilmez. Çekirdek, örtü düğmesini 600px üstünde
   `display:none` ile gizliyor; bu seçici ondan daha güçlü olduğu için buraya
   yazılan bir `display:flex` masaüstünde de hamburgeri açık bırakıyordu
   (17.07→18.07.2026 canlı hatası). Hizalama, display'e dokunmadan yapılıyor. */
.rv-header .wp-block-navigation__responsive-container-open,
.rv-header .wp-block-navigation__responsive-container-close {
	min-width: 44px;
	min-height: 44px;
	align-items: center;
	justify-content: center;
	color: var(--wp--preset--color--brand-strong);
}

/* Mobil tam ekran örtü */
.rv-header .wp-block-navigation__responsive-container.is-menu-open {
	background: var(--wp--preset--color--paper);
	padding: var(--wp--preset--spacing--40);
}

.rv-header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content {
	padding-top: var(--wp--preset--spacing--60);
}

.rv-header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item {
	width: 100%;
	border-bottom: 1px solid var(--wp--preset--color--line);
}
.rv-header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item:last-child {
	border-bottom: none;
}

.rv-header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item__content {
	padding: 14px 8px;
	font-size: 1.125rem;
	font-weight: 600;
	color: var(--wp--preset--color--ink);
	width: 100%;
}

/* Sağ araçlar dosyada açıkça bulunur. Böylece WooCommerce blok kancaları
   hesap/sepeti navigation sonrasına rastgele eklemez. */
.rv-header__utilities {
	grid-column: 3;
	grid-row: 1;
	justify-self: end;
	display: flex;
	align-items: center;
	justify-content: flex-end;
	gap: var(--wp--preset--spacing--20);
	min-width: 0;
}

.rv-header__utilities > * { margin: 0; flex-shrink: 0; }

.rv-header__cta { display: flex; align-items: center; }
.rv-header__cta .wp-block-button__link {
	padding: 11px 16px;
	font-size: var(--wp--preset--font-size--small);
}

.rv-icon-button,
.rv-header .wc-block-customer-account__link,
.rv-header .wc-block-mini-cart__button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 44px;
	height: 44px;
	min-width: 44px;
	padding: 0;
	margin: 0;
	border: 0;
	background: transparent;
	color: var(--wp--preset--color--brand-strong);
	border-radius: 0;
	cursor: pointer;
}

.rv-icon-button:hover,
.rv-header .wc-block-customer-account__link:hover,
.rv-header .wc-block-mini-cart__button:hover {
	background: transparent;
	color: var(--wp--preset--color--brand);
}

.rv-icon-button svg,
.rv-header .wc-block-customer-account__link svg,
.rv-header .wc-block-mini-cart__button svg { width: 24px; height: 24px; }

body.rv-search-is-open { overflow: hidden; }

.rv-search-overlay[hidden] { display: none !important; }
.rv-search-overlay {
	position: fixed;
	inset: 0;
	z-index: 200;
	display: grid;
	align-items: start;
	justify-items: center;
	padding: clamp(72px, 14vh, 144px) var(--wp--preset--spacing--40) var(--wp--preset--spacing--40);
	background: rgba(255, 255, 255, .5);
	backdrop-filter: blur(4px);
}

.rv-search-overlay__dialog {
	position: relative;
	width: min(100%, 44rem);
	padding: clamp(24px, 4vw, 40px);
	border: 1px solid var(--wp--preset--color--line-strong);
	border-radius: var(--wp--custom--rounded--md);
	background: rgba(255, 255, 255, .96);
	box-shadow: 0 20px 60px rgba(18, 50, 79, .2);
}
.rv-search-close {
	position: fixed;
	top: clamp(16px, 3vw, 32px);
	left: clamp(16px, 3vw, 32px);
	z-index: 1;
	width: 52px;
	height: 52px;
	border: 1px solid var(--wp--preset--color--brand-strong);
	border-radius: var(--wp--custom--rounded--sm);
	background: rgba(255, 255, 255, .96);
	box-shadow: 0 8px 24px rgba(18, 50, 79, .16);
	color: var(--wp--preset--color--brand-strong);
	font-family: Arial, sans-serif;
	font-size: 34px;
	font-weight: 400;
	line-height: 1;
}
.rv-search-close:hover {
	background: var(--wp--preset--color--brand-strong);
	color: #FFFFFF;
}
.rv-search-overlay__top {
	display: flex;
	align-items: center;
	justify-content: flex-start;
	gap: var(--wp--preset--spacing--40);
	margin-bottom: var(--wp--preset--spacing--50);
}
.rv-search-overlay__top > * { margin: 0; }
.rv-search-overlay__form {
	display: grid;
	grid-template-columns: minmax(0, 1fr) auto;
	gap: var(--wp--preset--spacing--20);
}
.rv-search-overlay__form input {
	width: 100%;
	min-height: 56px;
	padding: 0 var(--wp--preset--spacing--40);
	border: 1px solid var(--wp--preset--color--line-strong);
	border-radius: var(--wp--custom--rounded--md);
	background: var(--wp--preset--color--surface);
	color: var(--wp--preset--color--ink);
	font: inherit;
	font-size: var(--wp--preset--font-size--body);
}
.rv-search-overlay__form button {
	min-width: 88px;
	min-height: 56px;
	padding-inline: var(--wp--preset--spacing--50);
	border: 0;
	border-radius: var(--wp--custom--rounded--md);
	background: var(--wp--preset--gradient--button-primary);
	color: #FFFFFF;
	font: inherit;
	font-weight: 600;
	cursor: pointer;
}
.rv-search-overlay__hint {
	margin: var(--wp--preset--spacing--30) 0 0;
	color: var(--wp--preset--color--ink-muted);
	font-size: var(--wp--preset--font-size--x-small);
}

/* Referans tasarımın masaüstü menüsü 1120px'te açılır. Gizli mobil kap masaüstünde
   `position:fixed` kalırsa tüm header'ın tıklama alanını örter; burada konumu da
   normale dönüyor. */
@media (max-width: 69.999em) {
	/* backdrop-filter, header içindeki core/navigation fixed örtüsünü header
	   yüksekliğine hapseder. Mobilde blur kalkınca örtü viewport'a bağlanır. */
	.rv-header {
		-webkit-backdrop-filter: none;
		backdrop-filter: none;
		background: rgba(250, 248, 244, .98);
	}
	.rv-header .wp-block-navigation__responsive-container:not(.is-menu-open) { display: none !important; }
	.rv-header .wp-block-navigation__responsive-container-open { display: flex !important; }
	.rv-header .wp-block-navigation__responsive-container.is-menu-open {
		position: fixed !important;
		inset: 0 !important;
		width: 100vw !important;
		height: 100dvh !important;
		min-height: 100vh;
		overflow-y: auto;
		z-index: 100000;
	}
	.rv-header__inner {
		grid-template-columns: minmax(0, 1fr) auto auto;
		gap: var(--wp--preset--spacing--20);
	}
	.rv-brand { grid-column: 1; grid-row: 1; }
	.rv-header__utilities { grid-column: 2; grid-row: 1; }
	.rv-header .wp-block-navigation { grid-column: 3; grid-row: 1; justify-self: end; }
	.rv-header__cta { display: none; }
}

@media (min-width: 70em) {
	.rv-header .wp-block-navigation__responsive-container:not(.is-menu-open) {
		display: block !important;
		position: static !important;
		inset: auto !important;
		width: auto !important;
		height: auto !important;
		overflow: visible !important;
		background: transparent !important;
	}
	.rv-header .wp-block-navigation__responsive-container-content {
		display: flex;
		align-items: center;
		padding: 0;
	}
	.rv-header .wp-block-navigation__container {
		flex-direction: row;
		align-items: center;
		justify-content: center;
		flex-wrap: nowrap;
	}
	.rv-header .wp-block-navigation__responsive-container-open { display: none !important; }
	.rv-header .wp-block-navigation__responsive-container-close { display: none !important; }
}

/* WooCommerce'in başlığa kendi eklediği hesap + sepet blokları.
   Bunları header.html'e biz yazmadık; Woo blok temalarda başlık şablon
   parçasına otomatik enjekte ediyor. Silmek yerine giydiriyoruz: mağazası
   olan bir sitede sepet ikonu başlıkta dursun.
   Menü ile CTA arasında kaldıkları için hizalanmaları gerekiyor. */
.rv-header .wp-block-woocommerce-customer-account,
.rv-header .wp-block-woocommerce-mini-cart {
	display: flex;
	align-items: center;
	flex-shrink: 0;
	margin-inline-start: 0;
}

/* Menüden sonra ilk gelen Woo bloğu boşluğu alsın, sonrakiler bitişik dursun */
.rv-header .wp-block-woocommerce-customer-account ~ .wp-block-woocommerce-mini-cart {
	margin-inline-start: 0;
}

.rv-header .wc-block-customer-account__link,
.rv-header .wc-block-mini-cart__button {
	display: flex;
	align-items: center;
	justify-content: center;
	min-width: 44px;
	min-height: 44px;
	padding: 0;
	color: var(--wp--preset--color--brand-strong);
	text-decoration: none;
}

.rv-header .wc-block-customer-account__account-icon {
	width: 24px;
	height: 24px;
}

.rv-header .wc-block-customer-account__link .label { display: none; }

@media (max-width: 31.25em) {
	.rv-brand__name { display: none; }
	.rv-header__inner { padding-inline: var(--wp--preset--spacing--30); }
	.rv-header__utilities { gap: 0; }
	.rv-search-overlay__form { grid-template-columns: 1fr; }
	.rv-search-overlay__form button { width: 100%; }
}

/* --- Hero ---------------------------------------------------------------- */

.rv-hero {
	background: var(--wp--preset--color--brand-strong);
	color: var(--wp--preset--color--on-brand);
}

.rv-hero__inner {
	max-width: 72rem;
	margin-inline: auto;
	padding: var(--wp--preset--spacing--80) var(--wp--preset--spacing--40);
	display: flex;
	flex-wrap: wrap;
	gap: var(--wp--preset--spacing--70);
	align-items: center;
}

.rv-hero__text { flex: 1 1 440px; min-width: min(280px, 100%); }
.rv-hero__media { flex: 1 1 320px; min-width: min(260px, 100%); }

.rv-hero__title {
	font-family: var(--wp--preset--font-family--heading);
	font-weight: 700;
	font-size: var(--wp--preset--font-size--display);
	line-height: var(--wp--custom--line-height--tight);
	letter-spacing: -0.01em;
	color: #FFFFFF;
	margin: var(--wp--preset--spacing--50) 0 var(--wp--preset--spacing--50);
}

.rv-hero__lede {
	font-size: var(--wp--preset--font-size--lede);
	line-height: var(--wp--custom--line-height--lede);
	letter-spacing: 0.02em;
	color: var(--wp--preset--color--on-brand-soft);
	margin: 0 0 var(--wp--preset--spacing--60);
	max-width: 38rem;
}

.rv-hero__actions {
	display: flex;
	flex-wrap: wrap;
	gap: var(--wp--preset--spacing--40);
	align-items: center;
}

/* --- Görsel yer tutucu (içerik gelene kadar) ----------------------------- */

.rv-placeholder {
	aspect-ratio: 4 / 3;
	border-radius: var(--wp--custom--rounded--sm);
	display: flex;
	align-items: center;
	justify-content: center;
	padding: var(--wp--preset--spacing--40);
	text-align: center;
}

.rv-placeholder--dark {
	border: 1px solid rgba(255, 255, 255, 0.16);
	background-color: #1A3F60;
	background-image: repeating-linear-gradient(135deg, rgba(255,255,255,.05), rgba(255,255,255,.05) 12px, rgba(255,255,255,.02) 12px, rgba(255,255,255,.02) 24px);
}

.rv-placeholder--light {
	aspect-ratio: 16 / 9;
	border-bottom: 1px solid var(--wp--preset--color--line);
	border-radius: 0;
	background-color: var(--wp--preset--color--surface-sunken);
	background-image: repeating-linear-gradient(135deg, #F3F0E9, #F3F0E9 10px, #EDE9E0 10px, #EDE9E0 20px);
}

.rv-placeholder__tag {
	font-family: var(--wp--preset--font-family--mono);
	font-size: var(--wp--preset--font-size--stamp);
	padding: 8px 12px;
	border-radius: var(--wp--custom--rounded--full);
}
.rv-placeholder--dark .rv-placeholder__tag {
	color: #B7C2CE;
	background: rgba(18, 50, 79, 0.7);
	border: 1px solid rgba(255, 255, 255, 0.14);
}
.rv-placeholder--light .rv-placeholder__tag {
	color: var(--wp--preset--color--ink-muted);
	background: rgba(255, 255, 255, 0.85);
}

.rv-home-visual {
	aspect-ratio: 4 / 3;
	margin: 0;
	overflow: hidden;
	border: 1px solid rgba(255, 255, 255, 0.16);
	border-radius: var(--wp--custom--rounded--sm);
	background: #1A3F60;
}
.rv-home-visual img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

/* --- Bölüm başlığı ------------------------------------------------------- */

.rv-section { padding-block: var(--wp--preset--spacing--80); }
.rv-section--tight { padding-block: var(--wp--preset--spacing--60); }

.rv-section__head { margin-bottom: var(--wp--preset--spacing--60); max-width: 38rem; }
.rv-section__head--center { margin-inline: auto; text-align: center; }

.rv-section__title {
	font-family: var(--wp--preset--font-family--heading);
	font-weight: 700;
	font-size: var(--wp--preset--font-size--h2);
	color: var(--wp--preset--color--brand-strong);
	margin: var(--wp--preset--spacing--30) 0 var(--wp--preset--spacing--20);
}

.rv-section__sub {
	font-size: var(--wp--preset--font-size--body);
	color: var(--wp--preset--color--ink-soft);
	line-height: 1.6;
	margin: 0;
}

/* --- Aşama akışı --------------------------------------------------------- */

.rv-stages {
	display: grid;
	grid-template-columns: 1fr;
	gap: var(--wp--preset--spacing--40);
}

@media (min-width: 40em) { .rv-stages { grid-template-columns: repeat(2, 1fr); } }
@media (min-width: 64em) { .rv-stages { grid-template-columns: repeat(4, 1fr); } }

.rv-stage-card {
	position: relative;
	background: var(--wp--preset--color--surface);
	border: 1px solid var(--wp--preset--color--line);
	border-radius: var(--wp--custom--rounded--sm);
	padding: var(--wp--preset--spacing--50);
	display: flex;
	flex-direction: column;
	gap: var(--wp--preset--spacing--20);
	text-decoration: none;
}
.rv-stage-card:hover,
.rv-stage-card:focus-within {
	border-color: var(--wp--preset--color--brand);
	box-shadow: var(--wp--preset--shadow--raised);
	text-decoration: none;
}

.rv-stage-card__top { display: flex; align-items: center; justify-content: space-between; }

.rv-stage-card__num {
	width: 34px;
	height: 34px;
	border-radius: var(--wp--custom--rounded--full);
	background: var(--wp--preset--color--brand-strong);
	color: #FFFFFF;
	font-family: var(--wp--preset--font-family--heading);
	font-weight: 700;
	font-size: 1rem;
	display: flex;
	align-items: center;
	justify-content: center;
	flex-shrink: 0;
}

.rv-stage-card__title {
	font-family: var(--wp--preset--font-family--heading);
	font-weight: 600;
	font-size: 1.0625rem;
	line-height: 1.35;
	color: var(--wp--preset--color--ink);
}

.rv-stage-card__title a { color: inherit; text-decoration: none; }
.rv-stage-card__title a:hover { color: var(--wp--preset--color--brand); text-decoration: none; }

/* Dokunma hedefi: bağlantı metni ~20px kalıyordu. Kartın tamamını hedef yaparak
   44px kuralını karşılıyoruz ve tasarımın "kart tıklanabilir" niyetini koruyoruz
   — tek bağlantı olduğu için iç içe etkileşimli öğe sorunu doğmaz. */
.rv-stage-card__title a::after {
	content: "";
	position: absolute;
	inset: 0;
}

.rv-stage-card__desc {
	font-size: var(--wp--preset--font-size--small);
	color: var(--wp--preset--color--ink-muted);
	line-height: 1.5;
}

.rv-tag {
	font-size: var(--wp--preset--font-size--label);
	font-weight: 600;
	letter-spacing: 0.06em;
	text-transform: uppercase;
	color: var(--wp--preset--color--seal-strong);
	background: var(--wp--preset--color--seal-tint);
	padding: 3px 8px;
	border-radius: var(--wp--custom--rounded--full);
}

/* --- Uyarı notu ---------------------------------------------------------- */

.rv-notice {
	background: var(--wp--preset--gradient--caution-band);
	border-left: 3px solid var(--wp--preset--color--caution);
	padding: var(--wp--preset--spacing--50);
	display: flex;
	flex-wrap: wrap;
	gap: var(--wp--preset--spacing--40);
	align-items: center;
	justify-content: space-between;
}

.rv-notice__body { max-width: 38rem; }
.rv-notice__text {
	font-size: var(--wp--preset--font-size--body);
	line-height: var(--wp--custom--line-height--body);
	color: var(--wp--preset--color--ink);
	margin: 0;
}

/* --- Rehber kartları ----------------------------------------------------- */

.rv-band {
	background: var(--wp--preset--color--surface-sunken);
	border-block: 1px solid var(--wp--preset--color--line);
}

.rv-guides {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: var(--wp--preset--spacing--50);
}

@media (max-width: 63.999em) {
	.rv-guides { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 39.999em) {
	.rv-guides { grid-template-columns: minmax(0, 1fr); }
}

.rv-guide-card {
	background: var(--wp--preset--color--surface);
	border: 1px solid var(--wp--preset--color--line);
	border-radius: var(--wp--custom--rounded--sm);
	overflow: hidden;
	display: flex;
	flex-direction: column;
}

.rv-guide-card--support { border-top: 3px solid var(--wp--preset--color--seal); }

.rv-guide-card__body {
	padding: var(--wp--preset--spacing--50);
	display: flex;
	flex-direction: column;
	gap: var(--wp--preset--spacing--30);
	flex: 1;
}

.rv-guide-card__title {
	font-family: var(--wp--preset--font-family--heading);
	font-weight: 700;
	font-size: var(--wp--preset--font-size--h3);
	color: var(--wp--preset--color--brand-strong);
	margin: 0;
}

.rv-guide-card__desc {
	font-size: var(--wp--preset--font-size--small);
	color: var(--wp--preset--color--ink-soft);
	line-height: 1.6;
	margin: 0;
	flex: 1;
}

.rv-guide-card__foot {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: var(--wp--preset--spacing--30);
	margin-top: var(--wp--preset--spacing--20);
}

.rv-guide-card__price {
	font-family: var(--wp--preset--font-family--heading);
	font-weight: 700;
	font-size: 1.375rem;
	color: var(--wp--preset--color--brand-strong);
}
/* WooCommerce fiyat biçimlendirmesi kart içinde sadeleşir */
.rv-guide-card__price .woocommerce-Price-amount { font-size: inherit; color: inherit; }
.rv-guide-card__price del { opacity: .5; font-size: .8em; margin-inline-end: 6px; }
.rv-guide-card__price ins { text-decoration: none; }

/* --- Lacivert panel (dosya durumu) --------------------------------------- */

.rv-panel {
	background: var(--wp--preset--color--brand-strong);
	border-radius: var(--wp--custom--rounded--sm);
	padding: var(--wp--preset--spacing--70);
	display: flex;
	flex-wrap: wrap;
	gap: var(--wp--preset--spacing--60);
	align-items: center;
	justify-content: space-between;
}

.rv-panel__text { flex: 1 1 380px; min-width: min(260px, 100%); }
.rv-panel__media { flex: 1 1 260px; min-width: min(240px, 100%); }

.rv-panel__title {
	font-family: var(--wp--preset--font-family--heading);
	font-weight: 700;
	font-size: var(--wp--preset--font-size--h2);
	color: #FFFFFF;
	margin: var(--wp--preset--spacing--30) 0 var(--wp--preset--spacing--30);
}

.rv-panel__lede {
	font-size: var(--wp--preset--font-size--body);
	color: var(--wp--preset--color--on-brand-soft);
	line-height: 1.6;
	margin: 0 0 var(--wp--preset--spacing--50);
	max-width: 34rem;
}

/* --- Güven bandı --------------------------------------------------------- */

.rv-trust {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
	gap: var(--wp--preset--spacing--50);
}

.rv-trust__item { border-top: 2px solid var(--wp--preset--color--seal); padding-top: 14px; }

.rv-trust__text {
	font-size: var(--wp--preset--font-size--small);
	color: var(--wp--preset--color--ink-soft);
	line-height: 1.6;
	margin: 0;
}

.rv-trust__item--guarantee {
	background: var(--wp--preset--color--verified-tint);
	border-top: none;
	border-radius: var(--wp--custom--rounded--sm);
	padding: 14px 16px;
}
.rv-trust__item--guarantee .rv-label { color: var(--wp--preset--color--verified); }
.rv-trust__item--guarantee .rv-trust__text {
	color: var(--wp--preset--color--ink);
	font-size: var(--wp--preset--font-size--x-small);
	line-height: 1.5;
}

/* --- SSS (core/details = native <details> — JS gerektirmez) --------------- */

.rv-faq__item {
	border-bottom: 1px solid var(--wp--preset--color--line);
	margin-block: 0;
}

.rv-faq__item > summary {
	list-style: none;
	cursor: pointer;
	padding: 18px 0;
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: var(--wp--preset--spacing--30);
	font-family: var(--wp--preset--font-family--heading);
	font-size: 1.0625rem;
	font-weight: 600;
	color: var(--wp--preset--color--ink);
	/* Dokunma hedefi — DESIGN.md §4 */
	min-height: 44px;
}
.rv-faq__item > summary::-webkit-details-marker,
.rv-faq__item > summary::marker { display: none; content: ""; }

.rv-faq__item > summary::after {
	content: "+";
	font-size: 1.375rem;
	line-height: 1;
	color: var(--wp--preset--color--seal-strong);
	flex-shrink: 0;
}
.rv-faq__item[open] > summary::after { content: "–"; }

/* --- Yemin sayfası ------------------------------------------------------- */

/* Video sayfanın en görünür öğesi; taşmasın, kenarları sayfayla aynı olsun. */
.rv-video video {
	width: 100%;
	height: auto;
	display: block;
	border-radius: var(--wp--custom--rounded--sm);
	background: var(--wp--preset--color--brand-strong);
}

/* Yemin metinleri. Eski sayfada 1/4 genişlikte sütunlara sıkışıyor, mobilde
   satır başına üç kelime düşüyordu. Artık iki eşit sütun ve 782px altında
   çekirdek zaten alt alta yığıyor. */
.rv-oath__text {
	margin: 0;
	padding: var(--wp--preset--spacing--40);
	background: var(--wp--preset--color--surface);
	border-inline-start: 3px solid var(--wp--preset--color--seal);
	border-radius: var(--wp--custom--rounded--sm);
}

.rv-oath__text p {
	margin: 0;
	font-size: var(--wp--preset--font-size--lede);
	line-height: var(--wp--custom--line-height--lede);
}

.rv-faq__a {
	font-size: var(--wp--preset--font-size--small);
	color: var(--wp--preset--color--ink-soft);
	line-height: var(--wp--custom--line-height--body);
	margin: 0 0 18px;
}

/* --- İç sayfa iskeleti ------------------------------------------------- */

.rv-page-head {
	border-bottom: 1px solid var(--wp--preset--color--line);
	background: var(--wp--preset--color--surface-sunken);
	padding-block: var(--wp--preset--spacing--70);
}

.rv-page-head > * {
	width: min(100%, 72rem);
	margin-inline: auto;
}

.rv-page-head .wp-block-post-title {
	max-width: 44rem;
	margin-block: 0;
	margin-inline: auto;
	font-size: clamp(1.875rem, 4.5vw, 2.5rem);
	line-height: 1.12;
}

.rv-page-head .wp-block-post-excerpt {
	max-width: 44rem;
	margin: var(--wp--preset--spacing--40) auto 0;
	color: var(--wp--preset--color--ink-soft);
}

.rv-page-body {
	padding-block: var(--wp--preset--spacing--70) var(--wp--preset--spacing--80);
}

.rv-page-body > .wp-block-post-featured-image,
.rv-page-body > .wp-block-post-content {
	width: min(100%, 44rem);
	margin-inline: auto;
}

.rv-page-body > .wp-block-post-featured-image { margin-bottom: var(--wp--preset--spacing--60); }

.rv-prose {
	font-size: var(--wp--preset--font-size--body);
	line-height: var(--wp--custom--line-height--body);
}

.rv-prose > :first-child { margin-top: 0; }
.rv-prose h2 { margin-top: var(--wp--preset--spacing--70); }
.rv-prose h3 { margin-top: var(--wp--preset--spacing--60); }
.rv-prose :where(p, ul, ol, blockquote) { margin-bottom: var(--wp--preset--spacing--50); }
.rv-prose :where(img, video) { border-radius: var(--wp--custom--rounded--sm); }
.rv-prose blockquote:not(.rv-oath__text) {
	margin-inline: 0;
	padding: var(--wp--preset--spacing--40) var(--wp--preset--spacing--50);
	border-inline-start: 3px solid var(--wp--preset--color--seal);
	background: var(--wp--preset--color--surface);
}

/* --- Mevzuat sayfası (S7) --------------------------------------------- */

.rv-law-page {
	background: var(--wp--preset--color--paper);
	padding-block: var(--wp--preset--spacing--50) var(--wp--preset--spacing--80);
}
.rv-law-page > * { margin-block-start: 0; }

.rv-law-breadcrumb {
	width: min(100%, 72rem);
	margin: 0 auto var(--wp--preset--spacing--50);
	padding-inline: var(--wp--preset--spacing--40);
	font-size: var(--wp--preset--font-size--stamp);
	color: var(--wp--preset--color--ink-muted);
}

.rv-law-breadcrumb a { color: var(--wp--preset--color--brand); }

.rv-law-heading,
.rv-law-layout {
	width: min(100%, 72rem);
	margin-inline: auto;
	padding-inline: var(--wp--preset--spacing--40);
	display: grid;
	grid-template-columns: minmax(220px, 23%) minmax(0, 1fr);
	align-items: start;
	gap: var(--wp--preset--spacing--70);
}

.rv-law-heading {
	margin-bottom: var(--wp--preset--spacing--60);
	row-gap: var(--wp--preset--spacing--30);
}
.rv-law-heading > .wp-block-post-title {
	grid-column: 2;
	margin: 0;
	font-size: clamp(2rem, 4vw, 2.75rem);
	line-height: 1.1;
}
.rv-law-heading__status {
	grid-column: 2;
	margin: 0;
	padding: var(--wp--preset--spacing--30) var(--wp--preset--spacing--40);
	border-inline-start: 3px solid var(--wp--preset--color--verified);
	border-radius: 0;
	background: var(--wp--preset--gradient--verified-band);
	color: var(--wp--preset--color--ink-soft);
}

.rv-law-toc {
	position: sticky;
	top: 6.5rem;
	padding: var(--wp--preset--spacing--50);
	border: 1px solid var(--wp--preset--color--line);
	border-radius: var(--wp--custom--rounded--sm);
	background: var(--wp--preset--color--surface);
}

.rv-law-toc__label {
	margin: 0 0 var(--wp--preset--spacing--30);
	font-family: var(--wp--preset--font-family--mono);
	font-size: var(--wp--preset--font-size--label);
	font-weight: 700;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: var(--wp--preset--color--brand-strong);
}

.rv-law-toc ul { margin: 0; padding: 0; list-style: none; }
.rv-law-toc li + li { margin-top: var(--wp--preset--spacing--20); }
.rv-law-toc a {
	display: block;
	padding-block: var(--wp--preset--spacing--10);
	font-size: var(--wp--preset--font-size--small);
	line-height: 1.35;
	color: var(--wp--preset--color--ink-soft);
	text-decoration: none;
}
.rv-law-toc a:hover,
.rv-law-toc a:focus-visible { color: var(--wp--preset--color--brand); text-decoration: underline; }

.rv-law-main { min-width: 0; }
.rv-law-content { width: 100%; }
:where(.rv-prose, .rv-stage-prose) :where(h2, h3, [id]) { scroll-margin-top: 7rem; }
:where(.rv-prose, .rv-stage-prose) .rv-law-status,
:where(.rv-prose, .rv-stage-prose) .rv-law-box,
:where(.rv-prose, .rv-stage-prose) .rv-caution-box {
	padding: var(--wp--preset--spacing--40) var(--wp--preset--spacing--50);
	border-radius: 0;
}
:where(.rv-prose, .rv-stage-prose) .rv-law-status {
	border-inline-start: 3px solid var(--wp--preset--color--verified);
	background: var(--wp--preset--gradient--verified-band);
}
:where(.rv-prose, .rv-stage-prose) .rv-law-box {
	border-inline-start: 3px solid var(--wp--preset--color--brand);
	background: var(--wp--preset--gradient--law-band);
}
:where(.rv-prose, .rv-stage-prose) .rv-caution-box {
	border-inline-start: 3px solid var(--wp--preset--color--caution);
	background: var(--wp--preset--gradient--caution-band);
}
:where(.rv-prose, .rv-stage-prose) :where(.rv-law-status, .rv-law-box, .rv-caution-box) > :last-child { margin-bottom: 0; }
:where(.rv-prose, .rv-stage-prose) .wp-block-table { overflow-x: auto; }
:where(.rv-prose, .rv-stage-prose) table { min-width: 38rem; }

@media (max-width: 55.999em) {
	.rv-law-heading,
	.rv-law-layout { grid-template-columns: 1fr; gap: var(--wp--preset--spacing--50); }
	.rv-law-heading { gap: var(--wp--preset--spacing--30); }
	.rv-law-heading > .wp-block-post-title,
	.rv-law-heading__status { grid-column: 1; }
	.rv-law-toc { position: static; }
	.rv-law-toc ul { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--wp--preset--spacing--20) var(--wp--preset--spacing--40); }
	.rv-law-toc li + li { margin-top: 0; }
}

@media (max-width: 32rem) {
	.rv-law-breadcrumb,
	.rv-law-heading,
	.rv-law-layout { padding-inline: var(--wp--preset--spacing--30); }
	.rv-law-toc ul { grid-template-columns: 1fr; }
	:where(.rv-prose, .rv-stage-prose) .rv-law-status,
	:where(.rv-prose, .rv-stage-prose) .rv-law-box,
	:where(.rv-prose, .rv-stage-prose) .rv-caution-box { padding: var(--wp--preset--spacing--40); }
}

/* --- Dosya durumu (S5) ------------------------------------------------ */

.rv-status-page {
	background: var(--wp--preset--color--paper);
	padding-block: var(--wp--preset--spacing--40) var(--wp--preset--spacing--80);
}

.rv-status-breadcrumb,
.rv-status-heading,
.rv-status-shell {
	width: min(100%, 72rem);
	margin-inline: auto;
	padding-inline: var(--wp--preset--spacing--40);
}

.rv-status-breadcrumb {
	margin-bottom: var(--wp--preset--spacing--50);
	color: var(--wp--preset--color--ink-muted);
	font-size: var(--wp--preset--font-size--x-small);
}
.rv-status-breadcrumb a { color: var(--wp--preset--color--ink-muted); }

.rv-status-heading {
	margin-bottom: var(--wp--preset--spacing--60);
}
.rv-status-heading > * { max-width: 48rem; margin-inline: 0; }
.rv-status-heading .wp-block-post-title {
	margin-block: 0;
	font-size: clamp(1.875rem, 4.5vw, 2.5rem);
	line-height: 1.12;
}
.rv-status-heading .wp-block-post-excerpt {
	margin-top: var(--wp--preset--spacing--40);
	color: var(--wp--preset--color--ink-soft);
	font-size: var(--wp--preset--font-size--lede);
}
.rv-status-heading .wp-block-post-excerpt__excerpt { margin: 0; }

.rv-status-shell {
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(16rem, 20rem);
	gap: var(--wp--preset--spacing--70);
	align-items: start;
}
.rv-status-main { min-width: 0; }
.rv-status-main > .wp-block-post-content { width: 100%; }

.rv-status-verified {
	margin: 0 0 var(--wp--preset--spacing--60);
	padding: var(--wp--preset--spacing--30) var(--wp--preset--spacing--40);
	border-inline-start: 3px solid var(--wp--preset--color--verified);
	border-radius: 0;
	background: var(--wp--preset--gradient--verified-band);
	color: var(--wp--preset--color--ink-soft);
}

.rv-status-steps {
	display: grid;
	gap: var(--wp--preset--spacing--40);
	margin-block: var(--wp--preset--spacing--50) var(--wp--preset--spacing--60);
}
.rv-status-step {
	display: grid;
	grid-template-columns: 2.125rem minmax(0, 1fr);
	gap: var(--wp--preset--spacing--40);
	align-items: start;
	margin: 0;
	padding: var(--wp--preset--spacing--50);
	border: 1px solid var(--wp--preset--color--line);
	border-radius: var(--wp--custom--rounded--sm);
	background: var(--wp--preset--color--surface);
}
.rv-status-step__number {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 2.125rem;
	height: 2.125rem;
	margin: 0;
	border-radius: var(--wp--custom--rounded--full);
	background: var(--wp--preset--color--brand-strong);
	color: #FFFFFF;
	font-family: var(--wp--preset--font-family--heading);
	font-weight: 700;
}
.rv-status-step__body > :first-child { margin-top: 0; }
.rv-status-step__body > :last-child { margin-bottom: 0; }
.rv-status-step__body h3 { margin-bottom: var(--wp--preset--spacing--20); }

.rv-status-aside {
	position: sticky;
	top: 6.5rem;
}
.rv-status-links {
	padding: var(--wp--preset--spacing--50);
	border-radius: var(--wp--custom--rounded--sm);
	background: var(--wp--preset--color--brand-strong);
	color: var(--wp--preset--color--on-brand-soft);
}
.rv-status-links .rv-label { color: var(--wp--preset--color--seal-light); }
.rv-status-links a {
	display: flex;
	justify-content: space-between;
	gap: var(--wp--preset--spacing--30);
	margin-top: var(--wp--preset--spacing--30);
	padding: var(--wp--preset--spacing--30) var(--wp--preset--spacing--40);
	border: 1px solid rgba(255,255,255,.16);
	border-radius: var(--wp--custom--rounded--md);
	background: rgba(255,255,255,.06);
	color: #FFFFFF;
	font-weight: 600;
	text-decoration: none;
}
.rv-status-links a:hover,
.rv-status-links a:focus-visible { color: #FFFFFF; text-decoration: underline; }
.rv-status-links__note {
	margin: var(--wp--preset--spacing--40) 0 0;
	font-size: var(--wp--preset--font-size--stamp);
}
.rv-status-related {
	margin-top: var(--wp--preset--spacing--40);
	padding: var(--wp--preset--spacing--50);
	border: 1px solid var(--wp--preset--color--line);
	border-radius: var(--wp--custom--rounded--sm);
	background: var(--wp--preset--color--surface);
}
.rv-status-related a { display: block; margin-top: var(--wp--preset--spacing--30); }

.rv-status-main > .wp-block-comments {
	margin-top: var(--wp--preset--spacing--70);
	padding-top: var(--wp--preset--spacing--60);
	border-top: 2px solid var(--wp--preset--color--line-strong);
}

@media (max-width: 55.999em) {
	.rv-status-shell { grid-template-columns: 1fr; }
	.rv-status-aside { position: static; }
}

@media (max-width: 32rem) {
	.rv-status-breadcrumb,
	.rv-status-heading,
	.rv-status-shell { padding-inline: var(--wp--preset--spacing--30); }
	.rv-status-step { grid-template-columns: 1fr; }
}

/* --- Blog / arşiv kartları -------------------------------------------- */

.rv-listing-head {
	background: var(--wp--preset--color--brand-strong);
	color: var(--wp--preset--color--on-brand);
	padding-block: var(--wp--preset--spacing--70);
}

.rv-listing-head :where(h1, .wp-block-query-title) { color: #FFFFFF; margin: 0; }
.rv-listing-head .wp-block-term-description { color: var(--wp--preset--color--on-brand-soft); }

.rv-listing-body { padding-block: var(--wp--preset--spacing--70) var(--wp--preset--spacing--80); }

.rv-listing-body .wp-block-query-pagination {
	display: flex;
	flex-wrap: wrap;
	gap: var(--wp--preset--spacing--30);
	align-items: center;
	justify-content: center;
	margin-top: var(--wp--preset--spacing--70);
}

.rv-search-form { margin-block: var(--wp--preset--spacing--50); }

.rv-empty-state {
	width: min(100%, 38rem);
	margin-inline: auto;
	padding-block: var(--wp--preset--spacing--90);
	text-align: center;
}

.rv-empty-state .wp-block-search { margin-block: var(--wp--preset--spacing--60); }

.rv-post-grid.wp-block-post-template {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(min(260px, 100%), 1fr));
	gap: var(--wp--preset--spacing--50);
}

.rv-post-grid > li {
	margin: 0;
	padding: 0 0 var(--wp--preset--spacing--50);
	overflow: hidden;
	background: var(--wp--preset--color--surface);
	border: 1px solid var(--wp--preset--color--line);
	border-radius: var(--wp--custom--rounded--sm);
}

.rv-post-grid .wp-block-post-featured-image { margin: 0 0 var(--wp--preset--spacing--40); }
.rv-post-grid .wp-block-post-featured-image img { width: 100%; aspect-ratio: 5 / 4; object-fit: cover; }
.rv-post-grid :where(.wp-block-post-title, .wp-block-post-date, .wp-block-post-excerpt, .wp-block-post-terms) {
	margin-inline: var(--wp--preset--spacing--50);
}
.rv-post-grid .wp-block-post-title { margin-block: var(--wp--preset--spacing--20); font-size: var(--wp--preset--font-size--h3); }
.rv-post-grid .wp-block-post-excerpt { color: var(--wp--preset--color--ink-soft); }
.rv-post-grid .wp-block-post-excerpt__more-link { font-weight: 600; }

/* --- Blog dizini (S10) ------------------------------------------------- */

.rv-blog-index__head {
	padding-block: var(--wp--preset--spacing--70) var(--wp--preset--spacing--60);
}

.rv-blog-index__head > * { margin-inline: 0; }
.rv-blog-index__head h1 { margin: 0 0 var(--wp--preset--spacing--30); font-size: clamp(1.875rem, 4.5vw, 2.5rem); }
.rv-blog-index__head .rv-lede { max-width: 40rem; margin-bottom: 0; }
.rv-blog-index__body { padding-bottom: var(--wp--preset--spacing--80); }

.rv-blog-grid.wp-block-post-template {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: var(--wp--preset--spacing--50);
}

.rv-blog-grid > li {
	display: flex;
	flex-direction: column;
	margin: 0;
	overflow: hidden;
	background: var(--wp--preset--color--surface);
	border: 1px solid var(--wp--preset--color--line);
	border-radius: var(--wp--custom--rounded--sm);
}

.rv-blog-grid > li:not(:has(.wp-block-post-featured-image img))::before {
	content: "yazı görseli";
	display: grid;
	place-items: center;
	aspect-ratio: 5 / 4;
	border-bottom: 1px solid var(--wp--preset--color--line);
	background-color: var(--wp--preset--color--surface-sunken);
	background-image: repeating-linear-gradient(135deg, #F3F0E9, #F3F0E9 10px, #EDE9E0 10px, #EDE9E0 20px);
	font-family: var(--wp--preset--font-family--mono);
	font-size: var(--wp--preset--font-size--stamp);
	color: var(--wp--preset--color--ink-muted);
}

.rv-blog-grid .wp-block-post-featured-image { margin: 0; }
.rv-blog-grid .wp-block-post-featured-image img { width: 100%; aspect-ratio: 5 / 4; object-fit: cover; }
.rv-blog-card__body { display: flex; flex: 1; flex-direction: column; gap: var(--wp--preset--spacing--20); padding: var(--wp--preset--spacing--50); }
.rv-blog-card__body > * { margin: 0; }
.rv-blog-card__meta { gap: var(--wp--preset--spacing--30); align-items: center; }
.rv-blog-card__meta .wp-block-post-date { color: var(--wp--preset--color--ink-muted); font-size: .75rem; }
.rv-blog-card__body .wp-block-post-title { line-height: 1.25; }
.rv-blog-card__body .wp-block-post-excerpt { color: var(--wp--preset--color--ink-soft); font-size: var(--wp--preset--font-size--small); line-height: 1.6; }
.rv-blog-index .wp-block-query-pagination { margin-top: var(--wp--preset--spacing--70); gap: var(--wp--preset--spacing--20); }

@media (max-width: 63.999em) {
	.rv-blog-grid.wp-block-post-template { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 39.999em) {
	.rv-blog-grid.wp-block-post-template { grid-template-columns: 1fr; }
}

.rv-article {
	width: min(100%, 44rem);
	margin-inline: auto;
	padding-block: var(--wp--preset--spacing--40) var(--wp--preset--spacing--80);
}

.rv-breadcrumb {
	gap: 6px;
	margin-bottom: var(--wp--preset--spacing--50);
	color: var(--wp--preset--color--ink-muted);
	font-size: var(--wp--preset--font-size--x-small);
}
.rv-breadcrumb a { color: var(--wp--preset--color--ink-muted); }
.rv-breadcrumb > * { margin: 0; }

.rv-article__meta {
	display: flex;
	flex-wrap: wrap;
	gap: var(--wp--preset--spacing--30);
	align-items: center;
	margin-bottom: var(--wp--preset--spacing--40);
	font-family: var(--wp--preset--font-family--mono);
	font-size: var(--wp--preset--font-size--stamp);
	color: var(--wp--preset--color--ink-muted);
}
.rv-article__meta > * { margin: 0; }

.rv-article .wp-block-post-title { margin-top: 0; font-size: clamp(1.75rem, 4.5vw, 2.375rem); }
.rv-article > .wp-block-post-featured-image { margin-block: var(--wp--preset--spacing--50) var(--wp--preset--spacing--60); }
.rv-article > .wp-block-post-featured-image img { border-radius: var(--wp--custom--rounded--sm); }

.rv-related-posts { margin-block: var(--wp--preset--spacing--70); }
.rv-related-posts h2 { margin: 0 0 var(--wp--preset--spacing--40); font-size: var(--wp--preset--font-size--h3); }
.rv-related-posts__grid {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(min(190px, 100%), 1fr));
	gap: var(--wp--preset--spacing--40);
}
.rv-related-post {
	display: flex;
	flex-direction: column;
	gap: var(--wp--preset--spacing--20);
	padding: var(--wp--preset--spacing--50);
	border: 1px solid var(--wp--preset--color--line);
	border-radius: var(--wp--custom--rounded--sm);
	background: var(--wp--preset--color--surface);
	text-decoration: none;
}
.rv-related-post:hover { border-color: var(--wp--preset--color--line-strong); text-decoration: none; }
.rv-related-post__title {
	font-family: var(--wp--preset--font-family--heading);
	font-weight: 700;
	line-height: 1.3;
	color: var(--wp--preset--color--brand-strong);
}

.rv-article > .wp-block-separator { margin-block: var(--wp--preset--spacing--60); }
.rv-article > .wp-block-comments { padding-top: var(--wp--preset--spacing--40); border-top: 2px solid var(--wp--preset--color--line-strong); }
.rv-article .wp-block-comments-title { font-size: var(--wp--preset--font-size--h3); }
.rv-article .wp-block-comment-template { padding: 0; list-style: none; }
.rv-article .wp-block-comment-template > li {
	padding: var(--wp--preset--spacing--50);
	border: 1px solid var(--wp--preset--color--line);
	border-radius: var(--wp--custom--rounded--sm);
	background: var(--wp--preset--color--surface);
}
.rv-article .comment-reply-title { font-size: var(--wp--preset--font-size--h3); }
.rv-article :where(input:not([type="submit"]), textarea) {
	width: 100%;
	padding: var(--wp--preset--spacing--30);
	border: 1px solid var(--wp--preset--color--line-strong);
	border-radius: var(--wp--custom--rounded--md);
	background: var(--wp--preset--color--surface);
	font: inherit;
}
.rv-article input[type="submit"] {
	min-height: 44px;
	padding-inline: var(--wp--preset--spacing--50);
	border: 0;
	border-radius: var(--wp--custom--rounded--md);
	background: var(--wp--preset--gradient--button-primary);
	color: #FFFFFF;
	font: inherit;
	font-weight: 600;
	cursor: pointer;
}

/* --- Aşama yazısı (S2) ------------------------------------------------- */

.rv-stage-page { padding-bottom: var(--wp--preset--spacing--80); }

.rv-stage-breadcrumb,
.rv-stage-shell {
	width: min(100%, 72rem);
	margin-inline: auto;
	padding-inline: var(--wp--preset--spacing--40);
}

.rv-stage-breadcrumb {
	gap: 6px;
	padding-top: var(--wp--preset--spacing--40);
	color: var(--wp--preset--color--ink-muted);
	font-size: var(--wp--preset--font-size--x-small);
}
.rv-stage-breadcrumb > * { margin: 0; }
.rv-stage-breadcrumb a { color: var(--wp--preset--color--ink-muted); }

.rv-stage-shell {
	display: grid;
	grid-template-columns: minmax(220px, 23%) minmax(0, 1fr);
	gap: var(--wp--preset--spacing--70);
	align-items: start;
	padding-top: var(--wp--preset--spacing--50);
}

.rv-stage-sidebar {
	position: sticky;
	top: 96px;
	min-width: 0;
}

.rv-stage-map {
	padding: var(--wp--preset--spacing--50);
	border: 1px solid var(--wp--preset--color--line);
	border-radius: var(--wp--custom--rounded--sm);
	background: var(--wp--preset--color--surface);
}
.rv-stage-map > .rv-label { margin-bottom: var(--wp--preset--spacing--30); }
.rv-stage-map__link {
	display: flex;
	align-items: center;
	gap: var(--wp--preset--spacing--30);
	min-height: 42px;
	padding-block: var(--wp--preset--spacing--20);
	color: var(--wp--preset--color--ink-muted);
	font-size: var(--wp--preset--font-size--small);
	font-weight: 500;
	line-height: 1.35;
	text-decoration: none;
}
.rv-stage-map__link:hover { color: var(--wp--preset--color--brand-strong); text-decoration: none; }
.rv-stage-map__text {
	display: flex;
	min-width: 0;
	flex-direction: column;
	gap: var(--wp--preset--spacing--10);
}
.rv-stage-map__type {
	color: var(--wp--preset--color--seal-strong);
	font-family: var(--wp--preset--font-family--mono);
	font-size: var(--wp--preset--font-size--stamp);
	font-weight: 600;
	letter-spacing: .04em;
	text-transform: uppercase;
}
.rv-stage-map__number {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 26px;
	height: 26px;
	flex: 0 0 26px;
	border: 1px solid var(--wp--preset--color--line);
	border-radius: var(--wp--custom--rounded--full);
	background: var(--wp--preset--color--surface);
	color: var(--wp--preset--color--ink-muted);
	font-family: var(--wp--preset--font-family--mono);
	font-size: var(--wp--preset--font-size--stamp);
	font-weight: 600;
}
.rv-stage-map__link--current { color: var(--wp--preset--color--brand-strong); font-weight: 700; }
.rv-stage-map__link--current .rv-stage-map__number {
	border-color: var(--wp--preset--color--brand);
	background: var(--wp--preset--color--brand);
	color: #FFFFFF;
}

.rv-stage-article {
	width: 100%;
	min-width: 0;
	justify-self: stretch;
}
.rv-stage-article > * { margin-inline: 0; }
.rv-stage-meta {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	gap: var(--wp--preset--spacing--30);
	margin-bottom: var(--wp--preset--spacing--30);
}
.rv-stage-kicker {
	font-family: var(--wp--preset--font-family--mono);
	font-size: var(--wp--preset--font-size--stamp);
	font-weight: 600;
	letter-spacing: .04em;
	color: var(--wp--preset--color--seal-strong);
}
.rv-stage-updated {
	padding: 4px 10px;
	border: 1px solid var(--wp--preset--color--line);
	border-radius: var(--wp--custom--rounded--full);
	background: var(--wp--preset--color--surface-sunken);
	color: var(--wp--preset--color--ink-muted);
	font-family: var(--wp--preset--font-family--mono);
	font-size: var(--wp--preset--font-size--stamp);
}
.rv-stage-article > .wp-block-post-title {
	margin: 0 0 var(--wp--preset--spacing--50);
	font-size: clamp(1.75rem, 4vw, 2.25rem);
	line-height: 1.15;
}

.rv-stage-summary {
	margin-bottom: var(--wp--preset--spacing--60);
	padding: var(--wp--preset--spacing--50);
	border: 1px solid var(--wp--preset--color--line);
	border-radius: var(--wp--custom--rounded--sm);
	background: var(--wp--preset--color--surface);
}
.rv-stage-summary__row {
	display: grid;
	grid-template-columns: 120px minmax(0, 1fr);
	gap: var(--wp--preset--spacing--30);
	align-items: baseline;
	padding-block: var(--wp--preset--spacing--30);
	border-bottom: 1px solid var(--wp--preset--color--line);
}
.rv-stage-summary__row:first-child { padding-top: 0; }
.rv-stage-summary__row:last-child { padding-bottom: 0; border-bottom: 0; }
.rv-stage-summary__row > span {
	color: var(--wp--preset--color--ink-muted);
	font-size: var(--wp--preset--font-size--label);
	font-weight: 600;
	letter-spacing: .06em;
	text-transform: uppercase;
}
.rv-stage-summary__row :where(strong, a) { font-size: var(--wp--preset--font-size--small); }

.rv-stage-prose {
	max-width: none !important;
	padding-inline: 0 !important;
	font-size: var(--wp--preset--font-size--body);
	line-height: var(--wp--custom--line-height--body);
}
.rv-stage-prose > :first-child { margin-top: 0; }
.rv-stage-prose h2 { margin-top: var(--wp--preset--spacing--70); }
.rv-stage-prose h3 { margin-top: var(--wp--preset--spacing--60); }
.rv-stage-prose :where(p, ul, ol, figure) { margin-bottom: var(--wp--preset--spacing--50); }
.rv-stage-prose :where(img, video) { max-width: 100%; height: auto; border-radius: var(--wp--custom--rounded--sm); }
.rv-stage-prose > p:first-of-type {
	font-size: var(--wp--preset--font-size--lede);
	line-height: var(--wp--custom--line-height--lede);
	color: var(--wp--preset--color--ink-soft);
}

.rv-stage-guide {
	margin-block: var(--wp--preset--spacing--70) var(--wp--preset--spacing--50);
	padding: var(--wp--preset--spacing--50);
	border: 1px solid var(--wp--preset--color--line);
	border-radius: var(--wp--custom--rounded--sm);
	background: linear-gradient(135deg, var(--wp--preset--color--seal-tint), var(--wp--preset--color--surface-sunken));
}
.rv-stage-guide h2 { margin: var(--wp--preset--spacing--20) 0 var(--wp--preset--spacing--40); font-size: var(--wp--preset--font-size--h3); }
.rv-stage-guide__foot { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: var(--wp--preset--spacing--40); }
.rv-stage-guide__price { font-family: var(--wp--preset--font-family--heading); font-size: var(--wp--preset--font-size--h3); font-weight: 700; color: var(--wp--preset--color--brand-strong); }

.rv-stage-pager {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: var(--wp--preset--spacing--40);
	margin-block: var(--wp--preset--spacing--60) var(--wp--preset--spacing--70);
}
.rv-stage-pager > a {
	display: flex;
	flex-direction: column;
	gap: var(--wp--preset--spacing--10);
	padding: var(--wp--preset--spacing--40);
	border: 1px solid var(--wp--preset--color--line);
	border-radius: var(--wp--custom--rounded--sm);
	background: var(--wp--preset--color--surface);
	text-decoration: none;
}
.rv-stage-pager > a:hover { border-color: var(--wp--preset--color--line-strong); text-decoration: none; }
.rv-stage-pager span { color: var(--wp--preset--color--ink-muted); font-size: var(--wp--preset--font-size--x-small); }
.rv-stage-pager strong { color: var(--wp--preset--color--brand-strong); font-family: var(--wp--preset--font-family--heading); line-height: 1.35; }
.rv-stage-pager__next { grid-column: 2; text-align: right; }

.rv-stage-article > .wp-block-comments { padding-top: var(--wp--preset--spacing--60); border-top: 2px solid var(--wp--preset--color--line-strong); }
.rv-stage-article .wp-block-comments-title { font-size: var(--wp--preset--font-size--h3); }
.rv-stage-article .wp-block-comment-template { padding: 0; list-style: none; }
.rv-stage-article .wp-block-comment-template > li {
	margin-bottom: var(--wp--preset--spacing--40);
	padding: var(--wp--preset--spacing--50);
	border: 1px solid var(--wp--preset--color--line);
	border-radius: var(--wp--custom--rounded--sm);
	background: var(--wp--preset--color--surface);
}
.rv-stage-article :where(input:not([type="submit"]), textarea) {
	width: 100%;
	padding: var(--wp--preset--spacing--30);
	border: 1px solid var(--wp--preset--color--line-strong);
	border-radius: var(--wp--custom--rounded--md);
	background: var(--wp--preset--color--surface);
	font: inherit;
}
.rv-stage-article input[type="submit"] {
	min-height: 44px;
	padding-inline: var(--wp--preset--spacing--50);
	border: 0;
	border-radius: var(--wp--custom--rounded--md);
	background: var(--wp--preset--gradient--button-primary);
	color: #FFFFFF;
	font: inherit;
	font-weight: 600;
}

/* WordPress'in gerçek comment_parent ağacı. Yanıt ana yorum kartının içinde,
   sol bağlantı çizgisiyle görünür; bağımsız ikinci bir soru gibi okunmaz. */
:where(.rv-article, .rv-stage-article) .wp-block-comment-template .children {
	margin: var(--wp--preset--spacing--50) 0 0 var(--wp--preset--spacing--30);
	padding: 0 0 0 var(--wp--preset--spacing--50);
	border-left: 3px solid var(--wp--preset--color--brand);
	list-style: none;
}

:where(.rv-article, .rv-stage-article) .wp-block-comment-template .children > li {
	position: relative;
	margin: 0 0 var(--wp--preset--spacing--40);
	padding: var(--wp--preset--spacing--40);
	border: 1px solid var(--wp--preset--color--line);
	border-radius: var(--wp--custom--rounded--sm);
	background: var(--wp--preset--color--brand-tint);
}

:where(.rv-article, .rv-stage-article) .wp-block-comment-template .children > li::after {
	content: "";
	position: absolute;
	top: 27px;
	left: calc(-1 * var(--wp--preset--spacing--50) - 3px);
	width: var(--wp--preset--spacing--50);
	border-top: 3px solid var(--wp--preset--color--brand);
}

:where(.rv-article, .rv-stage-article) .wp-block-comment-template .children > li::before {
	content: "Yanıt";
	display: inline-block;
	margin-bottom: var(--wp--preset--spacing--20);
	color: var(--wp--preset--color--brand);
	font-size: var(--wp--preset--font-size--label);
	font-weight: 700;
	letter-spacing: .06em;
	text-transform: uppercase;
}

:where(.rv-article, .rv-stage-article) .wp-block-comment-template .children > li:is(.byuser, .bypostauthor)::before {
	content: "Site yanıtı";
}

:where(.rv-article, .rv-stage-article) .wp-block-comment-template .children > li:is(.byuser, .bypostauthor) .wp-block-comment-author-name {
	display: none;
}

:where(.rv-article, .rv-stage-article) .wp-block-comment-template .children .children {
	margin-left: 0;
}

@media (max-width: 55.999em) {
	.rv-stage-shell { grid-template-columns: 1fr; gap: var(--wp--preset--spacing--50); }
	.rv-stage-sidebar { position: static; }
	.rv-stage-map { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0 var(--wp--preset--spacing--30); }
	.rv-stage-map > .rv-label { grid-column: 1 / -1; }
	.rv-stage-article { width: 100%; }
}

@media (max-width: 35.999em) {
	.rv-stage-map { grid-template-columns: 1fr; }
	.rv-stage-summary__row { grid-template-columns: 1fr; gap: var(--wp--preset--spacing--10); }
	.rv-stage-pager { grid-template-columns: 1fr; }
	.rv-stage-pager__next { grid-column: 1; text-align: left; }
	:where(.rv-article, .rv-stage-article) .wp-block-comment-template .children {
		margin-left: 0;
		padding-left: var(--wp--preset--spacing--40);
	}
	:where(.rv-article, .rv-stage-article) .wp-block-comment-template .children > li::after {
		left: calc(-1 * var(--wp--preset--spacing--40) - 3px);
		width: var(--wp--preset--spacing--40);
	}
}

/* --- WooCommerce: S3 ürün ve S4 mağaza -------------------------------- */

.woocommerce main,
.woocommerce-page main { max-width: 72rem; margin-inline: auto; padding: var(--wp--preset--spacing--60) var(--wp--preset--spacing--40) var(--wp--preset--spacing--80); }
.woocommerce div.product div.images img { border-radius: var(--wp--custom--rounded--sm); }
.woocommerce div.product .product_title { color: var(--wp--preset--color--brand-strong); }
.woocommerce div.product p.price,
.woocommerce div.product span.price { color: var(--wp--preset--color--brand-strong); font-family: var(--wp--preset--font-family--heading); font-weight: 700; }
.woocommerce :where(button.button, a.button, input.button, #respond input#submit) {
	min-height: 44px;
	border-radius: var(--wp--custom--rounded--md);
	background: var(--wp--preset--color--brand);
	color: #FFFFFF;
}
.woocommerce :where(button.button, a.button, input.button, #respond input#submit):hover {
	background: var(--wp--preset--color--brand-strong);
	color: #FFFFFF;
}
.woocommerce div.product .woocommerce-tabs ul.tabs { padding-inline-start: 0; }
.woocommerce div.product .woocommerce-tabs .panel { max-width: 44rem; }
.woocommerce ul.products li.product {
	padding-bottom: var(--wp--preset--spacing--50);
	overflow: hidden;
	border: 1px solid var(--wp--preset--color--line);
	border-radius: var(--wp--custom--rounded--sm);
	background: var(--wp--preset--color--surface);
}
.woocommerce ul.products li.product :where(.woocommerce-loop-product__title, .price, .button) { margin-inline: var(--wp--preset--spacing--40); }

.rv-product,
.rv-shop,
.rv-commerce-page { padding-block: var(--wp--preset--spacing--40) var(--wp--preset--spacing--80); }

/* Aşama 4/6 ürünleri, mağaza kabuğu yerine S2 süreç haritasına bağlanır. */
.woocommerce main.rv-stage-product-page,
.woocommerce-page main.rv-stage-product-page {
	max-width: none;
	margin-inline: 0;
	padding: 0 0 var(--wp--preset--spacing--80);
}

.rv-stage-product {
	width: 100%;
	min-width: 0;
}
.rv-stage-product > * { margin-inline: 0; }
.rv-stage-product > .rv-label { margin: 0 0 var(--wp--preset--spacing--20); }
.rv-stage-product > .wp-block-post-title {
	margin: 0 0 var(--wp--preset--spacing--30);
	font-size: clamp(1.75rem, 4vw, 2.25rem);
	line-height: 1.15;
}
.rv-stage-product > .wp-block-woocommerce-product-rating { margin-bottom: var(--wp--preset--spacing--50); }
.rv-stage-product > .rv-product__layout { margin-top: 0; }
.rv-stage-product .rv-product__content > .rv-label--muted { margin-top: 0; }

.rv-product .wc-block-breadcrumbs,
.rv-shop .wc-block-breadcrumbs { margin-bottom: var(--wp--preset--spacing--50); color: var(--wp--preset--color--ink-muted); font-size: var(--wp--preset--font-size--x-small); }

.rv-product__layout { align-items: flex-start !important; gap: var(--wp--preset--spacing--70); }
.rv-product__content { min-width: 0; }
.rv-product__content > * { margin-block-start: 0; margin-block-end: var(--wp--preset--spacing--50); }
.rv-product__content > .wp-block-post-title { margin-bottom: var(--wp--preset--spacing--30); font-size: clamp(1.75rem, 4vw, 2.25rem); line-height: 1.15; }
.rv-product__content > .wp-block-woocommerce-product-rating { margin-bottom: var(--wp--preset--spacing--50); }
.rv-product__content > .rv-label--muted { margin-top: var(--wp--preset--spacing--60); margin-bottom: var(--wp--preset--spacing--30); }
.rv-product__content .wp-block-woocommerce-product-image-gallery img { border-radius: var(--wp--custom--rounded--sm); }

.rv-product__content .wp-block-woocommerce-product-image-gallery {
	margin-bottom: var(--wp--preset--spacing--60);
}

.rv-product__what {
	margin-top: var(--wp--preset--spacing--60);
	padding: var(--wp--preset--spacing--50);
	border: 1px solid var(--wp--preset--color--line);
	border-radius: var(--wp--custom--rounded--sm);
	background: var(--wp--preset--color--surface);
}
.rv-product__what > .rv-label { margin: 0 0 var(--wp--preset--spacing--40); }
.rv-product__description { max-width: none !important; }
.rv-product__description > :first-child { margin-top: 0; }
.rv-product__description > :last-child { margin-bottom: 0; }
.rv-product__description :where(ul, ol) { padding-inline-start: var(--wp--preset--spacing--60); }
.rv-product__description li { margin-bottom: var(--wp--preset--spacing--20); }

.rv-product__reviews {
	margin-top: var(--wp--preset--spacing--70);
	padding-top: var(--wp--preset--spacing--60);
	border-top: 1px solid var(--wp--preset--color--line-strong);
}
.rv-product__reviews > h2 { margin: 0 0 var(--wp--preset--spacing--50); font-size: var(--wp--preset--font-size--h3); }
.rv-product__reviews .wc-block-components-product-review-list { padding: 0; }
.rv-product__reviews .wc-block-components-product-review-list-item__item {
	padding: var(--wp--preset--spacing--50);
	border: 1px solid var(--wp--preset--color--line);
	border-radius: var(--wp--custom--rounded--sm);
	background: var(--wp--preset--color--surface);
}

.rv-product__details {
	margin-top: var(--wp--preset--spacing--60);
	padding: var(--wp--preset--spacing--50);
	border: 1px solid var(--wp--preset--color--line);
	border-radius: var(--wp--custom--rounded--sm);
	background: var(--wp--preset--color--surface);
}
.rv-product__details .wc-block-product-details__tab-list { border-bottom-color: var(--wp--preset--color--line); }

.rv-product__sidebar { position: sticky; top: 96px; }
.rv-product__purchase {
	padding: var(--wp--preset--spacing--50);
	border: 1px solid var(--wp--preset--color--line);
	border-radius: var(--wp--custom--rounded--sm);
	background: var(--wp--preset--color--surface);
}
.rv-product__purchase > * { margin-block: 0 var(--wp--preset--spacing--40); }
.rv-product__purchase .wp-block-woocommerce-product-price {
	font-family: var(--wp--preset--font-family--heading);
	font-size: 2rem;
	font-weight: 700;
	color: var(--wp--preset--color--brand-strong);
}
.rv-product__purchase .wc-block-add-to-cart-form { width: 100%; }
.rv-product__purchase :where(.single_add_to_cart_button, .wp-element-button) { width: 100%; justify-content: center; }

/* WooCommerce değişken ürün formu varsayılan olarak tablo + grid kurallarını
   üst üste bindiriyor. Satın alma panelinde etiket, seçim ve buton tek akışta
   kalır; uzun seçenekler mobil viewport'u genişletmez. */
.rv-product__purchase form.variations_form {
	display: block !important;
	width: 100% !important;
	max-width: 100% !important;
	min-width: 0;
}
.rv-product__purchase form.variations_form table.variations,
.rv-product__purchase form.variations_form table.variations tbody,
.rv-product__purchase form.variations_form table.variations tr,
.rv-product__purchase form.variations_form table.variations th,
.rv-product__purchase form.variations_form table.variations td {
	display: block;
	width: 100% !important;
	max-width: 100% !important;
}
.rv-product__purchase form.variations_form table.variations {
	margin: 0 0 var(--wp--preset--spacing--40);
	table-layout: fixed;
}
.rv-product__purchase form.variations_form table.variations th.label {
	padding: 0 0 var(--wp--preset--spacing--20);
	text-align: left;
}
.rv-product__purchase form.variations_form table.variations td.value { padding: 0; }
.rv-product__purchase form.variations_form select {
	display: block;
	width: 100% !important;
	max-width: 100% !important;
	min-height: 48px;
	padding-inline: var(--wp--preset--spacing--30);
	border: 1px solid var(--wp--preset--color--line-strong);
	border-radius: var(--wp--custom--rounded--md);
	background: var(--wp--preset--color--surface);
	font: inherit;
}
.rv-product__purchase form.variations_form .reset_variations {
	display: inline-block;
	margin-top: var(--wp--preset--spacing--20);
}
.rv-product__purchase form.variations_form :where(.single_variation_wrap, .single_variation, .woocommerce-variation-add-to-cart) {
	width: 100% !important;
	max-width: 100% !important;
	min-width: 0;
}
.rv-product__purchase form.variations_form .woocommerce-variation-add-to-cart {
	display: grid !important;
	grid-template-columns: minmax(64px, 80px) minmax(0, 1fr);
	gap: var(--wp--preset--spacing--20);
	align-items: stretch;
}
.rv-product__purchase form.variations_form .quantity { margin: 0 !important; }
.rv-product__purchase form.variations_form .quantity input { width: 100%; min-height: 48px; }
.rv-product__purchase form.variations_form .single_add_to_cart_button { min-width: 0; }
.rv-product__pay-note {
	padding: var(--wp--preset--spacing--30) var(--wp--preset--spacing--40);
	border-radius: var(--wp--custom--rounded--sm);
	background: var(--wp--preset--color--verified-tint);
	color: var(--wp--preset--color--verified);
	font-size: var(--wp--preset--font-size--x-small);
}
.rv-product__purchase .wp-block-woocommerce-product-meta { color: var(--wp--preset--color--ink-muted); font-size: var(--wp--preset--font-size--x-small); }
.rv-related-products { margin-top: var(--wp--preset--spacing--80); padding-top: var(--wp--preset--spacing--70); border-top: 1px solid var(--wp--preset--color--line); }

.rv-shop__head { margin-bottom: var(--wp--preset--spacing--60); }
.rv-shop__head > * { margin-inline: 0; }
.rv-shop__head h1 { margin-block: var(--wp--preset--spacing--30) var(--wp--preset--spacing--20); font-size: clamp(1.875rem, 4.5vw, 2.5rem); }
.rv-shop__head .rv-lede { margin-bottom: 0; }
.rv-shop__toolbar { margin-bottom: var(--wp--preset--spacing--50); }
.rv-shop__toolbar select { min-height: 44px; padding-inline: var(--wp--preset--spacing--30); border: 1px solid var(--wp--preset--color--line-strong); border-radius: var(--wp--custom--rounded--md); background: var(--wp--preset--color--surface); }

.rv-shop-grid .wc-block-product-template {
	display: grid !important;
	grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
	gap: var(--wp--preset--spacing--50);
	padding: 0;
}
.rv-shop-grid .wc-block-product {
	display: flex;
	flex-direction: column;
	overflow: hidden;
	padding-bottom: var(--wp--preset--spacing--50);
	border: 1px solid var(--wp--preset--color--line);
	border-radius: var(--wp--custom--rounded--sm);
	background: var(--wp--preset--color--surface);
}
.rv-shop-grid .wc-block-product > :not(.wc-block-components-product-image) { margin-inline: var(--wp--preset--spacing--50); }
.rv-shop-grid .wc-block-components-product-image { margin: 0 0 var(--wp--preset--spacing--40); }
.rv-shop-grid .wc-block-components-product-image img { width: 100%; aspect-ratio: 5 / 4; object-fit: cover; }
.rv-shop-grid .wp-block-post-title { text-align: left; line-height: 1.3; }
.rv-shop-grid .wp-block-woocommerce-product-price { margin-top: auto; font-family: var(--wp--preset--font-family--heading); font-weight: 700; color: var(--wp--preset--color--brand-strong); }
.rv-shop-grid .wp-block-button__link,
.rv-shop-grid .wc-block-components-product-button__button { width: 100%; }

@media (max-width: 48em) {
	.rv-product__sidebar { position: static; }
	.rv-product__layout { gap: var(--wp--preset--spacing--50); }
	.rv-product__purchase { padding: var(--wp--preset--spacing--40); }
}

@media (max-width: 63.999em) {
	.rv-shop-grid .wc-block-product-template { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; }
}

@media (max-width: 47.999em) {
	.rv-page-head { padding-block: var(--wp--preset--spacing--60); }
	.rv-page-body { padding-block: var(--wp--preset--spacing--60); }
	.woocommerce main,
	.woocommerce-page main { padding-inline: var(--wp--preset--spacing--40); }
}

@media (max-width: 39.999em) {
	.rv-shop-grid .wc-block-product-template { grid-template-columns: minmax(0, 1fr) !important; }
}

/* --- Footer -------------------------------------------------------------- */

.rv-footer {
	border-top: 1px solid var(--wp--preset--color--line);
	background: var(--wp--preset--color--surface-sunken);
}

.rv-footer__grid {
	max-width: 72rem;
	margin-inline: auto;
	padding: var(--wp--preset--spacing--70) var(--wp--preset--spacing--40) var(--wp--preset--spacing--50);
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
	gap: var(--wp--preset--spacing--60);
}

.rv-footer__col-links { display: flex; flex-direction: column; }

/* Dokunma hedefi 44px — DESIGN.md §4. Dikey dolgu, aradaki gap'in yerini alır. */
.rv-footer__link {
	display: inline-flex;
	align-items: center;
	min-height: 44px;
	font-size: var(--wp--preset--font-size--small);
	color: var(--wp--preset--color--ink-soft);
	text-decoration: none;
}
.rv-footer__link:hover { color: var(--wp--preset--color--brand); text-decoration: underline; }

.rv-footer__bar {
	max-width: 72rem;
	margin-inline: auto;
	padding: var(--wp--preset--spacing--40) var(--wp--preset--spacing--40) var(--wp--preset--spacing--50);
	border-top: 1px solid var(--wp--preset--color--line);
	display: grid !important;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	align-items: center;
	gap: 0;
}

.rv-footer__bar > .rv-footer__bar-col {
	display: flex;
	align-items: center;
	width: 100%;
	min-width: 0;
	margin: 0 !important;
}
.rv-footer__bar-col--end { justify-content: flex-end; text-align: right; }
.rv-footer__bar-col > * { margin: 0 !important; }

.rv-footer__note { font-size: var(--wp--preset--font-size--stamp); color: var(--wp--preset--color--ink-muted); }

/* --- WP blok düzeltmeleri ------------------------------------------------ */

/* WP akış düzeni çocuklara dikey marj ekler; ızgara/esnek kaplarda gap zaten var.
   İkisi üst üste binince boşluk ritmi (4px tabanı) bozulur. */
.rv-footer__grid > *,
.rv-footer__col-links > *,
.rv-stages > *,
.rv-guides > *,
.rv-trust > *,
.rv-hero__actions > *,
.rv-section__head > * { margin-block: 0; }

.rv-footer__col-links p { margin: 0; }

/* Core buton stilleri — desenlerde is-style-* ile çağrılır */
.wp-block-button__link {
	min-height: 44px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
}

.wp-block-button.is-style-rv-primary > .wp-block-button__link {
	background: var(--wp--preset--gradient--button-primary);
	color: #FFFFFF;
}
.wp-block-button.is-style-rv-primary > .wp-block-button__link:hover {
	background: var(--wp--preset--color--brand-strong);
}

/* Altın CTA seal-strong kullanır: beyaz metinle 5,2:1 (AA).
   Dekoratif seal (#A9772A) 3,9:1'de kalır — metin/CTA'da kullanılmaz. */
.wp-block-button.is-style-rv-gold > .wp-block-button__link {
	background: var(--wp--preset--color--seal-strong);
	color: #FFFFFF;
}
.wp-block-button.is-style-rv-gold > .wp-block-button__link:hover { background: #7A551B; }

.wp-block-button.is-style-rv-secondary > .wp-block-button__link {
	background: transparent;
	border: 1px solid var(--wp--preset--color--line-strong);
	color: var(--wp--preset--color--brand-strong);
}
.wp-block-button.is-style-rv-secondary > .wp-block-button__link:hover {
	border-color: var(--wp--preset--color--brand);
}

/* Lacivert panel üstünde kullanılır */
.wp-block-button.is-style-rv-white > .wp-block-button__link {
	background: #FFFFFF;
	color: var(--wp--preset--color--brand-strong);
}
.wp-block-button.is-style-rv-white > .wp-block-button__link:hover {
	background: var(--wp--preset--color--paper);
}

/* Hero'daki ikincil buton lacivert zemin üstünde: çerçeve ve metin açılır */
.rv-hero .wp-block-button.is-style-rv-secondary > .wp-block-button__link {
	border-color: rgba(233, 199, 130, 0.5);
	color: var(--wp--preset--color--seal-light);
}
.rv-hero .wp-block-button.is-style-rv-secondary > .wp-block-button__link:hover {
	border-color: var(--wp--preset--color--seal-light);
}

/* --- Hareket azaltma ----------------------------------------------------- */

@media (prefers-reduced-motion: reduce) {
	*, *::before, *::after {
		animation-duration: 0.01ms !important;
		animation-iteration-count: 1 !important;
		transition-duration: 0.01ms !important;
		scroll-behavior: auto !important;
	}
}
