/* Sapiro · Contato, 404 e textos legais */
.ct-destaque{margin-top:20px;font-weight:600;max-width:40ch}
.ct-form-sec{background:var(--nevoa);border-top-left-radius:var(--r-g)}
.ct-grid{display:grid;grid-template-columns:minmax(0,8fr) minmax(0,4fr);gap:clamp(32px,6vw,88px);align-items:start}
.ct-campos{display:grid;grid-template-columns:1fr 1fr;gap:22px 24px;margin-bottom:24px}
.ct-form label{display:grid;gap:6px;font-weight:600;font-size:16px}
.ct-largo{grid-column:1/-1}
.ct-form input:not([type=checkbox]),.ct-form select,.ct-form textarea{font:inherit;font-weight:400;color:var(--grafite);width:100%;padding:14px 14px;border:0;border-radius:0;background-color:#fff;background-image:linear-gradient(var(--laranja),var(--laranja));background-repeat:no-repeat;background-position:left bottom;background-size:0 3px;transition:background-size 500ms var(--ease-sai)}
.ct-form input:focus,.ct-form select:focus,.ct-form textarea:focus{outline:0;background-size:100% 3px}
.ct-form .chk{display:flex;gap:12px;align-items:flex-start;font-weight:400;margin-bottom:24px}
.ct-form .chk input{width:20px;height:20px;margin-top:3px;accent-color:var(--laranja)}
.ct-form .err{color:#9a2b1d;font-weight:400;font-size:15px}
.ct-enviar{position:relative;overflow:hidden}
.ct-barra{position:absolute;left:0;bottom:0;height:100%;width:0;background:var(--laranja-tom);opacity:0;pointer-events:none;mix-blend-mode:multiply}
.ct-enviar.enviando .ct-barra{opacity:.55}
.ct-ok{display:grid;gap:22px;justify-items:start}
.ct-ok[hidden]{display:none}
.ct-ok svg{width:140px}
.ct-ok p{font-size:20px}
.ct-canais h2{font-size:22px;margin-bottom:12px}
.ct-canais p{margin:0 0 8px}
@media(max-width:900px){.ct-grid{grid-template-columns:1fr}.ct-campos{grid-template-columns:1fr}}

/* 404 */
.e404{padding:clamp(56px,8vw,112px) 0;min-height:70svh;display:grid;align-items:center}
.e404-in{display:grid;justify-items:start;gap:0}
.e404-s{width:min(360px,70vw);height:auto;overflow:visible;margin-bottom:28px}
.e404 h1{max-width:20ch}
.e404 p{margin:14px 0 0;color:var(--cinza)}
.e404-bt{margin-top:18px}

/* textos legais */
.legal-topo{max-width:calc(820px + var(--margem)*2)}
.legal-prov{margin-top:12px;color:var(--cinza);font-weight:300}
.legal{background:var(--nevoa);border-top-left-radius:var(--r-g)}
.legal-in{max-width:calc(820px + var(--margem)*2)}
.legal-in h2{margin:1.6em 0 .4em;font-size:24px}
.legal-in h2:first-child{margin-top:0}
.legal-in p{font-size:19px;line-height:1.7;max-width:none}
