/* Página /agradecimento — confirmação depois dos formulários de contato */

.ag-page { background: #f4f7fb; }

.ag-hero { padding-bottom: 150px; }

.ag-body {
    position: relative;
    z-index: 2;
    margin-top: -120px;
    padding: 0 16px 96px;
}

.ag-card {
    max-width: 880px;
    margin: 0 auto;
    padding: 48px 48px 36px;
    background: #fff;
    border: 1px solid #e3eaf4;
    border-radius: 20px;
    box-shadow: 0 24px 60px rgba(4, 31, 58, .14);
    text-align: center;
    font-family: Inter, "Segoe UI", sans-serif;
    color: #334155;
}

.ag-check { width: 84px; height: 84px; margin: 0 auto 20px; }
.ag-check svg { width: 100%; height: 100%; }
.ag-check circle { fill: #e7f7ee; stroke: #16a34a; stroke-width: 2; }
.ag-check path {
    fill: none;
    stroke: #16a34a;
    stroke-width: 4;
    stroke-linecap: round;
    stroke-linejoin: round;
    stroke-dasharray: 40;
    stroke-dashoffset: 40;
    animation: ag-desenha .6s .2s ease-out forwards;
}

@keyframes ag-desenha { to { stroke-dashoffset: 0; } }

.ag-kicker {
    display: inline-block;
    margin-bottom: 10px;
    font-size: 13px;
    font-weight: 700;
    letter-spacing: .12em;
    color: #0070c9;
}

.ag-card h1 {
    margin: 0 0 14px;
    font-size: clamp(26px, 3.2vw, 36px);
    font-weight: 800;
    line-height: 1.15;
    letter-spacing: -.02em;
    color: #041f3a;
}

.ag-lead {
    max-width: 640px;
    margin: 0 auto 32px;
    font-size: 17px;
    line-height: 1.6;
    color: #52667e;
}

.ag-lead strong { color: #041f3a; }

.ag-steps {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 14px;
    margin: 0 0 32px;
    padding: 0;
    list-style: none;
    text-align: left;
}

.ag-steps li {
    display: flex;
    gap: 12px;
    align-items: flex-start;
    padding: 16px;
    background: #f6f9fd;
    border: 1px solid #e3eaf4;
    border-radius: 14px;
}

.ag-step-ico {
    display: inline-grid;
    place-items: center;
    flex: 0 0 38px;
    height: 38px;
    border-radius: 10px;
    background: #eaf6ff;
    color: #0070c9;
    font-size: 16px;
}

.ag-steps li:nth-child(2) .ag-step-ico { background: #fff1e7; color: #ea580c; }
.ag-steps li:nth-child(3) .ag-step-ico { background: #e7f7ee; color: #16a34a; }

.ag-steps b { display: block; font-size: 15px; color: #041f3a; margin-bottom: 2px; }
.ag-steps small { display: block; font-size: 13px; line-height: 1.45; color: #64748b; }

.ag-actions {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 12px;
}

.ag-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 9px;
    min-height: 50px;
    padding: 0 24px;
    border-radius: 10px;
    font-size: 15px;
    font-weight: 700;
    text-decoration: none;
    transition: transform .15s, box-shadow .15s, background .15s;
}

.ag-btn-primary {
    color: #fff !important;
    background: #16a34a;
    box-shadow: 0 10px 24px rgba(22, 163, 74, .28);
}

.ag-btn-primary:hover { transform: translateY(-2px); background: #15803d; }

.ag-btn-ghost {
    color: #041f3a !important;
    background: #fff;
    border: 1px solid #cfdbea;
}

.ag-btn-ghost:hover { background: #f4f7fb; }

.ag-btn-link { color: #0070c9 !important; }
.ag-btn-link:hover { text-decoration: underline; }

.ag-btn:focus-visible { outline: 3px solid #0070c9; outline-offset: 2px; }

.ag-foot { margin: 22px 0 0; font-size: 14px; color: #64748b; }
.ag-foot a { color: #0070c9; font-weight: 600; text-decoration: none; }

@media (max-width: 720px) {
    .ag-hero { padding-bottom: 120px; }
    .ag-body { margin-top: -96px; padding-bottom: 56px; }
    .ag-card { padding: 32px 20px 26px; border-radius: 16px; }
    .ag-steps { grid-template-columns: 1fr; }
    .ag-btn { width: 100%; }
}

@media (prefers-reduced-motion: reduce) {
    .ag-check path { animation: none; stroke-dashoffset: 0; }
}
