/* SWC Archive theme — base.
   What the page content inherited from Kadence's base stylesheets and its generated global CSS: the palette and
   spacing variables (the plugin's CSS uses --global-palette1/2), typography, element defaults, buttons, and the
   spacing of the content wrapper chain. Values are Kadence's, as configured on this site in October 2026. */

:root {
    --global-palette1: #2b6cb0;
    --global-palette2: #215387;
    --global-palette3: #1a202c;
    --global-palette4: #2d3748;
    --global-palette5: #4a5568;
    --global-palette6: #718096;
    --global-palette7: #edf2f7;
    --global-palette8: #f7fafc;
    --global-palette9: #ffffff;
    --global-palette9rgb: 255, 255, 255;
    --global-palette-highlight: var(--global-palette1);
    --global-palette-highlight-alt: var(--global-palette2);
    --global-palette-btn-bg: var(--global-palette1);
    --global-palette-btn-bg-hover: var(--global-palette2);
    --global-palette-btn: var(--global-palette9);
    --global-palette-btn-hover: var(--global-palette9);
    --global-gray-400: #cbd5e0;
    --global-gray-500: #a0aec0;
    --global-body-font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
    --global-heading-font-family: inherit;
    --global-content-width: 1290px;
    --global-content-edge-padding: 1.5rem;
    --global-content-boxed-padding: 2rem;
    --global-xs-spacing: 1em;
    --global-sm-spacing: 1.5rem;
    --global-md-spacing: 2rem;
    --global-lg-spacing: 2.5em;
}
@media (max-width: 767px) {
    :root { --global-content-boxed-padding: 1.5rem; }
}

/* ---- Elements ---------------------------------------------------------------------------------- */
html { box-sizing: border-box; -webkit-text-size-adjust: 100%; line-height: 1.15; }
*, *::before, *::after { box-sizing: inherit; }
body {
    margin: 0;
    background: var(--global-palette8);
    font-family: var(--global-body-font-family);
    font-size: 17px;
    font-weight: 400;
    line-height: 1.6;
    color: var(--global-palette4);
}
input, select, optgroup, textarea {
    font-family: var(--global-body-font-family);
    font-size: 17px;
    font-weight: 400;
    line-height: 1.6;
    color: var(--global-palette4);
}
h1, h2, h3, h4, h5, h6 { font-family: var(--global-heading-font-family); font-weight: 700; line-height: 1.5; padding: 0; margin: 0; }
h1 { font-size: 32px; color: var(--global-palette3); }
h2 { font-size: 28px; color: var(--global-palette3); }
h3 { font-size: 24px; color: var(--global-palette3); }
h4 { font-size: 22px; color: var(--global-palette4); }
h5 { font-size: 20px; color: var(--global-palette4); }
h6 { font-size: 18px; color: var(--global-palette5); }
h1 a, h2 a, h3 a, h4 a, h5 a, h6 a { color: inherit; text-decoration: none; }
p { margin: 1em 0; }
b, strong { font-weight: bold; }
small { font-size: 80%; }
sub, sup { font-size: 75%; line-height: 0; position: relative; vertical-align: baseline; }
sub { bottom: -0.25em; }
sup { top: -0.5em; }
code, kbd, tt, var { font-family: Monaco, Consolas, "Andale Mono", "DejaVu Sans Mono", monospace; font-size: 0.8rem; }
pre { background: var(--global-palette7); font-family: "Courier 10 Pitch", Courier, monospace; font-size: 0.9375rem; line-height: 1.6; max-width: 100%; overflow: auto; padding: 1.5em; white-space: pre-wrap; }
blockquote { padding-left: 1em; border-left: 4px solid var(--global-palette4); }
hr { box-sizing: content-box; overflow: visible; height: 0; border: 0; border-bottom: 2px solid var(--global-gray-400); }
ul, ol { margin: 0 0 1.5em 1.5em; padding: 0; }
ul { list-style: disc; }
ol { list-style: decimal; }
li > ul, li > ol { margin-bottom: 0; margin-left: 1.5em; }
dd { margin: 0 1.5em 1.5em; }
img { display: block; height: auto; max-width: 100%; border-style: none; }
embed, iframe, object { max-width: 100%; }
figure { margin: 0.5em 0; }
table { margin: 0 0 1.5em; width: 100%; }
a {
    background-color: transparent;
    color: var(--global-palette-highlight);
    text-underline-offset: 0.1em;
    transition: all 0.1s linear;
}
a:hover, a:focus, a:active { color: var(--global-palette-highlight-alt); text-underline-offset: 0.25em; }
a:hover, a:active { outline: 0; }

