/*
Theme Name:   ΚΟΜΜΑ ΝΕΩΝ (Kadence child)
Description:  Child theme του Kadence για το kommaneon.gr. Μπλε και λευκό, μεγάλοι τίτλοι, στρογγυλά κουμπιά.
Template:     kadence
Version:      1.0.2
Requires at least: 6.3
Requires PHP: 7.4
Text Domain:  kommaneon
*/

/* ---------- Χρώματα: υπερισχύουν της παλέτας του Kadence ---------- */
body {
	--global-palette1: #0D5EAF; /* βασικό μπλε */
	--global-palette2: #2F9BFF; /* φωτεινό μπλε */
	--global-palette3: #0A2A66; /* σκούρο μπλε (τίτλοι) */
	--global-palette4: #1B2B4A; /* κείμενο */
	--global-palette5: #4A5B7A;
	--global-palette6: #8FA3C4;
	--global-palette7: #EAF3FF; /* ανοιχτό μπλε φόντο */
	--global-palette8: #F5F9FF;
	--global-palette9: #FFFFFF;
	--kn-navy: #0A2A66;
	--kn-blue: #0D5EAF;
	--kn-sky: #2F9BFF;
	--kn-pale: #EAF3FF;
	--kn-head: Montserrat, "Segoe UI", system-ui, -apple-system, sans-serif;
	--kn-body: Manrope, "Segoe UI", system-ui, -apple-system, sans-serif;
	font-family: var(--kn-body);
	color: var(--kn-navy);
}

h1, h2, h3, h4, h5, h6,
.entry-title, .wp-block-heading {
	font-family: var(--kn-head);
	font-weight: 800;
	color: var(--kn-navy);
	line-height: 1.15;
}

