/*
Theme Name: Klei Groningen (tijdelijk)
Template: twentytwentyfive
Description: Tijdelijk child theme in de huisstijl van Klei Groningen, tot het definitieve thema is aangeleverd. Alle SEO/GEO-logica staat in mu-plugins/klei-core.php en is thema-onafhankelijk.
Version: 1.1.0
Text Domain: klei-groningen
*/

.skip-link:focus { z-index: 100000; }

/* Kopbalk */
.klei-header { position: sticky; top: 0; z-index: 50; box-shadow: 0 2px 12px rgba(0,0,0,.08); }
.klei-header .wp-block-site-title a { text-decoration: none; }
.klei-header .wp-block-navigation a:hover { text-decoration: underline; text-underline-offset: .25em; }

/* Kaarten */
.klei-card { background: var(--wp--preset--color--base); border-radius: 14px; box-shadow: 0 1px 3px rgba(0,0,0,.06), 0 8px 24px rgba(0,60,55,.07); height: 100%; transition: transform .15s ease, box-shadow .15s ease; }
.klei-card:hover { transform: translateY(-2px); box-shadow: 0 2px 6px rgba(0,0,0,.08), 0 14px 32px rgba(0,60,55,.12); }
.klei-card h3 a { text-decoration: none; color: inherit; }
.klei-card h3 a::after { content: " →"; color: var(--wp--preset--color--accent-1); }

/* Kernpunten bovenaan dienstpagina's (antwoord eerst, goed citeerbaar) */
.klei-summary { border-left: 5px solid var(--wp--preset--color--accent-2); }
.klei-summary ul { margin: 0; }

/* Veelgestelde vragen */
.klei-faq details { border-bottom: 1px solid var(--wp--preset--color--accent-4); padding: .9rem 0; }
.klei-faq summary { cursor: pointer; font-weight: 700; font-size: 1.1rem; list-style-position: outside; }
.klei-faq details[open] summary { color: var(--wp--preset--color--accent-1); }
.klei-faq details > *:not(summary) { margin-top: .6rem; }

/* Testimonials */
.klei-quote { background: var(--wp--preset--color--base); border-radius: 14px; border: 0 !important; padding: 1.5rem 1.75rem !important; height: 100%; margin: 0; }
.klei-quote p { font-style: italic; }

/* Formulier */
.klei-form label { display: block; font-weight: 600; margin-bottom: .3rem; }
.klei-form input[type=text], .klei-form input[type=email], .klei-form input[type=tel], .klei-form select, .klei-form textarea {
	width: 100%; padding: .75rem .9rem; border: 1px solid #8a9a98; border-radius: 8px; font: inherit; background: #fff; box-sizing: border-box; }
.klei-form input:focus, .klei-form select:focus, .klei-form textarea:focus { outline: 3px solid var(--wp--preset--color--accent-2); outline-offset: 1px; border-color: var(--wp--preset--color--accent-1); }
.klei-form .klei-form__check label { font-weight: 400; display: flex; gap: .5rem; align-items: flex-start; }
.klei-form .klei-form__check input { margin-top: .35rem; }
.klei-hp { position: absolute !important; left: -9999px !important; }
.klei-form-notice { padding: 1rem 1.25rem; border-radius: 8px; margin-bottom: 1rem; }
.klei-form-notice--ok { background: #e3f5f2; border: 1px solid #00756a; }
.klei-form-notice--error { background: #fdecea; border: 1px solid #b3261e; }

/* Footer */
.klei-footer a { color: inherit; }
.klei-footer address { font-style: normal; line-height: 1.7; }
.klei-footer ul { list-style: none; padding: 0; margin: 0; line-height: 2; }
.klei-legal { font-size: .85rem; opacity: .85; }

/* Auteursbox */
.klei-author { border-radius: 14px; }
.klei-author img { border-radius: 50%; }

@media (prefers-reduced-motion: reduce) { .klei-card { transition: none; } .klei-card:hover { transform: none; } }

/* Koppen op donkere vlakken */
.has-accent-3-background-color :is(h1, h2, h3, h4) { color: var(--wp--preset--color--accent-2); }
.has-accent-3-background-color a:not(.wp-element-button) { color: var(--wp--preset--color--base); }
.has-accent-3-background-color .is-style-outline .wp-element-button { color: var(--wp--preset--color--base); border-color: currentColor; }

/* Logo (aangeleverd): "Klei Groningen" + gele chevron */
.klei-logo { display: inline-flex; align-items: center; gap: .45rem; text-decoration: none !important; color: #000; line-height: 1; }
.klei-logo__name { font-weight: 400; font-size: 1.65rem; letter-spacing: .005em; }
.klei-logo__mark { height: 2.6rem; width: auto; flex: none; margin-top: .1rem; transition: transform .2s ease; }
.klei-logo:hover .klei-logo__mark { transform: translateX(3px); }
.klei-logo:focus-visible { outline: 3px solid var(--wp--preset--color--accent-3); outline-offset: 4px; border-radius: 6px; }
@media (max-width: 600px) { .klei-logo__name { font-size: 1.35rem; } .klei-logo__mark { height: 2.2rem; } }
@media (prefers-reduced-motion: reduce) { .klei-logo__mark { transition: none; } }

/* Geel als merkaccent */
::selection { background: var(--wp--preset--color--accent-2); color: #000; }
.klei-card h3 a::after { color: var(--wp--preset--color--contrast); }
.klei-card { border-top: 5px solid var(--wp--preset--color--accent-2); }
.klei-faq details[open] summary { color: var(--wp--preset--color--contrast); }
.klei-faq summary::marker { color: #c9b400; }

/* Lange Nederlandse woorden netjes afbreken */
h1, h2 { hyphens: auto; -webkit-hyphens: auto; overflow-wrap: break-word; }
