/*
Theme Name:   Rentiva Astra Child
Theme URI:    https://maxhandmade.com/rentiva/
Description:  Astra child theme for the Rentiva plugin demo site. Uses Astra parent for styling and HFE (Header Footer Elementor) for global header/footer.
Author:       MHM
Author URI:   https://maxhandmade.com/
Template:     astra
Version:      0.1.5
Text Domain:  rentiva-astra-child
*/

/* =========================================================
   Rentiva Design Tokens (copied from legacy rentiva-hello)
   ========================================================= */
:root {
	--rv-black:         #0a0a0a;
	--rv-dark:          #131313;
	--rv-surface:       #1c1b1b;
	--rv-blue:          #1e6bf5;
	--rv-blue-hover:    #0040a1;
	--rv-white:         #e5e2e1;
	--rv-offwhite:      #f4f4f2;
	--rv-muted:         #8c90a1;
	--rv-text:          #1d1d1f;

	--rv-font:          'Plus Jakarta Sans', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;

	--rv-radius-md:     8px;
	--rv-radius-lg:     12px;

	--rv-shadow-md:     0 4px 12px rgba(0,0,0,.1);
	--rv-shadow-lg:     0 12px 40px rgba(0,0,0,.15);

	--rv-transition:    0.3s ease;
}

/* =========================================================
   Global Header (HFE HTML widget — `.rv-header`)
   ========================================================= */
.rv-header {
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding: 0 32px;
	height: 64px;
	font-family: var(--rv-font);
}

.rv-header__logo {
	font-size: 22px;
	font-weight: 900;
	letter-spacing: -0.03em;
	text-transform: uppercase;
	color: #fff;
	text-decoration: none;
	flex-shrink: 0;
}

.rv-header__nav {
	display: flex;
	gap: 32px;
}

.rv-header__nav a {
	font-size: 13px;
	font-weight: 500;
	color: #cfd2dc;
	text-decoration: none;
	letter-spacing: -0.01em;
	transition: color var(--rv-transition);
}

.rv-header__nav a:hover {
	color: #fff;
}

.rv-header__actions {
	display: flex;
	gap: 16px;
	align-items: center;
	flex-shrink: 0;
}

.rv-header__login {
	font-size: 13px;
	font-weight: 500;
	color: #cfd2dc;
	text-decoration: none;
}

.rv-header__login:hover {
	color: #fff;
}

.rv-header__cta {
	font-size: 13px;
	font-weight: 600;
	color: #fff;
	background: var(--rv-blue);
	padding: 10px 24px;
	border-radius: var(--rv-radius-md);
	text-decoration: none;
	letter-spacing: -0.01em;
	transition: background var(--rv-transition), transform var(--rv-transition);
}

.rv-header__cta:hover {
	background: var(--rv-blue-hover);
	color: #fff;
	transform: translateY(-1px);
}

.rv-header__burger {
	display: none;
	background: none;
	border: none;
	cursor: pointer;
	padding: 8px;
	flex-direction: column;
	gap: 5px;
}

.rv-header__burger span {
	display: block;
	width: 24px;
	height: 2px;
	background: #fff;
	transition: transform 0.3s, opacity 0.3s;
}

.rv-header__menu {
	display: contents;
}

