/* Public profile details: preserve messenger branding and section typography. */
body.single-property #contacts_jurist .contact_whatsapp.hrnt-contact-action {
    overflow: hidden;
}
body.single-property #contacts_jurist .hrnt-contact-action > .harant-icon {
    display: inline-flex;
    flex: 0 0 var(--text-xl);
    align-items: center;
    justify-content: center;
    width: var(--text-xl);
    height: var(--text-xl);
    color: inherit;
    font-size: var(--text-xl);
    line-height: 1;
}
/* The shared WhatsApp hover must not turn Telegram or VK green. These are
   the same brand colours as their original contact buttons. */
body.single-property #contacts_jurist .det-teleg > a.hrnt-contact-action:is(:hover, :focus-visible, :active) {
    background: var(--color-messenger-telegram);
    border-color: var(--color-messenger-telegram);
    color: var(--color-white);
    text-decoration: none;
}
body.single-property #contacts_jurist .det-vk > a.hrnt-contact-action:is(:hover, :focus-visible, :active) {
    background: var(--color-messenger-vk);
    border-color: var(--color-messenger-vk);
    color: var(--color-white);
    text-decoration: none;
}

/* Match the ordinary profile h2 (18px/19px) without changing other sections. */
body.single-property #publication > .wrapp_write_article > h2,
body.single-property .other_jurist > h2 {
    font-family: var(--font-family);
    font-size: var(--text-lg);
    font-weight: var(--weight-bold);
    line-height: var(--profile-section-leading);
    color: var(--color-heading);
}
body.single-property .other_jurist > h2 > a {
    font: inherit;
    color: inherit;
}

/* Brand-filled messenger actions: a white inset marks keyboard focus. */
body.single-property #contacts_jurist .contact_whatsapp.hrnt-contact-action {
    border: 0;
    box-shadow: none;
}
body.single-property #contacts_jurist .contact_whatsapp.hrnt-contact-action:focus {
    outline: none;
    box-shadow: none;
}
body.single-property #contacts_jurist .contact_whatsapp.hrnt-contact-action:focus-visible {
    outline: none;
    box-shadow: inset 0 0 0 var(--hc-focus-width) var(--color-white);
}

/* Both public-profile MAX buttons show their existing brand palette at rest. */
body.single-property #contacts_jurist .det-max > a.hrnt-contact-action,
body.single-property .sibebar_jurist .buttons_card .btn.hrnt-messenger-max {
    position: relative;
    background: var(--gradient-messenger-max);
    background-size: 200% 100%;
    background-position: left center;
    color: var(--color-white);
    border-color: transparent;
    transition: background-position var(--motion-duration-enter) var(--motion-ease-out);
}
body.single-property #contacts_jurist .det-max > a.hrnt-contact-action::before {
    display: none;
}
body.single-property .sibebar_jurist .buttons_card .btn.hrnt-messenger-max svg path {
    fill: currentColor;
}
body.single-property #contacts_jurist .det-max > a.hrnt-contact-action:active,
body.single-property .sibebar_jurist .buttons_card .btn.hrnt-messenger-max:active {
    color: var(--color-white);
}
@media (hover: hover) and (pointer: fine) {
    body.single-property #contacts_jurist .det-max > a.hrnt-contact-action:hover,
    body.single-property .sibebar_jurist .buttons_card .btn.hrnt-messenger-max:hover {
        background-position: right center;
        color: var(--color-white);
    }
}
@media (prefers-reduced-motion: reduce) {
    body.single-property #contacts_jurist .det-max > a.hrnt-contact-action,
    body.single-property .sibebar_jurist .buttons_card .btn.hrnt-messenger-max {
        transition: none;
    }
}

