/* Article content only. Headings on the homepage, service pages and sidebar are unchanged. */
#article-body.article-content h2,
body.single-post .entry-content h2,
.editor-styles-wrapper h2.wp-block-heading{
  box-sizing:border-box;position:relative;display:block;
  color:#30343c;background:#fcf0f8;
  border:0;border-bottom:3px solid #bd197f;border-radius:10px 10px 3px 3px;
  box-shadow:none;padding:20px 24px;margin:2.5em 0 1em;
  font-size:clamp(22px,2.4vw,26px);font-weight:700;line-height:1.7;
  letter-spacing:.035em;text-align:left;text-indent:0;
  overflow-wrap:anywhere;scroll-margin-top:115px;
}
#article-body.article-content h3,
body.single-post .entry-content h3,
.editor-styles-wrapper h3.wp-block-heading{
  box-sizing:border-box;position:relative;display:block;
  color:#3b3e47;background:transparent;
  border:0;border-left:4px solid #bd197f;border-radius:0;
  box-shadow:none;padding:5px 0 5px 18px;margin:2em 0 .9em;
  font-size:clamp(19px,2vw,22px);font-weight:700;line-height:1.75;
  letter-spacing:.025em;text-align:left;text-indent:0;
  overflow-wrap:anywhere;scroll-margin-top:115px;
}
#article-body.article-content h2::before,#article-body.article-content h2::after,
#article-body.article-content h3::before,#article-body.article-content h3::after,
body.single-post .entry-content h2::before,body.single-post .entry-content h2::after,
body.single-post .entry-content h3::before,body.single-post .entry-content h3::after,
.editor-styles-wrapper h2.wp-block-heading::before,.editor-styles-wrapper h2.wp-block-heading::after,
.editor-styles-wrapper h3.wp-block-heading::before,.editor-styles-wrapper h3.wp-block-heading::after{content:none}
@media(max-width:600px){
  #article-body.article-content h2,body.single-post .entry-content h2,.editor-styles-wrapper h2.wp-block-heading{padding:16px 18px;letter-spacing:.02em}
  #article-body.article-content h3,body.single-post .entry-content h3,.editor-styles-wrapper h3.wp-block-heading{padding-left:14px;letter-spacing:.01em}
}
/* Existing AFFINGER saved block HTML: one frame, separate title and body. */
#article-body .wp-block-st-blocks-midashi-box.freebox,
.editor-styles-wrapper .wp-block-st-blocks-midashi-box.freebox{
  box-sizing:border-box;display:block;position:relative;width:auto;max-width:100%;
  margin:2em 0!important;padding:24px 26px!important;
  border:1px solid #ead8e5!important;border-top:3px solid #bd197f!important;
  border-radius:12px!important;background:#fffcfe!important;
  color:#30343c;box-shadow:none!important;overflow:visible;
}
#article-body .wp-block-st-blocks-midashi-box.freebox > .p-free,
.editor-styles-wrapper .wp-block-st-blocks-midashi-box.freebox > .p-free{
  display:block;position:static!important;float:none;width:auto;height:auto;
  border:0!important;margin:0 0 14px!important;padding:0!important;
  background:none!important;line-height:1.7;font-size:16px;font-weight:700;
}
#article-body .wp-block-st-blocks-midashi-box.freebox > .p-free > .p-entry-f,
.editor-styles-wrapper .wp-block-st-blocks-midashi-box.freebox > .p-free > .p-entry-f{
  display:inline;position:static!important;float:none;
  border:0!important;border-radius:0!important;padding:0!important;margin:0!important;
  background:none!important;color:#a51870!important;box-shadow:none!important;
  font-size:inherit;line-height:inherit;white-space:normal;overflow-wrap:anywhere;
}
#article-body .wp-block-st-blocks-midashi-box.freebox > .p-free::before,
#article-body .wp-block-st-blocks-midashi-box.freebox > .p-free::after,
#article-body .wp-block-st-blocks-midashi-box.freebox .p-entry-f::before,
#article-body .wp-block-st-blocks-midashi-box.freebox .p-entry-f::after{content:none!important}
#article-body .wp-block-st-blocks-midashi-box.freebox .p-entry-f > i{display:none}
#article-body .wp-block-st-blocks-midashi-box.freebox > .free-inbox,
.editor-styles-wrapper .wp-block-st-blocks-midashi-box.freebox > .free-inbox{
  display:block;float:none;position:static;clear:both;border:0!important;
  margin:0!important;padding:0!important;background:none!important;font-weight:400;line-height:2;
}
#article-body .wp-block-st-blocks-midashi-box.freebox > .free-inbox > p,
.editor-styles-wrapper .wp-block-st-blocks-midashi-box.freebox > .free-inbox > p{
  border:0!important;background:none!important;padding:0!important;margin:0 0 1em!important;
}
#article-body .wp-block-st-blocks-midashi-box.freebox > .free-inbox > p:last-child,
.editor-styles-wrapper .wp-block-st-blocks-midashi-box.freebox > .free-inbox > p:last-child{margin-bottom:0!important}
/* Preserve a featured image's native aspect ratio without side letterboxing. */
.single-article .article-header .article-featured{display:block;width:100%;height:auto;max-height:none;object-fit:contain}
@media(max-width:600px){
 #article-body .wp-block-st-blocks-midashi-box.freebox,
 .editor-styles-wrapper .wp-block-st-blocks-midashi-box.freebox{padding:20px 18px!important}
}

/* H4: compact diamond marker aligned to the first line, including wrapped headings. */
#article-body.article-content h4,
body.single-post .entry-content h4,
.editor-styles-wrapper h4.wp-block-heading{
 box-sizing:border-box;position:relative;display:block;
 color:#3b3e47;background:transparent;border:0;border-radius:0;box-shadow:none;
 padding:2px 0 2px 24px;margin:1.8em 0 .8em;
 font-size:clamp(17px,1.7vw,19px);font-weight:700;line-height:1.8;
 letter-spacing:.02em;text-align:left;text-indent:0;
 overflow-wrap:anywhere;scroll-margin-top:115px;
}
#article-body.article-content h4::before,
body.single-post .entry-content h4::before,
.editor-styles-wrapper h4.wp-block-heading::before{
 content:"";position:absolute;display:block;left:3px;top:calc(.9em + 2px);
 width:8px;height:8px;background:#bd197f;border:0;border-radius:1px;
 transform:translateY(-50%) rotate(45deg);box-shadow:none;
}
#article-body.article-content h4::after,
body.single-post .entry-content h4::after,
.editor-styles-wrapper h4.wp-block-heading::after{content:none}
