/* Страница «Контакты» — две двери (макет A, 30.09): разметка в
   templates/pages/contacts.html, кнопки «скопировать» — static/js/contacts.js.
   Карточки и неделя — строй низа главной (.nx-outro, home.css), здесь только
   своё: шапка со строкой-подзаголовком справа, строки каналов с кружками,
   белая дверь и реквизиты. Светлое — белое и рамка, без заливок. */
body.contacts-page .cont-head{padding-top:var(--sec-half)}
body.contacts-page .cont-head .crumbs{margin-bottom:16px}
body.contacts-page .cont-head .crumbs a{color:inherit;text-decoration:none;
  border-bottom:1px solid var(--edge-strong)}
body.contacts-page .cont-head__row{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);
  align-items:end;gap:18px 48px}
body.contacts-page .cont-head h1{margin:12px 0 0;font-family:'Arsenal',Georgia,serif;
  font-weight:700;line-height:1.04;font-size:clamp(2.2rem,4.6vw,3.6rem);
  color:var(--nx-ink)}
body.contacts-page .cont-head__sub{justify-self:end;margin:0;color:var(--nx-muted);
  font-size:var(--fs-lg);line-height:1.55;max-width:48ch;text-wrap:pretty}

body.contacts-page .cont-doors{padding-top:clamp(28px,3.4vw,44px)}
/* под липкую шапку сайта: по /contacts/#ask карточка встаёт целиком */
body.contacts-page #ask{scroll-margin-top:96px}
body.contacts-page .cont-door--white{background:#fff;border:1px solid var(--nx-line2)}

/* строки каналов: подпись, значение, справа кружок — стрелка наружу или
   «скопировать» */
body.contacts-page .cont-lines{list-style:none;margin:clamp(22px,2.6vw,30px) 0 0;padding:0}
body.contacts-page .cont-lines li{display:grid;grid-template-columns:minmax(0,1fr) auto;
  align-items:center;gap:4px 14px;padding:14px 2px;border-bottom:1px solid var(--nx-line2)}
body.contacts-page .cont-lines li:first-child{border-top:1px solid var(--nx-line2)}
body.contacts-page .cont-lines__k{display:block;font-size:var(--fs-fine);color:var(--nx-muted)}
body.contacts-page .cont-lines__v{display:block;font-weight:600;font-size:var(--fs-lg);
  color:var(--nx-ink);overflow-wrap:anywhere;text-decoration:none}
body.contacts-page .cont-lines__v small{font-weight:400;font-size:var(--fs-note);color:var(--nx-muted)}
/* номер телефона не рвётся посередине: переносится только между номерами */
body.contacts-page .cont-nw{white-space:nowrap}
body.contacts-page .cont-lines--dark li{border-color:rgba(255,255,255,.12)}
body.contacts-page .cont-lines--dark .cont-lines__k{color:rgba(255,255,255,.6)}
body.contacts-page .cont-lines--dark .cont-lines__v{color:#fff}

body.contacts-page .cont-copy,
body.contacts-page .cont-go{flex:none;display:inline-grid;place-items:center;width:36px;height:36px;
  padding:0;border-radius:50%;border:1px solid var(--nx-line2);background:transparent;
  color:var(--nx-lavender);cursor:pointer;text-decoration:none;
  transition:color .4s var(--ease),border-color .4s var(--ease),transform .4s var(--ease)}
body.contacts-page .cont-copy svg,
body.contacts-page .cont-go svg{grid-area:1 / 1;width:15px;height:15px;stroke:currentColor;
  fill:none;stroke-width:1.8}
body.contacts-page .cont-copy:hover,
body.contacts-page .cont-go:hover{color:var(--nx-violet);border-color:var(--nx-lavender)}
body.contacts-page .cont-go:hover{transform:translate(2px,-2px)}
body.contacts-page .cont-copy:focus-visible,
body.contacts-page .cont-go:focus-visible{outline:var(--focus);outline-offset:2px}
/* скопировано: 1,6 с вместо значка стоит галочка */
body.contacts-page .cont-copy__ok,
body.contacts-page .cont-copy.is-done svg{display:none}
body.contacts-page .cont-copy.is-done .cont-copy__ok{display:block}
body.contacts-page .cont-copy.is-done{color:#1f8a57;border-color:rgba(31,138,87,.35)}
body.contacts-page .cont-lines--dark .cont-copy,
body.contacts-page .cont-lines--dark .cont-go{border-color:rgba(255,255,255,.18);color:rgba(255,255,255,.62)}
body.contacts-page .cont-lines--dark .cont-copy:hover,
body.contacts-page .cont-lines--dark .cont-go:hover{color:#fff;border-color:rgba(255,255,255,.5)}
body.contacts-page .cont-lines--dark .cont-copy.is-done{color:#7EE2A8;border-color:rgba(126,226,168,.45)}


/* реквизиты строкой: четыре ячейки через тонкие вертикальные линии */
body.contacts-page .cont-reqs{margin-top:clamp(40px,4.6vw,64px)}
body.contacts-page .cont-reqs__h{margin:0 0 14px;font-size:var(--fs-tag);font-weight:700;
  letter-spacing:.16em;text-transform:uppercase;color:var(--nx-muted)}
body.contacts-page .cont-reqs__grid{display:grid;grid-template-columns:1.3fr .8fr .9fr 2fr;margin:0;
  border-top:1px solid var(--nx-line2);border-bottom:1px solid var(--nx-line2)}
body.contacts-page .cont-reqs__grid div{padding:16px 18px 16px 0;min-width:0}
body.contacts-page .cont-reqs__grid div+div{padding-left:18px;border-left:1px solid var(--nx-line2)}
body.contacts-page .cont-reqs__grid dt{font-size:var(--fs-mini);color:var(--nx-muted);margin-bottom:4px}
body.contacts-page .cont-reqs__grid dd{margin:0;font-size:var(--fs-sm);color:var(--nx-ink);
  font-variant-numeric:tabular-nums;overflow-wrap:anywhere}

/* реквизиты уже отбиты сверху — панель площадок встаёт под ними без второго отступа секции */
body.contacts-page .cont-channels{padding:0 0 var(--sec)}

@media(max-width:1000px){
  body.contacts-page .cont-reqs__grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  body.contacts-page .cont-reqs__grid div:nth-child(3){padding-left:0;border-left:0}
  body.contacts-page .cont-reqs__grid div:nth-child(n+3){border-top:1px solid var(--nx-line2)}
}
@media(max-width:760px){
  body.contacts-page .cont-head__row{grid-template-columns:minmax(0,1fr)}
  body.contacts-page .cont-head__sub{justify-self:start}
}
@media(max-width:560px){
  body.contacts-page .cont-head__sub{font-size:var(--fs-md)}
  body.contacts-page .cont-door--white .nx-btn{width:100%}
  body.contacts-page .cont-reqs__grid{grid-template-columns:minmax(0,1fr)}
  body.contacts-page .cont-reqs__grid div,
  body.contacts-page .cont-reqs__grid div+div{padding:12px 0;border-left:0}
  body.contacts-page .cont-reqs__grid div+div{border-top:1px solid var(--nx-line2)}
}
@media(prefers-reduced-motion:reduce){
  body.contacts-page .cont-copy,body.contacts-page .cont-go{transition:none}
}