/* A quieter share control on desktop; keep the touch target on narrow screens. */
@media (min-width: 992px) {
    body.single-property .hrnt-profile-topbar .tools_jurist > :is(.hrnt-profile-share, .hrnt-profile-report, .tools_jurist_native_share) {
        min-height: var(--h-small);
        gap: calc(var(--text-xs) / 2);
        padding: calc(var(--text-xs) / 2) calc(var(--text-xs) * 2 / 3);
        font-size: var(--text-sm);
    }
    body.single-property .hrnt-profile-topbar :is(.hrnt-profile-share, .hrnt-profile-report) svg {
        flex-basis: var(--text-md);
        width: var(--text-md);
        height: var(--text-md);
    }
}

/* Owner-only invitations to complete missing public-profile information. */
body.single-property .hrnt-profile-fill-prompt {
    display: inline-flex;
    align-items: center;
    gap: var(--text-xs);
    width: auto;
    max-width: 100%;
    min-height: var(--h-touch);
    padding: var(--text-xs) var(--text-md);
    border: thin solid var(--color-gray-border);
    border-radius: var(--radius-md);
    background: var(--gradient-brand-panel);
    color: var(--color-primary);
    text-decoration: none;
    box-sizing: border-box;
    transition: border-color var(--transition), box-shadow var(--transition);
}
body.single-property .hrnt-profile-fill-prompt__icon {
    font-size: var(--text-lg);
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 var(--h-small);
    width: var(--h-small);
    height: var(--h-small);
    border-radius: var(--radius-sm);
    background: var(--color-white);
    color: var(--color-primary);
}
body.single-property .hrnt-profile-fill-prompt__icon svg {
    display: block;
    width: var(--text-lg);
    height: var(--text-lg);
}
body.single-property .hrnt-profile-fill-prompt__copy {
    display: flex;
    flex-direction: column;
    gap: calc(var(--text-xs) / 3);
    min-width: 0;
    font-size: var(--text-sm);
    line-height: var(--leading-snug);
    color: var(--color-body);
    overflow-wrap: anywhere;
}
body.single-property .hrnt-profile-fill-prompt__copy strong {
    color: var(--color-primary);
    font-size: var(--text-base);
    font-weight: var(--weight-bold);
}
body.single-property .hrnt-profile-fill-prompt__arrow {
    flex: 0 0 var(--text-md);
    width: var(--text-md);
    height: var(--text-md);
    margin-left: auto;
    color: var(--color-primary);
}
body.single-property .hrnt-profile-fill-prompt:focus-visible {
    outline: var(--hc-focus-width) solid var(--color-primary);
    outline-offset: var(--hc-focus-offset);
}
@media (hover: hover) and (pointer: fine) {
    body.single-property .hrnt-profile-fill-prompt:hover {
        border-color: var(--color-primary);
        box-shadow: var(--shadow-sm);
        color: var(--color-primary);
        text-decoration: none;
    }
}
@media (max-width: 479px) {
    body.single-property .hrnt-profile-fill-prompt {
        display: flex;
        width: 100%;
        padding: var(--text-xs);
    }
}
@media (prefers-reduced-motion: reduce) {
    body.single-property .hrnt-profile-fill-prompt { transition: none; }
}

/* Let the longer visual-review label grow upward without covering its row. */
body.single-property .list_education .text_verification {
    top: auto;
    bottom: calc(100% + var(--text-xs) / 2);
    width: max-content;
    max-width: 100%;
    box-sizing: border-box;
    line-height: var(--leading-snug);
    white-space: normal;
    pointer-events: none;
    z-index: 4;
}