/* ---- Form controls and buttons ------------------------------------------------------------------- */
button, input, optgroup, select, textarea { font-size: 100%; margin: 0; }
button, input { overflow: visible; }
button, select { text-transform: none; }
button, [type="button"], [type="reset"], [type="submit"] { -webkit-appearance: button; }
[type="search"] { -webkit-appearance: textfield; outline-offset: -2px; }
textarea { overflow: auto; width: 100%; }
input[type="text"], input[type="email"], input[type="url"], input[type="password"], input[type="search"], input[type="number"],
input[type="tel"], input[type="date"], textarea {
    -webkit-appearance: none;
    color: var(--global-palette5);
    border: 1px solid var(--global-gray-400);
    border-radius: 3px;
    padding: 0.4em 0.5em;
    max-width: 100%;
    background: var(--global-palette9);
    box-shadow: 0 0 0 -7px rgba(0, 0, 0, 0);
}
input[type="text"]:focus, input[type="email"]:focus, input[type="url"]:focus, input[type="password"]:focus, input[type="search"]:focus,
input[type="number"]:focus, input[type="tel"]:focus, input[type="date"]:focus, textarea:focus {
    color: var(--global-palette3);
    border-color: var(--global-palette6);
    outline: 0;
    box-shadow: 0 5px 15px -7px rgba(0, 0, 0, 0.1);
}
select {
    border: 1px solid var(--global-gray-400);
    padding: 0.2em 35px 0.2em 0.5em;
    background: var(--global-palette9) url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNSIgaGVpZ2h0PSIyNSIgZmlsbD0ibm9uZSIgc3Ryb2tlLXdpZHRoPSIyIiBzdHJva2U9IiNiYmIiPjxwYXRoIGQ9Ik02IDlsNiA2IDYtNiIvPjwvc3ZnPg==") no-repeat 98% 50%;
    background-size: 16px 100%;
    -webkit-appearance: none;
    appearance: none;
    outline: 0;
    box-shadow: 0 0 0 -7px rgba(0, 0, 0, 0);
}
button, .button, .wp-block-button__link, .wp-element-button, input[type="button"], input[type="reset"], input[type="submit"] {
    border-radius: 3px;
    background: var(--global-palette-btn-bg);
    color: var(--global-palette-btn);
    padding: 0.4em 1em;
    border: 0;
    font-size: 1.125rem;
    line-height: 1.6;
    display: inline-block;
    font-family: inherit;
    cursor: pointer;
    text-decoration: none;
    transition: all 0.2s ease;
    box-shadow: 0 0 0 -7px rgba(0, 0, 0, 0);
}
button:hover, button:focus, button:active, .button:hover, .button:focus, .button:active,
input[type="button"]:hover, input[type="button"]:focus, input[type="submit"]:hover, input[type="submit"]:focus {
    color: var(--global-palette-btn-hover);
    background: var(--global-palette-btn-bg-hover);
    box-shadow: 0 15px 25px -7px rgba(0, 0, 0, 0.1);
}
button:disabled, .button:disabled { cursor: not-allowed; opacity: 0.5; }

/* ---- Accessibility ------------------------------------------------------------------------------- */
.screen-reader-text {
    clip: rect(1px, 1px, 1px, 1px);
    position: absolute !important;
    height: 1px;
    width: 1px;
    overflow: hidden;
    word-wrap: normal !important;
}
.screen-reader-text:focus {
    background-color: #f1f1f1;
    border-radius: 3px;
    box-shadow: 0 0 2px 2px rgba(0, 0, 0, 0.6);
    clip: auto !important;
    color: #21759b;
    display: block;
    font-size: 0.875rem;
    font-weight: 700;
    height: auto;
    left: 5px;
    line-height: normal;
    padding: 15px 23px 14px;
    text-decoration: none;
    top: 5px;
    width: auto;
    z-index: 100000;
}

/* ---- Page wrapper and the content chain ------------------------------------------------------------
   #wrapper fills the viewport so the footer sits at the bottom of short pages. The chain below is styled as
   Kadence styled it (boxed content on a light page); the dark pages repaint it in content.css / the plugin. */
