/* =========================================================================
   WordPress Default / Core CSS
   Kept from the beginning so this homepage drops cleanly into a WordPress
   theme. These are the canonical core classes WordPress outputs (alignment,
   captions, galleries, accessibility, block defaults). Do NOT strip — the
   custom theme (theme.css) layers on top of these.
   Ref: WordPress core + _s (underscores) starter theme.
   ========================================================================= */

/* ---- Accessibility ---- */
.screen-reader-text {
  border: 0;
  clip: rect(1px, 1px, 1px, 1px);
  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 {
  background-color: #f1f1f1;
  border-radius: 3px;
  box-shadow: 0 0 2px 2px rgba(0, 0, 0, 0.6);
  clip: auto !important;
  clip-path: none;
  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;
}

/* Skip link target */
#content[tabindex="-1"]:focus { outline: 0; }

/* ---- Alignments (core) ---- */
.alignleft  { display: inline; float: left;  margin-right: 1.5em; }
.alignright { display: inline; float: right; margin-left: 1.5em; }
.aligncenter { clear: both; display: block; margin-left: auto; margin-right: auto; }
.alignnone { }
.wp-block-image .aligncenter { text-align: center; }

/* ---- Captions (core) ---- */
.wp-caption {
  margin-bottom: 1.5em;
  max-width: 100%;
}
.wp-caption img[class*="wp-image-"] {
  display: block;
  margin-left: auto;
  margin-right: auto;
}
.wp-caption .wp-caption-text { margin: 0.8075em 0; }
.wp-caption-text { text-align: center; }
figure.wp-caption .wp-caption-text,
.wp-caption-text {
  font-size: 0.85em;
  color: #555;
}

/* ---- Galleries (core) ---- */
.gallery { margin-bottom: 1.5em; display: grid; grid-gap: 1.5em; }
.gallery-item { display: inline-block; text-align: center; width: 100%; }
.gallery-columns-2 { grid-template-columns: repeat(2, 1fr); }
.gallery-columns-3 { grid-template-columns: repeat(3, 1fr); }
.gallery-columns-4 { grid-template-columns: repeat(4, 1fr); }
.gallery-caption { display: block; }

/* ---- Post/Sticky states (core body & post classes) ---- */
.sticky { display: block; }
.updated:not(.published) { display: none; }
.bypostauthor { display: block; }

/* ---- Media embeds ---- */
.wp-embed-responsive .wp-has-aspect-ratio { position: relative; }
embed, iframe, object { max-width: 100%; }
.post-thumbnail img { display: block; margin: 0 auto; }

/* ---- Block editor default content widths ---- */
.entry-content > *,
.entry-summary > * { max-width: 100%; }
.entry-content .alignwide  { max-width: 1100px; }
.entry-content .alignfull  { margin-left: calc(50% - 50vw); margin-right: calc(50% - 50vw); max-width: 100vw; }

/* ---- Default menu (wp_nav_menu) structure ---- */
.menu { margin: 0; padding: 0; list-style: none; }
.menu li { position: relative; }
.menu .sub-menu { margin: 0; padding: 0; list-style: none; }

/* ---- Comments / clear (core helpers) ---- */
.clear:before, .clear:after,
.entry-content:before, .entry-content:after,
.site-content:before, .site-content:after,
.site-header:before, .site-header:after,
.site-footer:before, .site-footer:after { content: ""; display: table; table-layout: fixed; }
.clear:after,
.entry-content:after,
.site-content:after,
.site-header:after,
.site-footer:after { clear: both; }

/* ---- Default WP text selection / links baseline ---- */
a { text-decoration-skip-ink: auto; }
