/*
 * Tekkalk design foundation
 * Version 1.0.0
 *
 * Safe first-stage stylesheet for GeneratePress.
 * Page-specific blocks will be added after the child theme is installed.
 */

:root {
	--tekkalk-bg: #f5f7fa;
	--tekkalk-surface: #ffffff;
	--tekkalk-soft: #edf2f6;
	--tekkalk-text: #17212b;
	--tekkalk-muted: #5d6975;
	--tekkalk-line: #d9e0e7;
	--tekkalk-brand: #123c5a;
	--tekkalk-brand-dark: #0b304a;
	--tekkalk-brand-light: #1d668f;
	--tekkalk-accent: #e89a32;
	--tekkalk-accent-soft: #fff2df;
	--tekkalk-success: #2f7a61;
	--tekkalk-radius-sm: 12px;
	--tekkalk-radius-md: 18px;
	--tekkalk-radius-lg: 24px;
	--tekkalk-shadow: 0 20px 50px rgba(23, 33, 43, 0.10);
	--tekkalk-content-width: 1180px;
}

body.tekkalk-site {
	background: var(--tekkalk-bg);
	color: var(--tekkalk-text);
	font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
	line-height: 1.62;
}

.tekkalk-site a { text-underline-offset: 0.16em; }
.tekkalk-site h1,
.tekkalk-site h2,
.tekkalk-site h3,
.tekkalk-site h4 {
	color: var(--tekkalk-text);
	font-weight: 800;
	letter-spacing: -0.025em;
}
.tekkalk-site h1 { letter-spacing: -0.045em; }

.tekkalk-site .site-header {
	background: rgba(245, 247, 250, 0.96);
	border-bottom: 1px solid rgba(217, 224, 231, 0.9);
}
.tekkalk-site .site-branding .main-title a,
.tekkalk-site .site-logo a {
	color: var(--tekkalk-brand);
	font-weight: 850;
	letter-spacing: 0.04em;
}
.tekkalk-site .site-description {
	color: var(--tekkalk-muted);
	font-size: 0.78rem;
	font-weight: 600;
}
.tekkalk-site .main-navigation { background: transparent; }
.tekkalk-site .main-navigation .main-nav ul li a,
.tekkalk-site .menu-toggle {
	color: #394754;
	font-weight: 700;
}
.tekkalk-site .main-navigation .main-nav ul li:hover > a,
.tekkalk-site .main-navigation .main-nav ul li:focus > a,
.tekkalk-site .main-navigation .main-nav ul li[class*="current-menu-"] > a {
	background: transparent;
	color: var(--tekkalk-brand-light);
}
.tekkalk-site .main-navigation .main-nav ul ul {
	background: var(--tekkalk-surface);
	border: 1px solid var(--tekkalk-line);
	border-radius: var(--tekkalk-radius-sm);
	box-shadow: var(--tekkalk-shadow);
	overflow: hidden;
}

.tekkalk-site .site-content {
	padding-top: 36px;
	padding-bottom: 70px;
}
.tekkalk-site .inside-article,
.tekkalk-site .widget,
.tekkalk-site .comments-area {
	border: 1px solid var(--tekkalk-line);
	border-radius: var(--tekkalk-radius-md);
	box-shadow: 0 12px 30px rgba(23, 33, 43, 0.04);
}
.tekkalk-site .entry-title a { color: var(--tekkalk-text); }
.tekkalk-site .entry-title a:hover { color: var(--tekkalk-brand-light); }
.tekkalk-site .entry-meta,
.tekkalk-site .entry-summary,
.tekkalk-site .entry-content { color: var(--tekkalk-muted); }

