/* WordPress presentation adjustments; loaded after the build stylesheet. */

.site-main {
    box-sizing: border-box;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

.site-main *,
.site-main *::before,
.site-main *::after {
    box-sizing: inherit;
}

.site-main a {
    text-underline-offset: 0.18em;
}

.site-main a:focus-visible,
.site-main button:focus-visible,
.site-main input:focus-visible,
.site-main select:focus-visible,
.site-main textarea:focus-visible,
.site-main [tabindex]:focus-visible {
    outline: 3px solid var(--wp--preset--color--primary);
    outline-offset: 3px;
}

.screen-reader-text {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    white-space: nowrap;
    border: 0;
}

.screen-reader-text:focus {
    top: 0.5rem;
    left: 0.5rem;
    z-index: 100000;
    display: block;
    width: auto;
    height: auto;
    padding: 0.75rem 1rem;
    clip: auto;
    color: var(--wp--preset--color--contrast);
    background: var(--wp--preset--color--base);
    font-weight: 700;
}

.site {
    display: flex;
    min-height: 100vh;
    flex-direction: column;
}

.site-container {
    width: min(calc(100% - 2rem), 1200px);
    margin-inline: auto;
}

.content-container {
    max-width: 760px;
}

.site-main {
    flex: 1;
    min-height: 56vh;
    padding-block: var(--wp--preset--spacing--60);
}

.page-header {
    border-bottom: 1px solid var(--wp--preset--color--border);
    padding-bottom: var(--wp--preset--spacing--40);
}

.entry-header {
    margin-bottom: var(--wp--preset--spacing--50);
}

.entry-title {
    margin-top: 0;
}

.entry-meta {
    color: var(--wp--preset--color--muted);
}

.post-grid {
    gap: var(--wp--preset--spacing--40);
}

.post-list {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: var(--wp--preset--spacing--40);
}

.post-card {
    height: 100%;
    padding: var(--wp--preset--spacing--40);
    background: var(--wp--preset--color--base);
    border: 1px solid var(--wp--preset--color--border);
    border-radius: var(--wp--custom--radius--medium);
}

.post-card__thumbnail {
    margin: calc(var(--wp--preset--spacing--40) * -1);
    margin-bottom: var(--wp--preset--spacing--30);
}

.post-card__thumbnail img {
    display: block;
    width: 100%;
    height: auto;
    border-radius: var(--wp--custom--radius--medium) var(--wp--custom--radius--medium) 0 0;
}

.post-card .entry-title {
    margin-top: 0;
}

.post-card .entry-title a {
    color: var(--wp--preset--color--contrast);
}

.read-more {
    font-weight: 700;
}

.wp-block-post-navigation-link a,
.wp-block-query-pagination a,
.wp-block-read-more {
    font-weight: 700;
}

.wp-block-query-pagination {
    margin-top: var(--wp--preset--spacing--50);
}

.pagination {
    margin-top: var(--wp--preset--spacing--50);
}

.pagination .nav-links {
    display: flex;
    flex-wrap: wrap;
    gap: 0.5rem;
}

.pagination .page-numbers {
    display: inline-flex;
    min-width: 2.5rem;
    min-height: 2.5rem;
    align-items: center;
    justify-content: center;
    padding: 0.35rem 0.7rem;
    border: 1px solid var(--wp--preset--color--border);
    border-radius: var(--wp--custom--radius--small);
}

.pagination .current {
    color: var(--wp--preset--color--base);
    background: var(--wp--preset--color--primary-dark);
    border-color: var(--wp--preset--color--primary-dark);
}

.wp-block-image img,
.wp-block-post-featured-image img,
.entry-content img,
.entry-thumbnail img {
    max-width: 100%;
    display: block;
    height: auto;
}

.entry-thumbnail {
    margin-bottom: var(--wp--preset--spacing--50);
}

.entry-content::after {
    display: table;
    clear: both;
    content: "";
}

.alignleft {
    float: left;
    margin: 0.5rem 1.5rem 1rem 0;
}

.alignright {
    float: right;
    margin: 0.5rem 0 1rem 1.5rem;
}

.aligncenter {
    display: block;
    margin-inline: auto;
}

.wp-caption {
    max-width: 100%;
}

.wp-caption-text {
    color: var(--wp--preset--color--muted);
    font-size: 0.875rem;
}

.wp-block-table {
    overflow-x: auto;
}

.wp-block-table table {
    border-collapse: collapse;
    width: 100%;
}

.wp-block-table th,
.wp-block-table td {
    border: 1px solid var(--wp--preset--color--border);
    padding: 0.75rem;
    text-align: left;
}

.site-main input:not([type="checkbox"]):not([type="radio"]):not([type="submit"]),
.site-main select,
.site-main textarea {
    max-width: 100%;
    padding: 0.75rem 0.9rem;
    color: var(--wp--preset--color--contrast);
    background: var(--wp--preset--color--base);
    border: 1px solid var(--wp--preset--color--border);
    border-radius: var(--wp--custom--radius--small);
    font: inherit;
}

.search-form {
    display: flex;
    align-items: flex-end;
    gap: 0.5rem;
}

.search-form label {
    flex: 1;
}

.search-field {
    width: 100%;
}

.site-main button,
.site-main input[type="button"],
.site-main input[type="reset"],
.site-main input[type="submit"] {
    min-height: 44px;
    padding: 0.7rem 1.15rem;
    color: var(--wp--preset--color--base);
    background: var(--wp--preset--color--primary-dark);
    border: 0;
    border-radius: var(--wp--custom--radius--small);
    font: inherit;
    font-weight: 700;
    cursor: pointer;
}

@media (max-width: 781px) {
    .post-grid {
        grid-template-columns: 1fr !important;
    }

    .post-list {
        grid-template-columns: 1fr;
    }

    .search-form {
        align-items: stretch;
        flex-direction: column;
    }
}

@media (prefers-reduced-motion: reduce) {
    .site-main *,
    .site-main *::before,
    .site-main *::after {
        scroll-behavior: auto !important;
        transition-duration: 0.01ms !important;
    }
}

.ys-front-page {
    flex: 1;
}

fieldset[data-ys-static-fields] {
    display: contents;
    min-width: 0;
    margin: 0;
    padding: 0;
    border: 0;
}

[data-ys-static-notice] {
    margin-top: 1em;
}

.ys-form-unavailable-message {
    text-align: center;
}

.ys-voice-answer {
    margin-block: 2rem;
}

.entry-content > * + *,
.ys-voice-answer p {
    margin-block-start: 1.25em;
}

.entry-content ul,
.entry-content ol {
    padding-inline-start: 1.5em;
}

.entry-content ul,
.entry-content ul li {
    list-style: disc;
}

.entry-content ol,
.entry-content ol li {
    list-style: decimal;
}

.entry-content a {
    color: var(--wp--preset--color--primary-dark);
    text-decoration: underline;
}

.admin-bar .Header {
    --ys-admin-bar-offset: var(--wp-admin--admin-bar--height, 32px);
}

@media (max-width: 940px) {
    .admin-bar .Header .Header__Inner {
        top: var(--ys-admin-bar-offset);
        max-height: calc(100dvh - var(--ys-admin-bar-offset));
    }
}