/* Public-card overflow actions: align with the card and give each row one hit area. */
body.single-property .sibebar_jurist .card_jurist .menu_card .dots_menu {
    top: calc(100% + var(--text-xs) / 2);
    right: 0;
    left: auto;
    width: calc(var(--h-touch) * 5);
    max-width: calc(100vw - var(--space-page-x) * 2);
    margin: 0;
    padding: calc(var(--text-xs) / 2);
    border: thin solid var(--color-gray-border);
    border-radius: var(--radius-md);
    background: var(--color-white);
    box-shadow: var(--shadow-dropdown);
    color: var(--color-body);
    font-family: var(--font-family);
    box-sizing: border-box;
}
body.single-property .sibebar_jurist .card_jurist .dots_menu > li {
    margin: 0;
    padding: 0;
    line-height: var(--leading-snug);
    transition: none;
}
body.single-property .sibebar_jurist .card_jurist .dots_menu > li + li {
    margin-top: calc(var(--text-xs) / 3);
}
body.single-property .sibebar_jurist .card_jurist .dots_menu > li.menu_error {
    margin-top: calc(var(--text-xs) / 2);
    padding-top: calc(var(--text-xs) / 2);
    border-top: thin solid var(--color-gray-border);
}
body.single-property .sibebar_jurist .card_jurist .dots_menu > li > span {
    display: flex;
    align-items: center;
    gap: var(--text-xs);
    width: 100%;
    min-height: var(--h-touch);
    height: auto;
    margin: 0;
    padding: calc(var(--text-xs) * 2 / 3) var(--text-xs);
    border-radius: var(--radius-sm);
    background: transparent;
    color: var(--color-body);
    font-family: var(--font-family);
    font-size: var(--text-base);
    font-weight: var(--weight-regular);
    line-height: var(--leading-snug);
    text-align: left;
    white-space: normal;
    box-sizing: border-box;
    transition: background-color var(--transition), color var(--transition);
}
body.single-property .sibebar_jurist .card_jurist .dots_menu > li > span::before {
    display: inline-block;
    flex: 0 0 var(--text-xl);
    width: var(--text-xl);
    font-family: 'harant-icons';
    font-size: var(--text-lg);
    font-weight: var(--weight-regular);
    line-height: 1;
    text-align: center;
    color: inherit;
}
body.single-property .sibebar_jurist .card_jurist .menu_complain > span::before { content: "\e962"; }
body.single-property .sibebar_jurist .card_jurist .menu_copy > span::before { content: "\e910"; }
body.single-property .sibebar_jurist .card_jurist .menu_error > span::before { content: "\e95d"; }
body.single-property .sibebar_jurist .card_jurist .dots_menu > li > span:focus-visible {
    outline: var(--hc-focus-width) solid var(--color-primary);
    outline-offset: calc(var(--hc-focus-offset) * -1);
    background: var(--color-bg-tint-purple);
    color: var(--color-primary);
}
body.single-property .sibebar_jurist .card_jurist .dots_menu > li > span:active {
    background: var(--color-gray-active);
    color: var(--color-primary-active);
}
@media (hover: hover) and (pointer: fine) {
    body.single-property .sibebar_jurist .card_jurist .dots_menu > li > span:hover {
        background: var(--color-bg-tint-purple);
        color: var(--color-primary);
    }
}
@media (prefers-reduced-motion: reduce) {
    body.single-property .sibebar_jurist .card_jurist .dots_menu > li > span { transition: none; }
}

/* A quiet pink-red invitation for missing work history, visible to its owner. */
body.single-property .hrnt-profile-fill-prompt.hrnt-profile-fill-prompt--workplace {
    background: var(--color-accent-red-bg);
    border-color: var(--color-danger-light);
    color: var(--color-danger-active);
}
body.single-property .hrnt-profile-fill-prompt--workplace .hrnt-profile-fill-prompt__copy {
    color: var(--color-body);
}
body.single-property .hrnt-profile-fill-prompt--workplace .hrnt-profile-fill-prompt__copy strong,
body.single-property .hrnt-profile-fill-prompt--workplace .hrnt-profile-fill-prompt__arrow {
    color: var(--color-danger-active);
}
body.single-property .hrnt-profile-fill-prompt--workplace .hrnt-profile-fill-prompt__icon {
    color: var(--color-danger-active);
}
body.single-property .hrnt-profile-fill-prompt.hrnt-profile-fill-prompt--workplace:focus-visible {
    outline-color: var(--color-danger-active);
}
body.single-property .hrnt-profile-fill-prompt.hrnt-profile-fill-prompt--workplace:active {
    background: var(--color-accent-red-bg);
    border-color: var(--color-danger-active);
    color: var(--color-danger-active);
}
@media (hover: hover) and (pointer: fine) {
    body.single-property .hrnt-profile-fill-prompt.hrnt-profile-fill-prompt--workplace:hover {
        background: var(--color-accent-red-bg);
        border-color: var(--color-danger-hover);
        color: var(--color-danger-active);
    }
}

