/* Shared WordPress inline styles — extracted from per-page <style> blocks.
   Loaded once and browser-cached instead of being duplicated on every page. */

/* ── Lazy load (wp-smushit) ─────────────────────────────────────────── */

.lazyload,
.lazyloading {
  max-width: 100%;
}

img:is([sizes="auto" i], [sizes^="auto," i]) {
  contain-intrinsic-size: 3000px 1500px;
}

.no-js img.lazyload {
  display: none;
}

figure.wp-block-image img.lazyloading {
  min-width: 150px;
}

.lazyload,
.lazyloading {
  --smush-placeholder-width: 100px;
  --smush-placeholder-aspect-ratio: 1/1;
  width: var(--smush-image-width, var(--smush-placeholder-width)) !important;
  aspect-ratio: var(--smush-image-aspect-ratio, var(--smush-placeholder-aspect-ratio)) !important;
}

.lazyload,
.lazyloading {
  opacity: 0;
}

.lazyloaded {
  opacity: 1;
  transition: opacity 400ms;
  transition-delay: 0ms;
}

/* ── Emoji images ───────────────────────────────────────────────────── */

img.wp-smiley,
img.emoji {
  display: inline !important;
  border: none !important;
  box-shadow: none !important;
  height: 1em !important;
  width: 1em !important;
  margin: 0 0.07em !important;
  vertical-align: -0.1em !important;
  background: none !important;
  padding: 0 !important;
}

/* ── WordPress block library global styles ──────────────────────────── */

:root {
  --wp--preset--font-size--normal: 16px;
  --wp--preset--font-size--huge: 42px;
}

.has-regular-font-size  { font-size: 1em; }
.has-larger-font-size   { font-size: 2.625em; }
.has-normal-font-size   { font-size: var(--wp--preset--font-size--normal); }
.has-huge-font-size     { font-size: var(--wp--preset--font-size--huge); }

.has-text-align-center  { text-align: center; }
.has-text-align-left    { text-align: left; }
.has-text-align-right   { text-align: right; }
.has-fit-text           { white-space: nowrap !important; }

#end-resizable-editor-section { display: none; }

.aligncenter { clear: both; }

.items-justified-left         { justify-content: flex-start; }
.items-justified-center       { justify-content: center; }
.items-justified-right        { justify-content: flex-end; }
.items-justified-space-between { justify-content: space-between; }

.screen-reader-text {
  border: 0;
  clip-path: inset(50%);
  height: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  position: absolute;
  width: 1px;
  word-wrap: normal !important;
}
.screen-reader-text:focus {
  background-color: #ddd;
  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;
}

html :where(.has-border-color)              { border-style: solid; }
html :where([style*="border-top-color"])    { border-top-style: solid; }
html :where([style*="border-right-color"])  { border-right-style: solid; }
html :where([style*="border-bottom-color"]) { border-bottom-style: solid; }
html :where([style*="border-left-color"])   { border-left-style: solid; }
html :where([style*="border-width"])        { border-style: solid; }
html :where([style*="border-top-width"])    { border-top-style: solid; }
html :where([style*="border-right-width"])  { border-right-style: solid; }
html :where([style*="border-bottom-width"]) { border-bottom-style: solid; }
html :where([style*="border-left-width"])   { border-left-style: solid; }

html :where(img[class*="wp-image-"]) {
  height: auto;
  max-width: 100%;
}

:where(figure) {
  margin: 0 0 1em;
}

/* ── Classic theme compatibility styles ─────────────────────────────── */

.wp-block-button__link {
  color: #fff;
  background-color: #32373c;
  border-radius: 9999px;
  box-shadow: none;
  text-decoration: none;
  padding: calc(0.667em + 2px) calc(1.333em + 2px);
  font-size: 1.125em;
}

.wp-block-file__button {
  background: #32373c;
  color: #fff;
  text-decoration: none;
}