/*
Theme Name: Åbenkirke Hillerød
Theme URI: https://aabenkirkehil.dk/
Author: Åbenkirke Hillerød
Description: Batch 1–2 — forside, sideskabeloner, månedskalender, prædiken-arkiv, Det sker, Prædikener, Grupper, Næste skridt, Team, video-hero. Custom theme for Åbenkirke Hillerød. Layout is authored with inline styles; all editable content lives in ACF fields and the Events/Sermons custom post types, so editors cannot break the design.
Version: 1.11.1
Requires at least: 6.4
Tested up to: 6.8
Requires PHP: 8.0
License: GPL-2.0-or-later
Text Domain: aabenkirke
*/

html { scroll-behavior: smooth; }
body { margin: 0; background: #FBFAF7; color: #0B1240; font-family: Karla, system-ui, sans-serif; -webkit-font-smoothing: antialiased; }
* { box-sizing: border-box; }
a { color: #E30613; text-decoration: none; }
a:hover { color: #B3040F; }
h1, h2, h3, h4 { margin: 0; font-family: Archivo, system-ui, sans-serif; letter-spacing: -0.02em; text-wrap: pretty; }
p { margin: 0; text-wrap: pretty; }
/* Indhold skrevet i WordPress-editoren beholder normal afstand mellem afsnit */
.ak-prose > * + *, .entry-content > * + * { margin-top: 1.1em; }
.ak-prose h2, .entry-content h2 { font-size: 1.6em; margin-top: 1.8em; }
.ak-prose h3, .entry-content h3 { font-size: 1.25em; margin-top: 1.6em; }
.ak-prose ul, .ak-prose ol, .entry-content ul, .entry-content ol { padding-left: 1.3em; }
.ak-prose li + li, .entry-content li + li { margin-top: 0.4em; }
.ak-prose blockquote, .entry-content blockquote { margin: 1.4em 0; padding-left: 20px; border-left: 3px solid #E30613; font-size: 1.1em; }
img { max-width: 100%; height: auto; display: block; }
.ak-ph { background-color: #EDEAE3; background-image: repeating-linear-gradient(135deg, rgba(11,18,54,0.06) 0 10px, rgba(11,18,54,0) 10px 20px); }
.ak-ph--dark { background-color: #152553; background-image: repeating-linear-gradient(135deg, rgba(255,255,255,0.06) 0 10px, rgba(255,255,255,0) 10px 20px); }
.ak-cap { font-family: ui-monospace, Menlo, monospace; font-size: 10.5px; letter-spacing: 0.1em; }
@keyframes ak-kb { from { transform: scale(1); } to { transform: scale(1.12) translate3d(0,-1%,0); } }
.ak-reveal { opacity: 0; transform: translateY(26px); transition: opacity .7s ease, transform .7s cubic-bezier(.2,.7,.2,1); }
.ak-reveal.is-in { opacity: 1; transform: none; }
.ak-has-drop { padding-bottom: 6px; margin-bottom: -6px; }
.ak-drop { position: absolute; top: 100%; left: -8px; min-width: 214px; padding: 8px; border-radius: 14px; background: #fff; border: 1px solid #E6E3DE; box-shadow: 0 18px 40px rgba(11,18,54,.14); display: flex; flex-direction: column; gap: 2px; opacity: 0; visibility: hidden; transform: translateY(-2px); z-index: 70; transition: opacity .16s ease .22s, transform .16s ease .22s, visibility 0s linear .38s; }
.ak-drop::before { content: ""; position: absolute; left: 0; right: 0; top: -16px; height: 18px; }
.ak-has-drop:hover .ak-drop, .ak-has-drop:focus-within .ak-drop { opacity: 1; visibility: visible; transform: translateY(6px); transition-delay: 0s, 0s, 0s; }
.ak-nav a { padding: 9px 12px; font-family: Archivo, sans-serif; font-weight: 600; font-size: 15px; color: #132A63; display: flex; align-items: center; gap: 6px; }
.ak-nav a:hover { color: #E30613; }
.ak-nav > li:first-child > a { color: #E30613; }
.ak-drop a { padding: 9px 12px; border-radius: 8px; font-size: 14px; font-weight: 500; }
.ak-drop a:hover { background: #F4F2ED; color: #E30613; }
.ak-burger { display: none; flex-direction: column; gap: 4px; align-items: center; justify-content: center; width: 46px; height: 46px; border-radius: 12px; border: 1.5px solid #D9D5CE; background: transparent; cursor: pointer; }
.ak-burger span { display: block; width: 19px; height: 2px; background: #132A63; border-radius: 2px; }
.ak-mobile { display: none; flex-direction: column; padding: 4px 22px 22px; border-top: 1px solid #E6E3DE; background: #FBFAF7; max-height: 72vh; overflow-y: auto; }
.ak-mobile.is-open { display: flex; }
.ak-mobile a { padding: 14px 4px; border-bottom: 1px solid #EFECE6; font-family: Archivo, sans-serif; font-weight: 600; font-size: 17px; color: #132A63; display: block; }
.ak-mobile .ak-mobile__sub { display: block; font-family: Karla, sans-serif; font-weight: 400; font-size: 13px; color: #8A8F9A; }
.ak-pagination .nav-links { display: flex; flex-wrap: wrap; gap: 8px; align-items: center; }
.ak-pagination .page-numbers { display: inline-flex; align-items: center; justify-content: center; min-width: 42px; height: 42px; padding: 0 14px; border-radius: 999px; border: 1px solid #E6E3DE; background: #fff; font-family: Archivo, sans-serif; font-weight: 700; font-size: 14.5px; color: #0B1240; }
.ak-pagination .page-numbers:hover { border-color: #E30613; color: #E30613; }
.ak-pagination .page-numbers.current { background: #E30613; border-color: #E30613; color: #fff; }
.ak-pagination .page-numbers.dots { border-color: transparent; background: transparent; }
.ak-card { transition: transform .25s ease, box-shadow .25s ease; }
.ak-card:hover { transform: translateY(-6px); box-shadow: 0 18px 40px rgba(11,18,54,.12); }
@media (max-width: 1299px) { .ak-live { display: none !important; } }
@media (max-width: 1179px) { .ak-nav { display: none !important; } .ak-burger { display: flex; } .ak-actions { margin-left: auto; } }
@media (max-width: 860px) {
	.ak-head { gap: 14px !important; padding: 12px 16px !important; }
	.ak-brand { flex: 1 1 auto !important; min-width: 0; }
	.ak-brand > span:last-child { font-size: 15px !important; letter-spacing: .02em !important; min-width: 0; overflow: hidden; }
	.ak-actions { flex: 0 0 auto; margin-left: 0 !important; }
	.ak-cta { display: none !important; }
}
@media print { .ak-burger, .ak-mobile { display: none !important; } }

/* Hero video: sits under the gradient; the poster image shows while it loads and for reduced-motion users. */
.ak-hero-video { z-index: 0; }
.ak-hero-fallback { z-index: -1; }
@media (prefers-reduced-motion: reduce) {
	.ak-hero-video { display: none; }
	.ak-hero-fallback { z-index: 0; }
}
@media (max-width: 640px) {
	.ak-hero-video { display: none; }
	.ak-hero-fallback { z-index: 0; }
}
