/* Только Pages 41–43: общая основа, три разные композиции. */
body:is(.page-id-41,.page-id-42,.page-id-43) main { padding-block: clamp(2.5rem,5vw,4.5rem) !important; }
body:is(.page-id-41,.page-id-42,.page-id-43) main > .wp-block-post-title { max-width: 78rem; font-size: clamp(3rem,5.6vw,5rem); line-height: 1.08; margin-bottom: 2rem; }
.bes-supporting { color: var(--wp--preset--color--text); font-size: 1.125rem; line-height: 1.6; }
.bes-supporting :where(.wp-block-group,figure,p,h2,h3,.wp-block-buttons) { margin-block: 0; }
.bes-supporting :where(*) { box-sizing: border-box; }
.bes-supporting :where(p) { max-width: 62ch; }
.bes-supporting h2 { font-family: var(--wp--preset--font-family--display); font-size: clamp(1.9rem,3vw,2.75rem); font-weight: 400; line-height: 1.15; letter-spacing: -.02em; }
.bes-supporting .bes-s-lead { max-width: 42ch; font-size: clamp(1.35rem,2.2vw,1.75rem); line-height: 1.4; }
.bes-supporting .bes-s-intro { margin-top: 1rem; }
.bes-supporting .bes-s-copy > * + * { margin-top: 1.25rem; }
.bes-supporting .bes-s-section { margin-top: clamp(2.5rem,5vw,4rem); }
.bes-s-pair,.bes-s-contact-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: clamp(2rem,5vw,4rem); }
.bes-supporting .bes-s-contact-grid { margin-top: 2.5rem; }
.bes-s-arrival { background: var(--wp--preset--color--surface); padding: clamp(1.5rem,3vw,2.5rem); }
.bes-supporting .bes-s-address { line-height: 1.7; }
.bes-supporting .bes-s-note { font-size: .875rem; line-height: 1.5; color: var(--wp--preset--color--text-muted); margin-top: .5rem; }
.bes-supporting a { color: var(--wp--preset--color--text); text-underline-offset: .25em; }
.bes-supporting a:hover { text-decoration-thickness: 2px; }
.bes-s-link a,.bes-s-contact-link a,.bes-s-service-links a { display: inline-flex; align-items: center; min-height: 44px; padding-block: .4rem; overflow-wrap: anywhere; max-width: 100%; }
.bes-s-link a { font-size: 1rem; font-weight: 600; }
.bes-s-contact-link { font-size: 1rem; }
.bes-s-contact-link a { font-size: 1.125rem; }
.bes-s-contacts { display: grid; gap: 1rem; }
.bes-s-inline-links { display: flex; flex-wrap: wrap; column-gap: 1.5rem; }
.bes-supporting .wp-block-button__link { background: var(--wp--preset--color--surface-contrast); color: var(--wp--preset--color--text-on-dark); min-height: 48px; padding: .875rem 1.5rem; font-size: 1rem; line-height: 1.4; text-decoration: none; }
.bes-supporting .wp-block-button__link:hover { background: var(--wp--preset--color--text); color: var(--wp--preset--color--text-on-dark); }
.bes-s-photo { width: 100%; }
.bes-s-photo img { display: block; width: 100%; height: auto; }
.bes-s-founder { display: grid; grid-template-columns: minmax(0,440px) minmax(0,1fr); gap: 1.5rem clamp(2rem,5vw,4rem); align-items: center; }
.bes-s-founder-intro { grid-column: 2; grid-row: 1; align-self: end; }
.bes-s-founder .bes-s-portrait { grid-column: 1; grid-row: 1 / span 2; max-width: 440px; }
.bes-s-founder-detail { grid-column: 2; grid-row: 2; align-self: start; }
.bes-supporting .bes-s-name { font-family: var(--wp--preset--font-family--display); font-size: clamp(2rem,3vw,3rem); line-height: 1.15; }
.bes-supporting .bes-s-role { margin-top: .5rem; font-size: 1rem; }
.bes-s-working { display: grid; grid-template-columns: minmax(0,1fr) minmax(0,490px); gap: clamp(2rem,5vw,4rem); align-items: center; }
.bes-s-working-photo { max-width: 490px; }
.bes-s-brand { padding: clamp(1.5rem,3vw,2.5rem); background: var(--wp--preset--color--surface); }
.bes-s-about > .bes-s-pair { border-top: 1px solid var(--wp--preset--color--accent-detail); padding-top: clamp(2.5rem,5vw,4rem); }
.bes-s-care { display: grid; grid-template-columns: minmax(0,480px) minmax(0,1fr); gap: 2rem clamp(2rem,5vw,4rem); }
.bes-s-care > .bes-s-copy:first-child { grid-column: 1 / -1; }
.bes-s-visit-photo { max-width: 480px; }
.bes-supporting .bes-s-service-links { list-style: none; padding: 0; margin: 1rem 0 0; }
.bes-s-service-links li { border-bottom: 1px solid var(--wp--preset--color--border-subtle); }
.bes-s-service-links a { width: 100%; font-size: 1rem; }
.bes-s-closing { border-top: 1px solid var(--wp--preset--color--accent-detail); padding-top: 2.5rem; }
.bes-supporting :where(.bes-s-pair,.bes-s-contact-grid,.bes-s-founder,.bes-s-working,.bes-s-care) > * { min-width: 0; }
@media (max-width: 800px) {
  .bes-s-founder,.bes-s-working,.bes-s-care { grid-template-columns: minmax(0,1fr); }
  .bes-s-founder > * { grid-column: 1 !important; grid-row: auto !important; }
  .bes-s-founder .bes-s-portrait { width: min(100%,440px); }
  .bes-s-working-photo { width: min(100%,490px); }
  .bes-s-visit-photo { width: min(100%,480px); }
}
@media (max-width: 640px) {
  .bes-supporting { font-size: 1.0625rem; }
  .bes-s-pair,.bes-s-contact-grid { grid-template-columns: minmax(0,1fr); gap: 2rem; }
  .bes-supporting .bes-s-contact-grid { margin-top: 2rem; }
  .bes-s-arrival,.bes-s-brand { padding: 1.5rem; }
  body:is(.page-id-41,.page-id-42,.page-id-43) main > .wp-block-post-title { margin-bottom: 1.5rem; }
}
@media (prefers-reduced-motion: reduce) {
  .bes-supporting * { scroll-behavior: auto; animation: none; transition: none; }
}
/* Flow spacing не должен смещать соседние grid/flex элементы. */
.bes-supporting :is(.bes-s-pair,.bes-s-contact-grid,.bes-s-founder,.bes-s-working,.bes-s-care,.bes-s-inline-links) > * { margin-block-start: 0; }
.bes-supporting a { scroll-margin-block: 5rem; }
