.prj-ad { display:block; width:100%; box-sizing:border-box; margin:1.5rem auto; text-align:center; clear:both; }
.prj-ad-label { display:block; color:#667085; text-align:center; text-transform:uppercase; font:500 10px/1.4 system-ui,sans-serif; letter-spacing:.09em; margin-bottom:.35rem; }
.prj-ad>a { display:block; width:100%; text-decoration:none; border:0; }
.prj-ad-image { display:block; width:100%; max-width:100%; height:auto; object-fit:contain; margin:auto; }
.prj-ad--sidebar { max-width:336px; }
.prj-ad--top,.prj-ad--footer { max-width:970px; }
.prj-ad--article { max-width:728px; }
.prj-share { display:flex; align-items:center; gap:.55rem; flex-wrap:wrap; padding:1.15rem 0; margin:1.6rem 0 .6rem; border-top:1px solid #ddd; font-family:system-ui,sans-serif; font-size:.92rem; }
.prj-share strong { margin-right:.35rem; }
.prj-share a { display:inline-block; padding:.45rem .7rem; border:1px solid #cbd5e1; border-radius:6px; text-decoration:none; }
.prj-share a:hover,.prj-share a:focus { border-color:#344054; text-decoration:underline; }
.prj-channel { box-sizing:border-box; padding:1.2rem; margin:1.4rem 0; border:1px solid #cfd8dc; background:#f8fafc; border-radius:10px; font-family:system-ui,sans-serif; }
.prj-channel strong { display:block; }
.prj-channel p { margin:.45rem 0 .9rem; }
.prj-channel a { display:inline-block; background:#075e54; color:#fff !important; border-radius:6px; padding:.65rem 1rem; font-weight:600; text-decoration:none; }
.prj-channel a:hover,.prj-channel a:focus { background:#06483f; text-decoration:underline; }
@media (max-width:650px) { .prj-ad { margin:1rem auto; } .prj-share { gap:.45rem; } .prj-share strong { width:100%; } .prj-channel { padding:1rem; } }

/* Página comercial independente dos containers de manchetes e do tema. */
.prj-commercial { max-width:1100px; margin:0 auto 3rem; color:#152a42; font:normal 16px/1.55 system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif; }
.prj-commercial *, .prj-commercial *::before, .prj-commercial *::after { box-sizing:border-box; }
.prj-commercial__hero { background:linear-gradient(125deg,#f1f8ff,#ffffff); padding:clamp(1.4rem,4vw,3rem); border-radius:16px; border:1px solid #d7e6f4; }
.prj-commercial__logo { width:310px; max-width:100%; height:auto; display:block; margin:0 0 1.3rem; }
.prj-commercial__kicker { display:block; color:#005fae; font-size:.78rem; letter-spacing:.13em; font-weight:700; }
.prj-commercial h1 { font:800 clamp(1.9rem,4.5vw,3rem)/1.13 system-ui,sans-serif; color:#083a73; margin:.4rem 0 .9rem; }
.prj-commercial h2 { font:750 clamp(1.3rem,2.8vw,1.65rem)/1.25 system-ui,sans-serif; color:#083a73; margin:0 0 .6rem; }
.prj-commercial h3 { font:750 1.14rem/1.3 system-ui,sans-serif; color:#083a73; margin:.45rem 0 .55rem; }
.prj-commercial p { margin:.5rem 0 1rem; }
.prj-commercial__body { padding:clamp(1rem,2vw,1.3rem) 0; }
.prj-commercial__grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:1rem; margin:1.4rem 0 2rem; }
.prj-commercial__card { border:1px solid #d9e3ed; border-radius:12px; padding:1.35rem; background:white; }
.prj-commercial__card p { min-height:3.2em; }
.prj-commercial__slot { display:inline-block; padding:.25rem .55rem; background:#e6f2ff; color:#07518e; border-radius:4px; font-size:.8rem; font-weight:700; }
.prj-commercial__size { color:#445a70; font-size:.85rem; }
.prj-commercial__how { border-top:1px solid #d9e3ed; padding:1.4rem 0; }
.prj-commercial__how ol { margin:.6rem 0 1rem 1.4rem; padding:0; }
.prj-commercial__how li { margin-bottom:.3rem; }
.prj-commercial__contact { padding:1.6rem; background:#07386d; color:#fff; border-radius:12px; }
.prj-commercial__contact h2 { color:#fff; }
.prj-commercial__contact p { color:#e9f1fa; }
.prj-commercial__button { display:inline-block; background:#fff; color:#06457d !important; padding:.72rem 1rem; border-radius:7px; text-decoration:none; font-weight:700; margin:.5rem .6rem 0 0; }
.prj-commercial__button--whatsapp { background:#d8f8e5; color:#075d39 !important; }
.prj-commercial__button:hover,.prj-commercial__button:focus { text-decoration:underline; }
@media (max-width:700px) { .prj-commercial__grid {grid-template-columns:minmax(0,1fr);} .prj-commercial__card p {min-height:0;} }

/* Versão 0.4: contato comercial acessível, sem aplicativo de e-mail externo. */
.prj-commercial .prj-commercial__contact h2 { color: #fff !important; }
.prj-commercial__form { margin-top: 1.1rem; }
.prj-commercial__fields { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: .95rem; }
.prj-commercial__field { min-width: 0; }
.prj-commercial__field--full { grid-column: 1 / -1; }
.prj-commercial__field label { display: block; margin-bottom: .3rem; color: #fff; font-weight: 650; }
.prj-commercial__field input, .prj-commercial__field select, .prj-commercial__field textarea {
  display: block; box-sizing: border-box; width: 100%; max-width: 100%; min-height: 46px; border: 1px solid #b9d2eb;
  border-radius: 7px; background: #fff; color: #172a42; padding: .7rem .85rem; font: inherit;
}
.prj-commercial__field textarea { resize: vertical; min-height: 130px; }
.prj-commercial__field input:focus-visible, .prj-commercial__field select:focus-visible, .prj-commercial__field textarea:focus-visible,
.prj-commercial__submit:focus-visible { outline: 3px solid #88d4ff; outline-offset: 2px; }
.prj-commercial__privacy { display: flex; align-items: flex-start; gap: .65rem; margin: 1rem 0; font-size: .92rem; color: #edf5fd; }
.prj-commercial__privacy input { margin-top: .3rem; width: 17px; height: 17px; flex: 0 0 17px; }
.prj-commercial__privacy a, .prj-commercial__fallback a { color: #fff !important; font-weight: 700; text-decoration: underline; overflow-wrap: anywhere; }
.prj-commercial__submit { border: 0; border-radius: 8px; background: #fff; color: #07386d !important; padding: .78rem 1.3rem; font: 750 1rem/1.3 system-ui,sans-serif; cursor: pointer; }
.prj-commercial__submit:hover { background: #e6f2ff; }
.prj-commercial__fallback { font-size: .92rem; margin-top: 1rem !important; }
.prj-commercial__alert { padding: .8rem 1rem; border-radius: 7px; margin: 1rem 0; font-weight: 650; }
.prj-commercial__alert--ok { background: #dcfce7; color: #14532d; }
.prj-commercial__alert--error { background: #fff4df; color: #713f12; }
.prj-commercial__honeypot { position: absolute !important; left: -9999px !important; width: 1px !important; height: 1px !important; overflow: hidden !important; }
@media(max-width: 680px) { .prj-commercial__fields { grid-template-columns: minmax(0,1fr); } .prj-commercial__contact { padding: 1.2rem; } }


/* v0.4.1 — Contraste isolado da seção azul (inclusive quando o Elementor/tema estiliza form labels e buttons). */
.prj-commercial .prj-commercial__contact,
.prj-commercial .prj-commercial__contact .prj-commercial__form,
.prj-commercial .prj-commercial__contact .prj-commercial__form .prj-commercial__field > label,
.prj-commercial .prj-commercial__contact label.prj-commercial__privacy,
.prj-commercial .prj-commercial__contact label.prj-commercial__privacy > span,
.prj-commercial .prj-commercial__contact .prj-commercial__fallback,
.prj-commercial .prj-commercial__contact > p {
  color: #ffffff !important;
}
.prj-commercial .prj-commercial__contact .prj-commercial__field label,
.prj-commercial .prj-commercial__contact .prj-commercial__privacy span,
.prj-commercial .prj-commercial__contact .prj-commercial__privacy a,
.prj-commercial .prj-commercial__contact .prj-commercial__fallback a {
  color: #ffffff !important;
}
/* Em superfícies brancas, manter conteúdo e texto de entrada escuros. */
.prj-commercial .prj-commercial__contact .prj-commercial__form .prj-commercial__field input,
.prj-commercial .prj-commercial__contact .prj-commercial__form .prj-commercial__field select,
.prj-commercial .prj-commercial__contact .prj-commercial__form .prj-commercial__field textarea {
  background-color: #ffffff !important;
  color: #102a43 !important;
  border: 1px solid #b8cce0 !important;
  opacity: 1 !important;
  -webkit-text-fill-color: #102a43;
}
.prj-commercial .prj-commercial__contact .prj-commercial__form .prj-commercial__field textarea::placeholder,
.prj-commercial .prj-commercial__contact .prj-commercial__form .prj-commercial__field input::placeholder {
  color: #516477 !important;
  opacity: 1;
}
.prj-commercial .prj-commercial__contact .prj-commercial__form .prj-commercial__privacy input[type="checkbox"] {
  accent-color: #2f91fa;
  background: #ffffff;
  border-color: #ffffff;
  opacity: 1;
}
/* Botão com contraste alto e tamanho generoso, apesar das regras globais do tema. */
.prj-commercial .prj-commercial__contact .prj-commercial__form button.prj-commercial__submit,
.prj-commercial .prj-commercial__contact .prj-commercial__form button.prj-commercial__submit:visited {
  display: inline-block !important;
  width: auto !important;
  min-height: 48px !important;
  padding: .8rem 1.3rem !important;
  color: #07386d !important;
  background: #ffffff !important;
  border: 2px solid #ffffff !important;
  border-radius: 8px !important;
  font: 750 1rem/1.3 system-ui,sans-serif !important;
  text-transform: none !important;
  text-decoration: none !important;
  cursor: pointer !important;
  opacity: 1 !important;
}
.prj-commercial .prj-commercial__contact .prj-commercial__form button.prj-commercial__submit:hover,
.prj-commercial .prj-commercial__contact .prj-commercial__form button.prj-commercial__submit:focus-visible {
  background: #e6f2ff !important;
  border-color: #e6f2ff !important;
  color: #07386d !important;
}
/* Não branquear os alertas: fundo claro requer texto escuro. */
.prj-commercial .prj-commercial__contact .prj-commercial__alert--error {
  color: #713f12 !important;
  background-color: #fff4df !important;
}
.prj-commercial .prj-commercial__contact .prj-commercial__alert--ok {
  color: #14532d !important;
  background-color: #dcfce7 !important;
}

/* Panorama RJ Kit 0.4.2: acessibilidade das mensagens de validação. */
.prj-commercial .prj-commercial__submit-feedback { font: 600 .88rem/1.5 system-ui,sans-serif; color: #fff !important; padding-top: .45rem; }
.prj-commercial .prj-commercial__submit-feedback:empty { display: none; }
.prj-commercial .prj-commercial__submit:disabled { cursor: wait; opacity: .78; }

/* v0.4.3: mensagens claras de envio AJAX; mantém o contraste azul/branco. */
.prj-commercial .prj-commercial__submit-feedback[data-prj-result="success"] { background:#e0f7e8; color:#14532d !important; padding:.8rem 1rem; margin-top:.6rem; border-radius:7px; }
.prj-commercial .prj-commercial__submit-feedback[data-prj-result="error"] { background:#fff4df; color:#713f12 !important; padding:.8rem 1rem; margin-top:.6rem; border-radius:7px; }
