/*
 * SVCW base styles.
 * Minimal replacements for generic rules previously provided by the Astra
 * parent theme. Loaded first; everything else overrides it.
 */
:root {
    --svcw-primary: #283d98;
    --svcw-secoundry: #3146A3;
    --svcw-white: #fff;
    --svcw-black: #000;

    --svcw-link-primary: #0274be;
    --svcw-link-primary-lt: #75c8f0;
    --svcw-link-secoundry: #5EA53B;
    --svcw-link-secoundry-filter: invert(56%) sepia(26%) saturate(1522%) hue-rotate(60deg) brightness(94%) contrast(89%);

    --svcw-text-primary: #3a3a3a;
    --svcw-text-secoundry: #4B4F58;

    --svcw-border-primary: #dddddd;
    --svcw-border-secoundry: #d3d3d3;

}
*, *::before, *::after { box-sizing: border-box; }
img, video, iframe, embed, object { max-width: 100%; }
img { height: auto; }

/* Accessible hiding (kept identical to basic-revamp.css so it works on every template). */
.screen-reader-text {
    border: 0;
    clip-path: inset(50%);
    height: 1px;
    margin: -1px;
    overflow: hidden;
    padding: 0;
    position: absolute !important;
    width: 1px;
    word-wrap: normal !important;
}
.screen-reader-text:focus {
    clip-path: none;
    height: auto;
    width: auto;
    margin: 0;
    overflow: visible;
    z-index: 100000;
}

/* WordPress core alignment + captions */
.alignleft { float: left; margin: 0 1.5em 1em 0; }
.alignright { float: right; margin: 0 0 1em 1.5em; }
.aligncenter { display: block; margin-left: auto; margin-right: auto; clear: both; }
.wp-caption { max-width: 100%; margin-bottom: 1.5em; }
.wp-caption-text, figcaption { font-size: .875em; margin-top: .5em; }
.sticky, .gallery-caption, .bypostauthor { display: block; }

/* Generic templates (index/page/single/archive/404) */
.svcw-generic-main { padding-top: 60px; padding-bottom: 80px; }
.svcw-generic-main .entry-header { margin-bottom: 24px; }
.svcw-generic-main .entry-meta { margin-top: 8px; font-size: .9em; }
.svcw-generic-main .entry-content > * + * { margin-top: 1em; }
.svcw-generic-main .post-thumbnail { margin: 0 0 24px; }
.svcw-archive-list { list-style: none; margin: 0; padding: 0; }
.svcw-archive-list > li + li { margin-top: 32px; padding-top: 32px; border-top: 1px solid #e5e5e5; }
.svcw-generic-main .navigation.pagination { margin-top: 40px; }
.svcw-generic-main .nav-links { display: flex; flex-wrap: wrap; gap: 8px; }

/* WCAG 1.4.1 (axe: link-in-text-block): links inside running text must not rely on colour alone. */
/*main p a:not([class]),
main .wysiwyg-content li a:not([class]),
main .entry-content li a:not([class]) {
    text-decoration: underline;
    text-underline-offset: 2px;
}
main p a:not([class]):hover,
main p a:not([class]):focus-visible {
    text-decoration-thickness: 2px;
}*/

/* WCAG 2.5.8 (axe: target-size): pagination numbers need a 24x24px minimum hit area. */
.page-numbers {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 24px;
    min-height: 24px;
}
