/* Both editor and front end use the same restrained content defaults. */
.swp-editor-content { max-width: 1120px; padding-block: clamp(1.5rem,4vw,4rem); color: #122733; overflow-wrap: anywhere; }
.swp-editor-content > * { max-width: 100%; }
.swp-editor-content p,.swp-editor-content li,.swp-editor-content td { line-height: 1.75; }
.swp-editor-content p { margin-block: 0 1.2em; }
.swp-editor-content h2,.swp-editor-content h3,.swp-editor-content h4,.swp-editor-content h5,.swp-editor-content h6 { font-family: Manrope,sans-serif; line-height: 1.2; margin-block: 1.6em .65em; color: #112e3e; font-weight: 700; }
.swp-editor-content h2 { font-size: clamp(1.7rem,3.3vw,2.5rem); }
.swp-editor-content h3 { font-size: clamp(1.35rem,2vw,1.75rem); }
.swp-editor-content h4,.swp-editor-content h5,.swp-editor-content h6 { font-size: 1.2rem; }
.swp-editor-content h2:first-child,.swp-editor-content h3:first-child { margin-top: 0; }
.swp-editor-content a:not(.swp-button):not(.wp-block-button__link) { color: #155174; text-decoration: underline; text-underline-offset: .18em; }
.swp-editor-content a:focus-visible,.swp-editor-content summary:focus-visible { outline: 3px solid #905c00; outline-offset: 4px; }
.swp-editor-content img { display: block; max-width: 100%; height: auto; border-radius: 18px; }
.swp-editor-content figure { margin: 1.5rem 0; }
.swp-editor-content figcaption { margin-top: .6rem; font-size: .9rem; color: #52646f; }
.swp-editor-content .wp-block-group,.swp-editor-content .swp-editor-section { padding: clamp(1.2rem,3vw,2.5rem); margin-block: 0 1.5rem; background: #f4f7f7; border: 1px solid #dde5e7; border-radius: 20px; }
.swp-editor-content .wp-block-group .wp-block-group { padding: 1.2rem; background: #fff; }
.swp-editor-content .wp-block-columns { display: flex; flex-wrap: wrap; gap: 2rem; align-items: flex-start; }
.swp-editor-content .wp-block-column { flex: 1 1 280px; min-width: 0; }
.swp-editor-content .wp-block-buttons { display: flex; flex-wrap: wrap; gap: .75rem; margin-block: 1.5rem; }
.swp-editor-content .wp-block-button__link { display: inline-flex; align-items: center; justify-content: center; background: #f7c646; color: #112e3e; border-radius: 12px; padding: .9rem 1.3rem; min-height: 48px; font-weight: 700; text-decoration: none; }
.swp-editor-content ul,.swp-editor-content ol { padding-inline-start: 1.5rem; margin: 0 0 1.5rem; }
.swp-editor-content ul { list-style: disc; }
.swp-editor-content ol { list-style: decimal; }
.swp-editor-content li { margin-bottom: .45rem; }
.swp-editor-content blockquote { border-left: 4px solid #cc9c26; padding: .5rem 1.5rem; margin: 1.5rem 0; }
.swp-editor-content .wp-block-table { overflow-x: auto; }
.swp-editor-content table { border-collapse: collapse; width: 100%; }
.swp-editor-content td,.swp-editor-content th { padding: .7rem; border: 1px solid #cbd7db; text-align: left; }
.swp-editor-content details { border-bottom: 1px solid #cbd7db; padding: 1rem 0; }
.swp-editor-content summary { cursor: pointer; font-weight: 700; }
.swp-editor-content .wp-block-gallery { display: grid; grid-template-columns: repeat(auto-fit,minmax(min(240px,100%),1fr)); gap: 1rem; }
.swp-editor-content .wp-block-gallery figure { margin: 0; width: 100% !important; }
.swp-editor-content hr { height: 1px; border: 0; background: #cbd7db; margin: 2rem 0; }
.swp-editor-dynamic-block { border: 2px dashed #537d90; padding: 1.4rem; background: #f2f7f8; color: #173444; border-radius: 10px; }
.swp-editor-length { display: block; color: #50575e; margin-top: .3rem; font-size: 12px; }
.editor-styles-wrapper .swp-editor-section { padding: 1.5rem; border: 1px solid #dde5e7; border-radius: 16px; background: #f4f7f7; margin-block: 1.5rem; }
.editor-styles-wrapper .swp-editor-section h2 { color: #112e3e; }
@media (max-width: 640px) {
    .swp-editor-content .wp-block-columns { flex-direction: column; }
    .swp-editor-content .wp-block-column { flex-basis: auto; width: 100%; }
    .swp-editor-content .wp-block-buttons,.swp-editor-content .wp-block-button { width: 100%; }
    .swp-editor-content .wp-block-button__link { width: 100%; }
}
