
.abc-contacts main{ letter-spacing:0; }
.abc-contacts main h1{ margin:0;}.abc-contacts main h2{ margin:0;}.abc-contacts main h3{ font-family:var(--ff-display); font-weight:600; letter-spacing:0; margin:0; }
.abc-contacts main p{ margin:0; }
.ct-icon{ width:22px; height:22px; flex:none; fill:none; stroke:currentColor; stroke-width:1.7; stroke-linecap:round; stroke-linejoin:round; }
.abc-contacts .ct-kicker{ font-size:12px; line-height:1.5; color:var(--ink-mute); margin-bottom:16px; }
.ct-intro{ display:grid; grid-template-columns:minmax(0,1.15fr) minmax(0,1fr); align-items:center; gap:96px;}
.ct-intro h1 span{ color:var(--ink-mute); }
.abc-contacts .ct-lead{ margin-top:24px; max-width:510px;}
.abc-contacts .ct-hours{ margin-top:16px; font-size:14px; color:var(--ink-mute); }
.ct-intro .btn{ margin-top:28px; gap:24px;}
.ct-channels{ background:var(--paper-3); border:1px solid var(--ink-line); border-radius:var(--r-md); padding:32px; }
.ct-channel+.ct-channel{ border-top:1px solid var(--ink-line); margin-top:24px; padding-top:24px; }
.abc-contacts .ct-channel .ct-kicker{ margin-bottom:12px; }
.ct-channel>a{ color:var(--ink); text-decoration:none; font-weight:500; }
.ct-phone{ font-size:32px; white-space:nowrap; font-variant-numeric:tabular-nums; }
.ct-email{ font-size:26px; }
.ct-channel>p:not(.ct-kicker){ font-size:13px; color:var(--ink-mute); line-height:1.7; margin-top:8px; }
.ct-copy-text{ display:inline-flex; align-items:center; gap:12px; min-height:44px; padding:8px 0; margin-top:12px; font:400 13px/1.5 var(--ff-body); background:transparent; border:0; color:var(--ink); cursor:pointer; text-align:left; }
.ct-copy-text .ct-icon{ width:18px; height:18px; }
.ct-copy-text:hover{ color:var(--coral-600); }.ct-channel>a:hover{ color:var(--coral-600); }
.ct-copy-feedback{ font-size:13px; line-height:1.6; color:var(--ink-soft); }
.abc-contacts .ct-copy-feedback:not(:empty){ margin-top:16px; }
.ct-nav{ display:flex; gap:40px; flex-wrap:wrap; border-block:1px solid var(--ink-line); padding-block:12px; }
.ct-nav a{ display:inline-flex; gap:16px; align-items:center; min-height:44px; font-size:14px; line-height:1.5; color:var(--ink); text-decoration:none; }.ct-link{ display:inline-flex; gap:16px; align-items:center; min-height:44px; font-size:14px; line-height:1.5; color:var(--ink); text-decoration:none; }
.ct-nav a:hover{ color:var(--coral-600); }.ct-link:hover{ color:var(--coral-600); }
.ct-office{ display:grid; grid-template-columns:minmax(0,1.15fr) minmax(0,1fr); gap:96px; align-items:center; padding-block:64px; }
.abc-contacts .ct-section-lead{ font-size:16px; line-height:1.75; color:var(--ink-mute); max-width:490px; margin-top:24px; }
.ct-map-links{ display:flex; flex-direction:column; align-items:start; gap:4px; margin-top:20px; }
.ct-address-card{ background:var(--honey-100); border:1px solid var(--honey-200); padding:32px; border-radius:var(--r-md); }
.abc-contacts .ct-address-card .ct-kicker{ color:var(--ink-soft); }
.ct-address{ font-size:24px; line-height:1.55; font-weight:500; }
.abc-contacts .ct-office-hours{ border-top:1px solid var(--honey-300); padding-top:20px; margin-top:24px; font-size:14px; }
.ct-requisites-section{ padding-block:56px; background:var(--paper-3); border-block:1px solid var(--ink-line); }
.ct-heading{ display:flex; justify-content:space-between; align-items:center; gap:24px; margin-bottom:32px; }
.ct-copy-all{ font-size:13px; gap:16px; }
.ct-requisites{ display:grid; grid-template-columns:1fr 1fr; column-gap:48px; margin:0; }
.ct-requisite{ border-top:1px solid var(--ink-line); padding-block:20px; min-width:0; }
.ct-requisite:has(#rv-legal){ grid-column:1 / -1; }.ct-requisite:has(#rv-addr){ grid-column:1 / -1; }.ct-requisite:has(#rv-rs){ grid-column:1 / -1; }.ct-requisite:has(#rv-ks){ grid-column:1 / -1; }
.ct-requisite dt{ font-size:12px; color:var(--ink-mute); margin-bottom:8px; }
.ct-requisite dd{ display:flex; justify-content:space-between; align-items:center; gap:20px; margin:0; font-size:18px; line-height:1.6; font-variant-numeric:tabular-nums; }
.ct-requisite dd>span{ min-width:0; overflow-wrap:anywhere; }
.ct-copy{ display:grid; place-items:center; width:44px; height:44px; flex:none; border:1px solid var(--ink-line); border-radius:var(--r-sm); background:transparent; color:var(--ink-mute); cursor:pointer; }
.ct-copy:hover{ background:var(--paper-2); color:var(--ink); }
.ct-copy .ct-icon{ width:18px; height:18px; }
.ct-manual-copy{ margin-top:20px; }
.ct-manual-copy label{ display:block; font-size:14px; margin-bottom:8px; }
.ct-manual-copy textarea{ width:100%; padding:16px; border:1px solid var(--ink-line); border-radius:var(--r-sm); background:var(--paper); color:var(--ink); font:14px/1.7 var(--ff-body); resize:vertical; }
/* Без JS кнопки копирования скрыты, настоящие реквизиты остаются обычным текстом. */
.abc-contacts main [hidden]{ display:none; }
.ct-final{ background:var(--ink); color:var(--paper); padding-block:64px; }
.ct-final-grid{ display:grid; grid-template-columns:minmax(0,1.1fr) minmax(0,1fr); align-items:center; gap:96px; }
.abc-contacts .ct-final .ct-kicker{ color:var(--honey-400); }
.ct-final-copy>p:not(.ct-kicker){ font-size:16px; line-height:1.75; color:var(--ink-pale); margin-top:24px; max-width:540px; }
.ct-free-note{ border-left:2px solid var(--honey-400); padding-left:20px; margin-top:32px; }
.ct-free-note p{ font-size:18px; line-height:1.6; }
.ct-free-note .ct-link{ color:var(--honey-400); font-size:13px; margin-top:12px; }
.ct-form.form-card{ background:var(--paper-3); color:var(--ink); border:0; border-radius:12px; padding:32px; box-shadow:none; }
.ct-form fieldset{ border:0; margin:0; padding:0; min-width:0; }
.abc-contacts .ct-form .abc-form-title{ font:600 24px/1.2 var(--ff-display); margin:0 0 24px; }
.ct-office{ scroll-margin-top:112px; }.ct-requisites-section{ scroll-margin-top:112px; }.ct-final{ scroll-margin-top:112px; }[id^="rv-"]{ scroll-margin-top:112px; }
.ct-skip:not(:focus){ position:absolute; width:1px; height:1px; overflow:hidden; clip-path:inset(50%); }
.ct-skip:focus{ position:fixed; top:12px; left:12px; z-index:10000; padding:12px; background:var(--honey-400); color:var(--ink); }
.ct-noscript{ display:flex; flex-wrap:wrap; gap:20px; padding-block:24px; }
@media(max-width:1100px) {.ct-intro{ gap:40px;}.ct-office{ gap:40px; }.ct-final-grid{ gap:40px; }.ct-phone{ font-size:26px; }.ct-email{ font-size:22px; }
 .ct-channels{ padding:24px; }.ct-address-card{ padding:24px; }.ct-address{ font-size:21px; }
}
@media(max-width:760px) {
 .ct-intro{ grid-template-columns:1fr; gap:28px;}.ct-office{ grid-template-columns:1fr; gap:28px; }.ct-final-grid{ grid-template-columns:1fr; gap:28px; }
 .abc-contacts .ct-lead{ margin-top:20px;}.ct-intro .btn{ margin-top:24px;}
 .ct-phone{ font-size:25px; }.ct-email{ font-size:23px; }
 .ct-nav{ gap:0 24px; padding-block:12px; }.ct-nav a{ font-size:13px; gap:12px; }.ct-nav .ct-icon{ width:18px; height:18px; }
 .ct-office{ padding-block:40px; }.abc-contacts .ct-section-lead{ font-size:15px; margin-top:20px; }
 .ct-requisites-section{ padding-block:40px; }.ct-heading{ display:block; margin-bottom:24px; }.ct-copy-all{ margin-top:20px; }
 .ct-requisites{ grid-template-columns:1fr; }.ct-requisite{ grid-column:auto!important; padding-block:16px; }
 .ct-requisite dd{ font-size:16px; gap:16px; }
 .ct-final{ padding-block:44px; }
 .ct-final-copy>p:not(.ct-kicker){ font-size:15px; margin-top:20px; }.ct-form.form-card{ padding:24px; }
 .ct-office{ scroll-margin-top:96px; }.ct-requisites-section{ scroll-margin-top:96px; }.ct-final{ scroll-margin-top:96px; }[id^="rv-"]{ scroll-margin-top:96px; }
}
@media(max-width:360px) {.ct-phone{ font-size:21px; }.ct-email{ font-size:20px; }
 .ct-channels{ padding:20px; }.ct-address-card{ padding:20px; }.ct-form.form-card{ padding:20px; }.ct-requisite dd{ font-size:14px; gap:8px; }
 .ct-copy-all{ width:100%; padding-inline:12px; font-size:12px; }.ct-free-note .ct-link{ gap:8px; font-size:12px; }
}