#wrapper { min-height: 100vh; display: flex; flex-direction: column; overflow: hidden; overflow: clip; } /* clip: the boxed layout's -1rem margins on phones must not scroll the page sideways */
#inner-wrap { flex: 1 0 auto; }
.site-container { margin: 0 auto; padding: 0 var(--global-content-edge-padding); max-width: var(--global-content-width); }
.content-area { margin-top: 5rem; margin-bottom: 5rem; }
@media (max-width: 1024px) { .content-area { margin-top: 3rem; margin-bottom: 3rem; } }
@media (max-width: 767px)  { .content-area { margin-top: 2rem; margin-bottom: 2rem; } }
.site-main { min-width: 0; }
.content-wrap { position: relative; }
.content-bg { background: var(--global-palette9); }
.entry { box-shadow: 0 15px 15px -10px rgba(0, 0, 0, 0.05); border-radius: 0.25rem; }
.entry-content-wrap { padding: 2rem; }
@media (max-width: 767px) { .entry-content-wrap { padding: 1.5rem; } }
.entry-header { margin-bottom: 1em; }
.entry-title { word-wrap: break-word; }
.entry-meta { font-size: 80%; margin: 1em 0; color: var(--global-palette5); }
/* Layouts (body class from functions.php: swc_theme_layout) */
.swc-layout-narrow .content-container.site-container { max-width: 842px; }
.swc-layout-full .content-container.site-container { max-width: none; padding: 0; }
.swc-layout-full .content-area { margin-top: 0; margin-bottom: 0; }
.swc-layout-full .content-bg { background: transparent; }
.swc-layout-full .entry { box-shadow: none; border-radius: 0; }
.swc-layout-full .entry > .entry-content-wrap { padding: 0; }
@media (max-width: 719px) {
    .swc-layout-boxed .content-bg, .swc-layout-narrow .content-bg { margin-left: -1rem; margin-right: -1rem; width: auto; }
}
.swc-layout-full .entry-content, .swc-layout-boxed .entry-content { margin: 0; }

.entry-content { word-break: break-word; }
.entry-content table { word-break: normal; }
.entry-content::after { display: table; clear: both; content: ""; }
.entry-content blockquote { margin: 0 0 var(--global-md-spacing); }

/* Spacing inside .single-content (Kadence content.min.css) */
.single-content { margin: var(--global-md-spacing) 0 0; }
.single-content address, .single-content figure, .single-content hr, .single-content p, .single-content table,
.single-content pre, .single-content form, .single-content .wp-block-buttons, .single-content .wp-block-button,
.single-content .wp-block-media-text, .single-content .wp-block-cover, .single-content .wp-block-group,
.single-content [class*="__inner-content"] {
    margin-top: 0;
    margin-bottom: var(--global-md-spacing);
}
.single-content address:last-child, .single-content figure:last-child, .single-content hr:last-child,
.single-content p:last-child, .single-content table:last-child, .single-content pre:last-child,
.single-content form:last-child, .single-content .wp-block-buttons:last-child, .single-content .wp-block-button:last-child,
.single-content .wp-block-media-text:last-child, .single-content .wp-block-cover:last-child,
.single-content .wp-block-group:last-child, .single-content h1:last-child, .single-content h2:last-child,
.single-content h3:last-child, .single-content h4:last-child, .single-content h5:last-child, .single-content h6:last-child,
.single-content ul:last-child, .single-content ol:last-child {
    margin-bottom: 0;
}
.single-content h1, .single-content h2, .single-content h3, .single-content h4, .single-content h5, .single-content h6 { margin: 1.5em 0 0.5em; }
.single-content h1:first-child, .single-content h2:first-child, .single-content h3:first-child,
.single-content h4:first-child, .single-content h5:first-child, .single-content h6:first-child { margin-top: 0; }
.single-content h1 + *, .single-content h2 + *, .single-content h3 + *, .single-content h4 + *, .single-content h5 + *, .single-content h6 + * { margin-top: 0; }
.single-content ul, .single-content ol { margin: 0 0 var(--global-md-spacing); padding-left: 2em; }
.single-content li > ol, .single-content li > ul { margin: 0; }
.single-content p > img, .single-content li > img { display: inline-block; }
.single-content .wp-block-image { margin-top: 0; margin-bottom: 0; }
.single-content figure.wp-block-image { margin-bottom: var(--global-md-spacing); }
.single-content figure.wp-block-image:last-child { margin-bottom: 0; }

/* Search results / archive listing (index.php) */
.swc-results { list-style: none; margin: 1.5em 0 0; padding: 0; }
.swc-results__item { padding: 0.6em 0; border-bottom: 1px solid var(--global-palette7); display: flex; gap: 1em; align-items: baseline; justify-content: space-between; }
.swc-results__type { font-size: 80%; color: var(--global-palette6); white-space: nowrap; }
.search-form { display: flex; gap: 0.5em; margin-top: 1em; }
.search-form label { flex: 1; }
.search-form .search-field { width: 100%; }
