/* Ready-made blocks and media inserted with the admin rich-text editor (articles, projects, products, pages). */
.pb-content img, .pb-content video { max-width: 100%; height: auto; border-radius: 12px; }
.pb-content figure.image { margin: 1.5rem 0; text-align: center; }
.pb-content figure.image figcaption { font-size: .88rem; color: #6b7489; margin-top: .45rem; }
.pb-content iframe { width: 100%; aspect-ratio: 16 / 9; height: auto; border: 0; border-radius: 12px; }
.pb-content audio { width: 100%; }
.pb-content blockquote { border-inline-start: 4px solid #1b3d8f; background: #f4f6ff; margin: 1.5rem 0; padding: .9rem 1.25rem; border-radius: 10px; color: #33415c; }
.pb-content table { width: 100%; border-collapse: collapse; margin: 1.25rem 0; }
.pb-content table td, .pb-content table th { border: 1px solid #dfe3ec; padding: .55rem .8rem; }
.pb-content table th { background: #f4f6fb; }
.pb-content pre { direction: ltr; text-align: left; background: #0f172a; color: #e2e8f0; padding: 1rem; border-radius: 10px; overflow: auto; }
.pb-content .note-box { border-radius: 12px; padding: .9rem 1.2rem; margin: 1.5rem 0; border: 1px solid; }
.pb-content .note-box p:last-child { margin-bottom: 0; }
.pb-content .note-info { background: #e7f5ff; border-color: #a5d8ff; }
.pb-content .note-warning { background: #fff9db; border-color: #ffe066; }
.pb-content .note-success { background: #ebfbee; border-color: #b2f2bb; }
.pb-content .cta { text-align: center; margin: 1.75rem 0; }
.pb-content .btn-cta { display: inline-block; background: #d62828; color: #fff; padding: .7rem 1.8rem; border-radius: 10px; text-decoration: none; font-weight: bold; }
.pb-content .btn-cta:hover { background: #b71f1f; color: #fff; }
.pb-content details.faq { border: 1px solid #dfe3ec; border-radius: 12px; padding: .75rem 1.1rem; margin: .8rem 0; background: #fff; }
.pb-content details.faq summary { font-weight: bold; cursor: pointer; }
.pb-content details.faq[open] summary { margin-bottom: .5rem; }
.pb-content .two-columns { display: grid; grid-template-columns: 1fr 1fr; gap: 1.5rem; margin: 1.25rem 0; }
@media (max-width: 767.98px) { .pb-content .two-columns { grid-template-columns: 1fr; } }
.pb-content ol.steps li { margin-bottom: .6rem; }
.pb-content a.file-download { display: inline-block; padding: .5rem 1rem; border: 1px solid #dfe3ec; border-radius: 10px; text-decoration: none; background: #f8f9fc; }
