/**
Theme Name: KENNTI Astra Child
Theme URI: https://kennti.com
Author: KENNTI
Author URI: https://kennti.com
Description: Official Astra child theme for KENNTI. Keeps narrowly scoped theme-level customizations isolated from Astra core while Astra, Elementor, LearnDash, WooCommerce, Polylang, and other canonical owners retain their defined responsibilities.
Version: 1.0.4
License: GNU General Public License v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: kennti-astra-child
Template: astra
*/


/* ---------------------------------------------------------------------------
 * Shell-critical text colours.
 *
 * Two rules exist because two elements changed identity, not because the design
 * needs an override layer:
 *
 *  1. The homepage buttons became <a> when their destinations were added, so they
 *     inherit the global content-link colour and underline. Elementor styles the
 *     button box; nothing styled the anchor text.
 *  2. The header and footer sit on the KENNTI navy shell. Their link colour must
 *     resolve against that shell, not against the page's brand-on-white link colour.
 *
 * Both are theme-level presentation with no cleaner native owner once the element
 * type changed, and both are deliberately narrow.
 * ------------------------------------------------------------------------ */

a.e-button-base,
a.e-button-base:hover,
a.e-button-base:focus,
a.e-button-base:visited {
	color: #ffffff !important;
	text-decoration: none !important;
}

a.e-button-base:focus-visible {
	outline: 2px solid #60a5fa;
	outline-offset: 2px;
}

.site-header .menu-link,
.site-header .ast-builder-menu-1 .menu-link,
.site-footer a,
.site-footer .menu-link {
	color: #f8fafc !important;
	text-decoration: none;
}

.site-header .menu-link:hover,
.site-header .menu-link:focus-visible,
.site-header .current-menu-item > .menu-link,
.site-footer a:hover,
.site-footer a:focus-visible {
	color: #60a5fa !important;
}

/* ---------------------------------------------------------------------------
 * The Astra Site Builder 404 layout. A system template Astra owns, so its few
 * presentation rules live here rather than in a page builder.
 * ------------------------------------------------------------------------ */

.k27-404 {
	max-width: 680px;
	margin: 0 auto;
	padding: 48px 24px 64px;
}

.k27-404__eyebrow {
	margin: 0 0 8px;
	font-size: 13px;
	font-weight: 600;
	letter-spacing: 0.08em;
	color: #475569;
}

.k27-404__title {
	margin: 0 0 12px;
	font-size: 36px;
	line-height: 1.2;
	color: #0f172a;
}

.k27-404__lead {
	margin: 0 0 32px;
	color: #475569;
}

.k27-404__routes {
	margin: 0 0 32px;
	padding: 0;
	list-style: none;
	border-top: 1px solid #e7ecf3;
}

.k27-404__routes li {
	display: flex;
	flex-wrap: wrap;
	gap: 4px 16px;
	align-items: baseline;
	padding: 14px 0;
	border-bottom: 1px solid #e7ecf3;
}

.k27-404__routes a {
	min-width: 220px;
	font-weight: 600;
	color: #2563eb;
	text-decoration: none;
}

.k27-404__routes a:hover,
.k27-404__routes a:focus-visible {
	color: #1d4ed8;
	text-decoration: underline;
}

.k27-404__routes span {
	color: #475569;
	font-size: 15px;
}

.k27-404__search-label {
	margin: 0 0 10px;
	font-weight: 600;
	color: #0f172a;
}

@media (max-width: 600px) {
	.k27-404 { padding: 32px 20px 48px; }
	.k27-404__title { font-size: 27px; }
	.k27-404__routes a { min-width: 100%; }
}

/* ---------------------------------------------------------------------------
 * Mobile off-canvas drawer.
 *
 * Astra's own off-canvas background control was set to the shell navy, but the
 * menu list itself keeps painting #f9f9f9, which put the shell's light menu text
 * on a near-white surface at 1.01:1 — an invisible mobile menu. The drawer and its
 * list carry the shell colour explicitly so text and surface can never disagree.
 * ------------------------------------------------------------------------ */

.ast-header-break-point .ast-mobile-header-content,
.ast-header-break-point #ast-hf-mobile-menu,
.ast-header-break-point .ast-mobile-header-content .main-header-menu,
.ast-header-break-point .main-header-menu.ast-nav-menu,
.ast-header-break-point .main-header-menu .menu-item,
.ast-header-break-point .main-header-menu .sub-menu {
	background-color: #101827;
}

.ast-header-break-point .main-header-menu .menu-item > .menu-link {
	border-bottom: 1px solid rgba(219, 234, 254, 0.16);
	min-height: 44px;
	display: flex;
	align-items: center;
}

.ast-header-break-point .main-header-menu .ast-menu-toggle {
	color: #f8fafc;
}
