/* A useful index lives inside the landscape; the artwork stays full width. */
.services-section { padding-top: 0; padding-bottom: 70px; background: linear-gradient(180deg,var(--paper),#edf0e9 240px); }
.services-section::before { display: none; }
.garden-scene { height: clamp(840px,64vw,980px); margin: 0 0 12px; }
.garden-scene::after { content: ""; position: absolute; z-index: 1; inset: 0; pointer-events: none; background: linear-gradient(90deg,#edf0e9f2 0%,#edf0e9dc 24%,#edf0e97a 41%,transparent 62%),linear-gradient(180deg,#edf0e990,transparent 70%); mask-image: linear-gradient(180deg,transparent,#000 18%); }
.garden-heading { position: relative; z-index: 6; display: grid; grid-template-columns: minmax(0,570px) minmax(0,240px); align-items: end; gap: 70px; padding-top: 60px; transform: translate3d(0,calc(var(--service-heading-y,0px) * .3),0); }
.garden-heading .eyebrow { font-size: 9px; color: #819184; margin-bottom: 24px; }
.garden-heading h2 { font-size: clamp(42px,4.2vw,64px); font-weight: 500; line-height: 1.2; letter-spacing: -.065em; }
.garden-heading h2 > span,.garden-heading h2 > em { display: block; white-space: nowrap; }
.garden-heading h2 > em { font-style: normal; color: #788873; margin-left: .85em; margin-top: 8px; }
.garden-guide { position: relative; z-index: 6; padding-top: 43px; }
.garden-type { position: absolute; z-index: 2; left: 0; bottom: 55px; width: max-content; pointer-events: none; white-space: nowrap; color: #69816e; opacity: .42; font: italic clamp(135px,17vw,310px)/1.05 Georgia,"Times New Roman",serif; letter-spacing: -.065em; transform: translate3d(var(--service-type-x,0px),var(--service-type-y,0px),0); }
.garden-guide-kicker { font: 9px/1.8 ui-monospace,monospace; letter-spacing: .08em; color: #7e887c; }
.garden-guide-kicker span { color: #b69899; margin-inline: 9px; }
.garden-tabs { display: flex; align-items: center; gap: 25px; width: fit-content; max-width: 100%; border-bottom: 1px solid #7e947333; margin-top: 16px; }
.garden-tabs a { position: relative; color: #76816f; font: 500 14px/1.5 Georgia,"Segoe UI",serif; padding: 10px 0 13px; min-height: 44px; text-decoration: none; transition: color .18s; }
.garden-tabs a::after { content: ""; position: absolute; height: 2px; inset: auto 0 -1px; background: #aa7085; transform: scaleX(0); transform-origin: left; transition: transform .22s; }
.garden-tabs a[aria-selected="true"] { color: #965a74; }
.garden-tabs a[aria-selected="true"]::after { transform: scaleX(1); }
.garden-tabs a:hover { color: #965a74; }
.garden-panels { margin-top: 23px; width: 460px; max-width: 100%; min-height: 231px; }
.garden-panel[hidden] { display: none; }
.garden-panel h3 { color: #40584d; font-size: 32px; font-weight: 500; line-height: 1.4; letter-spacing: -.045em; }
.garden-panel p { color: #607063; font-size: 13px; line-height: 1.95; margin-top: 12px; }
.garden-panel ul { display: flex; flex-wrap: wrap; gap: 8px 16px; list-style: none; padding: 0; margin: 17px 0 0; color: #7b8675; font-size: 10px; }
.garden-panel li + li::before { content: "·"; margin-right: 16px; color: #a49b90; }
.garden-guide-link { display: inline-flex; align-items: center; gap: 22px; min-height: 44px; margin-top: 12px; font-size: 12px; color: #96627c; }
.garden-guide-link span { font-size: 18px; transition: transform .18s; }
.garden-guide-link:hover span { transform: translate(3px,-3px); }
.garden-foreground { z-index: 4; width: min(52vw,860px); left: auto; right: -12px; bottom: 90px; opacity: .94; filter: blur(.8px) saturate(.85) drop-shadow(0 16px 20px #4c60472b); transform: translate3d(var(--garden-near-x,0px),var(--garden-near-y,0px),0) scaleX(-1); }
.services-section .architecture-note { margin-top: 22px; }
@media (max-width:1199px) {
  .garden-heading { grid-template-columns: minmax(0,1fr) 205px; gap: 25px; }
  .garden-heading h2 { font-size: clamp(36px,4.5vw,50px); }
  .garden-guide { padding-top: 35px; }
  .garden-foreground { width: 44vw; }
  .garden-guide-kicker { font-size: 8px; }
  .garden-panel h3 { font-size: 29px; }
  .garden-tabs { gap: 23px; }
}
@media (max-width:719px) {
  .services-section { padding-top: 0; padding-bottom: 55px; }
  .garden-scene { height: 950px; margin-top: 0; }
  .garden-scene::after { background: linear-gradient(180deg,#edf0e9fa 0%,#edf0e9ee 38%,#edf0e9a8 60%,transparent 85%); }
  .garden-heading { display: block; padding-top: 38px; }
  .garden-heading .eyebrow { font-size: 7px; margin-bottom: 20px; }
  .garden-heading h2 { font-size: clamp(26px,8.2vw,38px); }
  .garden-heading h2 > em { margin-left: .65em; margin-top: 8px; }
  .garden-guide { padding-top: 28px; }
  .garden-guide-kicker { font-size: 7px; letter-spacing: .03em; }
  .garden-guide-kicker span { margin-inline: 5px; }
  .garden-tabs { gap: 22px; margin-top: 11px; }
  .garden-tabs a { font-size: 13px; }
  .garden-panels { margin-top: 20px; min-height: 231px; }
  .garden-panel h3 { font-size: 27px; }
  .garden-panel p { font-size: 12px; line-height: 1.9; }
  .garden-panel ul { font-size: 9px; gap: 8px 12px; }
  .garden-panel li + li::before { margin-right: 12px; }
  .garden-guide-link { font-size: 11px; }
  .garden-distance > img { object-position: 68% 60%; }
  .garden-foreground { width: 86vw; left: auto; right: -8px; bottom: 70px; filter: blur(.6px) saturate(.85) drop-shadow(0 12px 15px #4c604724); }
  .garden-type { bottom: 95px; font-size: min(128px, 18vw); opacity: .5; max-width: 100vw; }
  .garden-scene figcaption { bottom: 30px; right: 24px; }
  .garden-scene figcaption > strong { font-size: 18px; }
}
@media (max-width:349px) {
  .garden-tabs { gap: 16px; }
  .garden-type { font-size: min(80px, 15vw); }
  .garden-panel h3 { font-size: 24px; }
  .garden-guide-kicker { font-size: 6px; }
  .garden-panel p { font-size: 11px; }
  .garden-panel ul { font-size: 8px; }
}
.motion-reduced .garden-foreground { transform: scaleX(-1); }
.motion-reduced .garden-heading,.motion-reduced .garden-type { transform: none; }
.motion-reduced .garden-tabs a,.motion-reduced .garden-tabs a::after,.motion-reduced .garden-guide-link span { transition: none; }
