/* Shared CKEditor output normalization, restricted to the three detail views. */
body:is(.service-page,.article-page,.region-page) .dif-rich-content{
  min-width:0;
  max-width:100%;
  color:var(--text);
  font-size:clamp(15px,1.08rem,17px);
  line-height:1.78;
  overflow-wrap:anywhere;
  word-break:normal;
}

body:is(.service-page,.article-page,.region-page) .dif-rich-content :is(p,ul,ol,blockquote,pre,figure,table,hr){
  max-width:100%;
}

body:is(.service-page,.article-page,.region-page) .dif-rich-content p{
  margin:0 0 1.08em;
  line-height:inherit;
}

body:is(.service-page,.article-page,.region-page) .dif-rich-content p:empty,
body:is(.service-page,.article-page,.region-page) .dif-rich-content p:has(> br:only-child){
  min-height:.45em;
  margin-bottom:.45em;
}

body:is(.service-page,.article-page,.region-page) .dif-rich-content :is(h1,h2,h3,h4,h5,h6){
  max-width:100%;
  color:var(--text);
  font-family:inherit;
  font-weight:650;
  letter-spacing:-.025em;
  line-height:1.28;
  overflow-wrap:anywhere;
  text-wrap:pretty;
}

body:is(.service-page,.article-page,.region-page) .dif-rich-content h1{font-size:clamp(1.55rem,3.2vw,2.15rem);margin:1.55em 0 .58em}
body:is(.service-page,.article-page,.region-page) .dif-rich-content h2{font-size:clamp(1.4rem,2.7vw,1.9rem);margin:1.55em 0 .58em}
body:is(.service-page,.article-page,.region-page) .dif-rich-content h3{font-size:clamp(1.2rem,2.2vw,1.5rem);margin:1.35em 0 .5em}
body:is(.service-page,.article-page,.region-page) .dif-rich-content :is(h4,h5,h6){font-size:1.08rem;margin:1.2em 0 .48em}
body:is(.service-page,.article-page,.region-page) .dif-rich-content :is(h1,h2,h3,h4,h5,h6):first-child{margin-top:0}

body:is(.service-page,.article-page,.region-page) .dif-rich-content :is(ul,ol){
  display:block;
  margin:.4em 0 1.2em;
  padding-inline-start:clamp(22px,3vw,32px);
  list-style-position:outside;
}
body:is(.service-page,.article-page,.region-page) .dif-rich-content li{padding-inline-start:.18em;margin:.34em 0;line-height:inherit}
body:is(.service-page,.article-page,.region-page) .dif-rich-content li::marker{color:var(--gold)}
body:is(.service-page,.article-page,.region-page) .dif-rich-content li> :is(ul,ol){margin-block:.5em}

body:is(.service-page,.article-page,.region-page) .dif-rich-content blockquote{
  margin:1.35em 0;
  padding:clamp(15px,2.4vw,22px) clamp(17px,2.8vw,26px);
  border-inline-start:3px solid var(--gold);
  border-radius:0 14px 14px 0;
  background:color-mix(in srgb,var(--gold) 8%,var(--surface));
  color:var(--text);
}
body:is(.service-page,.article-page,.region-page) .dif-rich-content blockquote>:last-child{margin-bottom:0}
body:is(.service-page,.article-page,.region-page) .dif-rich-content a{color:var(--service-accent,var(--gold));text-decoration:underline;text-decoration-thickness:.08em;text-underline-offset:.18em;overflow-wrap:anywhere}
body:is(.service-page,.article-page,.region-page) .dif-rich-content a:focus-visible{outline:2px solid var(--gold);outline-offset:3px}
body:is(.service-page,.article-page,.region-page) .dif-rich-content :is(strong,b){font-weight:700}
body:is(.service-page,.article-page,.region-page) .dif-rich-content :is(code,kbd,samp){padding:.12em .36em;border:1px solid var(--line);border-radius:5px;background:var(--surface);font: .9em/1.5 ui-monospace,SFMono-Regular,Consolas,monospace;overflow-wrap:anywhere}
body:is(.service-page,.article-page,.region-page) .dif-rich-content pre{max-width:100%;margin:1.1em 0;padding:16px;overflow:auto;border:1px solid var(--line);border-radius:12px;background:var(--surface);white-space:pre;}
body:is(.service-page,.article-page,.region-page) .dif-rich-content pre code{padding:0;border:0;background:transparent;white-space:inherit}

