/* Shared content styles: frontend and Gutenberg canvas. */
*, *::before, *::after { box-sizing: border-box; }
body { margin: 0; }
img, video { max-width: 100%; height: auto; }
iframe { max-width: 100%; }
button, input, textarea, select { font: inherit; }
a { text-underline-offset: .18em; }
:where(a, button, input, textarea, select, summary, [tabindex]):focus-visible {
  outline: 3px solid var(--wp--preset--color--accent);
  outline-offset: 4px;
}
:where(p, h1, h2, h3, h4, li) { overflow-wrap: break-word; }
.entry-content > :not(.alignfull) {
  max-width: var(--wp--style--global--content-size);
  margin-left: auto;
  margin-right: auto;
}
.entry-content > .alignfull { max-width: none; }
/* Landing sections own their spacing; the generic prose block gap must not accumulate. */
.d030-landing.entry-content > .alignfull { margin-block-start: var(--d030-section-gap, 0); margin-block-end: 0; }
.screen-reader-text {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip-path: inset(50%);
  white-space: nowrap;
  border: 0;
}
.skip-link:focus {
  position: fixed;
  z-index: 10000;
  inset: 8px auto auto 8px;
  width: auto;
  height: auto;
  margin: 0;
  padding: 12px 20px;
  clip-path: none;
  background: var(--wp--preset--color--light);
  color: var(--wp--preset--color--dark);
}
@media (max-width: 1024px) {
  body { --wp--preset--font-size--section: 32px; --wp--preset--font-size--hero: 32px; }
}
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
}
