/*
 * Minn Engine block stylesheet: structure and behaviour for the core block
 * class names, so a block theme's global styles decide the look.
 */

/* Only attachment images scale to their container; a plain <img> keeps its attributes' box (a broken avatar stays 50px). */
html :where(img[class*="wp-image-"]) { height: auto; max-width: 100%; }
/* The reference sizes these wrappers from the border, and nothing else; a global reset would
   widen every padded element inside a constrained layout. */
.wp-block-archives, .wp-block-button__link, .wp-block-buttons, .wp-block-categories, .wp-block-code, .wp-block-columns, .wp-block-cover, .wp-block-cover-image, .wp-block-details, .wp-block-group, .wp-block-image img, .wp-block-latest-posts, .wp-block-media-text, .wp-block-page-list, .wp-block-post-date, .wp-block-post-template, .wp-block-post-title, .wp-block-preformatted, .wp-block-pullquote, .wp-block-quote, .wp-block-site-title, .wp-block-tag-cloud, ol, ul, ol.wp-block-latest-comments, pre.wp-block-verse, .wp-block-gallery.has-nested-images figure.wp-block-image, .wp-block-gallery.has-nested-images figure.wp-block-image figcaption { box-sizing: border-box; }
.wp-block-post-content { display: flow-root; }
.wp-block-post-navigation-link .wp-block-post-navigation-link__arrow-previous { display: inline-block; margin-right: 1ch; }
.wp-block-post-navigation-link .wp-block-post-navigation-link__arrow-next { display: inline-block; margin-left: 1ch; }
.wp-block-post-navigation-link .wp-block-post-navigation-link__arrow-previous:not(.is-arrow-chevron), .wp-block-post-navigation-link .wp-block-post-navigation-link__arrow-next:not(.is-arrow-chevron) { transform: scaleX(1); }
/* A border width written by the editor implies a solid border on that side. */
:where([style*="border-width"]) { border-style: solid; }
:where([style*="border-top-width"]) { border-top-style: solid; }
:where([style*="border-right-width"]) { border-right-style: solid; }
:where([style*="border-bottom-width"]) { border-bottom-style: solid; }
:where([style*="border-left-width"]) { border-left-style: solid; }
/* The two legacy font-size presets every page carries. */
:root { --wp--preset--font-size--huge: 42px; --wp--preset--font-size--normal: 16px; }

.skip-link.screen-reader-text:focus {
	background: #eee; clip-path: none; color: #444; display: block; font-size: 1em; height: auto;
	left: 5px; line-height: normal; padding: 15px 23px 14px; text-decoration: none; top: 5px; width: auto; z-index: 100000;
}

/* Groups, columns, layout */
.wp-block-group { box-sizing: border-box; }
:where(.wp-block-group.wp-block-group-is-layout-constrained) { position: relative; }
.wp-block-columns { align-items: initial !important; box-sizing: border-box; display: flex; flex-wrap: wrap !important; margin-bottom: 1.75em; }
.wp-block-columns.is-not-stacked-on-mobile { flex-wrap: nowrap !important; }
@media (min-width: 782px) {
	.wp-block-columns:not(.is-not-stacked-on-mobile) { flex-wrap: nowrap !important; }
}
.wp-block-columns.are-vertically-aligned-top { align-items: flex-start; }
.wp-block-columns.are-vertically-aligned-center { align-items: center; }
.wp-block-columns.are-vertically-aligned-bottom { align-items: flex-end; }
.wp-block-column { flex-grow: 1; min-width: 0; overflow-wrap: break-word; word-break: break-word; }
@media (max-width: 781px) {
	.wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column { flex-basis: 100% !important; }
}
@media (min-width: 782px) {
	.wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column { flex-basis: 0; flex-grow: 1; }
	.wp-block-columns:not(.is-not-stacked-on-mobile) > .wp-block-column[style*="flex-basis"] { flex-grow: 0; }
}
.wp-block-column.is-vertically-aligned-top { align-self: flex-start; }
.wp-block-column.is-vertically-aligned-center { align-self: center; }
.wp-block-column.is-vertically-aligned-bottom { align-self: flex-end; }
.wp-block-spacer { clear: both; }
.wp-block-separator { border: none; border-top: 2px solid; }
:root :where(.wp-block-separator.is-style-dots) { height: auto; line-height: 1; text-align: center; }
:root :where(.wp-block-separator.is-style-dots)::before { color: currentColor; content: "···"; font-family: serif; font-size: 1.5em; letter-spacing: 2em; padding-left: 2em; }
.wp-block-separator.is-style-dots { background: none !important; border: none !important; }
.wp-block-post-title { box-sizing: border-box; word-break: break-word; }
.wp-block-post-terms { box-sizing: border-box; }
.wp-block-post-terms .wp-block-post-terms__separator { white-space: pre-wrap; }
.wp-block-post-title a { display: inline-block; }
/* Social links: the list is a flex row sized by font-size (16/24/36/48px for the four icon sizes), each link a flex box
   with zero line-height and a quarter-em of padding, the icon one em square; the logos-only style drops the padding and
   grows the icon to 1.25em. */