body:is(.service-page,.article-page,.region-page) .dif-rich-content{display:flow-root}
body:is(.service-page,.article-page,.region-page) .dif-rich-content figure{width:auto;max-width:100%;margin:1.15em auto 1.45em}
body:is(.service-page,.article-page,.region-page) .dif-rich-content figure.image{display:table;table-layout:fixed}
body:is(.service-page,.article-page,.region-page) .dif-rich-content figure.image img,
body:is(.service-page,.article-page,.region-page) .dif-rich-content img{
  display:block;
  max-width:100% !important;
  height:auto !important;
  aspect-ratio:auto !important;
  object-fit:contain !important;
  border-radius:clamp(9px,1.4vw,16px);
}
body:is(.service-page,.article-page,.region-page) .dif-rich-content figure.image img{width:100%;margin-inline:auto}
body:is(.service-page,.article-page,.region-page) .dif-rich-content figcaption{
  max-width:70ch;
  margin:.6em auto 0;
  color:var(--muted);
  font-size:.86em;
  line-height:1.55;
  text-align:center;
}
body:is(.service-page,.article-page,.region-page) .dif-rich-content :is(.image-style-align-left,.image-style-block-align-left,.image-style-side){float:left;max-width:min(48%,34rem);margin:.25em 1.35em 1em 0}
body:is(.service-page,.article-page,.region-page) .dif-rich-content :is(.image-style-align-right,.image-style-block-align-right){float:right;max-width:min(48%,34rem);margin:.25em 0 1em 1.35em}
body:is(.service-page,.article-page,.region-page) .dif-rich-content .image-style-align-center{float:none;margin-inline:auto;text-align:center}

body:is(.service-page,.article-page,.region-page) .dif-rich-content figure.table{
  display:block;
  width:100%;
  max-width:100%;
  margin:1.3em 0;
  overflow-x:auto;
  overscroll-behavior-inline:contain;
  scrollbar-width:thin;
  border:1px solid var(--line);
  border-radius:12px;
  -webkit-overflow-scrolling:touch;
}
body:is(.service-page,.article-page,.region-page) .dif-rich-content :is(table,figure.table table){
  display:table;
  width:max-content;
  min-width:100%;
  max-width:none;
  margin:0;
  overflow:visible;
  border-collapse:collapse;
  border-spacing:0;
  background:var(--surface);
  font-size:.93em;
  line-height:1.55;
}
body:is(.service-page,.article-page,.region-page) .dif-rich-content .dif-table-scroll{
  display:block;
  max-width:100%;
  margin:1.3em 0;
  overflow-x:auto;
  overscroll-behavior-inline:contain;
  scrollbar-width:thin;
  border:1px solid var(--line);
  border-radius:12px;
  -webkit-overflow-scrolling:touch;
}
body:is(.service-page,.article-page,.region-page) .dif-rich-content :is(figure.table,.dif-table-scroll):focus-visible{outline:3px solid var(--gold);outline-offset:3px}
body:is(.service-page,.article-page,.region-page) .dif-rich-content :is(th,td){
  min-width:7.5rem;
  padding:clamp(9px,1.25vw,14px);
  border:1px solid var(--line);
  text-align:start;
  vertical-align:top;
  overflow-wrap:anywhere;
}
body:is(.service-page,.article-page,.region-page) .dif-rich-content th{background:color-mix(in srgb,var(--gold) 10%,var(--surface));font-weight:700}
body:is(.service-page,.article-page,.region-page) .dif-rich-content :is(th,td)>:last-child{margin-bottom:0}

body:is(.service-page,.article-page,.region-page) .dif-rich-content :is(video,audio,iframe,embed){display:block;max-width:100%;margin:1.2em auto}
body:is(.service-page,.article-page,.region-page) .dif-rich-content video{width:auto;height:auto;max-height:min(78vh,780px);background:#080808;border-radius:14px}
body:is(.service-page,.article-page,.region-page) .dif-rich-content iframe{width:100%;height:auto;min-height:220px;border:0;border-radius:14px}
body:is(.service-page,.article-page,.region-page) .dif-rich-content hr{margin:1.7em 0;border:0;border-top:1px solid var(--line)}

@media(max-width:760px){
  body:is(.service-page,.article-page,.region-page) .dif-rich-content{font-size:16px;line-height:1.76}
  body:is(.service-page,.article-page,.region-page) .dif-rich-content :is(.image-style-align-left,.image-style-align-right,.image-style-block-align-left,.image-style-block-align-right,.image-style-side){float:none;width:auto;max-width:100%;margin:1em auto}
  body:is(.service-page,.article-page,.region-page) .dif-rich-content figure.image{width:100% !important;max-width:100%}
  body:is(.service-page,.article-page,.region-page) .dif-rich-content :is(figure.image-style-align-left,figure.image-style-align-right,figure.image-style-side){width:100% !important;max-width:100%}
  body:is(.service-page,.article-page,.region-page) .dif-rich-content :is(figure.image-style-align-left,figure.image-style-align-right,figure.image-style-side) img,
  body:is(.service-page,.article-page,.region-page) .dif-rich-content :is(img.image-style-align-left,img.image-style-align-right,img.image-style-side){width:100% !important}
  body:is(.service-page,.article-page,.region-page) .dif-rich-content :is(video,iframe){max-height:72vh}
  body:is(.service-page,.article-page,.region-page) .dif-rich-content :is(th,td){min-width:8rem}
}
@media(max-width:380px){
  body:is(.service-page,.article-page,.region-page) .dif-rich-content{font-size:15.5px}
  body:is(.service-page,.article-page,.region-page) .dif-rich-content blockquote{padding:14px 15px}
  body:is(.service-page,.article-page,.region-page) .dif-rich-content pre{padding:12px}
}
@media(prefers-reduced-motion:reduce){body:is(.service-page,.article-page,.region-page) .dif-rich-content *{scroll-behavior:auto}}
