/* Card de privacidade e cookies — padrão WebFormas, adaptado às cores do
   site antigo (Mobirise): escuro #282828 e amarelo #ffca08, os mesmos do
   goupsistema/assets/css/custom.css original. */
:root {
  --lgpd-bg: #282828;
  --lgpd-fg: #ffffff;
  --lgpd-muted: rgba(255, 255, 255, .78);
  --lgpd-border: rgba(255, 255, 255, .14);
  --lgpd-accent: #ffca08;
  --lgpd-accent-fg: #000000;
  --lgpd-ico-bg: rgba(255, 202, 8, .14);
  --lgpd-radius: 16px;
  --lgpd-font: "Rubik", Arial, Helvetica, sans-serif;
  /* o tema antigo tem uma secao (.sliderchamada) com z-index: 2147483647 (o
     maximo de 32 bits) — um hack do Mobirise que fica acima de tudo. Sem
     igualar esse valor aqui, o card fica escondido atras dela mesmo sendo
     position:fixed. Empatado, o card ganha por vir depois no DOM. */
  --lgpd-z: 2147483647;
}
.sr-only { position: absolute; left: -9999px; }
.lgpd { position: fixed; left: 1rem; bottom: 1rem; z-index: var(--lgpd-z); width: min(560px, calc(100vw - 2rem));
  font-family: var(--lgpd-font); color: var(--lgpd-fg); transform: translateY(calc(100% + 2rem)); opacity: 0;
  transition: transform .45s cubic-bezier(.2, .8, .2, 1), opacity .35s; }
.lgpd.is-visivel { transform: none; opacity: 1; }
.lgpd[hidden] { display: none; }
.lgpd__card { background: var(--lgpd-bg); border: 1px solid var(--lgpd-border); border-radius: var(--lgpd-radius);
  padding: 1.5rem 1.6rem 1.4rem; box-shadow: 0 24px 60px -20px rgba(0, 0, 0, .6); }
.lgpd__topo { display: flex; align-items: center; gap: .75rem; margin-bottom: .7rem; }
.lgpd__ico { flex: 0 0 auto; width: 40px; height: 40px; border-radius: 50%; background: var(--lgpd-ico-bg); color: var(--lgpd-accent);
  display: grid; place-items: center; }
.lgpd__ico svg { width: 22px; height: 22px; fill: none; stroke: currentColor; stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round; }
.lgpd__titulo { font-size: 1.05rem; font-weight: 700; margin: 0; line-height: 1.2; }
.lgpd__txt { font-size: .92rem; line-height: 1.6; margin: 0 0 1.1rem; color: var(--lgpd-muted); }
.lgpd__txt a { color: var(--lgpd-accent); font-weight: 600; text-decoration: underline; text-underline-offset: 3px; }
.lgpd__acoes { display: flex; flex-wrap: wrap; align-items: center; gap: .6rem .75rem; }
.lgpd__btn { font: 700 .78rem/1 var(--lgpd-font); letter-spacing: .06em; text-transform: uppercase; padding: .95rem 1.5rem;
  border-radius: 999px; border: 2px solid transparent; cursor: pointer; transition: background .2s, color .2s, border-color .2s, transform .2s; }
.lgpd__btn:hover, .lgpd__btn:focus-visible { transform: translateY(-1px); outline: none; }
.lgpd__btn--sim, .lgpd__btn--sim:hover, .lgpd__btn--sim:focus { background: var(--lgpd-accent); color: var(--lgpd-accent-fg); border-color: var(--lgpd-accent); }
.lgpd__btn--sim:hover { filter: brightness(1.08); }
.lgpd__btn--nao, .lgpd__btn--nao:hover, .lgpd__btn--nao:focus { background: transparent; color: var(--lgpd-fg); border-color: rgba(255, 255, 255, .55); }
.lgpd__btn--nao:hover { border-color: var(--lgpd-fg); }
.lgpd__link, .lgpd__link:hover, .lgpd__link:focus { background: none; border: 0; padding: .5rem .25rem; font: 600 .85rem/1 var(--lgpd-font); color: var(--lgpd-fg);
  text-decoration: underline; text-underline-offset: 3px; cursor: pointer; }
