/*
 * Grand Duchy of Scheinhafen — colour theme
 * Colours taken from the national flag:
 *   Red   #EF3340 — field (upper-left) + diagonal stripe
 *   White #FFFFFF — border between the diagonal stripes
 *   Blue  #00A3E0 — field (lower-right) + diagonal stripe
 */

:root {
    --schein-red: #EF3340;
    --schein-white: #FFFFFF;
    --schein-blue: #00A3E0;
    --schein-ink: #14212B;      /* near-black for body text, derived dark neutral */
    --schein-paper: #F7FAFC;    /* soft off-white background, easier on the eyes than pure white */
}

/* ---------- Global ---------- */
body {
    background-color: var(--schein-paper);
    color: var(--schein-ink);
}

a {
    color: var(--schein-blue);
}

a:hover,
a:focus {
    color: var(--schein-red);
}

/* ---------- Site header / branding ---------- */
.site-header,
.main-header,
header.site-header {
    background-color: var(--schein-white);
    border-bottom: 4px solid var(--schein-red);
}

.site-title,
.site-title a {
    color: var(--schein-ink);
}

/* Thin tricolour accent bar, echoing the flag's diagonal red/white/blue */
.site-header::before,
header.site-header::before {
    content: "";
    display: block;
    height: 6px;
    width: 100%;
    background: linear-gradient(
        90deg,
        var(--schein-red) 0%,
        var(--schein-red) 45%,
        var(--schein-white) 45%,
        var(--schein-white) 55%,
        var(--schein-blue) 55%,
        var(--schein-blue) 100%
    );
}

/* ---------- Navigation ---------- */
.main-navigation ul li a,
nav.primary-menu ul li a {
    color: var(--schein-ink);
}

.main-navigation ul li a:hover,
nav.primary-menu ul li a:hover,
.main-navigation ul li.current-menu-item > a {
    color: var(--schein-red);
    border-bottom: 2px solid var(--schein-blue);
}

/* ---------- Buttons ---------- */
.wp-block-button__link,
button,
input[type="submit"] {
    background-color: var(--schein-red);
    color: var(--schein-white);
    border: none;
    border-radius: 2px;
}

.wp-block-button__link:hover,
button:hover,
input[type="submit"]:hover {
    background-color: var(--schein-blue);
    color: var(--schein-white);
}

/* Secondary / outline button style */
.wp-block-button.is-style-outline .wp-block-button__link {
    background-color: transparent;
    color: var(--schein-blue);
    border: 2px solid var(--schein-blue);
}

/* ---------- Headings ---------- */
h1, h2, h3, h4, h5, h6 {
    color: var(--schein-ink);
}

h2 {
    border-left: 4px solid var(--schein-red);
    padding-left: 0.6em;
}

/* ---------- News blog ---------- */
.post,
article.type-post {
    background-color: var(--schein-white);
    border-radius: 4px;
}

.post .entry-title a {
    color: var(--schein-ink);
}

.post .entry-title a:hover {
    color: var(--schein-blue);
}

/* ---------- Official Announcements ---------- */
/* Styled distinctly from News: bordered "decree" card in red/blue with a white seal area */
.type-announcement,
article.type-announcement {
    background-color: var(--schein-white);
    border: 2px solid var(--schein-blue);
    border-top: 6px solid var(--schein-red);
    border-radius: 2px;
    padding: 2em;
    position: relative;
}

.type-announcement .entry-title,
article.type-announcement .entry-title {
    color: var(--schein-red);
    text-transform: uppercase;
    letter-spacing: 0.03em;
}

.type-announcement .entry-meta,
article.type-announcement .entry-meta {
    color: var(--schein-blue);
    font-weight: 600;
}

/* ---------- Footer ---------- */
.site-footer,
footer.site-footer {
    background-color: var(--schein-ink);
    color: var(--schein-white);
}

.site-footer a,
footer.site-footer a {
    color: var(--schein-blue);
}

.site-footer a:hover,
footer.site-footer a:hover {
    color: var(--schein-red);
}
