/* Contato acessível ao longo da jornada, com a identidade oficial da Publisoft. */
.brand>img{border-radius:50%;background:#fff;object-fit:contain;box-shadow:0 0 0 1px #ffffff33}
.brand-dark>img{box-shadow:0 0 0 1px #05579e1a}
.header .nav-cta{background:var(--accent);border-color:var(--accent);color:var(--navy);font-weight:700}
.header .nav-cta:hover{background:#ffc354;border-color:#ffc354}
.header-actions{display:flex;align-items:center;gap:12px}
.header .login-button{min-height:43px;padding:10px 14px;gap:8px;font-size:12px;color:#fff;background:#ffffff0d;border:1px solid #ffffff50;white-space:nowrap}
.header .login-button:hover{background:#ffffff20;border-color:#ffffff90}
.header .login-button>svg{width:17px;height:17px}
.mobile-nav .mobile-login{display:flex;align-items:center;gap:9px;color:#fff;font-weight:600}
.mobile-login>svg{width:18px;height:18px}
@media(max-width:850px){.header-actions .nav-cta{display:none}.header-actions{gap:0}}
@media(max-width:640px){.header .login-button{min-height:40px;padding:9px 11px;font-size:11px;gap:6px}.header .login-button>svg{width:15px;height:15px}}
@media(max-width:360px){.header .brand{gap:8px}.header .brand>span{font-size:25px}.header .brand>img{width:32px;height:32px}.header .login-button{padding-inline:9px}}
.hero-actions .button-accent{gap:11px}
.hero-actions .button-accent>svg:first-child{width:18px;height:18px}
.section-contact{display:flex;align-items:center;justify-content:center;gap:22px;flex-wrap:wrap;margin-top:31px;padding:23px 20px;border:1px solid #d5e5f2;border-radius:10px;background:#fff}
.section-contact>p{font-size:13px;color:var(--muted)}
.section-contact .text-link{font-size:12px;color:var(--primary)}
.demo-contact-cta{border-top:1px solid #cbdfee;margin-top:27px;padding-top:23px;max-width:345px}
.demo-contact-cta>p{font-size:12px;color:var(--muted);margin-bottom:15px;line-height:1.7}
.demo-contact-cta .button{font-size:12px;min-height:47px;gap:24px}
.commercial-section{padding-bottom:90px}
.commercial-banner{position:relative;overflow:hidden;isolation:isolate;display:grid;grid-template-columns:1.2fr 1fr;gap:60px;align-items:center;padding:45px 48px;border-radius:14px;background:linear-gradient(115deg,#043c6d,#05579e);color:white}
.commercial-banner:before{content:'';position:absolute;right:-100px;top:-150px;width:420px;height:420px;border:1px solid #ffffff15;border-radius:50%;z-index:-1}
.commercial-banner:after{content:'';position:absolute;right:-60px;bottom:-200px;width:420px;height:420px;border:1px solid #ffffff12;border-radius:50%;z-index:-1}
.commercial-copy .eyebrow{font-size:8px;letter-spacing:1.5px;color:#c8def2;margin-bottom:15px}
.commercial-copy h2{font-size:32px;letter-spacing:-1.1px;line-height:1.3}
.commercial-copy>p{font-size:12px;color:#d4e7f7;max-width:420px;margin-top:17px;line-height:1.8}
.commercial-actions{display:flex;flex-direction:column;align-items:flex-start;gap:16px}
.commercial-actions>.button{font-size:12px;gap:14px;width:100%;max-width:320px;min-height:53px}
.commercial-actions .button>svg{width:18px;height:18px}
.commercial-actions .button>svg:last-child{margin-left:auto}
.commercial-secondary{font-size:11px;color:#edf6ff;display:inline-flex;gap:18px;align-items:center;border-bottom:1px solid #ffffff50;padding-bottom:5px}
.commercial-secondary>span{font-size:17px}
.commercial-secondary:hover{color:var(--accent);border-color:var(--accent)}
.commercial-note{font-size:9px;color:#c8def2}
.commercial-banner :focus-visible{outline-color:var(--accent)}
.button-whatsapp{background:#087d46;color:#fff;border:1px solid #087d46;font-size:12px;gap:9px}
.button-whatsapp:hover{background:#06683a;border-color:#06683a}
.contact-dock{position:fixed;right:23px;bottom:23px;z-index:45;max-width:calc(100vw - 32px)}
.contact-dock[hidden]{display:none}
.contact-dock>.button{justify-content:center;min-height:48px;font-size:12px;gap:9px;padding:12px 19px;border-radius:999px;box-shadow:0 7px 24px #032e5433;white-space:nowrap}
.contact-dock>.button>svg{width:19px;height:19px}
.faq-section .text-link{max-width:100%;line-height:1.6}
@media(max-width:1100px){.commercial-banner{gap:35px;padding:35px}.commercial-copy h2{font-size:28px}.commercial-actions>.button{font-size:11px;gap:10px}.commercial-section{padding-bottom:72px}}
@media(max-width:850px){.commercial-banner{gap:25px;padding:30px}.commercial-copy h2{font-size:25px}.commercial-copy>p{font-size:11px}.commercial-actions>.button{font-size:10px;padding-inline:13px}.commercial-secondary{font-size:10px;gap:10px}.contact-dock{right:16px;bottom:16px}}
@media(max-width:640px){
  body{padding-bottom:calc(76px + env(safe-area-inset-bottom))}
  .section-contact{align-items:flex-start;gap:9px;justify-content:flex-start;padding:20px;margin-top:24px}
  .section-contact>p{font-size:12px}
  .section-contact .text-link{font-size:11px}
  .demo-contact-cta{max-width:none;margin-top:24px;padding-top:21px}
  .demo-contact-cta .button{width:100%;justify-content:space-between}
  .commercial-section{padding-bottom:59px}
  .commercial-banner{grid-template-columns:1fr;gap:26px;padding:29px 25px}
  .commercial-copy h2{font-size:27px}
  .commercial-copy .eyebrow{font-size:7px;letter-spacing:1.1px}
  .commercial-copy>p{font-size:12px}
  .commercial-actions{align-items:stretch;gap:16px}
  .commercial-actions>.button{max-width:none;font-size:11px;min-height:50px}
  .commercial-secondary{align-self:center;font-size:10px}
  .commercial-note{text-align:center}
  .contact-dock{right:14px;bottom:calc(14px + env(safe-area-inset-bottom))}
  .contact-dock>.button{min-height:46px;font-size:11px;padding:11px 16px;gap:8px}
  .contact-dock>.button>svg{width:18px;height:18px}
}
