.cta-sec { padding: 40px 20px 80px; background: var(--c2b); }
.cta-cnt { max-width: 850px; margin: 0 auto; background: var(--c2a); padding: 60px 40px; border-radius: 15px; box-shadow: 0 10px 30px rgba(0,0,0,0.06); text-align: center; }
.pt-33 { padding-top: 33px; }

.cta-trust { max-width: 1200px; margin: 80px auto 0 auto; padding: 40px; background: var(--c2a); border-radius: 12px; border: 1px solid var(--c4); }
.trust-flex { display: flex; align-items: center; gap: 50px; }
.trust-logo { flex: 0 0 185px; }
.trust-logo img { max-width: 100%; height: auto; }
.trust-content h3 { color: var(--c21); margin-bottom: 10px;}
.trust-content p { color: var(--c15); margin-bottom: 15px; }

.learn-more { color: var(--mode); font-weight: 700; text-decoration: none; font-size: 1.1rem; }
.learn-more:hover { text-decoration: underline; }

footer { background-color: var(--c2b); padding-top: 60px; border-top: 1px solid var(--c4); }
.footer-grid { display: grid; grid-template-columns: 1fr 1fr 1fr 1fr; gap: 10px; padding-bottom: 30px; }
.footer-col h3 { color: var(--c21); margin-bottom: 15px; }
.footer-links li { margin-bottom: 12px; border-bottom: 1px solid var(--c3); width: 85%; list-style: none; }
.footer-links a { color: var(--c15); text-decoration: none; transition: var(--transition); }
.footer-links a:hover { color: var(--mode); }

.footer-toggle { background: none; border: none; color: var(--c21); font-size: 1.2rem; font-weight: 600; padding: 0; text-align: left; width: 100%; cursor: default; pointer-events: none; }

@media (max-width: 768px) {
    .footer-grid { grid-template-columns: 1fr; gap: 0; padding-bottom: 0; }
    .footer-col { border-bottom: 1px solid var(--c3); width: 85%;}
    .footer-toggle { padding: 15px 0; cursor: pointer; pointer-events: auto; display: flex; justify-content: space-between; align-items: center; transition: var(--transition); }
    .footer-toggle::after { content: '+'; font-size: 1.2rem; transition: var(--transition); color: var(--mode); }
    .footer-toggle[aria-expanded="true"]::after { transform: rotate(45deg); }
    .footer-links { max-height: 0; overflow: hidden; transition: max-height 0.3s ease-out; margin: 0; }
    .footer-col.active .footer-links { max-height: 300px; padding-bottom: 20px; }
}

.copyright { padding: 25px 0; border-top: 2px solid var(--c2); background: var(--c2); }
.copyright-flex { display: flex; justify-content: space-between; align-items: center; gap: 20px; color: var(--c13); font-size: 0.9rem; }
.copy-links { display: flex; align-items: center; gap: 5px; }
.copy-links a { color: inherit; text-decoration: none; transition: var(--transition); }
.copy-links a:hover { color: var(--mode); }
.copy-links .sep { color: var(--c5); font-weight: 300; }

.modal-overlay { position: fixed; inset: 0; background: rgba(0,0,0,.85); display: none; align-items: center; justify-content: center; z-index: 10000; backdrop-filter: blur(4px); padding: 20px; }
.modal-overlay.open { display: flex; }
.modal-content { background: var(--c1); padding: 30px; border-radius: 12px; max-width: 450px; width: 100%; position: relative; text-align: center; box-shadow: 0 10px 30px rgba(0,0,0,.5); }
.modal-phone { display: block; font-size: 2rem; font-weight: 800; color: var(--mode); margin: 20px 0; text-decoration: none; }

@media (max-width: 768px) {
    .copyright-flex { flex-direction: column; text-align: center; gap: 5px; }
    .copy-links { justify-content: center; flex-wrap: wrap; }
    .cta-cnt { padding: 40px 20px; }
    .trust-flex { flex-direction: column; text-align: center; gap: 20px; }
    .cta-trust { margin-top: 50px; padding: 30px 20px; }
    .trust-logo { flex: none; }
}