/* «Контакты»: крупный адрес с копированием, конструктор письма, реквизиты. */
.ct-hero{display:flex;flex-direction:column;gap:16px;padding:clamp(16px,3vw,32px) 0 clamp(32px,5vw,56px)}
.ct-eyebrow{font-family:var(--font-meta);font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:#d30805}
.ct-hero h1{margin:0;font-family:var(--font-ui);font-weight:500;font-size:clamp(32px,4vw,56px);line-height:1.05;letter-spacing:-.02em}
.ct-mail{display:flex;align-items:center;gap:14px;flex-wrap:wrap}
.ct-mail-link{font:500 clamp(28px,4.4vw,64px)/1.1 var(--font-ui);letter-spacing:-.02em;color:#111;text-decoration:none;border-bottom:3px solid #1f7a4a;overflow-wrap:anywhere}
.ct-mail-link:hover{color:#1f7a4a}
.ct-copy{display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:0 16px;border:1px solid #e3e3e3;border-radius:999px;background:#fff;color:#111;font:500 14px/1 var(--font-ui);cursor:pointer;transition:border-color .2s}
.ct-copy:hover{border-color:#111}
.ct-copy svg{width:18px;height:18px}
.ct-lead{margin:0;max-width:60ch;color:#555;font-size:16px;line-height:1.55}
.ct-grid{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);gap:clamp(24px,5vw,80px);align-items:start;margin-bottom:clamp(56px,8vw,96px)}
.ct-builder{display:flex;flex-direction:column;gap:14px;padding:clamp(20px,3vw,36px);border-radius:18px;background:#f6f6f6}
.ct-builder h2{margin:0;font-family:var(--font-ui);font-weight:500;font-size:clamp(22px,2.2vw,30px)}
.ct-topics{display:flex;flex-wrap:wrap;gap:8px}
.ct-topic{cursor:pointer}
.ct-topic input{position:absolute;opacity:0;pointer-events:none}
.ct-topic span{display:inline-flex;align-items:center;min-height:42px;padding:0 16px;border-radius:999px;background:#fff;box-shadow:inset 0 0 0 1px #e3e3e3;font-size:15px;transition:background .2s,color .2s,box-shadow .2s}
.ct-topic input:checked+span{background:#111;color:#fff;box-shadow:none}
.ct-topic input:focus-visible+span{outline:2px solid #666;outline-offset:2px}
.ct-hint{margin:0;font-size:15px;line-height:1.5;color:#444}
.ct-field{display:flex;flex-direction:column;gap:6px}
.ct-field[hidden]{display:none}
.ct-field label{font-size:14px;color:#666}
.ct-field input{min-height:46px;padding:0 14px;border:1px solid #ddd;border-radius:12px;background:#fff;font:400 16px var(--font-ui);color:#111}
.ct-field input:focus{outline:2px solid #1f7a4a;outline-offset:0;border-color:transparent}
.ct-btn{align-self:flex-start;display:inline-flex;align-items:center;min-height:48px;padding:0 24px;border-radius:999px;background:#1f7a4a;color:#fff;font-size:15px;text-decoration:none;transition:background .2s}
.ct-btn:hover{background:#17603a}
.ct-btn:focus-visible,.ct-copy:focus-visible{outline:2px solid #666;outline-offset:3px}
.ct-note{margin:0;font-size:13px;color:#888}
.ct-info{display:flex;flex-direction:column;gap:28px;padding-top:8px}
.ct-info dl{margin:0;display:flex;flex-direction:column;gap:12px}
.ct-info dl div{display:grid;grid-template-columns:8em minmax(0,1fr);gap:12px;font-size:15px}
.ct-info dt{color:#888}
.ct-info dd{margin:0;color:#111}
.ct-info a{color:#111;text-underline-offset:3px;text-decoration-color:#bbb}
@media(max-width:899px){.ct-grid{grid-template-columns:1fr}}
@media(max-width:759px){.ct-info dl div{grid-template-columns:6em minmax(0,1fr)}}