/* ---------- Κουμπιά ---------- */
.wp-block-button__link,
.button, button[type="submit"], input[type="submit"] {
	border-radius: 999px;
	padding: .9em 1.9em;
	font-family: var(--kn-body);
	font-weight: 600;
	background: var(--kn-sky);
	color: var(--kn-navy);
	border: 2px solid var(--kn-sky);
	transition: background .2s, color .2s, border-color .2s;
}
.wp-block-button__link:hover, .wp-block-button__link:focus-visible {
	background: var(--kn-navy);
	border-color: var(--kn-navy);
	color: #fff;
}
.wp-block-button.is-style-outline > .wp-block-button__link {
	background: transparent;
	color: var(--kn-navy);
	border-color: var(--kn-navy);
}
.wp-block-button.is-style-outline > .wp-block-button__link:hover { background: var(--kn-navy); color: #fff; }

/* ---------- Header ---------- */
/* Οι επιλογείς είναι πιο ειδικοί από του Kadence (1.5.x), ώστε να υπερισχύουν των ρυθμίσεων της Προσαρμογής. */
body .site-header, body .site-main-header-wrap .site-header-row-container-inner { background: #fff; }
body .header-navigation .header-menu-container ul li.menu-item > a { font-weight: 600; color: var(--kn-navy); }
body .header-navigation .header-menu-container ul li.menu-item.current-menu-item > a,
body .header-navigation .header-menu-container ul li.menu-item > a:hover { color: var(--kn-blue); }
/* Το στοιχείο μενού «Γίνε μέλος» γίνεται κουμπί */
body .header-navigation .header-menu-container ul li.menu-item.kn-cta > a {
	background: var(--kn-sky);
	color: var(--kn-navy);
	border-radius: 999px;
	padding: .65em 1.4em;
	margin-left: .5em;
}
body .header-navigation .header-menu-container ul li.menu-item.kn-cta > a:hover { background: var(--kn-navy); color: #fff; }

/* Υπομενού (dropdown): γαλάζιο φόντο και λευκά γράμματα.
   Το #1976D2 είναι η πιο ανοιχτή απόχρωση που κρατά το λευκό κείμενο ευανάγνωστο (αντίθεση 4,6:1).
   Για πιο ανοιχτό γαλάζιο αλλάξτε το --kn-azure, π.χ. σε #3498db (πιο δυσανάγνωστο). */
body { --kn-azure: #1976D2; }
body .header-navigation .header-menu-container ul ul.sub-menu,
body .header-navigation .header-menu-container ul ul.submenu {
	background: var(--kn-azure);
	box-shadow: 0 12px 32px rgba(10, 42, 102, .22);
	padding: 6px 0;
}
body .header-navigation .header-menu-container ul ul li.menu-item { border-bottom: 1px solid rgba(255, 255, 255, .25); }
body .header-navigation .header-menu-container ul ul li.menu-item:last-child { border-bottom: 0; }
body .header-navigation .header-menu-container ul ul li.menu-item > a {
	background: transparent;
	color: #fff;
}
body .header-navigation .header-menu-container ul ul li.menu-item > a:hover,
body .header-navigation .header-menu-container ul ul li.menu-item.current-menu-item > a {
	background: var(--kn-blue);
	color: #fff;
}

/* ---------- Footer ---------- */
body .site-footer, body .site-footer-wrap .site-footer-row-container-inner { background: var(--kn-navy); color: #fff; }
body .site-footer a { color: #fff; }
body .site-footer a:hover { color: var(--kn-sky); }
body .site-footer h1, body .site-footer h2, body .site-footer h3, body .site-footer h4 { color: #fff; }

/* ---------- Αρχική: χωρίς τίτλο σελίδας και χωρίς πλαίσιο, ώστε οι ενότητες να πιάνουν όλο το πλάτος ---------- */
body.home .entry-hero { display: none; }
body.home .content-area { margin-top: 0; margin-bottom: 0; }
body.home .content-container.site-container { max-width: none; padding-left: 0; padding-right: 0; }
body.home .content-bg { background: transparent; box-shadow: none; }
body.home .entry-content-wrap { padding: 0; }
body.home .entry-content > .alignfull { max-width: none; width: 100%; margin-left: 0; margin-right: 0; }
body.home .entry-content > * { margin-block-start: 0; margin-block-end: 0; }

/* ---------- Αρχική: στοιχεία ενοτήτων ---------- */
.kn-hero { margin: 0; padding: 0; }
.kn-hero > * { margin-block: 0; }
.kn-eyebrow { margin: 0 0 .5em; font-family: var(--kn-head); font-weight: 800; letter-spacing: .12em; color: var(--kn-sky); }

/* Λωρίδα με τις αξίες (κινείται αργά, σταματά αν ο χρήστης προτιμά λιγότερη κίνηση) */
.kn-ticker { overflow: hidden; background: var(--kn-sky); color: var(--kn-navy); padding: 18px 0; margin: 0; white-space: nowrap; }
.kn-ticker__track { display: inline-flex; gap: 2.5rem; padding-left: 2.5rem; animation: kn-marquee 28s linear infinite; font-family: var(--kn-head); font-weight: 800; font-size: clamp(18px, 2.2vw, 28px); }
@keyframes kn-marquee { to { transform: translateX(-50%); } }
@media (prefers-reduced-motion: reduce) { .kn-ticker__track { animation: none; } }

/* Poll */
.kn-poll-section { padding: 56px 20px; text-align: center; }
.kn-poll-section .kn-poll { max-width: 1100px; }

/* Αποτελέσματα */
.kn-stats { background: var(--kn-blue); color: #fff; padding: 48px 20px; text-align: center; }
.kn-stats .wp-block-columns { max-width: 1100px; margin: 0 auto; }
.kn-stats h2, .kn-stats h3, .kn-stats p { color: #fff; margin: 0; }
.kn-stats .kn-big { font-family: var(--kn-head); font-weight: 800; font-size: clamp(44px, 7vw, 72px); line-height: 1; }

/* Σλόγκαν: κάρτες που γέρνουν σαν αυτοκόλλητα */
.kn-slogans-section { background: var(--kn-pale); padding: 64px 20px; }
.kn-slogans-section > * { max-width: 1200px; margin-left: auto; margin-right: auto; }
.kn-slogans figure.wp-block-image img { border-radius: 24px; aspect-ratio: 4/3; object-fit: cover; }
.kn-slogans figure.wp-block-image:nth-child(odd)  { transform: rotate(-2deg); }
.kn-slogans figure.wp-block-image:nth-child(even) { transform: rotate(2deg); }
@media (prefers-reduced-motion: no-preference) {
	.kn-slogans figure.wp-block-image { transition: transform .25s; }
	.kn-slogans figure.wp-block-image:hover { transform: rotate(0) scale(1.03); }
}

/* Αξίες: κάρτες με περίγραμμα */
.kn-values { padding: 64px 20px; }
.kn-values .wp-block-columns { max-width: 1200px; margin: 0 auto; gap: 24px; }
.kn-card { border: 3px solid var(--kn-navy); border-radius: 24px; padding: 28px; height: 100%; }
.kn-card .kn-num { margin: 0; font-size: 44px; color: var(--kn-sky); }
.kn-card h3 { margin: 6px 0 12px; font-size: 24px; }
.kn-card p { margin: 0; line-height: 1.65; }

/* Μπάρα εγγραφής */
.kn-join { background: var(--kn-sky); padding: 28px 20px; }
.kn-join .wp-block-columns { max-width: 1200px; margin: 0 auto; align-items: center; }
.kn-join p { margin: 0; font-family: var(--kn-head); font-weight: 800; font-size: clamp(18px, 2.4vw, 24px); color: var(--kn-navy); }
.kn-join .wp-block-button__link { background: var(--kn-navy); border-color: var(--kn-navy); color: #fff; }
.kn-join .wp-block-button__link:hover { background: #fff; color: var(--kn-navy); border-color: #fff; }

/* Footer snippet */
.kn-footer { display: flex; flex-wrap: wrap; gap: 24px 48px; justify-content: space-between; font-size: 15px; line-height: 1.7; }
.kn-footer strong { font-family: var(--kn-head); font-weight: 800; letter-spacing: .04em; }
.kn-footer ul { margin: 0; padding: 0; list-style: none; }

/* Εσωτερικές σελίδες: ευανάγνωστο κείμενο */
.entry-content { line-height: 1.75; }
.entry-content h2, .entry-content h3, .entry-content h4 { margin-top: 1.8em; }

@media (max-width: 781px) {
	.kn-card { padding: 22px; }
	.kn-values, .kn-slogans-section, .kn-poll-section { padding-top: 40px; padding-bottom: 40px; }
}
