/* Overlay do mapa gratuito (presente de cadastro) */
.presente{padding:0;border:0;background:transparent;max-width:none;max-height:none;width:min(880px,calc(100vw - 32px));margin:auto;overflow:visible;color:var(--ivory)}
.presente::backdrop{background:rgba(3,10,7,.72);backdrop-filter:blur(3px);-webkit-backdrop-filter:blur(3px)}
.presente[open] .presente-card{animation:presente-in .35s cubic-bezier(.22,1,.36,1)}
@keyframes presente-in{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}
.presente-card{position:relative;display:grid;grid-template-columns:1fr 1.05fr;border-radius:20px;overflow:hidden;background:var(--green-deep);border:1px solid rgba(196,172,72,.4);box-shadow:0 30px 70px -20px rgba(0,0,0,.6)}
.presente-previa{position:relative;background:#F3EEDF;display:grid;place-items:center;padding:34px 26px;min-height:100%}
/* prévia "espiada": dá para ver que é bonito e rico, mas não dá para ler.
   Folha 1 desfocada com só as colunas/"legado" nítidos no centro; folha 2 toda desfocada atrás. */
.presente-previa{overflow:hidden}
.presente-folha{position:relative;width:100%;border-radius:4px;overflow:hidden;box-shadow:0 18px 34px -14px rgba(3,38,25,.5);background:#F3EEDF}
.presente-folha img{display:block;width:100%;height:auto;filter:blur(3.2px) saturate(.95);transform:scale(1.03)}
.presente-folha .presente-foco{position:absolute;inset:0;filter:none;transform:scale(1.03);-webkit-mask-image:radial-gradient(ellipse 26% 30% at 54% 50%,#000 55%,transparent 100%);mask-image:radial-gradient(ellipse 26% 30% at 54% 50%,#000 55%,transparent 100%)}
.presente-folha-1{transform:rotate(-3deg);z-index:2}
.presente-folha-2{width:80%;margin:-30% 0 0 18%;transform:rotate(4deg);border:3px solid #F3EEDF;z-index:1}
.presente-folha-2 img{filter:blur(4px)}
/* terceira folha (página 2 do mapa) espiando atrás, para mostrar que é bastante material */
.presente-folha-3{position:absolute;top:7%;right:3%;width:66%;transform:rotate(8deg);z-index:0;border:3px solid #F3EEDF}
.presente-folha-3 img{filter:blur(4px)}
.presente-cadeado{position:absolute;left:50%;bottom:22px;transform:translateX(-50%);z-index:3;display:inline-flex;align-items:center;gap:8px;white-space:nowrap;padding:9px 16px;border-radius:999px;background:var(--green-deep);color:var(--ivory);font:600 12.5px Urbanist,sans-serif;letter-spacing:.04em;box-shadow:0 10px 22px -10px rgba(0,0,0,.5);border:1px solid rgba(196,172,72,.55)}
.presente-cadeado svg{width:16px;height:16px;fill:var(--gold)}
.presente-corpo{padding:34px 34px 26px;display:flex;flex-direction:column}
/* selo de destaque no topo do overlay */
.presente-destaque{display:inline-flex;align-items:center;gap:9px;align-self:flex-start;margin:0 0 16px;padding:10px 18px 10px 14px;border-radius:999px;background:var(--gold);color:var(--green-deep);font:800 15px Urbanist,sans-serif;letter-spacing:.12em;text-transform:uppercase;box-shadow:0 8px 20px -10px rgba(196,172,72,.7)}
.presente-destaque svg{width:19px;height:19px;fill:currentColor;flex:none}
.presente-kicker{font-size:12px;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:var(--gold);margin:0 0 10px}
.presente-titulo{font-size:clamp(1.5rem,2.6vw,1.95rem);line-height:1.15;font-weight:700;margin:0 0 12px;color:#fff}
.presente-texto{font-size:15px;line-height:1.55;color:rgba(243,238,223,.86);margin:0 0 18px}
.presente-texto strong{color:var(--ivory)}
.presente form{display:grid;gap:10px}
.presente input[type=text],.presente input[type=email],.presente input[type=tel]{width:100%;min-height:50px;padding:12px 14px;border-radius:10px;border:1px solid rgba(243,238,223,.22);background:rgba(255,255,255,.06);color:var(--ivory);font:400 16px Urbanist,sans-serif}
.presente input::placeholder{color:rgba(243,238,223,.5)}
.presente input:focus-visible{outline:none;border-color:var(--gold)}
.presente-consent{display:flex;gap:10px;align-items:flex-start;font-size:12.5px;line-height:1.45;color:rgba(243,238,223,.72);margin-top:2px}
.presente-consent input{flex:none;width:18px;height:18px;margin-top:1px;accent-color:var(--gold)}
.presente .btn{width:100%;min-height:52px;margin-top:4px}
.presente-agora-nao{align-self:center;margin-top:12px;padding:10px 14px;min-height:44px;border:0;background:none;color:rgba(243,238,223,.7);font:500 14px Urbanist,sans-serif;text-decoration:underline;text-underline-offset:3px;cursor:pointer}
.presente-agora-nao:hover{color:var(--ivory)}
.presente-fechar{position:absolute;top:10px;right:10px;z-index:2;width:44px;height:44px;border-radius:50%;display:grid;place-items:center;padding:0;cursor:pointer;color:var(--ivory);background:rgba(3,38,25,.75);border:1px solid rgba(196,172,72,.55)}
.presente-fechar svg{width:22px;height:22px;fill:currentColor}
.presente-fechar:hover{color:var(--gold)}
.presente-status{min-height:1.2em;margin:4px 0 0;font-size:14px;line-height:1.45;color:var(--ivory)}
.presente-status[data-kind=error]{border-left:3px solid var(--gold);padding-left:10px}
.presente-conhecido p{margin:0 0 14px;font-size:15px;line-height:1.55;color:rgba(243,238,223,.86)}
.presente-outros{border:0;background:none;padding:10px 0;color:rgba(243,238,223,.75);font:500 14px Urbanist,sans-serif;text-decoration:underline;text-underline-offset:3px;cursor:pointer}
.presente-sucesso h3{font-size:1.5rem;margin:6px 0 10px;color:#fff}
.presente-sucesso p{margin:0 0 18px;font-size:15px;line-height:1.55;color:rgba(243,238,223,.86)}
.presente-sucesso .acoes{display:grid;gap:10px}
.presente-sucesso .btn.ghost{color:var(--ivory)}
.presente [hidden]{display:none!important}
.presente-trap{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}
html:has(.presente[open]){overflow:hidden}

/* etiqueta fixa que abre o mesmo overlay por clique */
.presente-etiqueta{position:fixed;left:16px;bottom:20px;z-index:60;display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:10px 16px;border-radius:999px;border:1px solid rgba(196,172,72,.6);background:rgba(3,38,25,.92);color:var(--ivory);font:600 13px Urbanist,sans-serif;letter-spacing:.02em;cursor:pointer;box-shadow:0 10px 24px -10px rgba(0,0,0,.55);opacity:0;transform:translateY(10px);pointer-events:none;transition:opacity .3s,transform .3s}
.presente-etiqueta svg{width:18px;height:18px;fill:var(--gold);flex:none}
.presente-etiqueta.visivel{opacity:1;transform:none;pointer-events:auto}
.presente-etiqueta:hover{border-color:var(--gold)}

/* celular: painel que sobe de baixo, sem cobrir a tela inteira */
@media (max-width:640px){
  .presente{width:100%;max-width:100%;margin:auto 0 0;max-height:90svh}
  .presente[open] .presente-card{animation:presente-sobe .35s cubic-bezier(.22,1,.36,1)}
  @keyframes presente-sobe{from{transform:translateY(100%)}to{transform:none}}
  .presente-card{grid-template-columns:1fr;border-radius:20px 20px 0 0;border-bottom:0;max-height:90svh;overflow-y:auto;overscroll-behavior:contain}
  /* prévia compacta no topo do painel: as duas folhas lado a lado, desfocadas */
  .presente-previa{display:flex;align-items:center;justify-content:center;height:132px;min-height:0;padding:14px 56px 14px 16px}
  .presente-folha-1{width:46%}
  .presente-folha-2{width:42%;margin:0 0 0 -8%;align-self:flex-end;margin-bottom:6px}
  .presente-folha-3{top:10px;right:auto;left:22%;width:40%;transform:rotate(-6deg)}
  .presente-cadeado{bottom:10px;padding:6px 12px;font-size:11px}
  .presente-cadeado svg{width:13px;height:13px}
  .presente-corpo{padding:22px 18px calc(10px + env(safe-area-inset-bottom))}
  .presente-fechar{top:8px;right:8px}
  .presente-kicker{margin-bottom:6px;padding-right:48px}
  .presente-destaque{margin-bottom:10px;padding:8px 14px 8px 11px;font-size:12.5px}
  .presente-destaque svg{width:17px;height:17px}
  .presente-titulo{font-size:1.32rem;margin-bottom:8px;padding-right:40px}
  .presente-texto{font-size:14px;line-height:1.5;margin-bottom:12px}
  .presente form{gap:8px}
  .presente input[type=text],.presente input[type=email],.presente input[type=tel]{min-height:46px;padding:10px 14px}
  .presente-consent{font-size:12px}
  .presente .btn{min-height:50px}
  .presente-agora-nao{margin-top:2px}
  .presente-etiqueta{left:12px;bottom:16px;padding:9px 14px;font-size:12.5px}
}
.presente-sucesso:not([hidden]) ~ .presente-agora-nao{display:none}

/* telefone com bandeira (intl-tel-input) nos formulários escuros do site */
.iti{width:100%;display:block}
.iti input[type=tel]{width:100%}
.iti__selected-dial-code{color:var(--ivory);font:400 16px Urbanist,sans-serif}
.iti__arrow{border-top-color:rgba(243,238,223,.8)}
.iti__arrow--up{border-bottom-color:rgba(243,238,223,.8)}
.iti__selected-country{border-radius:10px 0 0 10px}
.iti__selected-country-primary:hover,.iti__selected-country:hover .iti__selected-country-primary{background:rgba(255,255,255,.08)}
.iti__country-selector,.iti__country-list,.iti__country{color:#101512;font-family:Urbanist,sans-serif}
.iti__country-selector{border-radius:10px;overflow:hidden;box-shadow:0 18px 40px -12px rgba(0,0,0,.5)}
/* busca do menu de países: os estilos dos campos escuros (texto e placeholder claros) vazavam para ela e ficava branco no branco */
.iti .iti__search-input,.iti--container .iti__search-input{font:400 16px Urbanist,sans-serif;color:#101512!important;background:#fff!important;border:0!important;border-radius:0!important;min-height:44px!important;box-shadow:none!important}
.iti .iti__search-input::placeholder,.iti--container .iti__search-input::placeholder{color:#6b716d!important;opacity:1}
.iti__country{padding:10px 12px}

/* menu de países em tela cheia no celular (fica dentro do overlay) */
.iti--fullscreen-popup.iti--container{z-index:20}