.wp-block-social-links, .wp-block-social-links.has-normal-icon-size { font-size: 24px; }
.wp-block-social-links.has-small-icon-size { font-size: 16px; }
.wp-block-social-links.has-large-icon-size { font-size: 36px; }
.wp-block-social-links.has-huge-icon-size { font-size: 48px; }
.wp-block-social-links { margin-left: 0; padding-left: 0; padding-right: 0; text-indent: 0; }
.wp-block-social-link { border-radius: 9999px; display: block; height: auto; transition: transform .1s ease; }
.wp-block-social-links .wp-block-social-link.wp-social-link { display: inline-block; margin: 0; padding: 0; }
.wp-block-social-link a { align-items: center; display: flex; line-height: 0; }
:root :where(.wp-block-social-links .wp-social-link a) { padding: 0.25em; }
:root :where(.wp-block-social-links.is-style-logos-only .wp-social-link a) { padding: 0; }
.wp-block-social-links .wp-social-link svg { height: 1em; width: 1em; }
:where(.wp-block-social-links.is-style-logos-only) .wp-social-link svg { height: 1.25em; width: 1.25em; }
.wp-block-social-links .wp-social-link a, .wp-block-social-links .wp-social-link a:hover { border-bottom: 0; box-shadow: none; text-decoration: none; }
:where(.wp-block-post-excerpt) { box-sizing: border-box; margin-bottom: var(--wp--style--block-gap); margin-top: var(--wp--style--block-gap); }
.wp-block-post-excerpt__excerpt { margin-bottom: 0; margin-top: 0; }
.wp-block-post-excerpt__more-text { margin-bottom: 0; margin-top: var(--wp--style--block-gap); }
.wp-block-post-excerpt__more-link { display: inline-block; }
.wp-block-separator { border: none; border-bottom: 2px solid; margin-left: auto; margin-right: auto; }
.wp-block-separator.has-alpha-channel-opacity { opacity: initial; }

/* Text blocks */
.wp-block-paragraph.has-drop-cap:not(:focus)::first-letter { float: left; font-size: 8.4em; font-style: normal; font-weight: 100; line-height: 0.68; margin: 0.05em 0.1em 0 0; text-transform: uppercase; }
.has-text-align-left { text-align: left; }
.has-text-align-center { text-align: center; }
.has-text-align-right { text-align: right; }
.wp-block-quote { margin: 0 0 1.75em; }
.wp-block-quote cite, .wp-block-pullquote cite { display: block; font-style: normal; }
.wp-block-pullquote { box-sizing: border-box; margin: 0 0 1em; overflow-wrap: break-word; padding: 4em 0; text-align: center; }
.wp-block-pullquote blockquote, .wp-block-pullquote p { color: inherit; }
.wp-block-pullquote blockquote { margin: 0; }
.wp-block-pullquote p { margin-top: 0; }
.wp-block-pullquote p:last-child { margin-bottom: 0; }
.wp-block-pullquote.alignleft, .wp-block-pullquote.alignright { max-width: 420px; }
.wp-block-pullquote cite, .wp-block-pullquote footer { position: relative; }
.wp-block-pullquote :where(cite) { color: inherit; display: block; }
.wp-block-pullquote .has-text-color a { color: inherit; }
.wp-block-pullquote.has-text-align-left blockquote { text-align: left; }
.wp-block-pullquote.has-text-align-right blockquote { text-align: right; }
.wp-block-pullquote.has-text-align-center blockquote { text-align: center; }
.wp-block-pullquote.is-style-solid-color { border: none; }
.wp-block-pullquote.is-style-solid-color blockquote { margin-left: auto; margin-right: auto; max-width: 60%; }
.wp-block-pullquote.is-style-solid-color blockquote p { font-size: 2em; margin-bottom: 0; margin-top: 0; }
.wp-block-pullquote.is-style-solid-color blockquote cite { font-style: normal; text-transform: none; }
.wp-block-verse { font-family: inherit; overflow-wrap: break-word; white-space: pre-wrap; }
.wp-block-preformatted { overflow-wrap: break-word; white-space: pre-wrap; }
.wp-block-code { overflow-wrap: break-word; }
.wp-block-code code { display: block; font-family: inherit; overflow-wrap: break-word; white-space: pre-wrap; }
.wp-block-details summary { cursor: pointer; list-style: none; }
.wp-block-details summary::-webkit-details-marker { display: none; }
.wp-block-details summary::before { content: "\25B8"; display: inline-block; margin-right: 0.4em; }
.wp-block-details[open] > summary::before { content: "\25BE"; }
.wp-block-table { overflow-x: auto; }
.wp-block-table table { border-collapse: collapse; width: 100%; }
.wp-block-table thead { border-bottom: 3px solid; }
.wp-block-table tfoot { border-top: 3px solid; }
.wp-block-table .has-fixed-layout { table-layout: fixed; width: 100%; }
.wp-block-table .has-fixed-layout td, .wp-block-table .has-fixed-layout th { word-break: break-word; }
.wp-block-table.aligncenter, .wp-block-table.alignleft, .wp-block-table.alignright { display: table; width: auto; }
.wp-block-table td, .wp-block-table th { border: 1px solid; padding: 0.5em; }
.wp-block-list { box-sizing: border-box; }
.wp-block-list :where(li) { margin-bottom: 0; }

