/* Compact two-column introduction; CMS heading/body hooks stay on movement-inner. */
body[data-page="home"] .movement-panel-section { padding: 36px 24px; background: var(--brand-white); }
body[data-page="home"] .movement-panel-section::before,
body[data-page="home"] .movement-panel-section > .glow { display: none; }
body[data-page="home"] .movement-panel {
  display: grid; grid-template-columns: minmax(0,.85fr) minmax(0,1.15fr);
  align-items: center; gap: clamp(32px,5vw,72px); max-width: 1240px;
  padding: clamp(28px,4vw,52px); border-radius: 30px; background: var(--brand-off-white);
}
/* Service cards are informational; booking actions remain in the copy column. */
.movement-service-cards { display: grid; gap: 10px; min-width: 0; margin: 0; padding: 0; list-style: none; }
.movement-service-card { display: flex; align-items: center; gap: 13px; padding: 15px; min-height: 78px; border: 1px solid var(--brand-light-gray); border-radius: 16px; background: var(--brand-white); box-shadow: 0 8px 20px -16px rgba(16,0,33,.2); }
.movement-service-icon { display: grid; flex: 0 0 46px; height: 46px; place-items: center; border-radius: 12px; color: var(--brand-white); background: var(--brand-deep-purple); }
.movement-service-icon svg { width: 23px; height: 23px; }
.movement-service-card h3 { margin: 0 0 4px; color: var(--brand-deep-purple); font: 600 14px/1.25 "Outfit",sans-serif; letter-spacing: -.015em; }
.movement-service-card div > span { display: block; color: var(--brand-muted); font: 400 12px/1.4 "Outfit",sans-serif; }
body[data-page="home"] .movement-panel .movement-inner { display: block; width: auto; max-width: none; padding: 0; margin: 0; text-align: left; }
.movement-kicker { display: inline-block; margin: 0 0 16px; padding: 5px 9px; border-radius: 5px; color: var(--brand-electric-blue); background: var(--brand-light-gray); font: 500 12px/1.3 "Outfit",sans-serif; }
body[data-page="home"] .movement-panel h2 { max-width: 22ch; font-size: clamp(30px,3.5vw,47px); line-height: 1.06; letter-spacing: -.045em; margin: 0 0 18px; }
body[data-page="home"] .movement-panel p { max-width: 54ch; margin: 0; font-size: 15px; line-height: 1.6; color: var(--brand-muted); }
body[data-page="home"] .movement-panel .movement-actions { justify-content: flex-start; gap: 8px; margin: 22px 0 0; }
body[data-page="home"] .movement-panel .movement-actions .btn { min-height: 42px; font-size: 12px; padding: 11px 15px; }
body[data-page="home"] .movement-panel .movement-actions .btn-primary { background: var(--brand-cta-gradient); color: var(--brand-white); }
@media(max-width:760px) {
  body[data-page="home"] .movement-panel-section { padding: 24px 16px; }
  body[data-page="home"] .movement-panel { grid-template-columns: 1fr; gap: 28px; padding: 24px; border-radius: 24px; }
  body[data-page="home"] .movement-panel h2 { max-width: 22ch; font-size: clamp(30px,7.7vw,40px); }
  body[data-page="home"] .movement-panel p { font-size: 14px; }
  body[data-page="home"] .movement-panel .movement-actions { flex-wrap: wrap; }
}

/* Native disclosure cards retain keyboard access without changing system code. */
body[data-page="home"] .movement-service-cards#services { padding: 0; background: transparent; scroll-margin-top: 100px; }
.movement-service-detail { background: var(--brand-white); border: 1px solid var(--brand-light-gray); border-radius: 16px; overflow: hidden; }
.movement-service-detail summary { display: flex; align-items: center; gap: 12px; padding: 13px; cursor: pointer; list-style: none; }
.movement-service-detail summary::-webkit-details-marker { display: none; }
.movement-service-name { flex: 1; font: 500 14px/1.35 "Outfit",sans-serif; color: var(--brand-deep-purple); }
.movement-service-toggle { color: var(--brand-electric-blue); font-size: 22px; transition: transform .2s; }
.movement-service-detail[open] .movement-service-toggle { transform: rotate(45deg); }
.movement-service-detail[open] { border-color: var(--brand-brand-blue); }
.movement-service-detail summary:focus-visible { outline: 2px solid var(--brand-electric-blue); outline-offset: -3px; }
.movement-service-icon svg { stroke: currentColor; }
body[data-page="home"] .movement-panel .movement-service-body { padding: 0 16px 16px; }
body[data-page="home"] .movement-panel .movement-service-body p { font-size: 13px; line-height: 1.6; }
.movement-service-body a { display: inline-block; margin-top: 10px; color: var(--brand-electric-blue); font-size: 13px; font-weight: 600; }

.movement-service-detail summary { min-height: 78px; padding: 15px; gap: 13px; }
.movement-service-label { flex: 1; min-width: 0; }
.movement-service-label .movement-service-name { display: block; font-weight: 600; margin-bottom: 4px; }
.movement-service-subtitle { display: block; color: var(--brand-muted); font: 400 12px/1.4 "Outfit",sans-serif; }
body[data-page="home"] .movement-panel .movement-service-body p + p { margin-top: 10px; }
.movement-service-body a { margin-right: 14px; }
