.clt-contact-form[hidden], .clt-contact-success[hidden], .privacy-clause[hidden], .clt-contact-form button[hidden] { display: none !important; }
.clt-contact-success { padding: 56px 24px; margin: 28px 0; text-align: center; background: #f3f8f4; border: 1px solid #dceade; border-radius: 18px; overflow: hidden; }
.clt-contact-success h2 { margin: 22px 0 12px; font-size: clamp(26px, 3vw, 38px); line-height: 1.25; color: #1d303c; font-weight: 700; letter-spacing: -.5px; }
.clt-contact-success p { margin: 0; font-size: clamp(17px, 2vw, 21px); line-height: 1.5; color: #40594a; }
.clt-letter-scene { position: relative; width: 180px; height: 120px; margin: 0 auto; display: grid; place-items: center; }
.clt-letter-scene::before { content: ''; position: absolute; inset: 0 30px; border-radius: 50%; background: #e1f0e5; }
.clt-flying-letter { position: relative; z-index: 1; animation: clt-letter-arrive 1.1s ease-out both, clt-letter-float 2.8s 1.1s ease-in-out 2; }
.clt-letter-trail { position: absolute; width: 36px; height: 3px; background: #83b894; left: 0; top: 56px; border-radius: 4px; box-shadow: 10px 12px #a3cbb0, 5px -12px #a3cbb0; animation: clt-trail 1.1s ease-out both; }
@keyframes clt-letter-arrive { from { opacity: 0; transform: translate(-85px, 28px) rotate(-18deg); } to { opacity: 1; transform: translate(0, 0) rotate(0); } }
@keyframes clt-letter-float { 50% { transform: translate(6px, -8px) rotate(4deg); } }
@keyframes clt-trail { from { opacity: 0; transform: translateX(-25px); } 40% { opacity: 1; } to { opacity: 0; transform: translateX(18px); } }
.clt-contact-form[aria-busy="true"] .clt-captcha-widget { opacity: .5; pointer-events: none; }
.clt-contact-status:not(:empty) { padding: 12px 0; font-weight: 600; }
@media(max-width:575px) { .clt-contact-success { padding: 36px 16px; } }
@media(prefers-reduced-motion:reduce) { .clt-flying-letter, .clt-letter-trail { animation: none; } .clt-letter-trail { display: none; } }