@media (max-width: 768px) {
	.rv-header {
		position: relative;
		padding: 0 16px;
	}

	.rv-header__burger {
		display: flex;
	}

	.rv-header__menu {
		display: none;
		position: absolute;
		top: 100%;
		left: 0;
		right: 0;
		background: #0d0d0d;
		z-index: 9999;
		border-top: 1px solid rgba(255,255,255,0.08);
		box-shadow: 0 16px 48px rgba(0,0,0,.6);
		padding: 8px 24px 24px;
	}

	.rv-header.is-open .rv-header__menu {
		display: block;
	}

	.rv-header.is-open .rv-header__nav {
		display: flex;
		flex-direction: column;
		gap: 0;
	}

	.rv-header.is-open .rv-header__nav a {
		display: block;
		padding: 16px 0;
		font-size: 16px;
		font-weight: 600;
		color: #e5e2e1;
		border-bottom: 1px solid rgba(255,255,255,0.06);
	}

	.rv-header.is-open .rv-header__nav a:last-child {
		border-bottom: none;
	}

	.rv-header.is-open .rv-header__actions {
		display: flex;
		gap: 12px;
		padding-top: 16px;
		border-top: 1px solid rgba(255,255,255,0.08);
		margin-top: 8px;
	}

	.rv-header.is-open .rv-header__login {
		flex: 1;
		text-align: center;
		padding: 14px;
		border: 1px solid rgba(255,255,255,0.15);
		color: #ccc;
		font-size: 14px;
		border-radius: var(--rv-radius-md);
	}

	.rv-header.is-open .rv-header__cta {
		flex: 1;
		text-align: center;
		padding: 14px 24px;
		font-size: 14px;
	}

	.rv-header.is-open .rv-header__burger span:nth-child(1) {
		transform: rotate(45deg) translate(5px, 5px);
	}
	.rv-header.is-open .rv-header__burger span:nth-child(2) {
		opacity: 0;
	}
	.rv-header.is-open .rv-header__burger span:nth-child(3) {
		transform: rotate(-45deg) translate(5px, -5px);
	}
}

/* =========================================================
   Home: equal-height "Nasıl Çalışır" cards (icon-box)
   Site layout chrome — not plugin CSS.
   ========================================================= */
.elementor-element-d1e2f3a .elementor-widget-icon-box,
.elementor-element-d1e2f3a .elementor-widget-icon-box > .elementor-widget-container,
.elementor-element-d6e7f8a .elementor-widget-icon-box,
.elementor-element-d6e7f8a .elementor-widget-icon-box > .elementor-widget-container {
	height: 100%;
}

/* =========================================================
   Home: KPI counters fit on mobile (2x2 cards)
   ========================================================= */
/* Header: hamburger toggle — flush-right + white (tablet/mobile) */
@media (max-width: 1024px) {
	.elementor-element-hdrnav .hfe-nav-menu__toggle {
		display: flex !important;
		justify-content: flex-end !important;
		text-align: right !important;
		width: 100% !important;
	}
	.elementor-element-hdrnav .hfe-nav-menu__toggle,
	.elementor-element-hdrnav .hfe-nav-menu__toggle svg,
	.elementor-element-hdrnav .hfe-nav-menu__toggle path,
	.elementor-element-hdrnav .hfe-nav-menu__close,
	.elementor-element-hdrnav .hfe-nav-menu__close svg {
		color: #ffffff !important;
		fill: #ffffff !important;
	}
}

/* KPI counters: full-width + centered (so labels don't shrink-wrap/wrap) */
.elementor-element-c3d4e5f .elementor-inner-section .elementor-widget-wrap {
	align-items: stretch;
}
.elementor-element-c3d4e5f .elementor-widget-counter,
.elementor-element-c3d4e5f .elementor-widget-counter > .elementor-widget-container,
.elementor-element-c3d4e5f .elementor-counter {
	width: 100%;
}
.elementor-element-c3d4e5f .elementor-counter-number-wrapper,
.elementor-element-c3d4e5f .elementor-counter-title {
	width: 100%;
	text-align: center;
	justify-content: center;
}

@media (max-width: 767px) {
	.elementor-element-c3d4e5f .elementor-counter-number-wrapper {
		font-size: 34px !important;
	}
	.elementor-element-c3d4e5f .elementor-counter-title {
		font-size: 15px !important;
	}
	/* equal-height KPI cards on mobile (label wrap-proof) */
	.elementor-element-c3d4e5f .elementor-column .elementor-inner-section {
		height: 100%;
	}
}
