/* /for-lawyers/: редакционный ритм, общие поверхности и единая галерея. */
.hl-hero { grid-template-columns: minmax(0, 1fr) minmax(0, 1.12fr); gap: var(--hl-space-lg); }
.hl-hero .hl-eyebrow { padding: 0; border-radius: 0; background: none; font-size: var(--text-sm); letter-spacing: var(--tracking-wide); }
.hl-hero h1 { max-width: calc(var(--max-width-text) * .74); }
.hl-hero h1 > span { white-space: nowrap; }
.hl-hero .hl-lead { max-width: calc(var(--max-width-text) * .75); }
.hl-hero .hl-actions { gap: var(--hl-space-sm); }
.hl-hero-community { padding-top: var(--hl-space-md); border-top: thin solid var(--border-default); }
.hl-hero .hl-benefits { gap: var(--hl-space-xs) var(--hl-space-sm); max-width: calc(var(--max-width-text) * .75); }
.hl-hero-stage { padding: var(--hl-space-md); border: 0; box-shadow: none; background: var(--gradient-brand-panel); }
.hl-hero-stage .hl-small-label { color: var(--color-muted); }
.hl-hero-stage .hl-preview-title { font-size: var(--sub-h); line-height: var(--leading-snug); margin-bottom: var(--hl-space-md); }
.hl-browser-frame { min-width: 0; overflow: clip; border: thin solid var(--border-default); border-radius: var(--radius-md); background: var(--color-white); box-shadow: var(--shadow-dropdown); }
.hl-browser-bar { display: flex; align-items: center; justify-content: space-between; gap: var(--hl-space-xs); padding: var(--hl-space-xs) var(--hl-space-sm); min-height: var(--h-small); border-bottom: thin solid var(--border-default); color: var(--color-caption); background: var(--color-white); font-size: var(--text-xs); line-height: var(--leading-heading); }
.hl-browser-bar > span:nth-child(2) { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.hl-browser-dots { display: flex; gap: calc(var(--hl-space-xs) / 2); flex-shrink: 0; }
.hl-browser-dots i { display: block; width: var(--hl-space-xs); height: var(--hl-space-xs); border-radius: 50%; background: var(--color-gray-border); }
.hl-browser-frame .hl-media-link, .hl-browser-frame .hl-media-link img { border-radius: 0; }
.hl-browser-frame:focus-within { outline: medium solid var(--color-accent); outline-offset: calc(var(--hl-space-xs) / 2); }
.hl-catalog-preview { padding: var(--hl-space-xs); background: var(--color-white); }
.hl-hero-catalog { width: 100%; height: auto; }
.hl-preview-features { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); align-items: center; text-align: center; gap: var(--hl-space-xs); margin-top: var(--hl-space-md); font-size: var(--text-xs); font-weight: var(--weight-bold); color: var(--color-primary); }
.hl-preview-features span + span::before { content: none; }
.hl-hero-visual figcaption { text-align: left; margin-inline: var(--hl-space-xs); }
.hl-section { padding-top: calc(var(--space-section) + var(--hl-space-sm)); }
.hl-section-heading { max-width: var(--max-width-text); margin-bottom: var(--hl-space-lg); }
.hl-section-heading h2 { max-width: var(--max-width-text); }
.hl-section-heading > p:last-child { max-width: calc(var(--max-width-text) * .9); }
.hl-landing p { text-wrap: pretty; }
.hl-landing h3 { letter-spacing: var(--tracking-snug); }
.hl-card p, .hl-visual-copy p, .hl-showcase-copy p { max-width: var(--max-width-text); }
.hl-showcase { padding: var(--hl-space-lg); background: var(--color-blend); border-radius: var(--radius-xl); gap: var(--hl-space-lg); }
.hl-showcase-media img { box-shadow: none; }
.hl-showcase-copy h3 { font-size: var(--sub-h); }
.hl-visual-grid { padding: var(--hl-space-lg); background: var(--color-blend); border-radius: var(--radius-xl); gap: var(--hl-space-lg); }
.hl-visual-card { padding: 0; border: 0; border-radius: var(--radius-md); background: transparent; }
.hl-visual-card:hover, .hl-visual-card:focus-within { box-shadow: none; transform: none; }
.hl-visual-copy { padding: 0; }
.hl-visual-copy p { margin-bottom: var(--hl-space-md); }
.hl-visual-media { margin: 0; padding: 0; background: none; border-radius: 0; }
.hl-visual-card > .hl-note { padding-inline: 0; }
.hl-media-practice .hl-media-link { background: var(--color-white); padding: var(--hl-space-sm); }
.hl-media-practice img { aspect-ratio: 4 / 3; object-fit: contain; }
.hl-business-pair { min-height: calc(var(--h-big) * 6); display: flex; flex-direction: column; justify-content: center; padding: var(--hl-space-md) var(--hl-space-sm); background: var(--gradient-brand-panel); border-radius: var(--radius-md); }
.hl-media-business .hl-media-link { width: 86%; }
.hl-media-business figcaption { margin-top: var(--hl-space-sm); }
.hl-benefit-grid { gap: var(--hl-space-lg); padding-block: var(--hl-space-md); border-bottom: thin solid var(--border-default); }
.hl-workflow-card { padding: var(--hl-space-sm) 0; border: 0; background: none; border-radius: 0; }
.hl-workflow-card + .hl-workflow-card { padding-left: var(--hl-space-lg); border-left: thin solid var(--border-default); }
.hl-social-section { padding: var(--hl-space-lg); }
.hl-person-photo img { aspect-ratio: 1 / 1; object-position: center 20%; }
.hl-person-card figcaption { padding: var(--hl-space-md) var(--space-after-h3); }
.hl-quote-sign { font-family: var(--font-family); font-size: var(--text-3xl); line-height: var(--leading-tight); margin-bottom: var(--hl-space-xs); color: var(--color-primary-disabled); }
.hl-person-card blockquote { font-size: var(--text-md); line-height: var(--leading-normal); margin-bottom: var(--hl-space-lg); }
.hl-person-meta { margin-top: var(--hl-space-xs); }
.hl-audience .hl-grid { gap: 0; border-block: thin solid var(--border-default); }
.hl-audience .hl-card { padding-block: var(--hl-space-lg); border: 0; border-radius: 0; }
.hl-audience .hl-card + .hl-card { border-left: thin solid var(--border-default); }
.hl-steps { gap: 0; counter-reset: hl-step; }
.hl-steps li { position: relative; padding: calc(var(--h-big) + var(--hl-space-md)) var(--hl-space-md) 0 0; border: 0; }
.hl-steps li::before { content: ''; position: absolute; top: calc(var(--h-big) / 2); left: var(--h-big); right: 0; height: calc(var(--hl-space-xs) / 4); background: var(--color-bg-tint-purple); }
.hl-steps li:last-child::before { content: none; }
.hl-steps .hl-number { position: absolute; top: 0; left: 0; display: grid; place-items: center; width: var(--h-big); height: var(--h-big); border: thin solid var(--border-default); border-radius: 50%; background: var(--color-white); font-size: var(--text-lg); margin: 0; }
.hl-steps h3 { font-size: var(--text-lg); }
.hl-profile-search { background: var(--gradient-brand-panel); }
.hl-price-card { padding: var(--hl-space-lg); }
.hl-price-card:first-child { box-shadow: var(--shadow-dropdown); border-color: var(--color-primary); }
.hl-price-promoted { background: var(--color-blend); border-color: transparent; }
.hl-final { padding: calc(var(--hl-space-lg) + var(--hl-space-sm)); }
.hl-final::before { width: 45%; opacity: .13; }
.hl-final h2 { max-width: var(--max-width-text); font-size: var(--text-4xl); }
.hl-operator-section { padding-top: var(--hl-space-lg); }
.hl-image-dialog { max-width: calc(100% - var(--hl-space-sm)); position: fixed; inset: 0; width: min(calc(100% - var(--hl-space-lg)), calc(var(--space-page-max) + var(--hl-space-lg))); max-height: calc(100dvh - var(--hl-space-lg)); margin: auto; padding: 0; overflow: auto; overscroll-behavior: contain; border: thin solid var(--border-default); border-radius: var(--radius-xl); background: var(--color-white); color: var(--color-body); box-shadow: var(--shadow-modal); }
.hl-image-dialog::backdrop { background: color-mix(in srgb, var(--color-primary-active) 75%, transparent); backdrop-filter: blur(var(--hl-space-xs)); }
.hl-dialog-toolbar, .hl-dialog-footer { display: flex; align-items: center; justify-content: space-between; gap: var(--hl-space-sm); padding: var(--hl-space-sm) var(--hl-space-md); }
.hl-dialog-toolbar { position: sticky; top: 0; z-index: 1; background: var(--color-white); border-bottom: thin solid var(--border-default); }
.hl-image-dialog h2 { margin: 0; font-size: var(--text-lg); line-height: var(--leading-heading); }
.hl-image-dialog button { flex-shrink: 0; min-height: var(--but-card-height); padding: var(--hl-space-xs) var(--hl-space-sm); border: thin solid var(--border-default); border-radius: var(--radius-sm); background: var(--color-white); color: var(--color-primary); font: inherit; font-size: var(--text-base); font-weight: var(--weight-bold); cursor: pointer; transition: background var(--transition); }
.hl-image-dialog button:hover { background: var(--color-bg-tint-blue); }
.hl-dialog-close span[aria-hidden] { margin-left: var(--hl-space-xs); font-size: var(--text-xl); }
.hl-dialog-figure { margin: 0; padding: var(--hl-space-md); text-align: center; }
.hl-dialog-image { display: block; max-width: 100%; width: auto; max-height: 65dvh; height: auto; object-fit: contain; margin-inline: auto; }
.hl-dialog-original { display: inline-block; margin-top: var(--hl-space-xs); font-size: var(--text-sm); }
.hl-dialog-caption { margin-top: var(--hl-space-sm); font-size: var(--text-sm); color: var(--color-muted); }
.hl-dialog-footer { border-top: thin solid var(--border-default); font-size: var(--text-sm); }
body.hl-dialog-open { overflow: hidden; }
@media (max-width: 1024px) {
    .hl-hero { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: var(--hl-space-md); }
    .hl-hero .hl-actions { flex-direction: column; align-items: flex-start; }
    .hl-steps { grid-template-columns: repeat(2, minmax(0, 1fr)); row-gap: var(--hl-space-lg); }
    .hl-steps li:nth-child(2)::before { content: none; }
}
@media (max-width: 767px) {
    .hl-hero { grid-template-columns: minmax(0, 1fr); padding-block: var(--hl-space-lg); }
    .hl-hero h1, .hl-hero .hl-lead { max-width: 100%; }
    .hl-hero .hl-eyebrow { font-size: var(--text-xs); }
    .hl-hero-community { padding-top: var(--hl-space-sm); margin-top: var(--hl-space-md); }
    .hl-hero-stage { padding: var(--hl-space-sm); }
    .hl-section { padding-top: var(--hl-space-lg); }
    .hl-showcase, .hl-visual-grid { padding: var(--hl-space-md); gap: var(--hl-space-lg); }
    .hl-benefit-grid { padding-block: 0; gap: 0; }
    .hl-workflow-card + .hl-workflow-card { padding-left: 0; padding-top: var(--hl-space-md); border-left: 0; border-top: thin solid var(--border-default); }
    .hl-audience .hl-card { padding: var(--hl-space-md) 0; }
    .hl-audience .hl-card + .hl-card { border-left: 0; border-top: thin solid var(--border-default); }
    .hl-social-section { padding: var(--hl-space-md); }
    .hl-person-photo img { aspect-ratio: 6 / 5; }
    .hl-price-card, .hl-final { padding: var(--hl-space-md); }
    .hl-image-dialog { width: calc(100% - var(--hl-space-sm)); max-height: calc(100dvh - var(--hl-space-sm)); border-radius: var(--radius-md); }
    .hl-dialog-toolbar, .hl-dialog-footer, .hl-dialog-figure { padding: var(--hl-space-sm); }
    .hl-image-dialog h2 { font-size: var(--text-md); }
    .hl-dialog-toolbar { align-items: flex-start; }
    .hl-dialog-close .hl-close-label { display: none; }
    .hl-dialog-close span[aria-hidden] { margin-left: 0; font-size: var(--text-xl); }
    .hl-dialog-image { max-height: 60dvh; }
}
@media (max-width: 480px) {
    .hl-hero .hl-actions { align-items: stretch; }
    .hl-business-pair { min-height: calc(var(--h-big) * 5); padding-inline: var(--hl-space-xs); }
    .hl-steps { grid-template-columns: minmax(0, 1fr); gap: 0; }
    .hl-steps li { display: block; min-height: calc(var(--h-big) * 2); padding: 0 0 var(--hl-space-md) calc(var(--h-big) + var(--hl-space-sm)); }
    .hl-steps li::before, .hl-steps li:nth-child(2)::before { content: ''; top: var(--h-big); bottom: 0; left: calc(var(--h-big) / 2); right: auto; width: calc(var(--hl-space-xs) / 4); height: auto; }
    .hl-steps li:last-child::before { content: none; }
}
@media print { .hl-image-dialog { display: none !important; } }