.lgpd__link:hover { color: var(--lgpd-accent); }
.lgpd__prefs { display: none; }
.lgpd.is-prefs .lgpd__txt, .lgpd.is-prefs .lgpd__card > .lgpd__acoes { display: none; }
.lgpd.is-prefs .lgpd__prefs { display: block; }
.lgpd__opcao { display: flex; align-items: center; justify-content: space-between; gap: 1rem; padding: .7rem 0; border-top: 1px solid var(--lgpd-border); }
.lgpd__opcao:last-of-type { border-bottom: 1px solid var(--lgpd-border); margin-bottom: 1rem; }
.lgpd__opcao strong { display: block; font-size: .9rem; }
.lgpd__opcao span { display: block; font-size: .78rem; color: var(--lgpd-muted); line-height: 1.45; }
.lgpd__opcao small { font-size: .72rem; letter-spacing: .06em; text-transform: uppercase; color: var(--lgpd-accent); font-weight: 700; white-space: nowrap; }
.lgpd__switch { position: relative; flex: 0 0 auto; width: 46px; height: 26px; }
.lgpd__switch input { position: absolute; inset: 0; opacity: 0; margin: 0; cursor: pointer; }
.lgpd__switch i { position: absolute; inset: 0; border-radius: 999px; background: rgba(255, 255, 255, .22); transition: background .2s; }
.lgpd__switch i::after { content: ""; position: absolute; top: 3px; left: 3px; width: 20px; height: 20px; border-radius: 50%; background: #fff; transition: transform .2s; }
.lgpd__switch input:checked + i { background: var(--lgpd-accent); }
.lgpd__switch input:checked + i::after { transform: translateX(20px); }
.lgpd__switch input:focus-visible + i { outline: 2px solid var(--lgpd-accent); outline-offset: 2px; }
.lgpd-links { text-align: center; font-size: 12px; color: #b4b4b4; margin-top: 6px; }
.lgpd-links a { color: #b4b4b4; text-decoration: underline; text-underline-offset: 2px; }
.lgpd-links a:hover { color: var(--lgpd-accent); }
@media (max-width: 767px) {
  .lgpd { left: .75rem; bottom: .75rem; width: calc(100vw - 1.5rem); }
  .lgpd__card { padding: 1.2rem 1.2rem 1.1rem; border-radius: 14px; }
  .lgpd__btn { padding: .85rem 1.2rem; font-size: .72rem; }
  body.has-lgpd .botaotopo1 { display: none; }
}
@media (prefers-reduced-motion: reduce) { .lgpd { transition: none; } }

/* Modal "Enviando…" mostrado ao clicar em enviar no formulário de contato */
.envio-modal {
  /* mesmo motivo do --lgpd-z: precisa empatar com o z-index: 2147483647 do
     tema antigo (.sliderchamada) para não ficar escondido atras dela. */
  position: fixed; inset: 0; z-index: 2147483647; display: flex; align-items: center; justify-content: center;
  padding: 1.5rem; background: rgba(5, 5, 5, .8); backdrop-filter: blur(4px); -webkit-backdrop-filter: blur(4px);
  opacity: 0; transition: opacity .25s; font-family: var(--lgpd-font);
}
.envio-modal.is-visivel { opacity: 1; }
.envio-modal[hidden] { display: none; }
.envio-modal__card {
  background: #fff; border-radius: 10px; padding: 2.5rem 2rem 2rem; max-width: 24rem; width: 100%;
  text-align: center; box-shadow: 0 20px 60px rgba(0, 0, 0, .35); transform: translateY(12px); transition: transform .25s;
}
.envio-modal.is-visivel .envio-modal__card { transform: none; }
.envio-modal__spin {
  width: 3.5rem; height: 3.5rem; margin: 0 auto 1.1rem; border-radius: 50%;
  border: 5px solid #e8eaf0; border-top-color: var(--lgpd-accent); animation: envio-gira .9s linear infinite;
}
.envio-modal__titulo { font-size: 1.2rem; font-weight: 700; color: #222; margin: 0 0 .4rem; line-height: 1.3; }
.envio-modal__txt { font-size: 14px; color: #777; margin: 0; }
@keyframes envio-gira { to { transform: rotate(360deg); } }
@media (prefers-reduced-motion: reduce) {
  .envio-modal__spin { animation-duration: 2s; }
  .envio-modal, .envio-modal__card { transition: none; }
}
body.envio-aberto { overflow: hidden; }

/* obrigado.html (usa as mesmas variaveis --lgpd-* acima) */
.obrigado-antigo { padding: 8rem 1rem 5rem; background: var(--lgpd-bg); text-align: center; font-family: var(--lgpd-font); }
.obrigado-antigo__box { max-width: 46rem; margin: 0 auto; }
.obrigado-antigo__icone {
  width: 4.5rem; height: 4.5rem; margin: 0 auto 1.5rem; border-radius: 50%;
  display: grid; place-items: center; color: var(--lgpd-accent);
  background: var(--lgpd-ico-bg); border: 1px solid rgba(255, 202, 8, .4);
}
.obrigado-antigo__icone svg { width: 2.25rem; height: 2.25rem; }
.obrigado-antigo__tag { font: 700 12px/1 var(--lgpd-font); letter-spacing: .08em; text-transform: uppercase; color: var(--lgpd-accent); margin: 0 0 .75rem; }
.obrigado-antigo h1 { color: #fff; font-size: clamp(28px, 4vw, 40px); font-weight: 700; margin: 0 0 1rem; }
.obrigado-antigo__lede { font-size: 17px; line-height: 1.7; color: var(--lgpd-muted); max-width: 38rem; margin: 0 auto 2.25rem; }
.obrigado-antigo__acoes { display: flex; flex-wrap: wrap; gap: 1rem; justify-content: center; }
.obrigado-antigo__acoes .btn-primary { background: #25d366; border-color: #25d366; }
.obrigado-antigo__acoes .btn-outline-light { border: 2px solid rgba(255, 255, 255, .55); color: #fff; background: transparent; }
.obrigado-antigo__acoes .btn-outline-light:hover { background: #fff; color: #222; }
@media (max-width: 767px) { .obrigado-antigo { padding: 7rem 1rem 3.5rem; } }


/* ---- botão flutuante de WhatsApp (padrão da agência) ---- */
.wa-float{position:fixed;right:1.25rem;bottom:1.25rem;z-index:2147483647;width:60px;height:60px;border-radius:50%;background:#25d366;color:#fff;display:grid;place-items:center;text-decoration:none;box-shadow:0 10px 24px -8px rgba(0,0,0,.45);transition:transform .3s ease,bottom .3s ease}
.wa-float:hover,.wa-float:focus{transform:scale(1.06);color:#fff;text-decoration:none}
.wa-float svg{width:32px;height:32px}
.wa-float::before{content:"";position:absolute;inset:-6px;border-radius:50%;border:2px solid #25d366;opacity:.6;animation:wa-pulso 2.2s ease-out infinite}
@keyframes wa-pulso{0%{transform:scale(.85);opacity:.7}100%{transform:scale(1.35);opacity:0}}
@media (prefers-reduced-motion:reduce){.wa-float::before{animation:none}}
/* no celular o card de cookies ocupa a base: o botão sobe enquanto ele está aberto */
@media (max-width:767px){body.has-lgpd .wa-float{bottom:calc(1.25rem + 320px)}}

/* ---- links de privacidade no rodapé ---- */
.copyright .lgpd-links{margin:6px 0 0;text-align:center;font-size:13px;line-height:1.6;color:rgba(255,255,255,.7)}
.copyright .lgpd-links a{color:inherit;text-decoration:underline;text-underline-offset:3px}
.copyright .lgpd-links a:hover{color:var(--lgpd-accent)}

/* ---- página da Política de Privacidade ---- */
.politica-wrap{background:#fff;padding:120px 20px 72px}
.politica{max-width:860px;margin:0 auto;font-family:var(--lgpd-font);color:#3a3a3a;font-size:15px;line-height:1.75}
.politica__topo{margin-bottom:32px;padding-bottom:24px;border-bottom:1px solid #e6e6e6}
.politica__tag{display:inline-block;font-size:11px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:#b88900;margin:0 0 10px}
.politica h1{font-family:var(--lgpd-font);font-size:clamp(28px,4vw,40px);font-weight:700;color:#282828;margin:0 0 12px;line-height:1.15}
.politica__lead{font-size:17px;color:#282828;margin:0 0 14px}
.politica__meta{font-size:13px;color:#666;margin:0}
.politica h2{font-family:var(--lgpd-font);font-size:20px;font-weight:600;color:#282828;margin:36px 0 10px}
.politica p{margin:0 0 14px;color:#3a3a3a}
.politica ul{margin:0 0 16px;padding-left:22px}
.politica li{margin-bottom:6px;color:#3a3a3a}
.politica strong{color:#282828}
.politica a{color:#b88900;font-weight:600;text-decoration:underline;text-underline-offset:3px}
.politica a:hover{color:#282828}
