.gs-pub-author {
    max-width: 860px;
    margin: 24px auto 0;
    padding: 28px 32px;
    border: 1px solid #dbe8df;
    border-radius: 16px;
    background: #f5f9f5;
    color: #253b30;
}
.gs-pub-author__heading { margin: 0 0 20px; font-size: 22px; font-weight: 700; line-height: 1.3; }
.gs-pub-author__identity { display: flex; align-items: center; gap: 16px; }
.gs-pub-author__logo { flex: 0 0 64px; width: 64px; height: 64px; overflow: hidden; border: 1px solid #e0e8e1; border-radius: 14px; background: #fff; }
.gs-pub-author__logo img { display: block; width: 100%; height: 100%; object-fit: contain; }
.gs-pub-author__name-wrap { min-width: 0; }
.gs-pub-page .gs-pub-author__name { color: #1c3024; font-size: 20px; font-weight: 700; line-height: 1.3; text-decoration: none; overflow-wrap: anywhere; }
.gs-pub-author__caption { margin-top: 5px; color: #6b786e; font-size: 13px; }
.gs-pub-page .gs-pub-author__rating { display: inline-flex; flex-wrap: wrap; align-items: center; gap: 4px 12px; min-height: 44px; color: #253b30; font-size: 14px; line-height: 1.4; text-decoration: none; }
.gs-pub-author__score { display: inline-flex; align-items: center; gap: 5px; white-space: nowrap; }
.gs-pub-author__score svg { flex-shrink: 0; }
.gs-pub-author__score strong { font-weight: 700; }
.gs-pub-author__rating-max { color: #6b786e; font-size: 12px; }
.gs-pub-author__reviews { color: #287d54; }
.gs-pub-author__rating:hover .gs-pub-author__reviews { text-decoration: underline; }
.gs-pub-author__no-reviews { display: block; margin-top: 8px; color: #6b786e; font-size: 13px; }
.gs-pub-page .gs-pub-author__profile { margin-left: auto; flex-shrink: 0; color: #287d54; font-size: 14px; font-weight: 600; text-decoration: none; }
.gs-pub-author__contacts { display: grid; gap: 10px; margin: 20px 0 0; font-size: 14px; line-height: 1.55; }
.gs-pub-author__contacts > div { display: grid; grid-template-columns: 116px minmax(0, 1fr); gap: 12px; }
.gs-pub-author__contacts dt { color: #6b786e; font-weight: 400; }
.gs-pub-author__contacts dd { margin: 0; overflow-wrap: anywhere; }
.gs-pub-author__footer { margin-top: 22px; padding-top: 20px; border-top: 1px solid #dbe8df; }
.gs-pub-author__prompt { margin: 0 0 14px; font-size: 15px; line-height: 1.5; }
.gs-pub-author__actions { display: flex; flex-wrap: wrap; gap: 10px; }
.gs-pub-author__button { display: inline-flex; align-items: center; justify-content: center; gap: 8px; min-height: 46px; padding: 11px 20px; border: 1px solid #329c69; border-radius: 10px; font: inherit; font-size: 14px; font-weight: 600; line-height: 1.4; cursor: pointer; transition: background .15s; }
.gs-pub-author__button svg { flex-shrink: 0; }
.gs-pub-author__button--phone { background: #fff; color: #257b51; }
.gs-pub-author__button--phone:hover { background: #e9f3ec; }
.gs-pub-author__button--chat { background: #329c69; color: #fff; }
.gs-pub-author__button--chat:hover { background: #287e55; }
.gs-pub-author__button.is-loading { opacity: .6; cursor: progress; }
.gs-pub-author__button:focus-visible, .gs-pub-author a:focus-visible { outline: 3px solid #205d42; outline-offset: 3px; }
.gs-pub-author__hint { margin: 10px 0 0; color: #6b786e; font-size: 12px; line-height: 1.5; }
@media (max-width: 600px) {
    .gs-pub-author { padding: 22px 18px; margin-top: 18px; }
    .gs-pub-author__identity { flex-wrap: wrap; gap: 12px; }
    .gs-pub-author__name-wrap { flex: 1; }
    .gs-pub-page .gs-pub-author__profile { flex-basis: 100%; margin: 0; }
    .gs-pub-author__contacts > div { grid-template-columns: 1fr; gap: 2px; }
    .gs-pub-author__button { width: 100%; }
}
