/* 2.0.4 — contact + legal pages (uses tokens from editorial.css) */
.cf-grid{display:grid;grid-template-columns:minmax(0,1fr) 380px;gap:44px;padding:48px 0 72px;align-items:start}
.cf-main{min-width:0}
.cf-card{background:#fff;border:1px solid var(--lg-line);border-radius:20px;padding:30px;box-shadow:0 18px 40px rgba(31,24,20,.06);scroll-margin-top:24px}
.cf-card h2{font-size:26px;margin:0 0 20px;color:var(--lg-ink)!important}
.cf-form{display:grid;gap:16px}
.cf-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.cf-field{display:flex;flex-direction:column;gap:6px;font-size:14px;font-weight:700;color:var(--lg-ink)}
.cf-field small{font-weight:500;color:var(--lg-muted)}
.cf-field input,.cf-field select,.cf-field textarea{width:100%;min-height:50px;padding:12px 14px;border:1px solid #e3d8cc;border-radius:12px;background:#fffdfb;font:inherit;font-weight:500;font-size:16px;color:var(--lg-ink);transition:border-color .15s,box-shadow .15s}
.cf-field textarea{min-height:150px;resize:vertical;line-height:1.6}
.cf-field :is(input,select,textarea):focus{outline:none;border-color:var(--lg-accent);box-shadow:0 0 0 4px rgba(255,101,0,.12)}
.cf-field [aria-invalid="true"],.cf-consent [aria-invalid="true"]{border-color:#d9342b;background:#fff7f6}
.cf-fe{color:#c62d24;font-size:13px;font-weight:600}
.cf-consent{display:flex;gap:10px;align-items:flex-start;font-size:14px;line-height:1.55;color:var(--lg-muted)}
.cf-consent input{width:20px;height:20px;margin-top:1px;flex:0 0 auto;accent-color:var(--lg-accent)}
.cf-consent a{color:var(--lg-accent-d)}
.cf-submit{border:0;cursor:pointer;font-size:16px;width:100%}
.cf-hp{position:absolute!important;left:-9999px!important;width:1px;height:1px;overflow:hidden}
.cf-alert{padding:16px 18px;border-radius:12px;margin-bottom:18px;font-size:15px}
.cf-alert p{margin:6px 0 0}
.cf-ok{background:#effaf3;border:1px solid #bfe6cd;color:#16613a}
.cf-err{background:#fff3f2;border:1px solid #f3c7c3;color:#9b241c}
.cf-warn{background:#fff8ec;border:1px solid #f2d9a8;color:#7a5410}
.cf-aside{position:sticky;top:24px}
.cf-channels ul{list-style:none;margin:0;padding:0}
.cf-channels li{display:flex;gap:14px;padding:14px 0;border-top:1px solid var(--lg-line)}
.cf-channels li:first-child{border-top:0;padding-top:4px}
.cf-ic{flex:0 0 40px;height:40px;border-radius:12px;display:grid;place-items:center;background:var(--lg-soft);color:var(--lg-accent-d);font-size:18px;font-weight:700}
.cf-ic-wa{background:#eafaf0;color:#1a9e52}
.cf-channels small{display:block;font-size:12px;text-transform:uppercase;letter-spacing:.06em;color:var(--lg-muted)}
.cf-channels a,.cf-channels b{color:var(--lg-ink);font-weight:700;text-decoration:none;font-size:16px;word-break:break-word}
.cf-channels a:hover{color:var(--lg-accent-d)}
.cf-channels address{font-style:normal;font-weight:600;line-height:1.5}
.cf-channels .cf-map{display:inline-block;margin-top:6px;font-size:14px;color:var(--lg-accent-d)}
/* Legal */
.legal-body section{scroll-margin-top:24px}
.legal-body h2{font-size:22px!important;margin:34px 0 12px!important}
.legal-body section:first-of-type h2{margin-top:8px!important}
.legal-body li{margin-bottom:8px}
.legal-updated{display:inline-block;padding:6px 12px;border-radius:999px;background:#fff;border:1px solid var(--lg-line);font-size:13px;color:var(--lg-muted)}
.legal-toc ol{margin:0;padding-left:20px}
.legal-toc li{margin:6px 0;font-size:14.5px}
.legal-toc a{color:var(--lg-ink);text-decoration:none}
.legal-toc a:hover{color:var(--lg-accent-d)}
.legal-other a{display:block;padding:9px 0;color:var(--lg-accent-d);font-weight:700;text-decoration:none;border-top:1px solid var(--lg-line)}
.legal-other a:first-child{border-top:0}
@media(max-width:980px){.cf-grid{grid-template-columns:1fr;gap:28px;padding-top:32px}.cf-aside{position:static}}
@media(max-width:600px){.cf-row{grid-template-columns:1fr}.cf-card{padding:22px 18px}.cf-grid{width:calc(100% - 32px)}}
