/* Shared editorial modules: no per-product styling or fixed heights. */
.ire-content {
  --ire-content-rule: #dfe5df;
  --ire-content-surface: #f6f8f5;
  --ire-content-gap: clamp(1.5rem, 3vw, 2.5rem);
  color: var(--wp--preset--color--ink, #202820);
  font-size: 1rem;
  line-height: 1.75;
  overflow-wrap: anywhere;
}
.ire-content--product,
.ire-content--category,
.ire-content__faq {
  max-width: 80ch;
  margin-inline: auto;
}
.ire-content .ire-content__lead { font-size: 1.125rem; line-height: 1.8; }
.ire-content .ire-content__section { margin-block: var(--ire-content-gap); }
.ire-content h2 { font-size: clamp(1.35rem, 2.4vw, 1.75rem); line-height: 1.3; margin-block: 0 1rem; }
.ire-content h3 { font-size: 1.125rem; line-height: 1.45; margin-block: 1.5rem .5rem; }
.ire-content p { margin-block: 0 1rem; }
.ire-content a { text-decoration: underline; text-underline-offset: .2em; }
.ire-content a:focus-visible { outline: 2px solid currentColor; outline-offset: 3px; }
.ire-content li { margin-block: .5rem; }
.ire-content :is(ul, ol) { padding-inline-start: 1.5rem; }
.ire-content__specs { margin: 0; border-top: 1px solid var(--ire-content-rule); }
.ire-content__specs > div { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1.6fr); gap: 1rem; padding: .85rem 1rem; border-bottom: 1px solid var(--ire-content-rule); }
.ire-content__specs > div:nth-child(odd) { background: var(--ire-content-surface); }
.ire-content__specs dt { font-weight: 600; }
.ire-content__specs dd { margin: 0; }
.ire-content__faq { padding-top: var(--ire-content-gap); border-top: 1px solid var(--ire-content-rule); }
.ire-content--summary { font-size: .9375rem; }
.ire-content--summary ul { margin-bottom: 0; }
@media (max-width: 480px) {
  .ire-content__specs > div { grid-template-columns: 1fr; gap: .2rem; padding-inline: .75rem; }
}
