/* Shared identity for the complete Dossiê PRO website. */
.header .nav a.active:after,.header .nav a[aria-current="page"]:after{content:"";display:block;background:#ef263f;box-shadow:0 0 12px #ef263f80;height:2px}
:root{--text:#fff;--muted:#fff;--bright:#ff384e;--shell:1224px}
body{color:#fff}
body :is(h1,h2,h3,h4,p,li,label,summary,blockquote,.eyebrow,.plan-details,.service-card-title,.service-card-description,.audience-card-title,.audience-card-description,.plan-caption,.social-pending){color:#fff!important}
body h1 span,body h2 span{color:#fff!important;-webkit-text-fill-color:#fff;background:none}
.header{height:92px}
.header .header-inner{width:min(1320px,calc(100% - 64px));gap:30px}
.header .brand{width:262px;margin-left:0;margin-right:auto}
.header .nav{gap:25px;margin-left:auto}
.header .nav a{font-size:14px;line-height:1.4;white-space:nowrap;color:#fff;font-weight:500}
.header .nav a:hover,.header .nav a.active{color:#fff}
.header .nav a:focus-visible{outline-color:#ff3e54}
.footer :is(a,button,.hours,.social-in){color:#fff}
.footer .footer-grid{width:min(1224px,calc(100% - 80px));grid-template-columns:1.22fr 1.18fr .8fr .85fr;gap:38px}
.footer .footer-contact-item{display:flex;gap:10px;align-items:flex-start;overflow-wrap:anywhere;margin:0}
.footer .footer-contact-item>span:last-child{min-width:0}
.footer .footer-contact-list{display:grid;gap:14px}
.footer .icon,.footer [data-icon],.footer .social-in{color:#ff3049;flex-shrink:0}
.footer .footer-brand p,.footer p,.footer a,.footer button{font-size:13px;line-height:1.75}
.footer h3{font-size:14px;font-weight:600}
.footer .footer-bottom{justify-content:center;text-align:center}
.footer .footer-bottom p{font-size:12px}
.contact-dialog [hidden]{display:none!important}
.contact-dialog{color:#fff;max-height:calc(100dvh - 40px);overflow:auto}
.contact-dialog #dialog-description,.contact-dialog .dialog-note{color:#fff;line-height:1.7}
.contact-dialog .dialog-document-copy p{font-size:16px;line-height:1.8}
.contact-dialog.is-document #dialog-description{display:none}
.floating-contact{font-size:12px;min-height:48px}
.floating-contact.footer-visible{opacity:0;pointer-events:none;visibility:hidden}
.payment-methods,.payment-methods .icon,.payment-methods [data-icon]{color:#fff}
.button{color:#fff}
[hidden]{display:none!important}
@media(max-width:1100px){
  .header .header-inner{width:calc(100% - 48px)}
  .header .brand{width:244px}
  .header .nav{gap:18px}.header .nav a{font-size:12px}
}
@media(max-width:1020px){
  .header{height:80px}
  .header .brand{width:230px}
  .header .menu-toggle{display:flex;flex-direction:column;justify-content:center;gap:7px;width:46px;height:46px;margin-left:auto;padding:10px;border:1px solid #ff30494a;border-radius:7px}
  .header .menu-toggle span{display:block;width:24px;height:2px;background:#fff;transition:transform .2s}
  .header .menu-toggle[aria-expanded=true] span:first-child{transform:translateY(4.5px) rotate(45deg)}
  .header .menu-toggle[aria-expanded=true] span:last-child{transform:translateY(-4.5px) rotate(-45deg)}
  .header .nav{display:none;position:absolute;left:0;right:0;top:100%;padding:20px 24px 26px;gap:0;margin:0;background:#0b090afc;border-bottom:1px solid #ff304946;box-shadow:0 15px 30px #0008}
  .header .nav.is-open{display:flex;flex-direction:column;align-items:stretch}
  .header .nav a{font-size:16px;padding:14px 10px;min-height:48px}
  .header .nav a.active:after{left:10px;right:auto;width:32px;bottom:6px}
  .footer .footer-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:38px 32px}
}
@media(max-width:600px){
  .header .header-inner{width:calc(100% - 36px);gap:14px}
  .header .brand{width:210px}
  .footer .footer-grid{width:calc(100% - 40px);grid-template-columns:1fr;gap:32px}
  .footer .footer-brand p{max-width:100%}
  .footer h3{margin-bottom:15px}.footer .footer-bottom{width:calc(100% - 40px)}
  .floating-contact{right:14px;bottom:14px;font-size:11px;padding:10px 14px}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.reveal{opacity:1!important;transform:none!important}*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}

