/* Complementos do site BR gerados pelo CMS (sem alterar o CSS original). */
.br-coupon { display: flex; flex-wrap: wrap; gap: 8px; margin: 0 0 12px; }
.br-coupon input { flex: 1; min-width: 0; border: 1px solid #d5d8e6; border-radius: 6px; padding: 8px 10px; font: inherit; }
.br-coupon button { border: 0; border-radius: 6px; padding: 8px 14px; background: #0a073b; color: #fff; font: inherit; cursor: pointer; }
.br-coupon__msg { width: 100%; font-size: 13px; color: #c0392b; }
.br-coupon__msg.is-ok { color: #1e824c; }
.br-unavailable { opacity: .55; cursor: not-allowed !important; }

.br-article { padding-bottom: 40px; }
.br-article__title { font-size: 34px; line-height: 1.2; margin: 0 0 12px; }
.br-article__author { color: #6b6f86; }
.br-article__cover { margin: 24px 0; }
.br-article__cover img { width: 100%; height: auto; border-radius: 12px; display: block; }
.br-article__body { font-size: 17px; line-height: 1.7; }
.br-article__body h2 { font-size: 26px; margin: 32px 0 12px; }
.br-article__body h3 { font-size: 21px; margin: 24px 0 10px; }
.br-article__body img { max-width: 100%; height: auto; border-radius: 8px; }
.br-article__body blockquote { border-left: 4px solid #3b62f0; margin: 24px 0; padding: 4px 0 4px 18px; color: #3a3f5c; font-style: italic; }
.br-article__body iframe { width: 100%; aspect-ratio: 16/9; height: auto; border: 0; }
.br-article__source { margin: 24px 0; }
.br-article .actions { margin-top: 24px; }

.br-popup { background: #fff; color: #0a073b; padding: 32px; border-radius: 12px; text-align: center; }
.br-popup img { max-width: 100%; border-radius: 8px; margin-bottom: 16px; }
.br-popup h3 { font-size: 24px; margin: 0 0 12px; }
.br-popup__cta { display: inline-block; margin-top: 16px; background: #3b62f0; color: #fff !important; padding: 12px 24px; border-radius: 999px; text-decoration: none; font-weight: 600; }

/* Modo de edição do painel */
html.cms-editing [data-cms]:hover, html.cms-editing [data-cms-l]:hover { outline: 2px dashed #3b62f0 !important; outline-offset: 2px; cursor: pointer !important; }
html.cms-editing [data-cms-selected] { outline: 2px solid #3b62f0 !important; outline-offset: 2px; }
html.cms-editing [data-cms-block-selected] { outline: 2px solid #f39c12 !important; outline-offset: -2px; }
html.cms-editing [data-cms-hidden] { opacity: .25 !important; filter: grayscale(1); }
html.cms-editing [contenteditable="true"] { outline: 2px solid #1e824c !important; background: rgba(30,130,76,.06); cursor: text !important; }