/* Buttons */
.wp-block-buttons { box-sizing: border-box; }
.wp-block-buttons > .wp-block-button { display: inline-block; margin: 0; }
.wp-block-buttons.is-vertical { flex-direction: column; }
.wp-block-buttons.is-vertical > .wp-block-button:last-child { margin-bottom: 0; }
.wp-block-buttons.is-content-justification-left { justify-content: flex-start; }
.wp-block-buttons.is-content-justification-center { justify-content: center; }
.wp-block-buttons.is-content-justification-right { justify-content: flex-end; }
.wp-block-buttons.is-content-justification-space-between { justify-content: space-between; }
.wp-block-buttons.is-content-justification-left.is-vertical { align-items: flex-start; }
.wp-block-buttons.is-content-justification-center.is-vertical { align-items: center; }
.wp-block-buttons.is-content-justification-right.is-vertical { align-items: flex-end; }
.wp-block-buttons .wp-block-button__link { width: 100%; }
.wp-block-buttons > .wp-block-button.has-custom-width { max-width: none; }
.wp-block-buttons > .wp-block-button.has-custom-width .wp-block-button__link { width: 100%; }
.wp-block-buttons > .wp-block-button.has-custom-font-size .wp-block-button__link, .wp-block-buttons.has-custom-font-size .wp-block-button__link { font-size: inherit; }
.wp-block-buttons > .wp-block-button.wp-block-button__width-25 { width: calc(25% - var(--wp--style--block-gap, 0.5em) * 0.75); }
.wp-block-buttons > .wp-block-button.wp-block-button__width-50 { width: calc(50% - var(--wp--style--block-gap, 0.5em) * 0.5); }
.wp-block-buttons > .wp-block-button.wp-block-button__width-75 { width: calc(75% - var(--wp--style--block-gap, 0.5em) * 0.25); }
.wp-block-buttons > .wp-block-button.wp-block-button__width-100 { flex-basis: 100%; width: 100%; }
.wp-block-button { --wp--preset--dimension--100: 100%; --wp--preset--dimension--25: 25%; --wp--preset--dimension--50: 50%; --wp--preset--dimension--75: 75%; }
.wp-block-button.aligncenter, .wp-block-buttons.aligncenter { text-align: center; }
.wp-block-button__link { align-content: center; box-sizing: border-box; cursor: pointer; display: inline-block; height: 100%; text-align: center; word-break: break-word; }
:where(.wp-block-button__link) { border-radius: 9999px; box-shadow: none; padding: calc(0.667em + 2px) calc(1.333em + 2px); text-decoration: none; }
.wp-block-button.is-style-squared, .wp-block-button__link.wp-block-button.is-style-squared { border-radius: 0; }
.wp-block-button.no-border-radius, .wp-block-button__link.no-border-radius { border-radius: 0 !important; }
:root :where(.wp-block-button .wp-block-button__link.is-style-outline), :root :where(.wp-block-button.is-style-outline > .wp-block-button__link) { border: 2px solid; padding: 0.667em 1.333em; }
:root :where(.wp-block-button .wp-block-button__link.is-style-outline:not(.has-text-color)), :root :where(.wp-block-button.is-style-outline > .wp-block-button__link:not(.has-text-color)) { color: currentColor; }
:root :where(.wp-block-button .wp-block-button__link.is-style-outline:not(.has-background)), :root :where(.wp-block-button.is-style-outline > .wp-block-button__link:not(.has-background)) { background-color: transparent; background-image: none; }

.wp-block-image { box-sizing: border-box; margin: 0 0 1em; }
.wp-block-image img { box-sizing: border-box; height: auto; max-width: 100%; vertical-align: bottom; }
.wp-block-image > a, .wp-block-image > figure > a { display: inline-block; }
.wp-block-image figure { margin: 0; }
.wp-block-image.alignfull > a, .wp-block-image.alignwide > a { width: 100%; }
.wp-block-image.alignfull img, .wp-block-image.alignwide img { height: auto; width: 100%; }
.wp-block-image.aligncenter { text-align: center; }
/* An aligned image is a table: the figure shrinks to its image and a caption becomes the table's caption below it. */
.wp-block-image .aligncenter, .wp-block-image .alignleft, .wp-block-image .alignright, .wp-block-image.aligncenter, .wp-block-image.alignleft, .wp-block-image.alignright { display: table; }
.wp-block-image .aligncenter > figcaption, .wp-block-image .alignleft > figcaption, .wp-block-image .alignright > figcaption, .wp-block-image.aligncenter > figcaption, .wp-block-image.alignleft > figcaption, .wp-block-image.alignright > figcaption { caption-side: bottom; display: table-caption; }
.wp-block-image .aligncenter, .wp-block-image.aligncenter { margin-left: auto; margin-right: auto; }
.wp-block-image.alignleft, .wp-block-image .alignleft { float: left; margin: 0.5em 1em 0.5em 0; }
.wp-block-image.alignright, .wp-block-image .alignright { float: right; margin: 0.5em 0 0.5em 1em; }
.wp-block-image :where(figcaption), .wp-element-caption { margin-bottom: 1em; margin-top: 0.5em; }
.wp-block-gallery { display: flex; flex-wrap: wrap; gap: var(--wp--style--unstable-gallery-gap, 0.5em); margin: 0; padding: 0; }
/* A gallery is a wrapping flex row of image figures; each figure is a flex column that grows to fill its
   half (or its column share), with the caption laid over its bottom edge. */