/* Match the ordinary profile headings; keep the title/contact wrapper spacing. */
body.single-property #education_jurist > h2,
body.single-property .case_jurist > h2 {
    margin-bottom: var(--space-after-h3);
}
body.single-property #status_jurist .wrap_status {
    border-bottom-color: var(--color-gray-border);
}
body.single-property #contacts_jurist .list_contacts .list_site a:is(:hover, :focus-visible),
body.single-property #contacts_jurist .list_contacts .hr_city a:is(:hover, :focus-visible) {
    color: var(--color-link-brand);
    text-decoration: underline;
    text-underline-offset: calc(var(--text-xs) / 6);
}

/* Preserve the existing row typography while naming each field/value pair. */
body.single-property #status_jurist .hrnt-status-list {
    margin: 0;
}
body.single-property #status_jurist .wrap_status > dt {
    font-weight: var(--weight-regular);
}
body.single-property #status_jurist .wrap_status > dd {
    display: flex;
    align-items: center;
    min-width: 0;
    max-width: 100%;
    margin: 0;
}

/* Keep the certificate in the ordinary label/value status rows. */
body.single-property #status_jurist .hrnt-status-certificate {
    flex-wrap: nowrap;
    gap: var(--profile-space-sm);
    margin-top: 0;
    margin-bottom: var(--space-after-h3);
    font-size: var(--text-base);
    line-height: var(--leading-relaxed);
}
body.single-property #status_jurist .hrnt-status-certificate > dt {
    flex: 1 1 auto;
    min-width: 0;
}
body.single-property #status_jurist .hrnt-status-certificate > dd {
    flex: 0 0 var(--lawyer-status-document-width);
    margin-left: auto;
}
body.single-property #status_jurist .hrnt-status-certificate__link {
    display: inline-flex;
    flex: 0 0 var(--lawyer-status-document-width);
    align-items: center;
    justify-content: center;
    margin-left: auto;
    max-width: 100%;
    border-radius: var(--radius-sm);
    text-decoration: none;
}
body.single-property #status_jurist .hrnt-status-certificate__image {
    display: block;
    width: var(--lawyer-status-document-width);
    height: var(--lawyer-status-document-height);
    object-fit: contain;
    border-radius: var(--radius-sm);
    background: var(--color-bg-tint-blue);
}
body.single-property #status_jurist .hrnt-status-certificate__link:focus-visible {
    outline: revert;
    box-shadow: var(--shadow-primary);
}
body.single-property #status_jurist .hrnt-status-certificate--hidden .item_documents {
    flex: 0 0 var(--lawyer-status-document-width);
    box-sizing: border-box;
    width: var(--lawyer-status-document-width);
    min-height: var(--lawyer-status-document-height);
    height: auto;
    margin: 0 0 0 auto;
    padding: var(--profile-space-xs);
    border-radius: var(--radius-sm);
    background: var(--color-bg-tint-blue);
    text-align: left;
}
body.single-property #status_jurist .hrnt-status-certificate--hidden .item_documents p {
    margin: 0;
    font-size: var(--text-base);
    line-height: var(--leading-relaxed);
}
body.single-property #status_jurist .hrnt-status-certificate--hidden .item_documents__note {
    color: var(--color-caption);
}

