/* Phase 18C: отдельная Home 132, без изменений общих компонентов. */
.bes-home-main { margin-block: 0; }
.bes-home { --home-gutter: clamp(1rem, 3vw, 2rem); color: #242723; font-size: 1.125rem; line-height: 1.6; }
.bes-home :where(.wp-block-group, figure, p, h1, h2, h3, .wp-block-buttons) { margin-block: 0; }
.bes-home * { box-sizing: border-box; }
.bes-home-section { padding: 3rem var(--home-gutter); }
.bes-home-inner { width: min(100%, 78rem); margin-inline: auto; }
.bes-home h1, .bes-home h2, .bes-home h3 { font-family: var(--wp--preset--font-family--display); font-weight: 400; color: #181A1B; }
.bes-home h1 { font-size: 4.5rem; line-height: 1.08; letter-spacing: -.025em; max-width: 12ch; }
.bes-home h2 { font-size: 3rem; line-height: 1.15; letter-spacing: -.02em; }
.bes-home h3 { font-size: 1.75rem; line-height: 1.2; }
.bes-home p { max-width: 62ch; }
.bes-home-copy > * + *, .bes-home-founder-copy > * + *, .bes-home-visit-copy > * + * { margin-block-start: 1.25rem; }
.bes-home a { color: #242723; text-decoration-thickness: 1px; text-underline-offset: .25em; }
.bes-home a:hover { color: #181A1B; text-decoration-thickness: 2px; }
.bes-home a:focus-visible { outline: 3px solid #242723; outline-offset: 4px; box-shadow: 0 0 0 2px #F7F5F0; }
.bes-home-link a { display: inline-flex; align-items: center; min-height: 2.75rem; padding-block: .375rem; font-size: 1rem; font-weight: 600; }
.bes-home .wp-block-button__link { min-height: 3rem; padding: .8rem 1.35rem; font-size: 1rem; line-height: 1.4; background: #181A1B; color: #F7F5F0; border: 1px solid #181A1B; text-decoration: none; }
.bes-home .wp-block-button__link:hover { background: #242723; color: #F7F5F0; }
.bes-home-actions { display: flex; align-items: center; flex-wrap: wrap; gap: .5rem 1.5rem; }
.bes-home-booking-note { flex-basis: 100%; font-size: .875rem; line-height: 1.5; }
.bes-home-photo { width: 100%; }
.bes-home-photo img { display: block; width: 100%; height: auto; }
.bes-home-photo-hero, .bes-home-photo-founder { aspect-ratio: 4/5; }
.bes-home-photo-facials { aspect-ratio: 3/2; }
.bes-home-photo-visit { aspect-ratio: 1200/1037; }
.bes-home-hero { padding-block: 2rem 3rem; }
.bes-home-hero-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 4rem; align-items: center; }
.bes-home-hero-copy > * + * { margin-block-start: 1.5rem; }
.bes-home-eyebrow { font-size: .75rem; font-weight: 600; letter-spacing: .16em; }
.bes-home-lead { max-width: 42ch !important; }
.bes-home-about-grid { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 2fr); gap: 4rem; padding-block: 2rem; border-top: 1px solid #B8A58A; }
.bes-home-section-intro { margin-block: 1.25rem 2.5rem; max-width: 60ch; }
.bes-home-featured { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); column-gap: 4rem; align-items: start; }
.bes-home-featured-copy { grid-column: 1; grid-row: 1; align-self: end; }
.bes-home-featured-copy p { margin-block-start: 1rem; }
.bes-home-photo-facials { grid-column: 2; grid-row: 1 / span 2; max-width: 32.5rem; justify-self: end; }
.bes-home-featured-link { grid-column: 1; grid-row: 2; margin-block-start: 1rem; align-self: start; }
.bes-home-service-pair { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 4rem; }
.bes-home .bes-home-service-pair > *, .bes-home .bes-home-visit-links > * { margin-block-start: 0; }
.bes-home-skin-pair { margin-block-start: 2.5rem; padding-block-start: 2rem; border-top: 1px solid #B8A58A; }
.bes-home-service > * + * { margin-block-start: 1rem; }
.bes-home-secondary-pair { margin-block-start: 2rem; padding: 2rem; background: #E9E5DE; }
.bes-home-all-services { margin-block-start: 1.5rem; }
.bes-home-founder-grid, .bes-home-visit-grid { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 4rem; align-items: center; }
.bes-home-founder-grid { margin-block-start: 2rem; }
.bes-home-photo-founder { max-width: 27.5rem; }
.bes-home-founder-name { font-family: var(--wp--preset--font-family--display); font-size: 2rem; line-height: 1.2; }
.bes-home-founder-copy .bes-home-role { margin-block-start: .5rem; font-size: 1rem; }
.bes-home-photo-visit { max-width: 32.5rem; }
.bes-home-visit-copy h3:not(:first-child) { margin-block-start: 2rem; }
.bes-home-visit-links { display: flex; flex-wrap: wrap; gap: .5rem 1.5rem; }
.bes-home-final { margin-block-start: 3rem; padding-block: 4rem; background: #181A1B; color: #F7F5F0; }
.bes-home-final :is(h2, a) { color: #F7F5F0; }
.bes-home-final a:focus-visible { outline-color: #F7F5F0; box-shadow: 0 0 0 2px #181A1B; }
.bes-home-final-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 2rem 4rem; }
.bes-home-final-intro { grid-column: 1; grid-row: 1; }
.bes-home-final-intro p { margin-block-start: 1.5rem; }
.bes-home-location { grid-column: 2; grid-row: 1 / span 2; }
.bes-home-location > * + * { margin-block-start: 1.25rem; }
.bes-home-business { font-weight: 600; }
.bes-home-address { font-size: 1.25rem; line-height: 1.6; }
.bes-home-appointment { font-weight: 600; }
.bes-home-final-actions { grid-column: 1; grid-row: 2; align-self: start; }
.bes-home-final-actions .wp-block-button__link { color: #181A1B; background: #F7F5F0; border-color: #F7F5F0; }
.bes-home-final-actions .wp-block-button__link:hover { background: #E9E5DE; color: #181A1B; }
.bes-home-final-actions .bes-home-booking-note { order: 0; }
@media (max-width: 1199px) {
  .bes-home h1 { font-size: 3.5rem; }
  .bes-home h2 { font-size: 2.5rem; }
  .bes-home h3 { font-size: 1.625rem; }
  .bes-home-section { padding-block: 2.25rem; }
  .bes-home-hero-grid, .bes-home-about-grid, .bes-home-featured, .bes-home-service-pair, .bes-home-founder-grid, .bes-home-visit-grid, .bes-home-final-grid { column-gap: 2.5rem; }
  .bes-home-photo-facials, .bes-home-photo-visit { max-width: 27.5rem; }
  .bes-home-photo-founder { max-width: 25rem; }
  .bes-home-final { margin-block-start: 2.25rem; padding-block: 3rem; }
}
@media (max-width: 899px) {
  .bes-home-section { padding-block: 2rem; }
  .bes-home h1 { font-size: 3.25rem; max-width: 16ch; }
  .bes-home h2 { font-size: 2.375rem; }
  .bes-home h3 { font-size: 1.5rem; }
  .bes-home-hero-grid, .bes-home-about-grid, .bes-home-featured, .bes-home-founder-grid, .bes-home-visit-grid, .bes-home-final-grid { grid-template-columns: minmax(0,1fr); gap: 2rem; }
  .bes-home-featured > *, .bes-home-final-grid > * { grid-column: auto; grid-row: auto; }
  .bes-home-photo-hero { max-width: 30rem; justify-self: center; }
  .bes-home-photo-facials, .bes-home-photo-visit { max-width: 30rem; justify-self: start; }
  .bes-home-photo-founder { max-width: 27.5rem; }
  .bes-home-featured-link { margin-block-start: -.75rem; }
  .bes-home-service-pair { gap: 2rem; }
  .bes-home-final { margin-block-start: 2rem; padding-block: 3rem; }
}
/* Узкий экран: единый DOM, полные названия и ранние фотографии. */
@media (max-width: 599px) {
  .bes-home { font-size: 1.0625rem; }
  .bes-home-section { padding-block: 1.75rem; }
  .bes-home h1 { font-size: 2.625rem; max-width: 13ch; }
  .bes-home h2 { font-size: 2.125rem; }
  .bes-home h3 { font-size: 1.4375rem; }
  .bes-home-hero { padding-block-start: 1.25rem; }
  .bes-home-hero-copy > * + * { margin-block-start: 1.25rem; }
  .bes-home-hero-grid, .bes-home-featured, .bes-home-founder-grid, .bes-home-visit-grid, .bes-home-about-grid { gap: 1.5rem; }
  .bes-home-actions { align-items: stretch; flex-direction: column; gap: .5rem; }
  .bes-home-actions .wp-block-buttons, .bes-home-actions .wp-block-button { width: 100%; }
  .bes-home-actions .wp-block-button__link { display: block; text-align: center; }
  .bes-home-booking-note { flex-basis: auto; }
  .bes-home-service-pair { grid-template-columns: minmax(0,1fr); gap: 1.5rem; }
  .bes-home-featured h3 { font-size: 1.625rem; }
  .bes-home-featured-link { margin-block-start: -.5rem; }
  .bes-home-skin-pair { margin-block-start: 2rem; padding-block-start: 1.5rem; }
  .bes-home-secondary-pair { margin-block-start: 2rem; padding: 1.25rem; }
  .bes-home-secondary-pair .bes-home-service + .bes-home-service { border-top: 1px solid #B8A58A; padding-block-start: 1.5rem; }
  .bes-home-section-intro { margin-block: 1.25rem 1.5rem; }
  .bes-home-founder-grid { margin-block-start: 1.5rem; }
  .bes-home-visit-links { display: block; }
  .bes-home-visit-links > * + * { margin-block-start: .5rem; }
  .bes-home-final { margin-block-start: 1.75rem; padding-block: 2.5rem; }
}
@media (max-width: 359px) {
  .bes-home { font-size: 1rem; }
  .bes-home-section { padding-block: 1.5rem; }
  .bes-home h1 { font-size: 2.25rem; }
  .bes-home h2 { font-size: 1.875rem; }
  .bes-home h3 { font-size: 1.375rem; }
  .bes-home-featured h3 { font-size: 1.5rem; }
  .bes-home-service-pair { gap: 1.25rem; }
  .bes-home-secondary-pair, .bes-home-skin-pair { margin-block-start: 1.75rem; }
  .bes-home-final { margin-block-start: 1.5rem; padding-block: 2rem; }
}
