.sm-main:has(.sm-eot-hero) { position: relative; }
.sm-main:has(.sm-eot-hero) .wp-block-post-content > .sm-eot-hero {
  margin-block-start: 0 !important;
}
.sm-eot-crumbs {
  position: absolute;
  z-index: 4;
  top: 0;
  left: 50%;
  width: min(1200px, calc(100% - 3rem));
  padding: .55rem 0;
  transform: translateX(-50%);
  font-size: .78rem;
  color: #677487;
}
.sm-eot-crumbs a { color: #33445c; text-decoration: none; }
.sm-eot-crumbs a:hover { color: #007a61; text-decoration: underline; }
.sm-eot-hero { padding-top: 3.8rem; padding-bottom: 3.4rem; }
.sm-eot-hero-grid { align-items: start; }
.sm-eot-hero-media {
  box-sizing: border-box;
  height: 520px;
  padding: 10px;
  overflow: hidden;
  border: 1px solid rgba(23,36,59,.08);
  border-radius: 2rem;
  background: #fff;
  box-shadow: 0 24px 70px rgba(23,36,59,.16);
}
.sm-eot-hero-media img {
  width: 100%;
  height: 100%;
  aspect-ratio: auto;
  border-radius: 1.45rem;
  object-fit: cover;
  object-position: 52% center;
  box-shadow: none;
}
.sm-eot-hero-media figcaption { right: 1.25rem; bottom: 1.25rem; }
.sm-eot-hero-media .sm-eot-image-badge-top { top: 1.25rem; right: 1.25rem; }
.sm-eot-hero h1 {
  max-width: 18ch;
  font-size: clamp(2.45rem, 3.45vw, 3.8rem);
  line-height: 1.01;
  letter-spacing: -.045em;
}
.sm-eot-image-badge {
  position: absolute;
  z-index: 2;
  display: inline-flex;
  padding: .55rem .8rem;
  border-radius: 999px;
  background: rgba(255,255,255,.94);
  box-shadow: 0 8px 24px rgba(23,36,59,.18);
  color: #17243b;
  font-size: .72rem;
  font-weight: 850;
  letter-spacing: .06em;
  text-transform: uppercase;
}
.sm-eot-image-badge-top { top: 1rem; right: 1rem; }
.sm-eot-image-badge-bottom { left: 1rem; bottom: 1rem; }
.sm-eot-feature-image {
  position: relative;
  margin: 2rem 0 0;
  display: grid;
  grid-template-columns: 1.25fr .75fr;
  background: #17243b;
  border-radius: 1.4rem;
  overflow: hidden;
}
.sm-eot-feature-image img { width: 100%; height: 320px; object-fit: cover; }
.sm-eot-feature-image figcaption { display: flex; flex-direction: column; justify-content: center; padding: 2rem; color: #fff; }
.sm-eot-feature-image figcaption b { font-size: 1.35rem; }
.sm-eot-feature-image figcaption span { color: #ced7e4; line-height: 1.6; margin-top: .5rem; }
.sm-eot-local-media { position: relative; }
.sm-eot-extras { background: #f3f8f7; }
.sm-eot-extra-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 1rem;
  margin-top: 2rem;
}
.sm-eot-extra-grid article {
  padding: 1.35rem;
  border: 1px solid rgba(23,36,59,.09);
  border-radius: 1rem;
  background: #fff;
  box-shadow: 0 10px 30px rgba(23,36,59,.06);
}
.sm-eot-extra-grid h3 { margin: 0 0 .45rem; font-size: 1.05rem; }
.sm-eot-extra-grid p { margin: 0; color: #58677b; line-height: 1.55; }
.sm-eot-extra-note { margin-top: 1.35rem; color: #58677b; font-size: .92rem; }
.sm-eot-process-story { background: #fff; }
.sm-eot-story-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 1rem;
  margin-top: 2rem;
}
.sm-eot-story-grid article {
  position: relative;
  padding: 1.45rem 1.5rem 1.5rem;
  border: 1px solid rgba(23,36,59,.1);
  border-radius: 1.2rem;
  background: linear-gradient(145deg, #fff, #f5faf9);
}
.sm-eot-story-grid article:nth-child(2),
.sm-eot-story-grid article:nth-child(3) { background: #17243b; color: #fff; }
.sm-eot-story-grid span { display: block; margin-bottom: .7rem; color: #008c70; font-size: .72rem; font-weight: 850; letter-spacing: .09em; text-transform: uppercase; }
.sm-eot-story-grid article:nth-child(2) span,
.sm-eot-story-grid article:nth-child(3) span { color: #7ee0c8; }
.sm-eot-story-grid h3 { margin: 0 0 .65rem; font-size: 1.15rem; }
.sm-eot-story-grid p { margin: 0; line-height: 1.68; color: #56667a; }
.sm-eot-story-grid article:nth-child(2) p,
.sm-eot-story-grid article:nth-child(3) p { color: #d7dfeb; }
@media (max-width: 620px) {
  .sm-eot-crumbs { top: 0; width: calc(100% - 2rem); padding: .45rem 0; font-size: .7rem; }
  .sm-eot-hero { padding-top: 3.25rem; padding-bottom: 3rem; }
  .sm-eot-hero h1 { max-width: 16ch; font-size: clamp(2.25rem, 10.5vw, 3rem); }
  .sm-eot-hero-media { height: 440px; padding: 7px; border-radius: 1.5rem; }
  .sm-eot-hero-media img { border-radius: 1.15rem; }
  .sm-eot-feature-image { grid-template-columns: 1fr; }
  .sm-eot-feature-image img { height: 240px; }
  .sm-eot-extra-grid { grid-template-columns: 1fr; }
  .sm-eot-story-grid { grid-template-columns: 1fr; }
  .sm-eot-table-wrap table { min-width: 0; width: 100%; table-layout: fixed; }
  .sm-eot-table-wrap th,
  .sm-eot-table-wrap td { padding: .72rem .6rem; overflow-wrap: anywhere; }
  .sm-eot-table-wrap th:first-child { width: 52%; }
  .sm-eot-table-wrap caption { padding: .8rem .6rem; }
}