/* A direct contact file keeps the QR dialog useful on the same phone. */
body.single-property #qrCodeLawyer:not(.add_img_qr_code) {
    overflow-y: auto;
}
body.single-property #qrCodeLawyer:not(.add_img_qr_code) .modal-dialog {
    width: calc(100% - var(--profile-space-sm) * 2);
    margin: var(--profile-space-md) auto;
}
body.single-property #qrCodeLawyer .hrnt-contact-vcard {
    margin-top: var(--profile-space-md);
    font-family: var(--font-family);
    font-size: var(--text-base);
    line-height: var(--leading-relaxed);
    color: var(--color-white);
}
body.single-property #qrCodeLawyer .hrnt-contact-vcard__save,
body.single-property #qrCodeLawyer .hrnt-contact-vcard__save:visited {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: var(--profile-space-xs);
    width: 100%;
    min-height: var(--h-touch);
    padding: var(--profile-space-sm) var(--profile-space-md);
    border-radius: var(--radius-sm);
    box-sizing: border-box;
    background: var(--color-white);
    color: var(--color-primary);
    font-family: inherit;
    font-size: var(--text-base);
    font-weight: var(--weight-bold);
    line-height: var(--leading-relaxed);
    text-align: center;
    text-decoration: none;
}
body.single-property #qrCodeLawyer .hrnt-contact-vcard__save > i {
    font-size: var(--text-lg);
    line-height: 1;
}
body.single-property #qrCodeLawyer .hrnt-contact-vcard__hint,
body.single-property #qrCodeLawyer .hrnt-contact-vcard__scan {
    margin: var(--profile-space-xs) 0;
    color: var(--color-white);
    font-size: var(--text-sm);
    text-align: center;
    line-height: var(--leading-relaxed);
}
body.single-property #qrCodeLawyer .hrnt-contact-vcard__save:focus-visible {
    outline: var(--hc-focus-width) solid var(--color-white);
    outline-offset: var(--hc-focus-offset);
}
body.single-property #qrCodeLawyer .hrnt-contact-vcard__save:active {
    background: var(--color-gray-active);
}
@media (hover: hover) and (pointer: fine) {
    body.single-property #qrCodeLawyer .hrnt-contact-vcard__save:hover {
        background: var(--color-gray-active);
    }
}

/* Reserve a square and avoid hidden poster requests on opening the dialog. */
body.single-property #qrCodeLawyer [hidden] {
    display: none !important;
}
body.single-property #qrCodeLawyer .hrnt-qr-stage {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    aspect-ratio: 1;
    width: 100%;
    gap: var(--profile-space-xs);
}
body.single-property #qrCodeLawyer .qr_code_img {
    display: block;
    width: 100%;
    height: auto;
}
body.single-property #qrCodeLawyer .hrnt-qr-status {
    margin: 0;
    font-size: var(--text-base);
    line-height: var(--leading-relaxed);
    color: var(--color-primary);
    text-align: center;
}
body.single-property #qrCodeLawyer .hrnt-qr-retry {
    min-height: var(--h-touch);
    padding: var(--profile-space-xs);
    border: 0;
    border-radius: var(--radius-sm);
    background: var(--color-primary);
    color: var(--color-white);
    font-size: var(--text-base);
    line-height: var(--leading-relaxed);
    cursor: pointer;
}
body.single-property #qrCodeLawyer .hrnt-qr-feedback {
    margin: var(--profile-space-xs) 0 0;
    color: var(--color-white);
    font-size: var(--text-base);
    line-height: var(--leading-relaxed);
}
body.single-property #qrCodeLawyer .hrnt-qr-copy-url {
    width: 100%;
    margin-top: var(--profile-space-xs);
    font-size: var(--text-md);
}
body.single-property #qrCodeLawyer .hrnt-qr-retry:focus-visible {
    outline: var(--hc-focus-width) solid var(--color-primary);
    outline-offset: var(--hc-focus-offset);
}
body.single-property #qrCodeLawyer.add_img_qr_code .qr_code_lawyer::before {
    display: none;
}
/* A square SVG fallback must stay fully visible in the tall poster view. */
body.single-property #qrCodeLawyer .add_img_qr_c {
    object-fit: contain;
}

