/* Слой страницы «Контакты» — только раскладка, токены и атомы не трогаются. */
.ct-page{padding:var(--sp-16) 0;} /* нейтральные отступы под шапку и подвал */
.ct-container{max-width:var(--container);margin:0 auto;padding:0 var(--gutter);box-sizing:border-box;}
.ct-lead{margin-top:var(--sp-6);max-width:60ch;}
.ct-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--sp-6);margin-top:var(--sp-12);}
.ct-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);
  padding:var(--sp-6);display:flex;flex-direction:column;gap:var(--sp-2);align-items:flex-start;}
.ct-card .caption{text-transform:uppercase;letter-spacing:.08em;}
.ct-card a{color:inherit;text-decoration:none;overflow-wrap:anywhere;}
.ct-card a:hover{color:inherit;text-decoration:underline;text-underline-offset:3px;}
.ct-card .sticker{margin-top:var(--sp-2);}
/* правило 07: реквизиты — приглушённый блок, значения моноширинные */
.ct-req{margin-top:var(--sp-8);background:var(--surface-2);border-radius:var(--radius-sm);
  padding:var(--sp-4) var(--sp-6);display:flex;flex-wrap:wrap;align-items:center;gap:var(--sp-2) var(--sp-8);}
.ct-req .caption{overflow-wrap:anywhere;}
.ct-req .ct-req-val{font-family:var(--font-mono);font-weight:400;color:var(--muted);}
.ct-connect{margin-top:var(--sp-16);border-top:1px solid var(--line);padding-top:var(--sp-12);
  scroll-margin-top:96px;}
.ct-main{display:grid;grid-template-columns:minmax(0,1fr) 380px;gap:var(--sp-12);
  align-items:start;margin-top:var(--sp-8);}
.ct-form{display:grid;grid-template-columns:1fr 1fr;gap:var(--sp-6);}
.ct-form .field,.ct-form .field-textarea{max-width:none;} /* ширину диктует сетка формы */
.ct-span2{grid-column:1 / -1;}
.ct-form-foot{display:flex;flex-direction:column;gap:var(--sp-6);align-items:flex-start;margin-top:var(--sp-2);}
.ct-geo{background:var(--surface-dark);color:var(--surface);border-radius:var(--radius);
  padding:var(--sp-8);display:flex;flex-direction:column;gap:var(--sp-6);}
.ct-geo .h3,.ct-geo .body,.ct-geo .body-lg,.ct-geo .caption{color:inherit;}
.ct-geo .body{opacity:.8;}
.ct-geo .caption{opacity:.6;text-transform:uppercase;letter-spacing:.08em;}
.ct-geo-item{display:flex;flex-direction:column;gap:var(--sp-1);}
.ct-geo--light{background:var(--surface);color:var(--ink);border:1px solid var(--line);}
.ct-geo--light .body,.ct-geo--light .body-lg{opacity:1;color:var(--ink-2);}
.ct-geo--light .caption{opacity:1;color:var(--muted);}
@media (max-width:1279px){ /* Tablet 768–1279 */
  .ct-cards{grid-template-columns:1fr 1fr;gap:var(--sp-4);margin-top:var(--sp-8);}
  .ct-cards .ct-card:last-child{grid-column:1 / -1;}
  .ct-connect{margin-top:var(--sp-12);}
  .ct-main{grid-template-columns:minmax(0,1fr) 300px;gap:var(--sp-8);}
  .ct-form{grid-template-columns:1fr;gap:var(--sp-4);}
}
@media (max-width:767px){ /* Mobile <768 */
  .ct-page{padding:var(--sp-12) 0;}
  .ct-lead{margin-top:var(--sp-4);}
  .ct-cards{grid-template-columns:1fr;margin-top:var(--sp-6);}
  .ct-req{padding:var(--sp-4);flex-direction:column;align-items:flex-start;}
  .ct-main{grid-template-columns:1fr;gap:var(--sp-8);}
  .ct-submit{width:100%;}
  .ct-geo{padding:var(--sp-6);}
}