.tekkalk-site .button,
.tekkalk-site button:not(.menu-toggle),
.tekkalk-site input[type="submit"],
.tekkalk-site .wp-element-button,
.tekkalk-site .wp-block-button__link {
	background: var(--tekkalk-brand);
	border: 1px solid var(--tekkalk-brand);
	border-radius: 999px;
	color: #ffffff;
	font-weight: 750;
	padding: 0.78em 1.4em;
	box-shadow: 0 10px 25px rgba(18, 60, 90, 0.16);
	transition: transform 0.2s ease, background-color 0.2s ease;
}
.tekkalk-site .button:hover,
.tekkalk-site button:not(.menu-toggle):hover,
.tekkalk-site input[type="submit"]:hover,
.tekkalk-site .wp-element-button:hover,
.tekkalk-site .wp-block-button__link:hover {
	background: var(--tekkalk-brand-dark);
	border-color: var(--tekkalk-brand-dark);
	color: #ffffff;
	transform: translateY(-2px);
}

.tekkalk-site input[type="text"],
.tekkalk-site input[type="email"],
.tekkalk-site input[type="url"],
.tekkalk-site input[type="search"],
.tekkalk-site input[type="tel"],
.tekkalk-site input[type="number"],
.tekkalk-site select,
.tekkalk-site textarea {
	background: #ffffff;
	border: 1px solid var(--tekkalk-line);
	border-radius: var(--tekkalk-radius-sm);
	color: var(--tekkalk-text);
	padding: 0.8em 0.9em;
}
.tekkalk-site input:focus,
.tekkalk-site select:focus,
.tekkalk-site textarea:focus {
	border-color: var(--tekkalk-brand-light);
	box-shadow: 0 0 0 3px rgba(29, 102, 143, 0.12);
	outline: none;
}

.tekkalk-site .site-footer,
.tekkalk-site .footer-widgets {
	background: #0b2233;
	color: #d6e0e6;
}
.tekkalk-site .site-footer a,
.tekkalk-site .footer-widgets a { color: #d6e0e6; }
.tekkalk-site .site-footer a:hover,
.tekkalk-site .footer-widgets a:hover { color: #ffffff; }

.tekkalk-section { padding-block: clamp(3.75rem, 7vw, 6rem); }
.tekkalk-section--white { background: var(--tekkalk-surface); }
.tekkalk-section--soft { background: var(--tekkalk-soft); }
.tekkalk-section--dark { background: #102b3f; color: #ffffff; }
.tekkalk-container {
	width: min(calc(100% - 2rem), var(--tekkalk-content-width));
	margin-inline: auto;
}
.tekkalk-eyebrow {
	display: inline-flex;
	align-items: center;
	gap: 0.55rem;
	background: #e9f2f7;
	border: 1px solid #d0e3ee;
	border-radius: 999px;
	color: var(--tekkalk-brand-light);
	font-size: 0.8rem;
	font-weight: 800;
	letter-spacing: 0.04em;
	padding: 0.42rem 0.8rem;
	text-transform: uppercase;
}
.tekkalk-card {
	background: var(--tekkalk-surface);
	border: 1px solid var(--tekkalk-line);
	border-radius: var(--tekkalk-radius-md);
	box-shadow: 0 12px 30px rgba(23, 33, 43, 0.04);
	padding: clamp(1.4rem, 3vw, 2rem);
}
.tekkalk-grid-2,
.tekkalk-grid-3 { display: grid; gap: 1.4rem; }
.tekkalk-grid-2 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.tekkalk-grid-3 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.tekkalk-muted { color: var(--tekkalk-muted); }
.tekkalk-status {
	display: inline-flex;
	align-items: center;
	background: var(--tekkalk-accent-soft);
	border-radius: 999px;
	color: #8c5714;
	font-size: 0.8rem;
	font-weight: 800;
	padding: 0.35rem 0.7rem;
}

@media (max-width: 900px) {
	.tekkalk-grid-2,
	.tekkalk-grid-3 { grid-template-columns: 1fr; }
	.tekkalk-site .site-content { padding-top: 24px; }
}
@media (prefers-reduced-motion: reduce) {
	.tekkalk-site *,
	.tekkalk-site *::before,
	.tekkalk-site *::after {
		scroll-behavior: auto !important;
		transition-duration: 0.01ms !important;
	}
}
