/* CompanyHub — Stas-Clear. No global theme overrides. */
.companyhub-profile { --ch-border:#d9dfe8; --ch-muted:#566477; --ch-accent:#175ac6; --ch-surface:#fff; overflow-wrap:anywhere; }
.companyhub-profile__header { border:1px solid var(--ch-border); border-radius:12px; background:var(--ch-surface); }
.companyhub-profile__cover { position:relative; height:240px; overflow:hidden; border-radius:11px 11px 0 0; background:#edf1f7; }
.companyhub-profile__stars { display:inline-block; position:relative; white-space:nowrap; color:#705000; font-size:20px; line-height:1; }
.companyhub-profile__stars span { position:absolute; left:0; top:0; overflow:hidden; }
.companyhub-profile__cover--empty { --ch-cover-a:hsl(var(--ch-cover-hue) 34% 28%); --ch-cover-b:hsl(calc(var(--ch-cover-hue) + 34) 38% 45%); height:auto; min-height:180px; aspect-ratio:3/1; background:linear-gradient(135deg,var(--ch-cover-a),var(--ch-cover-b)); }
.companyhub-profile__cover img { width:100%; height:100%; object-fit:cover; }
.companyhub-profile__identity { display:grid; grid-template-columns:minmax(0,1fr) 250px; gap:22px; padding:24px; align-items:start; }
.companyhub-profile__intro { min-width:0; }
.companyhub-profile__intro h1 { display:flex; align-items:center; flex-wrap:wrap; gap:8px; font-size:clamp(24px,3vw,34px); line-height:1.18; margin:0 0 12px; }
.companyhub-profile__intro p { margin:0; color:var(--ch-muted); }
.companyhub-profile__intro .companyhub-profile__legal-name { margin-bottom:6px; color:#344358; font-weight:600; }
.companyhub-profile .companyhub-profile__trust { --ch-trust-fill:#7f8b99; --ch-trust-check:#fff; position:relative; display:inline-flex; flex:0 0 23px; width:23px; min-width:23px; max-width:23px; height:23px; min-height:23px; max-height:23px; aspect-ratio:1; padding:0; color:inherit; cursor:help; }
.companyhub-profile .companyhub-profile__trust svg { display:block; flex:none; width:23px; min-width:23px; max-width:23px; height:23px; min-height:23px; max-height:23px; aspect-ratio:1; overflow:visible; }
.companyhub-profile__trust-seal { fill:var(--ch-trust-fill); }
.companyhub-profile__trust-check { fill:none; stroke:var(--ch-trust-check); stroke-width:2.2; stroke-linecap:round; stroke-linejoin:round; }
/* Статусы — с той же специфичностью, что базовое правило выше, иначе серый цвет перебивает синий и золотой. */
.companyhub-profile .companyhub-profile__trust--review { --ch-trust-fill:#1d9bf0; }
.companyhub-profile .companyhub-profile__trust--verified { --ch-trust-fill:#f4c430; --ch-trust-check:#332800; }
.companyhub-profile__trust::after { content:attr(data-companyhub-tooltip); position:absolute; z-index:40; left:50%; top:calc(100% + 8px); width:max-content; max-width:min(280px,calc(100vw - 32px)); padding:7px 9px; border-radius:6px; background:#202a37; color:#fff; box-shadow:0 6px 18px rgba(26,39,57,.2); font-size:13px; font-weight:500; line-height:1.35; white-space:normal; opacity:0; pointer-events:none; transform:translate(-50%,-3px); transition:opacity .15s ease,transform .15s ease; }
.companyhub-profile__trust:hover::after,.companyhub-profile__trust:focus-visible::after { opacity:1; transform:translate(-50%,0); }
/* 0.2.10: скрытая подсказка не участвует в раскладке — у значка у правого края она растягивала страницу на телефоне (горизонтальная прокрутка). */
.companyhub-profile__trust:not(:hover):not(:focus-visible)::after { display:none; }
.companyhub-profile__facts { display:flex; flex-wrap:wrap; gap:7px; margin:0 0 10px; }
.companyhub-profile__facts span { display:inline-flex; align-items:center; min-height:30px; padding:4px 9px; border:1px solid #dfe5ed; border-radius:999px; background:#f8fafc; color:#344358; font-size:.875rem; }
.companyhub-profile__logo { display:block; position:relative; margin-top:-64px; margin-bottom:18px; border:4px solid var(--ch-surface); border-radius:12px; background:var(--ch-surface); box-shadow:0 3px 12px rgba(26,39,57,.14); object-fit:contain; }
.companyhub-profile__logo--placeholder { width:96px; height:96px; display:flex; align-items:center; justify-content:center; color:#fff; background:var(--ch-accent); font-size:38px; font-weight:800; }
.companyhub-profile__actions { display:grid; gap:10px; align-items:start; }
.companyhub-profile .companyhub-profile__button { display:flex; align-items:center; justify-content:center; min-height:44px; padding:10px 14px; text-align:center; border:1px solid var(--ch-accent); border-radius:6px; color:var(--ch-accent); text-decoration:none; line-height:1.3; }
.companyhub-profile button.companyhub-profile__button { background:#fff; font:inherit; cursor:pointer; }
.companyhub-profile .companyhub-profile__button--primary { background:var(--ch-accent); color:#fff; }
.companyhub-profile .companyhub-profile__button:hover { text-decoration:underline; }
.companyhub-profile a:focus-visible,.companyhub-profile button:focus-visible,.companyhub-profile summary:focus-visible { outline:3px solid var(--ch-accent); outline-offset:3px; }
.companyhub-profile__nav { display:flex; gap:0 24px; padding:0 24px; border-top:1px solid var(--ch-border); }
.companyhub-profile__nav a,.companyhub-profile__tab { padding:14px 0; color:var(--ch-muted); }
.companyhub-profile__tab { border:0; border-bottom:3px solid transparent; background:transparent; font:inherit; cursor:pointer; }
.companyhub-profile__tab span { display:inline-flex; flex:none; align-items:center; justify-content:center; min-width:18px; height:18px; margin-left:4px; padding:0 5px; border-radius:999px; background:#edf1f7; color:#42516a; font-size:11px; font-weight:400; line-height:1; }
.companyhub-profile__nav a[aria-current],.companyhub-profile__tab[aria-selected="true"] { color:var(--ch-accent); border-bottom:3px solid var(--ch-accent); }
.companyhub-profile__body { display:flex; flex-wrap:wrap; gap:28px; padding:24px 0; }
.companyhub-profile__main { flex:1 1 440px; min-width:0; }
.companyhub-profile__overview { min-width:0; }
.companyhub-profile__section-title { margin:0 0 18px; font-size:24px; line-height:1.3; color:#2d3436; }
.companyhub-profile__overview .f_content .value { white-space:pre-line; line-height:1.65; }
.companyhub-profile__updated { margin-top:18px; padding-top:14px; border-top:1px solid var(--ch-border); color:var(--ch-muted); font-size:.875rem; }
.companyhub-profile__updated time { color:#344358; font-weight:600; }
.companyhub-profile__video { min-width:0; }
.companyhub-profile__video iframe { width:100%; aspect-ratio:16/9; height:auto; margin:0 0 18px; border:0; border-radius:10px; }
.companyhub-news__heading .companyhub-profile__section-title,.companyhub-reviews__heading .companyhub-profile__section-title { margin-bottom:0; }
.companyhub-reviews__summary { display:grid; grid-template-columns:1fr 1fr; margin-bottom:28px; border-radius:12px; background:#f4f5f7; overflow:hidden; }
.companyhub-reviews__score,.companyhub-reviews__rate { min-width:0; min-height:122px; padding:24px 28px; }
.companyhub-reviews__score { display:flex; align-items:center; gap:24px; }
.companyhub-reviews__score>strong { flex:0 0 auto; color:#3f4247; font-size:54px; font-weight:500; line-height:1; }
.companyhub-reviews__score>div { display:flex; flex-direction:column; gap:8px; min-width:0; }
.companyhub-reviews__score .companyhub-profile__stars { color:#c7ccd3; font-size:22px; }
.companyhub-reviews__score .companyhub-profile__stars span { color:#f5b900; }
.companyhub-reviews__score small,.companyhub-reviews__rate small { color:#4d5868; font-size:14px; }
.companyhub-reviews__rate { display:flex; align-items:center; justify-content:space-between; gap:18px; border-left:1px solid #e1e3e7; }
.companyhub-reviews__rate-copy { display:flex; flex-direction:column; gap:3px; line-height:1.25; }
.companyhub-reviews__rating-widget { flex:0 0 auto; }
.companyhub-reviews__rating-widget .companyhub-native-rating { margin:0; }
.companyhub-reviews__rating-widget .companyhub-native-rating>.rating_label,.companyhub-reviews__rating-widget .companyhub-native-rating>small { display:none; }
.companyhub-reviews__heading { display:flex; align-items:baseline; justify-content:space-between; gap:12px; flex-wrap:wrap; margin-bottom:8px; padding-top:26px; border-top:1px solid var(--ch-border); }
.companyhub-reviews__heading h2,.companyhub-reviews__heading p { margin:0; }
.companyhub-reviews__heading-actions { display:flex; align-items:center; justify-content:flex-end; gap:12px 16px; flex-wrap:wrap; }
/* «Написать отзыв» во вкладке — такая же «таблетка», как «Добавить» в других вкладках. */
.companyhub-reviews__write { display:inline-flex; flex:none; align-items:center; justify-content:center; height:30px; padding:0 14px; border:1px solid var(--ch-accent); border-radius:999px; background:transparent; color:var(--ch-accent); font:inherit; font-size:14px; font-weight:500; line-height:1; white-space:nowrap; text-decoration:none; cursor:pointer; transition:background-color .15s ease,color .15s ease; }
.companyhub-reviews__write:hover,.companyhub-reviews__write:focus,.companyhub-reviews__write[aria-expanded="true"] { background:var(--ch-accent); color:#fff; text-decoration:none; }
.companyhub-reviews__empty { padding:24px 0; color:var(--ch-muted); }
.companyhub-reviews__more { display:flex; align-items:center; justify-content:center; gap:12px; padding:24px 0 4px; }
.companyhub-reviews__more-button { min-height:40px; padding:7px 18px; border:1px solid var(--ch-border); border-radius:6px; background:#fff; color:var(--ch-accent); font:inherit; cursor:pointer; }
.companyhub-reviews__more-button:hover,.companyhub-reviews__more-button:focus { border-color:var(--ch-accent); }
.companyhub-reviews__more-button:disabled { opacity:.65; cursor:wait; }
.companyhub-reviews__more [role="status"] { color:var(--ch-muted); font-size:14px; }
.companyhub-reviews__composer { padding:18px; margin-top:22px; border:1px solid var(--ch-border); border-radius:10px; background:#f8fafc; }
.companyhub-reviews__composer h3 { margin:0 0 20px; font-size:20px; }
.companyhub-reviews__rating-field { padding:0; margin:0 0 18px; border:0; }
.companyhub-reviews__rating-field legend { width:auto; margin:0 0 8px; font-size:16px; }
.companyhub-reviews__rating-field legend span,.companyhub-reviews__composer label>span { color:#bd3544; }
.companyhub-reviews__rating-options { display:inline-flex; gap:3px; }
.companyhub-reviews__rating-options label { position:relative; display:grid; place-items:center; width:42px; height:42px; margin:0; cursor:pointer; }
.companyhub-reviews__rating-options input { position:absolute; width:100%; height:100%; margin:0; opacity:0; cursor:pointer; }
.companyhub-reviews__rating-options label>span[aria-hidden] { color:#c7ced8; font-size:34px; line-height:1; pointer-events:none; }
.companyhub-reviews__rating-options[data-score="1"] label:nth-child(-n+1)>span[aria-hidden],.companyhub-reviews__rating-options[data-score="2"] label:nth-child(-n+2)>span[aria-hidden],.companyhub-reviews__rating-options[data-score="3"] label:nth-child(-n+3)>span[aria-hidden],.companyhub-reviews__rating-options[data-score="4"] label:nth-child(-n+4)>span[aria-hidden],.companyhub-reviews__rating-options[data-score="5"] label:nth-child(-n+5)>span[aria-hidden] { color:#e5a000; }
.companyhub-reviews__rating-options input:focus-visible+span { outline:2px solid var(--ch-accent); outline-offset:2px; border-radius:3px; }
.companyhub-reviews__composer textarea { margin:8px 0 0; }
.companyhub-reviews__composer-hint { color:var(--ch-muted); font-size:13px; margin:8px 0 18px; }
.companyhub-reviews__composer .cp_toolbar { display:none; }
.companyhub-native-rating { display:flex; align-items:center; gap:12px; flex-wrap:wrap; margin-bottom:14px; }
.companyhub-native-rating .stars { display:flex; gap:2px; }
.companyhub-native-rating .star { width:26px; height:30px; margin:0; padding:4px; border:0; background:transparent; color:#c5cbd4; cursor:default; }
.companyhub-native-rating .star svg { display:block; width:18px; height:22px; fill:currentColor; }
.companyhub-native-rating .stars[data-stars="1"] .star:nth-child(-n+1),.companyhub-native-rating .stars[data-stars="2"] .star:nth-child(-n+2),.companyhub-native-rating .stars[data-stars="3"] .star:nth-child(-n+3),.companyhub-native-rating .stars[data-stars="4"] .star:nth-child(-n+4),.companyhub-native-rating .stars[data-stars="5"] .star:nth-child(-n+5) { color:#d39a00; }
.companyhub-native-rating .is_enabled .star { cursor:pointer; }
.companyhub-native-rating .is_enabled .star:hover,.companyhub-native-rating .is_enabled .star:has(~ .star:hover) { color:#d39a00; }
.companyhub-review { padding:24px 0; border-bottom:1px solid var(--ch-border); }
.companyhub-review__header { display:flex; align-items:flex-start; gap:12px; }
.companyhub-review__avatar { display:block; flex:0 0 42px; width:42px; height:42px; overflow:hidden; border-radius:50%; background:#e8eef8; }
.companyhub-review__avatar>img,.companyhub-review__avatar>.default_avatar { display:block; width:100%; height:100%; border-radius:50%; object-fit:cover; }
.companyhub-review__avatar>.default_avatar>img { width:100%; height:100%; object-fit:cover; }
.companyhub-review__author { display:flex; flex-direction:column; gap:5px; min-width:0; }
.companyhub-review__author>strong { font-size:16px; }
.companyhub-review__header-actions { display:flex; flex-wrap:wrap; justify-content:flex-end; gap:8px 14px; margin-left:auto; text-align:right; }
.companyhub-review__header-actions button,.companyhub-review__response-action button,.companyhub-review__reply-edit { padding:0; border:0; background:transparent; color:var(--ch-accent); font:inherit; font-size:13px; line-height:1.4; cursor:pointer; }
.companyhub-review__header-actions button:hover,.companyhub-review__header-actions button:focus,.companyhub-review__response-action button:hover,.companyhub-review__response-action button:focus,.companyhub-review__reply-edit:hover,.companyhub-review__reply-edit:focus { text-decoration:underline; }
.companyhub-review__response-action { display:flex; justify-content:flex-end; margin:4px 0 12px; }
@media(max-width:520px) { .companyhub-review__header { flex-wrap:wrap; } .companyhub-review__header-actions { flex-basis:100%; justify-content:flex-start; margin-left:54px; text-align:left; } }
.companyhub-review__meta { display:flex; align-items:center; gap:10px; flex-wrap:wrap; }
.companyhub-review__meta span { color:#d39a00; letter-spacing:1px; }
.companyhub-review__meta time { color:var(--ch-muted); font-size:.875em; }
.companyhub-review>p { margin:14px 0; font-size:16px; line-height:1.55; }
.companyhub-review__reply { display:flex; align-items:flex-start; gap:12px; margin:18px 0 16px 28px; font-style:normal; }
.companyhub-review__reply-logo { display:flex; flex:0 0 40px; align-items:center; justify-content:center; width:40px; height:40px; overflow:hidden; border:1px solid #e5eaf0; border-radius:10px; background:#fff; color:#344358; font-size:20px; font-weight:600; }
.companyhub-review__reply-logo img { display:block; width:100%; height:100%; object-fit:contain; }
.companyhub-review__reply-content { flex:1 1 auto; min-width:0; padding:13px 16px 14px; border-radius:12px; background:#f5f7fa; }
.companyhub-review__reply-meta { display:flex; align-items:center; gap:5px 10px; flex-wrap:wrap; line-height:1.35; }
.companyhub-review__reply-meta strong { color:#263647; font-size:15px; font-style:normal; }
.companyhub-review__reply-meta span { padding:2px 7px; border-radius:5px; background:#e8edf3; color:#435569; font-size:12px; font-style:normal; }
.companyhub-review__reply-meta time { color:var(--ch-muted); font-size:13px; font-style:normal; }
.companyhub-review__reply-edit { margin-left:auto; white-space:nowrap; }
.companyhub-review__reply-content p { margin:10px 0 0; color:#263647; font-size:15px; line-height:1.55; font-style:normal; }
@media(max-width:520px) { .companyhub-review__reply { gap:9px; margin-left:0; } .companyhub-review__reply-logo { flex-basis:36px; width:36px; height:36px; } .companyhub-review__reply-content { padding:12px; } }
.companyhub-review-dialog { width:min(520px,calc(100% - 32px)); max-height:calc(100% - 32px); padding:24px; border:1px solid var(--ch-border); border-radius:12px; box-shadow:0 20px 60px rgba(20,35,55,.22); color:inherit; }
.companyhub-review-dialog::backdrop { background:rgba(22,35,52,.52); }
.companyhub-review-dialog__heading { display:flex; align-items:flex-start; justify-content:space-between; gap:16px; margin-bottom:18px; }
.companyhub-review-dialog__heading h2 { margin:0; font-size:21px; line-height:1.3; }
.companyhub-review-dialog__close { flex:0 0 auto; padding:0 4px; border:0; background:transparent; color:var(--ch-muted); font-size:28px; line-height:1; cursor:pointer; }
.companyhub-review-dialog label { display:block; margin-bottom:4px; font-weight:600; }
.companyhub-review-dialog__hint { margin:0 0 12px; color:var(--ch-muted); font-size:14px; }
.companyhub-review-dialog textarea { width:100%; min-height:140px; resize:vertical; }
.companyhub-review-dialog__actions { display:flex; justify-content:flex-end; gap:10px; margin-top:18px; }
@media(max-width:520px) { .companyhub-review-dialog { padding:18px; } .companyhub-review-dialog__actions { flex-wrap:wrap; } }
.companyhub-profile [data-companyhub-panel][hidden] { display:none !important; }
.companyhub-profile__empty-offerings { margin-bottom:16px; }
.companyhub-profile__empty-offerings p { margin-bottom:0; }
.companyhub-profile__fill-actions { display:flex; flex-wrap:wrap; gap:0 20px; }
.companyhub-profile__fill-actions a { display:flex; align-items:center; min-height:44px; }
.companyhub-profile__contacts { flex:0 1 290px; min-width:0; align-self:flex-start; position:sticky; top:16px; padding:20px; border:1px solid var(--ch-border); border-radius:10px; background:#f5f9ff; }
.companyhub-profile__contacts h2 { font-size:20px; margin:0 0 12px; }
.companyhub-profile__contacts summary { cursor:pointer; color:var(--ch-accent); min-height:44px; padding:8px 0; }
.companyhub-profile__contacts p { margin:12px 0 0; }
.companyhub-profile__contacts span { color:var(--ch-muted); font-size:.875em; }
.companyhub-profile__contacts a { color:var(--ch-accent); }
.companyhub-profile__socials { margin-top:12px; }
.companyhub-profile__working-hours { margin-top:16px; }
.companyhub-profile__working-hours .workhours-output { display:grid; gap:9px; min-width:0; }
:is(.companyhub-profile__working-hours,.companyhub-profile__brief-status) .workhours-status { display:inline-flex; align-items:center; gap:7px; color:var(--ch-muted); font-size:13px; line-height:1.35; font-weight:600; }
:is(.companyhub-profile__working-hours,.companyhub-profile__brief-status) .workhours-status::before { content:""; flex:0 0 8px; width:8px; height:8px; border-radius:50%; background:#8993a1; box-shadow:0 0 0 3px rgba(137,147,161,.14); }
:is(.companyhub-profile__working-hours,.companyhub-profile__brief-status) .workhours-status--open,:is(.companyhub-profile__working-hours,.companyhub-profile__brief-status) .workhours-status--24h { color:#187743; }
:is(.companyhub-profile__working-hours,.companyhub-profile__brief-status) .workhours-status--open::before,:is(.companyhub-profile__working-hours,.companyhub-profile__brief-status) .workhours-status--24h::before { background:#28a35f; box-shadow:0 0 0 3px rgba(40,163,95,.14); }
:is(.companyhub-profile__working-hours,.companyhub-profile__brief-status) .workhours-status--break { color:#946000; }
:is(.companyhub-profile__working-hours,.companyhub-profile__brief-status) .workhours-status--break::before { background:#d99a1b; box-shadow:0 0 0 3px rgba(217,154,27,.16); }
:is(.companyhub-profile__working-hours,.companyhub-profile__brief-status) .workhours-status--closed { color:#a63a46; }
:is(.companyhub-profile__working-hours,.companyhub-profile__brief-status) .workhours-status--closed::before { background:#d65a67; box-shadow:0 0 0 3px rgba(214,90,103,.14); }
.companyhub-profile__working-hours .workhours-view { display:grid; gap:0; min-width:0; border-top:1px solid var(--ch-border); }
.companyhub-profile__working-hours .workhours-view>div { display:grid; grid-template-columns:46px minmax(0,1fr); align-items:start; gap:9px; padding:6px 0; border-bottom:1px solid var(--ch-border); }
.companyhub-profile__working-hours .workhours-view span { min-width:0; color:var(--ch-muted); font-size:12px; line-height:1.45; white-space:nowrap; }
.companyhub-profile__working-hours .workhours-view strong { display:grid; gap:2px; min-width:0; color:var(--ch-ink); font-size:13px; line-height:1.45; font-weight:400; text-align:left; overflow-wrap:anywhere; }
.companyhub-profile__working-hours .workhours-view__break { display:block; color:var(--ch-muted); font-size:12px; }
.companyhub-profile__contact-label { display:block; margin-bottom:7px; }
.companyhub-profile__contacts .ch-social-link span { color:inherit; font-size:inherit; }
.companyhub-profile__contacts-empty { padding:12px; border-radius:8px; background:#f3f5f8; color:var(--ch-muted); }
.companyhub-profile__mobile-actions { display:none; }
/* Вкладки — всегда в одну строку (0.2.16; раньше только до 760 px, шире переносились на вторую строку).
   Что не помещается — листается свайпом и перетаскиванием мышью, с затуханием у края; в режиме «⋮» — уходит в список. */
.companyhub-profile__nav { flex-wrap:nowrap; overflow-x:auto; overflow-y:hidden; -webkit-overflow-scrolling:touch; overscroll-behavior-x:contain; scroll-padding-inline:24px; scrollbar-width:none; }
.companyhub-profile__nav::-webkit-scrollbar { display:none; }
.companyhub-profile__nav a,.companyhub-profile__tab { flex:0 0 auto; white-space:nowrap; touch-action:manipulation; }
.companyhub-profile__nav--more-right { -webkit-mask-image:linear-gradient(to right,#000 calc(100% - 48px),transparent); mask-image:linear-gradient(to right,#000 calc(100% - 48px),transparent); }
.companyhub-profile__nav--more-left { -webkit-mask-image:linear-gradient(to left,#000 calc(100% - 48px),transparent); mask-image:linear-gradient(to left,#000 calc(100% - 48px),transparent); }
.companyhub-profile__nav--more-left.companyhub-profile__nav--more-right { -webkit-mask-image:linear-gradient(to right,transparent,#000 48px,#000 calc(100% - 48px),transparent); mask-image:linear-gradient(to right,transparent,#000 48px,#000 calc(100% - 48px),transparent); }
.companyhub-profile__nav--more-left,.companyhub-profile__nav--more-right { cursor:grab; }
.companyhub-profile__nav.is-dragging { cursor:grabbing; user-select:none; }
/* Режим «⋮»: строка без прокрутки, остальные вкладки — в списке. */
.companyhub-profile__nav--more { overflow:visible; -webkit-mask-image:none; mask-image:none; }
.companyhub-profile__tab--hidden { display:none !important; }
.companyhub-profile__more { position:relative; flex:0 0 auto; margin-left:auto; display:flex; align-items:center; }
.companyhub-profile__more[hidden] { display:none; }
.companyhub-profile__more-toggle { display:flex; align-items:center; justify-content:center; width:44px; height:44px; margin-right:-12px; border:0; border-radius:50%; background:transparent; color:var(--ch-muted); cursor:pointer; }
.companyhub-profile__more-toggle svg { fill:currentColor; }
.companyhub-profile__more-toggle[aria-expanded="true"],.companyhub-profile__more-toggle:hover { background:#edf1f7; color:var(--ch-accent); }
.companyhub-profile__more-menu { position:absolute; z-index:40; top:calc(100% + 4px); right:-8px; min-width:200px; max-width:calc(100vw - 32px); padding:6px 0; border:1px solid var(--ch-border); border-radius:10px; background:#fff; box-shadow:0 10px 28px rgba(26,39,57,.16); }
.companyhub-profile__more-menu[hidden] { display:none; }
.companyhub-profile__more-item { display:flex; align-items:center; gap:6px; width:100%; min-height:44px; padding:10px 16px; border:0; background:transparent; color:var(--ch-ink,#263442); font:inherit; text-align:left; cursor:pointer; }
.companyhub-profile__more-item:hover,.companyhub-profile__more-item:focus { background:#f3f6fb; outline:none; }
.companyhub-profile__more-item span { display:inline-flex; align-items:center; justify-content:center; min-width:18px; height:18px; padding:0 5px; border-radius:999px; background:#edf1f7; color:#42516a; font-size:11px; line-height:1; }
.companyhub-products { margin-top:28px; min-width:0; container-type:inline-size; }
.companyhub-products__heading { display:flex; align-items:baseline; justify-content:space-between; gap:16px; flex-wrap:wrap; margin-bottom:12px; }
.companyhub-products__heading h2,.companyhub-products__heading h3 { font-size:21px; margin:0; }
.companyhub-profile [data-companyhub-panel="products"] { margin-top:0; }
.companyhub-products__controls { display:flex; align-items:center; justify-content:flex-end; gap:10px; margin-top:16px; }
.companyhub-products__controls[hidden] { display:none; }
.companyhub-products__controls output { min-width:92px; text-align:center; color:var(--ch-muted,#697586); font-size:13px; }
.companyhub-products__controls button { width:40px; height:40px; padding:0; border:1px solid var(--ch-border,#e1e3e7); border-radius:9px; background:#fff; color:var(--ch-ink,#263442); font-size:20px; cursor:pointer; }
.companyhub-products__controls button:disabled { opacity:.35; cursor:default; }
.companyhub-products__controls button:focus-visible,.companyhub-products__track:focus-visible { outline:3px solid var(--ch-accent); outline-offset:3px; }
.companyhub-products__track { display:flex; align-items:stretch; gap:16px; overflow-x:auto; scroll-snap-type:x mandatory; scroll-padding-inline:2px; overscroll-behavior-x:contain; scrollbar-width:thin; scrollbar-color:#c9d5e7 transparent; padding:2px 2px 8px; cursor:grab; }
.companyhub-products__track.is-dragging { cursor:grabbing; scroll-snap-type:none; user-select:none; }
.companyhub-products__track::-webkit-scrollbar { display:none; }
.companyhub-products__card { flex:0 0 min(280px,calc((100% - 32px)/3)); min-width:0; padding:12px; border:1px solid var(--ch-border,#e1e3e7); border-radius:12px; background:#fff; scroll-snap-align:start; }
.companyhub-products__media { display:flex; align-items:center; justify-content:center; position:relative; height:176px; padding:20px; border-radius:9px; background:#f5f7fb; }
.companyhub-products__media img { display:block; max-width:100%; max-height:100%; width:auto; height:auto; object-fit:contain; }
.companyhub-products__card>a>img { display:block; width:100%; height:176px; padding:20px; border-radius:9px; background:#f5f7fb; object-fit:contain; }
.companyhub-products__type { position:absolute; top:8px; left:8px; padding:3px 8px; border:1px solid var(--ch-border,#e1e3e7); border-radius:5px; background:rgba(255,255,255,.95); color:var(--ch-ink,#263442); font-size:11px; line-height:1.4; font-weight:500; pointer-events:none; }
.companyhub-products__placeholder { display:flex; align-items:center; justify-content:center; color:var(--ch-muted); font-size:14px; }
.companyhub-products__card h3 { font-size:17px; line-height:1.35; margin:13px 0 7px; }
.companyhub-products__card p { display:-webkit-box; -webkit-box-orient:vertical; -webkit-line-clamp:4; overflow:hidden; font-size:14px; line-height:1.5; color:var(--ch-muted); margin:0; }
.companyhub-products__fields { display:grid; gap:5px; margin:9px 0 0; font-size:12px; line-height:1.45; }
.companyhub-products__fields div { display:flex; flex-wrap:wrap; gap:3px 6px; min-width:0; }
.companyhub-products__fields dt { color:var(--ch-muted); font-weight:500; }
.companyhub-products__fields dt::after { content:":"; }
.companyhub-products__fields dd { min-width:0; margin:0; color:var(--ch-ink); overflow-wrap:anywhere; }
.companyhub-products__fields ul { display:inline-flex; flex-wrap:wrap; gap:3px 6px; margin:0; padding:0; list-style:none; }
@container (max-width:800px) {
    .companyhub-products__card { flex-basis:min(300px,calc((100% - 16px)/2)); }
}
@container (max-width:520px) {
    .companyhub-products__card { flex-basis:min(300px,86%); }
    .companyhub-products__media { height:160px; }
}
.companyhub-news__heading { display:flex; align-items:center; justify-content:space-between; gap:16px; margin-bottom:20px; }
.companyhub-news__heading h2 { margin:0; }
.companyhub-news__actions { display:flex; align-items:center; justify-content:flex-end; gap:16px; }
/* «Добавить», «Создать альбом» во вкладках: аккуратная «таблетка» с тонкой обводкой, не выше заголовка вкладки. */
.companyhub-news__add { display:inline-flex; flex:none; align-items:center; justify-content:center; gap:5px; height:30px; padding:0 14px 0 12px; border:1px solid var(--ch-accent); border-radius:999px; background:transparent; color:var(--ch-accent); font-size:14px; font-weight:500; line-height:1; white-space:nowrap; text-decoration:none; transition:background-color .15s ease,color .15s ease; }
.companyhub-news__add::before { content:"+"; font-size:17px; font-weight:400; line-height:1; }
.companyhub-news__add:hover,.companyhub-news__add:focus { background:var(--ch-accent); color:#fff; text-decoration:none; }
.companyhub-news__add:focus-visible { outline:3px solid var(--ch-accent); outline-offset:2px; }
.companyhub-news__grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:22px; }
.companyhub-news__card { min-width:0; }
.companyhub-news__card img { width:100%; aspect-ratio:16/9; height:auto; object-fit:cover; border-radius:8px; }
.companyhub-news__card h3 { margin:12px 0 8px; font-size:19px; line-height:1.35; }
.companyhub-news__card p { margin:0; color:var(--ch-muted); }
@media(max-width:760px) {
    body:has(.companyhub-profile__mobile-actions) { padding-bottom:74px; }
    .companyhub-profile { padding-bottom:74px; }
    .companyhub-profile__cover { height:auto; aspect-ratio:16/9; }
    .companyhub-profile__cover--empty { height:auto; aspect-ratio:16/9; }
    .companyhub-profile__identity { grid-template-columns:minmax(0,1fr); padding:20px; gap:20px; }
    /* Сайт есть в нижней панели быстрых действий. */
    .companyhub-profile__actions>.companyhub-profile__button--site { display:none; }
    .companyhub-profile__nav { gap:24px; padding:0 20px; scroll-padding-inline:20px; }
    .companyhub-profile__body { flex-direction:column; gap:20px; }
    .companyhub-profile__main { order:2; width:100%; flex:0 0 auto; }
    .companyhub-profile__contacts { order:1; position:static; width:100%; flex-basis:auto; }
    /* С вкладкой «Контакты» содержимое вкладки идёт сразу под меню, сведения о компании — ниже. */
    .companyhub-profile--tabs .companyhub-profile__main { order:1; }
    .companyhub-profile--tabs .companyhub-profile__contacts { order:2; }
    .companyhub-profile__mobile-actions { position:fixed; z-index:30; left:50%; bottom:0; transform:translateX(-50%); display:flex; width:min(100%,720px); padding:8px max(12px,env(safe-area-inset-left)) calc(8px + env(safe-area-inset-bottom)) max(12px,env(safe-area-inset-right)); border-top:1px solid var(--ch-border); background:rgba(255,255,255,.97); box-shadow:0 -6px 18px rgba(26,39,57,.12); }
    .companyhub-profile__mobile-actions a { flex:1 1 0; display:flex; align-items:center; justify-content:center; min-height:44px; padding:8px 6px; color:var(--ch-accent); text-align:center; text-decoration:none; }
    .companyhub-profile__mobile-actions a+a { border-left:1px solid var(--ch-border); }
    .companyhub-news__heading { align-items:flex-start; flex-direction:column; }
    .companyhub-news__actions { align-items:flex-start; flex-direction:column; }
    .companyhub-news__grid { grid-template-columns:minmax(0,1fr); }
    .companyhub-reviews__summary { grid-template-columns:minmax(0,1fr); }
    .companyhub-reviews__score,.companyhub-reviews__rate { min-height:0; padding:20px; }
    .companyhub-reviews__rate { border-top:1px solid #e1e3e7; border-left:0; }
}


/* 0.2.0: флаг страны, вкладка «Контакты» с картой, ссылка на все материалы вкладки */
.companyhub-profile__flag { display:inline-block; flex:0 0 auto; width:20px; height:15px; margin-right:6px; border-radius:2px; box-shadow:0 0 0 1px rgba(15,23,42,.1); object-fit:cover; vertical-align:-2px; }

.companyhub-news__all { display:inline-block; margin:0 0 12px; }
/* 0.2.7: «Смотреть все (N) →» под списком вкладки; на телефоне заголовок и «Добавить» в одну строку. */
.companyhub-news__all--more { display:inline-flex; align-items:center; gap:6px; min-height:40px; margin:4px 0 0; padding:8px 14px; border:1px solid var(--ch-border); border-radius:6px; color:var(--ch-accent); font-weight:500; text-decoration:none; }
.companyhub-news__all--more:hover,.companyhub-news__all--more:focus { border-color:var(--ch-accent); color:var(--ch-accent); text-decoration:none; }
@media(max-width:760px) {
    .companyhub-profile__news>.companyhub-news__heading,.companyhub-profile__photos>.companyhub-news__heading { flex-direction:row; align-items:center; flex-wrap:wrap; gap:10px 16px; }
    .companyhub-profile__news>.companyhub-news__heading .companyhub-profile__section-title,.companyhub-profile__photos>.companyhub-news__heading .companyhub-profile__section-title { flex:1 1 auto; min-width:0; font-size:21px; }
}


/* 0.2.3: строка фактов под названием (город первым), направления отдельной строкой. */
/* Разделитель «·» стоит перед каждым фактом и уходит за левый край строки, поэтому при переносе строка не начинается с точки. */
.companyhub-profile__meta { overflow:hidden; margin:0 0 10px !important; color:var(--ch-muted); font-size:.9375rem; line-height:1.5; }
.companyhub-profile__meta-list { display:flex; flex-wrap:wrap; align-items:center; row-gap:4px; margin-left:-24px; }
.companyhub-profile__meta-item { display:inline-flex; align-items:center; gap:6px; }
.companyhub-profile__meta-item::before { content:"·"; flex:0 0 24px; margin-right:-6px; color:#a3adbb; text-align:center; }
.companyhub-profile__meta .companyhub-profile__flag { margin:0; }
.companyhub-profile__directions span[hidden] { display:none; }
.companyhub-profile__directions-toggle { display:inline-flex; align-items:center; min-height:30px; padding:4px 11px; border:1px dashed #c9d3e0; border-radius:999px; background:transparent; color:var(--ch-accent); font:inherit; font-size:.875rem; cursor:pointer; }
.companyhub-profile__directions-toggle:hover { border-style:solid; background:#f3f6fb; }
/* Короткая боковая колонка, когда подробности — во вкладке «Контакты». */
.companyhub-profile__brief-status { margin:12px 0 0; }
.companyhub-profile__brief-status > span { display:block; color:var(--ch-muted); font-size:.875em; }
.companyhub-profile__brief-status .workhours-status { margin:4px 0 0; font-size:inherit; font-weight:500; }
.companyhub-profile__brief-link { display:flex; align-items:center; justify-content:space-between; width:100%; min-height:44px; margin-top:16px; padding:10px 14px; border:1px solid var(--ch-border); border-radius:8px; background:#fff; color:var(--ch-accent); font:inherit; font-weight:600; text-align:left; cursor:pointer; }
.companyhub-profile__brief-link:hover { border-color:var(--ch-accent); }
.companyhub-profile[data-companyhub-active="contacts"] .companyhub-profile__brief-link { display:none; }


/* 0.2.3: рейтинг строкой под названием, одна основная кнопка, второстепенные действия — ссылками. */
.companyhub-profile__rating-line { display:inline-flex; flex-wrap:wrap; align-items:center; gap:4px 8px; margin:-4px 0 10px; padding:0; border:0; background:none; color:#1f2a37; font:inherit; font-size:.9375rem; line-height:1.4; text-align:left; cursor:pointer; }
.companyhub-profile__rating-line .companyhub-profile__stars { color:#d3d9e1; font-size:17px; letter-spacing:1px; }
.companyhub-profile__rating-line .companyhub-profile__stars span { color:#f2a100; }
.companyhub-profile__rating-line strong { font-size:16px; line-height:1; }
.companyhub-profile__rating-note { color:var(--ch-accent); }
.companyhub-profile__rating-line--empty .companyhub-profile__rating-note { color:var(--ch-muted); }
.companyhub-profile__rating-line:hover .companyhub-profile__rating-note { text-decoration:underline; }
.companyhub-profile__rating-line:focus-visible { outline:2px solid var(--ch-accent); outline-offset:3px; border-radius:4px; }
.companyhub-profile__links { display:flex; flex-wrap:wrap; justify-content:center; gap:4px 16px; margin-top:2px; font-size:13px; line-height:1.6; }
.companyhub-profile__links a { color:var(--ch-muted); text-decoration:none; border-bottom:1px dashed #b8c2cf; }
.companyhub-profile__links a:hover,.companyhub-profile__links a:focus { color:var(--ch-accent); border-bottom-color:currentColor; text-decoration:none; }
/* Подсказка ссылки: что даст действие. Текст для экранного диктора — в скрытом span (aria-describedby), на экране — ::after.
   Скрытая подсказка не участвует в раскладке (display:none) — иначе растягивает страницу на телефоне (урок 0.2.10). */
.companyhub-profile__links a[data-companyhub-tooltip] { position:relative; }
.companyhub-profile__links a[data-companyhub-tooltip]::after { content:attr(data-companyhub-tooltip); position:absolute; z-index:40; left:50%; top:calc(100% + 8px); width:max-content; max-width:min(260px,calc(100vw - 32px)); padding:7px 10px; border-radius:6px; background:#202a37; color:#fff; box-shadow:0 6px 18px rgba(26,39,57,.2); font-size:13px; font-weight:400; line-height:1.4; text-align:left; white-space:normal; pointer-events:none; transform:translateX(-50%); }
.companyhub-profile__links a[data-companyhub-tooltip]:not(:hover):not(:focus-visible)::after { display:none; }
.companyhub-profile__hint { position:absolute; width:1px; height:1px; overflow:hidden; clip:rect(0 0 0 0); white-space:nowrap; }
.companyhub-profile__contacts--brief .companyhub-profile__socials { margin-top:14px; }

/* 0.2.3: узоры пустой обложки — только стили, без картинок и запросов. --ch-shift сдвигает узор у разных компаний. */
.companyhub-profile__cover--empty::before,.companyhub-profile__cover--empty::after { content:""; position:absolute; pointer-events:none; }
.companyhub-profile__cover--none::before,.companyhub-profile__cover--none::after { content:none; }
.companyhub-profile__cover--rings::before { width:min(72%,620px); aspect-ratio:1; right:calc(var(--ch-shift,0) * 1% - 14%); top:-48%; border-radius:50%; background:repeating-radial-gradient(circle,transparent 0 32.5px,rgba(255,255,255,.16) 32.5px 34px); -webkit-mask-image:radial-gradient(circle,#000 30%,transparent 71%); mask-image:radial-gradient(circle,#000 30%,transparent 71%); }
.companyhub-profile__cover--rings::after { width:48%; aspect-ratio:1; left:-14%; bottom:-78%; border-radius:50%; background:radial-gradient(circle,rgba(255,255,255,.17),transparent 66%); }
.companyhub-profile__cover--dots::before { inset:0; background-image:radial-gradient(rgba(255,255,255,.34) 1.3px,transparent 1.8px); background-size:20px 20px; -webkit-mask-image:linear-gradient(105deg,transparent 30%,#000 88%); mask-image:linear-gradient(105deg,transparent 30%,#000 88%); }
.companyhub-profile__cover--dots::after { width:42%; aspect-ratio:1; right:calc(var(--ch-shift,0) * 1% - 8%); top:-34%; border-radius:50%; background:radial-gradient(circle,rgba(255,255,255,.2),transparent 68%); }
.companyhub-profile__cover--grid::before { inset:-1px; background-image:linear-gradient(rgba(255,255,255,.12) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.12) 1px,transparent 1px); background-size:36px 36px; -webkit-mask-image:radial-gradient(ellipse at calc(70% + var(--ch-shift,0) * 1%) 22%,#000 0,transparent 68%); mask-image:radial-gradient(ellipse at calc(70% + var(--ch-shift,0) * 1%) 22%,#000 0,transparent 68%); }
.companyhub-profile__cover--grid::after { inset:0; background:radial-gradient(circle at 74% 30%,rgba(255,255,255,.55) 0 3px,transparent 4px),radial-gradient(circle at 86% 58%,rgba(255,255,255,.4) 0 2.5px,transparent 3.5px),radial-gradient(circle at 64% 70%,rgba(255,255,255,.35) 0 2px,transparent 3px),radial-gradient(circle at 92% 18%,rgba(255,255,255,.3) 0 2px,transparent 3px),radial-gradient(ellipse at 80% 40%,rgba(255,255,255,.14),transparent 55%); }
.companyhub-profile__cover--waves::before { inset:0; background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 620 300' preserveAspectRatio='none'%3E%3Cg fill='none' stroke='white' stroke-opacity='.16' stroke-width='1.4'%3E%3Cpath d='M-20 40 C 90 2, 180 82, 300 40 S 520 0, 640 40'/%3E%3Cpath d='M-20 62 C 90 24, 180 104, 300 62 S 520 22, 640 62'/%3E%3Cpath d='M-20 84 C 90 46, 180 126, 300 84 S 520 44, 640 84'/%3E%3Cpath d='M-20 106 C 90 68, 180 148, 300 106 S 520 66, 640 106'/%3E%3Cpath d='M-20 128 C 90 90, 180 170, 300 128 S 520 88, 640 128'/%3E%3Cpath d='M-20 150 C 90 112, 180 192, 300 150 S 520 110, 640 150'/%3E%3Cpath d='M-20 172 C 90 134, 180 214, 300 172 S 520 132, 640 172'/%3E%3Cpath d='M-20 194 C 90 156, 180 236, 300 194 S 520 154, 640 194'/%3E%3Cpath d='M-20 216 C 90 178, 180 258, 300 216 S 520 176, 640 216'/%3E%3Cpath d='M-20 238 C 90 200, 180 280, 300 238 S 520 198, 640 238'/%3E%3Cpath d='M-20 260 C 90 222, 180 302, 300 260 S 520 220, 640 260'/%3E%3C/g%3E%3C/svg%3E") center / 100% 100% no-repeat; -webkit-mask-image:linear-gradient(90deg,transparent 4%,#000 62%); mask-image:linear-gradient(90deg,transparent 4%,#000 62%); }
.companyhub-profile__cover--waves::after { width:40%; aspect-ratio:1; left:calc(var(--ch-shift,0) * 1% + 20%); bottom:-70%; border-radius:50%; background:radial-gradient(circle,rgba(255,255,255,.14),transparent 66%); }

/* Ссылки в тексте «О компании» и служебные подсказки — в акцентном цвете. */
.companyhub-profile__overview > p a,.companyhub-profile__overview .ft_html .value a,.companyhub-profile__overview .ft_text .value a { color:var(--ch-accent); }

/* 0.2.18: ряд аватаров команды под ссылками — внахлёст, в конце «+N»; при наведении и фокусе — «имя — должность».
   Скрытая подсказка не участвует в раскладке (display:none), как у ссылок (урок 0.2.10). */
.companyhub-profile__team { display:flex; flex-direction:column; align-items:center; gap:6px; margin-top:2px; }
.companyhub-profile .companyhub-profile__team-faces { display:flex; flex-wrap:nowrap; justify-content:center; margin:0; padding:0 0 0 8px; list-style:none; }
.companyhub-profile .companyhub-profile__team-faces li { display:block; margin:0 0 0 -8px; padding:0; list-style:none; }
.companyhub-profile .companyhub-profile__team-faces li::before { content:none; }
.companyhub-profile .companyhub-profile__team-face { position:relative; z-index:1; display:flex; align-items:center; justify-content:center; box-sizing:content-box; width:32px; height:32px; padding:0; border:2px solid var(--ch-surface); border-radius:50%; background:#edf1f7; color:#42516a; font-size:12px; font-weight:600; line-height:1; text-decoration:none; }
.companyhub-profile .companyhub-profile__team-face img,.companyhub-profile .companyhub-profile__team-face .companyhub-profile__team-letter { display:flex; align-items:center; justify-content:center; width:32px; height:32px; max-width:none; margin:0; border-radius:50%; object-fit:cover; overflow:hidden; font-size:14px; }
.companyhub-profile .companyhub-profile__team-letter svg { display:block; width:100%; height:100%; }
.companyhub-profile .companyhub-profile__team-face:hover,.companyhub-profile .companyhub-profile__team-face:focus-visible { z-index:3; text-decoration:none; }
.companyhub-profile .companyhub-profile__team-more { background:#f3f6fb; color:var(--ch-accent); }
.companyhub-profile .companyhub-profile__team-more:hover { background:var(--ch-accent); color:#fff; }
.companyhub-profile__team-face::after { content:attr(data-companyhub-tooltip); position:absolute; z-index:40; left:50%; top:calc(100% + 8px); width:max-content; max-width:min(240px,calc(100vw - 32px)); padding:7px 10px; border-radius:6px; background:#202a37; color:#fff; box-shadow:0 6px 18px rgba(26,39,57,.2); font-size:13px; font-weight:400; line-height:1.4; text-align:left; white-space:normal; pointer-events:none; transform:translateX(-50%); }
.companyhub-profile__team-face:not(:hover):not(:focus-visible)::after { display:none; }
.companyhub-profile .companyhub-profile__team-all { color:var(--ch-muted); font-size:13px; line-height:1.4; text-decoration:none; }
.companyhub-profile .companyhub-profile__team-all:hover,.companyhub-profile .companyhub-profile__team-all:focus { color:var(--ch-accent); text-decoration:underline; }
/* 0.2.19: «Руководство» в «Информации о компании» — фото 40 px в круге, имя ссылкой, должность; остальные — в «ещё N». */
.companyhub-profile__leaders { margin:14px 0 0; }
.companyhub-profile .companyhub-profile__leaders ul { display:grid; gap:10px; margin:6px 0 0; padding:0; list-style:none; }
.companyhub-profile .companyhub-profile__leader { display:flex; align-items:center; gap:10px; min-width:0; margin:0; padding:0; list-style:none; }
.companyhub-profile .companyhub-profile__leader::before { content:none; }
.companyhub-profile .companyhub-profile__leader-photo { position:relative; display:flex; flex:0 0 40px; align-items:center; justify-content:center; width:40px; height:40px; overflow:hidden; border-radius:50%; background:#edf1f7; color:#42516a; font-weight:600; text-decoration:none; }
.companyhub-profile .companyhub-profile__leader-photo img { display:block; width:100%; height:100%; max-width:none; margin:0; object-fit:cover; }
.companyhub-profile__leader-text { display:flex; flex-direction:column; min-width:0; line-height:1.3; }
.companyhub-profile .companyhub-profile__leader-text a { color:var(--ch-accent); font-weight:600; text-decoration:none; }
.companyhub-profile .companyhub-profile__leader-text a:hover { text-decoration:underline; }
.companyhub-profile__leader-position { color:var(--ch-muted); font-size:13px; }
.companyhub-profile__leaders-more { margin:8px 0 0; }
.companyhub-profile__leaders-more summary { min-height:32px; padding:4px 0; color:var(--ch-accent); font-size:13px; cursor:pointer; }
/* 0.2.20: вкладка «Контакты» — одна карточка со строками-иконками и большая карта справа (на этой вкладке боковой блок скрыт:
   он повторял сайт, соцсети и режим работы). Без карты — одна карточка. На узком экране — карточка, под ней карта. */
.companyhub-profile[data-companyhub-active="contacts"] .companyhub-profile__contacts { display:none; }
.companyhub-contacts { display:grid; grid-template-columns:minmax(0,5fr) minmax(0,7fr); gap:20px; align-items:stretch; }
.companyhub-contacts--no-map { grid-template-columns:minmax(0,720px); }
.companyhub-contacts__card { min-width:0; padding:4px 20px; border:1px solid var(--ch-border); border-radius:12px; background:#fff; }
.companyhub-contacts__item { position:relative; display:flex; align-items:flex-start; gap:14px; padding:14px 0; border-top:1px solid #edf0f4; }
.companyhub-contacts__item:first-child { border-top:0; }
.companyhub-profile .companyhub-contacts__icon { flex:0 0 20px; width:20px; height:20px; margin-top:2px; fill:none; stroke:var(--ch-muted); stroke-width:1.7; stroke-linecap:round; stroke-linejoin:round; }
.companyhub-contacts__text { flex:1 1 auto; min-width:0; overflow-wrap:anywhere; line-height:1.5; }
.companyhub-contacts__text p { margin:0; }
.companyhub-contacts__text p + p, .companyhub-contacts__text .ch-social-links { margin-top:8px; }
.companyhub-contacts__text a { color:var(--ch-accent); }
.companyhub-contacts__muted { display:block; color:var(--ch-muted); font-size:13px; }
.companyhub-contacts__address { display:flex; align-items:flex-start; }
.companyhub-contacts__address .companyhub-profile__flag { margin-top:5px; }
.companyhub-contacts__links { display:flex; flex-wrap:wrap; gap:4px 16px; margin-top:6px !important; font-size:14px; }
.companyhub-contacts__reveal summary { color:var(--ch-accent); cursor:pointer; }
.companyhub-contacts__reveal[open] summary { margin-bottom:6px; }
.companyhub-contacts__item.companyhub-profile__working-hours,.companyhub-contacts__item.companyhub-profile__socials { margin:0; }
.companyhub-contacts__map { display:flex; flex-direction:column; min-width:0; min-height:360px; }
.companyhub-contacts__map .unimap { display:flex; flex-direction:column; flex:1 1 auto; margin:0; }
.companyhub-contacts__map .unimap__canvas { flex:1 1 auto; height:auto !important; min-height:360px; border-radius:12px; overflow:hidden; }
/* Адреса и ссылки «Как добраться» / «Открыть в картах» уже в карточке — под картой их не повторяем. */
.companyhub-contacts__map--links-above .unimap__meta,.companyhub-contacts__map--links-above .unimap__points { display:none; }
/* Несколько адресов: номера как у меток на карте, клик по адресу показывает его на карте. */
.companyhub-contacts__points { display:grid; gap:12px; margin:4px 0 0; padding:0; list-style:none; }
.companyhub-contacts__point { display:flex; align-items:flex-start; gap:10px; margin:0; }
.companyhub-contacts__number { display:inline-flex; flex:0 0 22px; align-items:center; justify-content:center; width:22px; height:22px; margin-top:1px; border-radius:50%; background:#dc3545; color:#fff; font-size:12px; font-weight:600; line-height:1; }
.companyhub-contacts__point-text { min-width:0; }
.companyhub-profile .companyhub-contacts__point-show { display:flex; flex-direction:column; align-items:flex-start; max-width:100%; padding:0; border:0; background:none; color:inherit; font:inherit; text-align:left; cursor:pointer; }
.companyhub-contacts__point-show strong { font-weight:600; }
.companyhub-contacts__point-show:hover span,.companyhub-contacts__point--active .companyhub-contacts__point-show span { color:var(--ch-accent); }
.companyhub-contacts__point .companyhub-contacts__links { margin-top:2px !important; }
/* Ссылка на сайт: значок сайта, адрес, «откроется в новой вкладке». */
.companyhub-profile .companyhub-website { display:inline-flex; align-items:center; gap:6px; max-width:100%; color:var(--ch-accent); }
.companyhub-profile .companyhub-website span { color:inherit; font-size:inherit; }
.companyhub-website__icon { flex:0 0 16px; width:16px; height:16px; border-radius:3px; object-fit:contain; }
.companyhub-website__label { min-width:0; overflow-wrap:anywhere; }
.companyhub-profile .companyhub-website__external { flex:0 0 14px; width:14px; height:14px; fill:none; stroke:currentColor; stroke-width:2; stroke-linecap:round; stroke-linejoin:round; opacity:.75; }
@media (max-width:860px) {
    .companyhub-contacts { grid-template-columns:minmax(0,1fr); }
    .companyhub-contacts__map,.companyhub-contacts__map .unimap__canvas { min-height:280px; }
}
/* Единый рейтинг: отмена своего голоса звёздами. */
.companyhub-native-rating__cancel { border: 0; background: none; padding: 0; margin: 0; font-size: 12px; line-height: 1.2; color: #6c757d; text-decoration: underline; cursor: pointer; }
