/* ==========================================================================
   Namastekala — brand base (Kadence). Components live in the Namastekala Core plugin.
   ========================================================================== */

:root {
	--nk-ink: #2B2A26;
	--nk-muted: #5F5A50;
	--nk-cream: #FBF7F0;
	--nk-white: #FFFFFF;
	--nk-sand: #F3E6D3;
	--nk-line: #E6DCCB;
	--nk-line-strong: #D9CDB8;
	--nk-olive: #4F5B2C;
	--nk-olive-dark: #2F3719;
	--nk-gold: #B8975A;
	--nk-gold-text: #7E5F28;
	--nk-sage: #E4EAD3;
	--nk-sage-text: #3D4722;
	--nk-font-display: 'NK Display', 'Didact Gothic', system-ui, sans-serif;
	--nk-font-text: 'NK Text', 'Manrope', system-ui, sans-serif;
	--nk-radius: 20px;
	--nk-radius-sm: 12px;
	--nk-shadow: 0 10px 30px rgba(43, 42, 38, 0.08);
}

/* ---------- Base ---------- */
body {
	font-family: var(--nk-font-text);
	color: var(--nk-ink);
	background: var(--nk-cream);
	-webkit-font-smoothing: antialiased;
}
h1, h2, h3, h4,
.entry-title, .site-title,
.wp-block-heading {
	font-family: var(--nk-font-display);
	color: var(--nk-ink);
	letter-spacing: 0;
}
h1, .entry-title { font-weight: 300; line-height: 1.1; }
h2 { font-weight: 400; line-height: 1.15; }
h3 { font-weight: 600; }
a { color: var(--nk-olive); }
a:hover, a:focus { color: var(--nk-olive-dark); }
:focus-visible { outline: 3px solid var(--nk-gold); outline-offset: 2px; }

.site-title {
	font-weight: 300;
	letter-spacing: 0.3em;
	text-transform: uppercase;
}

/* ---------- Buttons (Kadence, blocks, WooCommerce, Dokan) ---------- */
.button,
button.button,
.wp-block-button__link,
.nk-btn {
	background: var(--nk-olive);
	color: #FFFFFF;
	border: 1px solid var(--nk-olive);
	border-radius: 999px;
	font-family: var(--nk-font-text);
	font-weight: 700;
	min-height: 48px;
	padding: 0.7em 1.6em;
	line-height: 1.2;
	box-shadow: none;
	cursor: pointer;
	transition: background-color 0.15s ease, border-color 0.15s ease;
}
.button:hover,
.wp-block-button__link:hover,
.nk-btn:hover {
	background: var(--nk-olive-dark);
	border-color: var(--nk-olive-dark);
	color: #FFFFFF;
}
.is-style-outline .wp-block-button__link,
.nk-btn--ghost {
	background: transparent;
	color: var(--nk-ink);
	border-color: var(--nk-ink);
}
.is-style-outline .wp-block-button__link:hover,
.nk-btn--ghost:hover {
	background: var(--nk-ink);
	color: var(--nk-cream);
}

/* ---------- Forms ---------- */
input[type="text"], input[type="email"], input[type="tel"], input[type="number"],
input[type="search"], input[type="password"], input[type="url"], input[type="date"],
select, textarea {
	border: 1px solid var(--nk-line-strong);
	border-radius: var(--nk-radius-sm);
	background: var(--nk-white);
	color: var(--nk-ink);
	min-height: 46px;
	padding: 0.55em 0.9em;
	font-family: var(--nk-font-text);
	font-size: 16px; /* avoids zoom on iOS */
}
textarea { min-height: 120px; }
input[type="checkbox"], input[type="radio"] { accent-color: var(--nk-olive); width: 18px; height: 18px; }

/* ---------- Home page patterns ---------- */
.button.wp-element-button, input[type="submit"] { font-family: var(--nk-font-text); }
.nk-eyebrow { font-family: var(--nk-font-display); font-weight: 600; letter-spacing: 0.2em; text-transform: uppercase; color: var(--nk-gold-text); font-size: 14px; }
.nk-hero h1 { font-size: clamp(40px, 6vw, 64px); }
.nk-lead { font-size: clamp(17px, 2vw, 20px); line-height: 1.6; color: var(--nk-muted); max-width: 620px; }
.nk-section { padding-top: clamp(48px, 7vw, 80px); padding-bottom: clamp(48px, 7vw, 80px); }
.nk-section--white { background: var(--nk-white); border-top: 1px solid var(--nk-line); border-bottom: 1px solid var(--nk-line); }
.nk-section--sand { background: var(--nk-sand); }
.nk-step { background: var(--nk-cream); border-radius: 18px; padding: 24px; height: 100%; }
.nk-step__num { font-family: var(--nk-font-display); font-weight: 300; font-size: 40px; color: var(--nk-gold-text); margin: 0; }
.nk-cta {
	background: var(--nk-olive-dark);
	color: var(--nk-cream);
	border-radius: 28px;
	padding: clamp(28px, 5vw, 48px);
}
.nk-cta h2, .nk-cta p { color: var(--nk-cream); }
.nk-cta .wp-block-button__link { background: var(--nk-gold); border-color: var(--nk-gold); color: var(--nk-ink); }
.nk-cta .wp-block-button__link:hover { background: #CDB078; border-color: #CDB078; color: var(--nk-ink); }
.nk-cta .is-style-outline .wp-block-button__link { background: transparent; border-color: #E4DDCD; color: var(--nk-cream); }

/* ---------- Small screens ---------- */
@media (max-width: 640px) {
	.nk-cta { border-radius: 20px; }
}