figure.wp-block-gallery.has-nested-images { align-items: normal; }
.wp-block-gallery.has-nested-images figure.wp-block-image { box-sizing: border-box; display: flex; flex-direction: column; flex-grow: 1; justify-content: center; max-width: 100%; position: relative; }
.wp-block-gallery.has-nested-images figure.wp-block-image:not(#individual-image) { margin: 0; width: calc(50% - var(--wp--style--unstable-gallery-gap, 16px) / 2); }
.wp-block-gallery.has-nested-images figure.wp-block-image > a, .wp-block-gallery.has-nested-images figure.wp-block-image > div { flex-direction: column; flex-grow: 1; margin: 0; }
.wp-block-gallery.has-nested-images figure.wp-block-image img { display: block; height: auto; max-width: 100% !important; width: auto; }
.wp-block-gallery.has-nested-images figure.wp-block-image figcaption { background: linear-gradient(0deg, rgba(0, 0, 0, 0.4), transparent); bottom: 0; box-sizing: border-box; color: #fff; font-size: 13px; left: 0; margin: 0; max-height: 100%; overflow: auto; padding: 1em; position: absolute; right: 0; scrollbar-color: transparent transparent; scrollbar-gutter: stable both-edges; scrollbar-width: thin; text-align: center; text-shadow: 0 0 1.5px #000; will-change: transform; }
.wp-block-gallery.has-nested-images figure.wp-block-image:has(figcaption)::before { backdrop-filter: blur(3px); bottom: 0; content: ""; height: 100%; left: 0; mask-image: linear-gradient(0deg, #000 20%, transparent); max-height: 3em; pointer-events: none; position: absolute; right: 0; }
.wp-block-gallery.has-nested-images figure.wp-block-image figcaption img { display: inline; }
.wp-block-gallery.has-nested-images figure.wp-block-image figcaption a { color: inherit; }
.wp-block-gallery.has-nested-images figcaption { flex-basis: 100%; flex-grow: 1; text-align: center; }
.wp-block-gallery.has-nested-images.columns-1 figure.wp-block-image:not(#individual-image) { width: 100%; }
.wp-block-gallery.has-nested-images.aligncenter { justify-content: center; }
.wp-block-gallery.has-nested-images.alignleft, .wp-block-gallery.has-nested-images.alignright { max-width: 420px; width: 100%; }
@media (min-width: 600px) {
	.wp-block-gallery.has-nested-images.columns-3 figure.wp-block-image:not(#individual-image) { width: calc(33.33333% - var(--wp--style--unstable-gallery-gap, 16px) * 0.66667); }
	.wp-block-gallery.has-nested-images.columns-4 figure.wp-block-image:not(#individual-image) { width: calc(25% - var(--wp--style--unstable-gallery-gap, 16px) * 0.75); }
	.wp-block-gallery.has-nested-images.columns-5 figure.wp-block-image:not(#individual-image) { width: calc(20% - var(--wp--style--unstable-gallery-gap, 16px) * 0.8); }
	.wp-block-gallery.has-nested-images.columns-6 figure.wp-block-image:not(#individual-image) { width: calc(16.66667% - var(--wp--style--unstable-gallery-gap, 16px) * 0.83333); }
	.wp-block-gallery.has-nested-images.columns-7 figure.wp-block-image:not(#individual-image) { width: calc(14.28571% - var(--wp--style--unstable-gallery-gap, 16px) * 0.85714); }
	.wp-block-gallery.has-nested-images.columns-8 figure.wp-block-image:not(#individual-image) { width: calc(12.5% - var(--wp--style--unstable-gallery-gap, 16px) * 0.875); }
	.wp-block-gallery.has-nested-images.columns-default figure.wp-block-image:not(#individual-image) { width: calc(33.33% - var(--wp--style--unstable-gallery-gap, 16px) * 0.66667); }
	.wp-block-gallery.has-nested-images.columns-default figure.wp-block-image:not(#individual-image):first-child:nth-last-child(2), .wp-block-gallery.has-nested-images.columns-default figure.wp-block-image:not(#individual-image):first-child:nth-last-child(2) ~ figure.wp-block-image:not(#individual-image) { width: calc(50% - var(--wp--style--unstable-gallery-gap, 16px) * 0.5); }
	.wp-block-gallery.has-nested-images.columns-default figure.wp-block-image:not(#individual-image):first-child:last-child { width: 100%; }
}
.wp-block-cover { align-items: center; box-sizing: border-box; display: flex; justify-content: center; min-height: 430px; overflow: hidden; padding: 1em; position: relative; }
.wp-block-cover .wp-block-cover__background { inset: 0; opacity: 0.5; position: absolute; z-index: 1; }
.wp-block-cover .wp-block-cover__image-background { height: 100%; inset: 0; max-width: none; object-fit: cover; position: absolute; width: 100%; z-index: 0; }
.wp-block-cover .wp-block-cover__inner-container { color: #fff; position: relative; width: 100%; z-index: 2; }
.wp-block-media-text { box-sizing: border-box; display: grid; grid-template-columns: 50% 1fr; grid-template-rows: auto; }
.wp-block-media-text.has-media-on-the-right { grid-template-columns: 1fr 50%; }
.wp-block-media-text > .wp-block-media-text__media { align-self: center; grid-column: 1; grid-row: 1; margin: 0; }
.wp-block-media-text__media a { display: block; }
.wp-block-media-text.has-media-on-the-right .wp-block-media-text__media { grid-column: 2; }
.wp-block-media-text > .wp-block-media-text__content { align-self: center; direction: ltr; grid-column: 2; grid-row: 1; padding: 0 8% 0 8%; word-break: break-word; }
.wp-block-media-text.is-vertically-aligned-top > .wp-block-media-text__content, .wp-block-media-text.is-vertically-aligned-top > .wp-block-media-text__media { align-self: start; }
.wp-block-media-text.is-vertically-aligned-bottom > .wp-block-media-text__content, .wp-block-media-text.is-vertically-aligned-bottom > .wp-block-media-text__media { align-self: end; }
.wp-block-media-text.has-media-on-the-right .wp-block-media-text__content { grid-column: 1; }
.wp-block-media-text__media img, .wp-block-media-text__media video { height: auto; max-width: unset; vertical-align: middle; width: 100%; }
@media (max-width: 600px) {
	.wp-block-media-text.is-stacked-on-mobile { grid-template-columns: 100% !important; }
	.wp-block-media-text.is-stacked-on-mobile .wp-block-media-text__media { grid-column: 1; grid-row: 1; }
	.wp-block-media-text.is-stacked-on-mobile .wp-block-media-text__content { grid-column: 1; grid-row: 2; }
}
.wp-block-post-featured-image { margin: 0; }
.wp-block-post-featured-image img { height: auto; vertical-align: bottom; width: 100%; }

/* Lists of posts, comments, terms */
.wp-block-post-template { list-style: none; margin: 0; max-width: 100%; padding: 0; }
.wp-block-latest-posts.wp-block-latest-posts__list { list-style: none; }
:root :where(.wp-block-latest-posts.wp-block-latest-posts__list) { padding-left: 0; }
.wp-block-latest-posts.wp-block-latest-posts__list li { clear: both; overflow-wrap: break-word; }
.wp-block-page-list { list-style: none; margin: 0; padding: 0; }
/* Latest comments: an avatar floats left of a 3.25em-indented excerpt and meta line; line heights are
   tight on the item and loose on the excerpt paragraph unless the block sets its own. */
:where(.wp-block-latest-comments) { padding-left: 0; }
ol.wp-block-latest-comments { box-sizing: border-box; margin-left: 0; }
/* These two are written the way the reference has them: the :not() wraps the whole descendant selector, so
   both land on the list itself and the second wins; the comment and its excerpt inherit 1.8. */
:where(.wp-block-latest-comments:not([style*="line-height"] .wp-block-latest-comments__comment)) { line-height: 1.1; }
:where(.wp-block-latest-comments:not([style*="line-height"] .wp-block-latest-comments__comment-excerpt p)) { line-height: 1.8; }
.has-dates :where(.wp-block-latest-comments:not([style*="line-height"])), .has-excerpts :where(.wp-block-latest-comments:not([style*="line-height"])) { line-height: 1.5; }
.wp-block-latest-comments__comment { list-style: none; margin-bottom: 1em; }
.has-avatars .wp-block-latest-comments__comment { list-style: none; min-height: 2.25em; }
.has-avatars .wp-block-latest-comments__comment .wp-block-latest-comments__comment-excerpt, .has-avatars .wp-block-latest-comments__comment .wp-block-latest-comments__comment-meta { margin-left: 3.25em; }
.wp-block-latest-comments__comment-excerpt p { font-size: 0.875em; margin: 0.36em 0 1.4em; }
.wp-block-latest-comments .avatar, .wp-block-latest-comments__comment-avatar { border-radius: 1.5em; display: block; float: left; height: 2.5em; margin-right: 0.75em; width: 2.5em; }
.wp-block-latest-comments[class*="-font-size"] a, .wp-block-latest-comments[style*="font-size"] a { font-size: inherit; }
.wp-block-post-template.is-flex-container { display: flex; flex-wrap: wrap; gap: 1.25em; }
.wp-block-post-template.is-flex-container > li { margin: 0; width: 100%; }
@media (min-width: 600px) {
	.wp-block-post-template.is-flex-container.columns-2 > li { width: calc(50% - 0.625em); }
	.wp-block-post-template.is-flex-container.columns-3 > li { width: calc(33.333% - 0.833em); }
	.wp-block-post-template.is-flex-container.columns-4 > li { width: calc(25% - 0.9375em); }
}
.wp-block-latest-posts__post-author, .wp-block-latest-posts__post-date { display: block; font-size: 0.8125em; }
.wp-block-latest-comments__comment-date { display: block; font-size: 0.75em; }
.wp-block-latest-comments__comment-excerpt p { font-size: 0.875em; margin: 0.36em 0 1.4em; }
.wp-block-tag-cloud a { display: inline-block; margin-right: 5px; }
.wp-block-comment-template { list-style: none; margin: 0; padding: 0; }
.wp-block-comment-template li { margin: 0; }
.wp-block-comment-template .wp-block-comment-template { margin-left: 2em; }
.wp-block-avatar { line-height: 0; }
.wp-block-avatar, .wp-block-avatar img { box-sizing: border-box; }
.wp-block-avatar.aligncenter { text-align: center; }
.wp-block-post-comments .comment-author .avatar { border-radius: 1.5em; display: block; float: left; height: 2.5em; margin-right: 0.75em; margin-top: 0.5em; width: 2.5em; }
.wp-block-post-comments-form { box-sizing: border-box; }
:where(.wp-block-post-comments-form input:not([type="submit"])), :where(.wp-block-post-comments-form textarea) { border: 1px solid #949494; font-family: inherit; font-size: 1em; }
:where(.wp-block-post-comments-form input:where(:not([type="submit"]):not([type="checkbox"]))), :where(.wp-block-post-comments-form textarea) { padding: calc(0.667em + 2px); }
.wp-block-post-comments-form .comment-form input:not([type="submit"]):not([type="checkbox"]):not([type="hidden"]), .wp-block-post-comments-form .comment-form textarea { box-sizing: border-box; display: block; width: 100%; }
.wp-block-post-comments-form .comment-form-author label, .wp-block-post-comments-form .comment-form-email label, .wp-block-post-comments-form .comment-form-url label { display: block; margin-bottom: 0.25em; }
.wp-block-post-comments-form .comment-form-cookies-consent { display: flex; gap: 0.25em; }
.wp-block-post-comments-form .comment-form-cookies-consent #wp-comment-cookies-consent { margin-top: 0.35em; }
.wp-block-post-comments-form .comment-reply-title { margin-bottom: 0; }
.wp-block-post-comments-form .comment-reply-title :where(small) { font-size: var(--wp--preset--font-size--medium, smaller); margin-left: 0.5em; }
.wp-block-post-comments-form :where(input[type="submit"]) { box-shadow: none; cursor: pointer; display: inline-block; overflow-wrap: break-word; text-align: center; }
.wp-block-post-comments-form input[type="checkbox"] { width: auto; }
.wp-block-query-pagination { display: flex; flex-wrap: wrap; gap: 0.5em 1em; }
.wp-block-query-pagination-numbers { display: flex; gap: 0.5em; }
.more-link { display: block; }

/* Search */
.wp-block-search__inside-wrapper { display: flex; flex: auto; max-width: 100%; flex-wrap: nowrap; }
.wp-block-search__input { appearance: none; border: 1px solid #949494; flex-grow: 1; font-family: inherit; font-size: inherit; font-style: inherit; font-weight: inherit; letter-spacing: inherit; line-height: inherit; margin: 0; min-width: 3rem; padding: 8px; text-decoration: unset; text-transform: inherit; }
.wp-block-search__button { border: 1px solid #ccc; cursor: pointer; margin-left: 10px; padding: 6px 10px; word-break: normal; }
.wp-block-search__button.has-icon { line-height: 0; }
.wp-block-search__button svg { fill: currentColor; height: 1.25em; min-width: 24px; vertical-align: text-bottom; width: 1.25em; }
/* Button inside: the wrapper carries the border and a 4px inset; the input and button lose theirs. */
:where(.wp-block-search__button-inside .wp-block-search__inside-wrapper) { border: 1px solid #949494; box-sizing: border-box; padding: 4px; }
:where(.wp-block-search__button-inside .wp-block-search__inside-wrapper) .wp-block-search__input { border: none; border-radius: 0; padding: 0 4px; }
:where(.wp-block-search__button-inside .wp-block-search__inside-wrapper) .wp-block-search__input:focus { outline: none; }
:where(.wp-block-search__button-inside .wp-block-search__inside-wrapper) :where(.wp-block-search__button) { padding: 4px 8px; }
.wp-block-search__button-outside .wp-block-search__inside-wrapper { align-items: stretch; }
.wp-block-search__label { width: 100%; }

/* Navigation. From 600px up the four wrappers take the reference's desktop
   shape (a full-width block, a relative dialog, a flex content box driven by
   the navigation layout variables). Below that the open button shows and the
   container stays hidden until the view module marks it is-menu-open, when it
   becomes a full-screen overlay. */
.wp-block-navigation { position: relative; }
.wp-block-navigation ul { list-style: none; margin: 0; padding: 0; }
.wp-block-navigation :where(a), .wp-block-navigation :where(a:active), .wp-block-navigation :where(a:focus), .wp-block-navigation :where(a:hover) { text-decoration: none; }
.wp-block-site-title :where(a) { color: inherit; font-family: inherit; font-size: inherit; font-style: inherit; font-weight: inherit; letter-spacing: inherit; line-height: inherit; text-decoration: inherit; }
.wp-block-navigation .wp-block-navigation__container, .wp-block-navigation__container { align-items: center; display: flex; flex-wrap: wrap; gap: inherit; }
.wp-block-navigation.is-vertical .wp-block-navigation__container, .wp-block-navigation__container.is-vertical { align-items: flex-start; flex-direction: column; }
.wp-block-navigation .wp-block-navigation-item, .wp-block-navigation .wp-block-pages-list__item { align-items: center; display: flex; position: relative; }
.wp-block-navigation .wp-block-navigation-item__content { display: block; }
/* Submenus. A closed submenu is a zero-sized, hidden, absolutely placed flex column that keeps its
   border (so it measures 2px by 2px); hover, focus within, or an expanded toggle opens it to its
   content with a 200px floor. Nested submenus open to the right from 782px up. */
.wp-block-navigation .wp-block-navigation__submenu-icon { align-self: center; background: inherit; border: none; color: currentColor; display: inline-block; font-size: inherit; height: 0.6em; line-height: 0; margin-left: 0.25em; padding: 0; width: 0.6em; }
.wp-block-navigation .wp-block-navigation__submenu-icon svg { display: inline-block; height: inherit; margin-top: 0.075em; stroke: currentColor; width: inherit; }
.wp-block-navigation-submenu { display: flex; position: relative; }
.wp-block-navigation-submenu__toggle { cursor: pointer; }
.wp-block-navigation .has-child .wp-block-navigation__submenu-container { align-items: normal; background-color: inherit; color: inherit; display: flex; flex-direction: column; height: 0; left: -1px; opacity: 0; overflow: hidden; position: absolute; top: 100%; transition: opacity 0.1s linear; visibility: hidden; width: 0; z-index: 2; }
.wp-block-navigation .wp-block-navigation-item .wp-block-navigation__submenu-container:empty { display: none; }
.wp-block-navigation:not(.has-background) .wp-block-navigation__submenu-container { background-color: #fff; border: 1px solid rgba(0, 0, 0, 0.15); }
.wp-block-navigation.has-background .wp-block-navigation__submenu-container { background-color: inherit; }
.wp-block-navigation:not(.has-text-color) .wp-block-navigation__submenu-container { color: #000; }
.wp-block-navigation.has-background .has-child .wp-block-navigation__submenu-container { left: 0; top: 100%; }
.wp-block-navigation .has-child .wp-block-navigation__submenu-container > .wp-block-navigation-item > .wp-block-navigation-item__content { display: flex; flex-grow: 1; padding: 0.5em 1em; }
.wp-block-navigation .has-child .wp-block-navigation__submenu-container .wp-block-navigation-item__content { margin: 0; }
.wp-block-navigation .has-child .wp-block-navigation__submenu-container > .wp-block-navigation-item > .wp-block-navigation-item__content .wp-block-navigation__submenu-icon { margin-left: auto; margin-right: 0; }
.wp-block-navigation .wp-block-navigation-submenu .wp-block-navigation-item:not(:last-child) { margin-bottom: 3px; }
.wp-block-navigation .has-child:hover > .wp-block-navigation__submenu-container,
.wp-block-navigation .has-child:focus-within > .wp-block-navigation__submenu-container,
.wp-block-navigation .has-child .wp-block-navigation-submenu__toggle[aria-expanded="true"] ~ .wp-block-navigation__submenu-container { height: auto; min-width: 200px; opacity: 1; overflow: visible; visibility: visible; width: auto; }
.wp-block-navigation-submenu__toggle[aria-expanded="true"] + .wp-block-navigation__submenu-icon > svg, .wp-block-navigation-submenu__toggle[aria-expanded="true"] > svg { transform: rotate(180deg); }
@media (min-width: 782px) {
	.wp-block-navigation .has-child .wp-block-navigation__submenu-container .wp-block-navigation__submenu-container { left: 100%; top: -1px; }
	.wp-block-navigation .has-child .wp-block-navigation__submenu-container .wp-block-navigation__submenu-container::before { background: transparent; content: ""; display: block; height: 100%; position: absolute; right: 100%; width: 0.5em; }
	.wp-block-navigation .has-child .wp-block-navigation__submenu-container .wp-block-navigation__submenu-icon { margin-right: 0.25em; }
	.wp-block-navigation .has-child .wp-block-navigation__submenu-container .wp-block-navigation__submenu-icon svg { transform: rotate(-90deg); }
	.wp-block-navigation.has-background .has-child .wp-block-navigation__submenu-container .wp-block-navigation__submenu-container { left: 100%; top: 0; }
}
.wp-block-navigation.items-justified-right .wp-block-navigation__container .has-child .wp-block-navigation__submenu-container, .wp-block-navigation.items-justified-right .wp-block-page-list > .has-child .wp-block-navigation__submenu-container { left: auto; right: 0; }
.wp-block-navigation__responsive-container-open, .wp-block-navigation__responsive-container-close { display: none; }
.wp-block-navigation__responsive-container, .wp-block-navigation__responsive-close, .wp-block-navigation__responsive-dialog, .wp-block-navigation__responsive-container-content { display: contents; gap: inherit; }
@media (min-width: 600px) {
	.wp-block-navigation__responsive-container { background-color: inherit; display: block; position: relative; width: 100%; z-index: auto; }
	.wp-block-navigation__responsive-close { display: block; width: 100%; }
	.wp-block-navigation__responsive-dialog { display: block; position: relative; }
	.wp-block-navigation__responsive-container-content { align-items: var(--navigation-layout-align, initial); display: flex; flex-direction: var(--navigation-layout-direction, initial); flex-wrap: var(--navigation-layout-wrap, wrap); justify-content: var(--navigation-layout-justify, initial); }
}
@media (max-width: 599px) {
	.wp-block-navigation__responsive-container-open { align-items: center; background: transparent; border: none; color: currentColor; cursor: pointer; display: flex; font-family: inherit; font-size: inherit; margin: 0; padding: 0; text-transform: inherit; vertical-align: middle; }
	.wp-block-navigation__responsive-container-open svg { display: block; fill: currentColor; height: 24px; pointer-events: none; width: 24px; }
	.wp-block-navigation__responsive-container:not(.is-menu-open) { display: none; }
}
.wp-block-navigation__responsive-container.is-menu-open { align-items: flex-start; background-color: inherit; color: inherit; display: flex; flex-direction: column; inset: 0; overflow: auto; padding: clamp(1rem, var(--wp--style--root--padding-top, 2rem), 20rem) clamp(1rem, var(--wp--style--root--padding-right, 2rem), 20rem) clamp(1rem, var(--wp--style--root--padding-bottom, 2rem), 20rem) clamp(1rem, var(--wp--style--root--padding-left, 2rem), 20rem); position: fixed; z-index: 100000; }
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-close { display: block; height: 100%; margin-left: auto; margin-right: auto; max-width: var(--wp--style--global--wide-size, 100%); width: 100%; }
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-dialog { display: block; padding-top: calc(2rem + 24px); position: relative; }
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-close { background: transparent; border: none; color: currentColor; cursor: pointer; display: flex; margin: 0; padding: 0; position: absolute; right: 0; top: 0; z-index: 2; }
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-close svg { display: block; fill: currentColor; height: 24px; pointer-events: none; width: 24px; }
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content { align-items: flex-start; display: flex; flex-direction: column; gap: var(--wp--style--block-gap, 2em); }
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__container, .wp-block-navigation__responsive-container.is-menu-open .wp-block-page-list { align-items: flex-start; flex-direction: column; gap: inherit; }
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item, .wp-block-navigation__responsive-container.is-menu-open .wp-block-pages-list__item { flex-wrap: wrap; }
.wp-block-navigation__responsive-container.is-menu-open .has-child .wp-block-navigation__submenu-container { background: transparent; border: none; color: inherit; height: auto; min-width: 0; opacity: 1; overflow: visible; padding-left: 2rem; position: static; visibility: visible; width: 100%; }
html.has-modal-open { overflow: hidden; }
.wp-block-navigation__responsive-container.has-background, .wp-block-navigation__responsive-container.has-text-color { background: transparent !important; color: inherit !important; }
.wp-block-navigation .has-background.wp-block-navigation-item { background: transparent !important; }
.items-justified-right .wp-block-navigation__container, .wp-block-navigation.items-justified-right { justify-content: flex-end; }
.items-justified-center .wp-block-navigation__container { justify-content: center; }
.items-justified-space-between .wp-block-navigation__container { justify-content: space-between; }
.wp-block-navigation .wp-block-page-list { align-items: var(--navigation-layout-align, initial); background-color: inherit; display: flex; flex-direction: var(--navigation-layout-direction, initial); flex-wrap: var(--navigation-layout-wrap, wrap); gap: inherit; justify-content: var(--navigation-layout-justify, initial); }
.wp-block-page-list { box-sizing: border-box; }
.wp-block-navigation__container:only-child, .wp-block-page-list:only-child { flex-grow: 1; }
:where(.wp-block-navigation) ul li { padding: 0; }
.wp-block-site-title, .wp-block-site-tagline { margin: 0; }
/* Last, so it beats any block rule that sizes a label: hidden text stays hidden. */
.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;
}

/* Tabs: the list's buttons as tabs, the chosen one underlined; panels show as their tab is chosen (the view module). */
.wp-block-tab-list { display: flex; flex-wrap: wrap; gap: 0; margin: 0 0 1em; }
.wp-block-tab-list button { background: none; border: 0; border-bottom: 2px solid transparent; border-radius: 0; color: inherit; cursor: pointer; font: inherit; margin: 0; padding: 0.5em 1.2em; }
.wp-block-tab-list button[aria-selected="true"] { border-bottom-color: currentColor; }
.wp-block-tab-list button:focus-visible { outline: 2px solid currentColor; outline-offset: -2px; }
.wp-block-tab-panel[hidden] { display: none; }

/* Accordion: each heading's toggle is the whole heading line; a closed panel stays findable (hidden="until-found"). */
.wp-block-accordion-heading { margin: 0; }
.wp-block-accordion-heading__toggle { align-items: center; background: none; border: 0; color: inherit; cursor: pointer; display: flex; font: inherit; gap: 1em; justify-content: space-between; letter-spacing: inherit; margin: 0; padding: 0.5em 0; text-align: inherit; text-transform: inherit; width: 100%; }
.wp-block-accordion-heading__toggle-title { flex: 1; }
.wp-block-accordion-panel[hidden]:not([hidden="until-found"]) { display: none; }
.wp-block-accordion-item > .wp-block-accordion-panel[hidden] { margin-block-start: 0; }

/* Playlist: the waveform player (a play button beside the drawn track, the title and time under it), then the tracks. */
.wp-block-playlist { margin-left: 0; margin-right: 0; }
.wp-block-playlist .waveform-track { align-items: stretch; display: flex; }
.wp-block-playlist .waveform-btn { align-items: center; background: currentColor; border: 0; border-radius: 0; cursor: pointer; display: flex; flex: 0 0 100px; height: 100px; justify-content: center; margin: 0; padding: 0; }
.wp-block-playlist .waveform-btn svg { fill: var(--wp--preset--color--base, #fff); height: 36px; width: 36px; }
.wp-block-playlist .waveform-btn .waveform-icon-pause { display: none; }
.wp-block-playlist .waveform-container { cursor: pointer; flex: 1; min-width: 0; position: relative; }
.wp-block-playlist .waveform-container canvas { display: block; }
.wp-block-playlist .waveform-markers, .wp-block-playlist .waveform-loading, .wp-block-playlist .waveform-hover-time { display: none; }
.wp-block-playlist .waveform-info { align-items: center; display: flex; gap: 1rem; justify-content: space-between; padding: 0.5em 0; }
.wp-block-playlist .waveform-text { display: flex; flex-direction: column; }
.wp-block-playlist .waveform-title { font-weight: 500; }
.wp-block-playlist .waveform-artist { opacity: 0.7; }
.wp-block-playlist__tracklist { list-style: none; margin: 0; padding: 0; }
.wp-block-playlist-track__button { align-items: center; background: none; border: 0; color: inherit; cursor: pointer; display: flex; font: inherit; gap: 1em; padding: 0.5em 0.6em; text-align: start; width: 100%; }
.wp-block-playlist-track__button[aria-current="true"] { background: rgb(0 0 0 / 0.1); }
.wp-block-playlist-track__content { display: flex; flex: 1; flex-direction: column; }
.wp-block-playlist-track__artist { font-size: 0.85em; opacity: 0.7; }
.wp-block-playlist-track__length { font-size: 0.85em; opacity: 0.7; }
.wp-block-playlist-track__image { height: 48px; object-fit: cover; width: 48px; }

/* Image lightbox: the trigger shows on the image as it is hovered or focused; the overlay covers the window while open. */
.wp-lightbox-container { display: flex; flex-direction: column; position: relative; }
.wp-lightbox-container img { cursor: zoom-in; }
.wp-lightbox-container button.lightbox-trigger { align-items: center; background-color: rgb(90 90 90 / 0.25); border: 0; border-radius: 4px; cursor: zoom-in; display: flex; height: 20px; justify-content: center; opacity: 0; padding: 0; position: absolute; right: 16px; top: 16px; width: 20px; z-index: 100; }
.wp-lightbox-container:hover button.lightbox-trigger, .wp-lightbox-container button.lightbox-trigger:focus { opacity: 1; }
.wp-lightbox-overlay { box-sizing: border-box; cursor: zoom-out; height: 100vh; left: 0; overflow: hidden; position: fixed; top: 0; visibility: hidden; width: 100%; z-index: 100000; }
.wp-lightbox-overlay.active { visibility: visible; }
.wp-lightbox-overlay [hidden] { display: none !important; }
.wp-lightbox-overlay .scrim { height: 100%; left: 0; opacity: 0.9; position: absolute; top: 0; width: 100%; z-index: 1; }
.wp-lightbox-overlay .lightbox-image-container { height: var(--wp--lightbox-container-height); left: 50%; overflow: hidden; position: absolute; top: 50%; transform: translate(-50%, -50%); width: var(--wp--lightbox-container-width); z-index: 2; }
.wp-lightbox-overlay .lightbox-image-container figure { height: 100%; margin: 0; width: 100%; }
.wp-lightbox-overlay .lightbox-image-container img { height: var(--wp--lightbox-image-height); max-width: none; width: var(--wp--lightbox-image-width); }
.wp-lightbox-overlay.active .lightbox-image-container, .wp-lightbox-overlay.active .scrim { animation: minn-lightbox-in 0.25s ease-out both; }
.wp-lightbox-overlay .wp-lightbox-close-button, .wp-lightbox-overlay .wp-lightbox-navigation-button { align-items: center; background: none; border: 0; cursor: pointer; display: flex; justify-content: center; min-height: 40px; min-width: 40px; padding: 0; position: absolute; z-index: 3; }
.wp-lightbox-overlay .wp-lightbox-close-button { right: 20px; top: 20px; }
.wp-lightbox-overlay .wp-lightbox-navigation-button { top: 50%; transform: translateY(-50%); }
.wp-lightbox-overlay .wp-lightbox-navigation-button-prev { left: 20px; }
.wp-lightbox-overlay .wp-lightbox-navigation-button-next { right: 20px; }
@keyframes minn-lightbox-in { from { opacity: 0; } to { opacity: 1; } }
@media (prefers-reduced-motion: reduce) { .wp-lightbox-overlay.active .lightbox-image-container, .wp-lightbox-overlay.active .scrim { animation: none; } }
