/* Bloco final e rodapé, com navegação interna para a própria prévia. */
.closing { background: #f1ecf3; color: #302137; padding: 96px 0 100px; text-align: center; }
.closing-inner { width: calc(100% - 112px); max-width: 1440px; margin-inline: auto; }
.closing-symbol { width: 44px; height: 44px; fill: none; stroke: #876393; stroke-width: 1.3; margin-bottom: 26px; }
.closing-kicker { font-size: 10px; font-weight: 600; text-transform: uppercase; letter-spacing: .18em; color: #796584; margin: 0 0 24px; }
.closing h2 { font: 500 clamp(58px,7.5vw,112px)/1.04 'Manrope',sans-serif; letter-spacing: -.065em; margin: 0 0 28px; }
.closing h2 em { color: #876393; font-style: normal; }
.closing-intro { max-width: 425px; margin: 0 auto 29px; color: #736378; font-size: 15px; line-height: 1.85; }
.closing-action { display: inline-flex; align-items: center; justify-content: space-between; gap: 42px; min-height: 56px; background: #51365f; color: #fff6ff; padding: 17px 22px; border-radius: 7px; font-size: 13px; font-weight: 500; transition: transform .2s,background .2s; }
.closing-action svg { width: 19px; height: 19px; fill: none; stroke: currentColor; stroke-width: 1.5; transition: transform .2s; }
.closing-action:hover { transform: translateY(-2px); background: #62416f; }
.closing-action:hover svg { transform: translate(2px,-2px); }
.closing-action:active { transform: translateY(0); }
.closing a:focus-visible { outline: 2px solid #785786; outline-offset: 5px; }
.site-footer { background: radial-gradient(ellipse at 12% 15%,#b587fa12,transparent 50%),#090b13; color: #eee5f4; padding: 52px 0 26px; }
.site-footer-inner { width: calc(100% - 112px); max-width: 1440px; margin-inline: auto; }
.site-footer-main { display: flex; justify-content: space-between; align-items: center; gap: 40px; padding-bottom: 40px; border-bottom: 1px solid #584361; }
.site-footer-brand { display: inline-flex; align-items: center; gap: 10px; font: 700 30px/1.2 'Manrope',sans-serif; letter-spacing: -.06em; }
.site-footer-brand > span { color: #cba9dd; margin-left: -10px; }
.site-footer-brand > svg { width: 27px; height: 27px; fill: none; stroke: #cba9dd; stroke-width: 1.5; }
.site-footer-main > div > p { color: #b8a4c3; font-size: 11px; line-height: 1.8; margin: 14px 0 0; }
.site-footer-nav { display: flex; flex-wrap: wrap; gap: 30px; }
.site-footer-nav a { display: flex; align-items: center; min-height: 44px; font-size: 12px; color: #d0bddb; position: relative; }
.site-footer-nav a::after { content: ''; position: absolute; height: 1px; left: 0; right: 0; bottom: 7px; background: #cba9dd; transform: scaleX(0); transform-origin: left; transition: transform .2s; }
.site-footer-nav a:hover::after { transform: scaleX(1); }
.site-footer-bottom { display: flex; align-items: center; justify-content: space-between; gap: 24px; padding-top: 20px; }
.site-footer-bottom p { color: #b8a4c3; font-size: 10px; line-height: 1.8; margin: 0; }
.site-footer-bottom a { display: inline-flex; align-items: center; gap: 16px; min-height: 44px; color: #cbb6d6; font-size: 11px; }
.site-footer-bottom svg { width: 16px; height: 16px; fill: none; stroke: currentColor; stroke-width: 1.5; transition: transform .2s; }
.site-footer-bottom a:hover svg { transform: translateY(-3px); }
.site-footer a:focus-visible { outline: 2px solid #efdcff; outline-offset: 5px; }
@media (max-width: 700px) {
 .closing { padding: 68px 0 70px; }
 .closing-inner, .site-footer-inner { width: calc(100% - 40px); }
 .closing-symbol { width: 36px; height: 36px; margin-bottom: 24px; }
 .closing-kicker { font-size: 9px; letter-spacing: .15em; }
 .closing h2 { font-size: clamp(53px,13.5vw,76px); margin-bottom: 24px; }
 .closing-intro { font-size: 14px; max-width: 320px; }
 .closing-action { width: 100%; max-width: 335px; }
 .site-footer { padding: 38px 0 23px; }
 .site-footer-main { flex-direction: column; align-items: start; gap: 25px; padding-bottom: 25px; }
 .site-footer-brand { font-size: 28px; }
 .site-footer-nav { justify-content: space-between; gap: 22px; width: 100%; }
 .site-footer-bottom { flex-wrap: wrap; gap: 13px; align-items: start; }
 .site-footer-bottom p { width: 100%; }
}
@media (prefers-reduced-motion: reduce) { .closing *, .site-footer *, .site-footer *::after { transition: none !important; } }
