/* Popup de agendamento (todos os botões do site) */
.ag-modal { position: fixed; inset: 0; z-index: 1100; display: grid; place-items: center; padding: 20px; background: rgba(10, 8, 4, .78); backdrop-filter: blur(12px); -webkit-backdrop-filter: blur(12px); animation: agFade .3s ease; }
.ag-modal[hidden] { display: none; }
.ag-box { position: relative; width: 100%; max-width: 440px; padding: 34px 32px 28px; border-radius: 26px; background: linear-gradient(160deg, rgba(42, 35, 20, .96), rgba(18, 15, 8, .97)); border: 1px solid rgba(212, 168, 73, .3); box-shadow: 0 40px 100px rgba(0,0,0,.7), 0 0 60px rgba(212, 168, 73, .18); animation: agSobe .4s cubic-bezier(.2,.8,.2,1); }
.ag-box h2 { font-family: var(--font-serif); font-size: 2rem; font-weight: 600; line-height: 1.1; margin: 12px 0 8px; color: #fff; }
.ag-box h2 em { font-style: italic; font-weight: 400; background: linear-gradient(135deg, #fff 20%, #ead4a5 100%); -webkit-background-clip: text; background-clip: text; -webkit-text-fill-color: transparent; padding-right: .06em; }
.ag-sub { font-size: .92rem; line-height: 1.55; color: var(--text-muted); margin-bottom: 22px; }
.ag-fechar { position: absolute; top: 14px; right: 14px; width: 38px; height: 38px; border-radius: 50%; border: 1px solid rgba(255,255,255,.14); background: rgba(255,255,255,.06); color: #fff; font-size: 1.4rem; line-height: 1; cursor: pointer; }
.ag-fechar:hover { background: rgba(255,255,255,.14); }
#agForm { display: grid; gap: 10px; }
#agForm input { width: 100%; padding: 14px 18px; border-radius: 14px; border: 1px solid rgba(255,255,255,.14); background: rgba(255,255,255,.05); color: #fff; font: inherit; font-size: .98rem; transition: border-color .2s, box-shadow .2s; }
#agForm input::placeholder { color: rgba(255,255,255,.5); }
#agForm input:focus { outline: none; border-color: var(--cyan-glow); box-shadow: 0 0 0 3px rgba(212, 168, 73, .18); }
#agForm input.is-invalid { border-color: #ff6b6b; }
.ag-enviar { margin-top: 6px; display: flex; align-items: center; justify-content: center; gap: 10px; padding: 15px; border: 0; border-radius: 999px; background: #1fa855; color: #fff; font: inherit; font-size: 1rem; font-weight: 700; cursor: pointer; box-shadow: 0 14px 30px rgba(31,168,85,.3); transition: transform .2s, background .2s; }
.ag-enviar:hover { background: #1a9449; transform: translateY(-1px); }
.ag-enviar svg { width: 20px; height: 20px; fill: #fff; }
.ag-nota { margin-top: 4px; text-align: center; font-size: .74rem; color: rgba(255,255,255,.45); }
@keyframes agFade { from { opacity: 0; } }
@keyframes agSobe { from { opacity: 0; transform: translateY(18px) scale(.98); } }
@media (max-width: 600px) { .ag-modal { align-items: end; padding: 10px; } .ag-box { padding: 28px 22px 22px; } }