/* Lightweight contact-dialog feedback; no extra scripts or requests. */
body.single-property #qrCodeLawyer :is(.hrnt-contact-vcard__save, .qr_code_law_bot a, .qr_code_law_bot button, .hrnt-qr-retry, .close_qr_code) {
    transition: transform var(--motion-duration-ui) var(--motion-ease-out),
        background-color var(--transition), color var(--transition),
        box-shadow var(--transition), opacity var(--transition);
}
body.single-property #qrCodeLawyer :is(.qr_code_law_bot a, .qr_code_law_bot button, .close_qr_code):focus-visible {
    outline: var(--hc-focus-width) solid var(--color-white);
    outline-offset: var(--hc-focus-offset);
}
body.single-property #qrCodeLawyer :is(.qr_code_law_bot button, .hrnt-qr-retry):disabled {
    opacity: .6;
    cursor: wait;
}
@media (hover: hover) and (pointer: fine) {
    body.single-property #qrCodeLawyer :is(.hrnt-contact-vcard__save, .qr_code_law_bot a, .qr_code_law_bot button):not(:disabled):hover {
        background: var(--color-bg-tint-blue);
        color: var(--color-primary-active);
        box-shadow: var(--shadow-sm);
        transform: translateY(calc(var(--hc-motion-offset) / -2));
    }
    body.single-property #qrCodeLawyer .hrnt-qr-retry:not(:disabled):hover {
        background: var(--color-primary-hover);
        transform: translateY(calc(var(--hc-motion-offset) / -2));
    }
    body.single-property #qrCodeLawyer .close_qr_code:hover {
        opacity: .8;
        transform: scale(1.06);
    }
}
body.single-property #qrCodeLawyer :is(.hrnt-contact-vcard__save, .qr_code_law_bot a, .qr_code_law_bot button):not(:disabled):active {
    background: var(--color-gray-active);
    transform: scale(.985);
    box-shadow: none;
}
body.single-property #qrCodeLawyer :is(.hrnt-qr-retry, .close_qr_code):not(:disabled):active {
    transform: scale(.985);
}
body.single-property #qrCodeLawyer.show:not(.add_img_qr_code) .qr_code_law_body {
    animation: hrnt-qr-content-enter var(--motion-duration-ui) var(--motion-ease-out);
}
body.single-property #qrCodeLawyer.show :is(.qr_code_img, .add_img_qr_c):not([hidden]) {
    animation: hrnt-qr-image-enter var(--motion-duration-ui) var(--motion-ease-out);
}
@keyframes hrnt-qr-content-enter {
    from { opacity: .6; transform: translateY(var(--hc-motion-offset)); }
    to { opacity: 1; transform: none; }
}
@keyframes hrnt-qr-image-enter {
    from { opacity: .6; }
    to { opacity: 1; }
}
@media (prefers-reduced-motion: reduce) {
    body.single-property #qrCodeLawyer,
    body.single-property #qrCodeLawyer :is(.modal-dialog, .qr_code_law_body, .qr_code_img, .add_img_qr_c, .hrnt-contact-vcard__save, .qr_code_law_bot a, .qr_code_law_bot button, .hrnt-qr-retry, .close_qr_code) {
        animation: none !important;
        transition: none !important;
    }
    body.single-property #qrCodeLawyer :is(.hrnt-contact-vcard__save, .qr_code_law_bot a, .qr_code_law_bot button, .hrnt-qr-retry, .close_qr_code) {
        transform: none !important;
    }
}

/* Desktop visitors scan from a phone; mobile visitors open the vCard directly. */
body.single-property #qrCodeLawyer .hrnt-contact-vcard__scan {
    display: none;
}
@media (min-width: 992px) {
    body.single-property #qrCodeLawyer .hrnt-contact-vcard__save,
    body.single-property #qrCodeLawyer .hrnt-contact-vcard__save:visited,
    body.single-property #qrCodeLawyer .hrnt-contact-vcard__hint {
        display: none;
    }
    body.single-property #qrCodeLawyer .hrnt-contact-vcard__scan {
        display: block;
    }
}
