/* Full-homepage preview only. Existing service pages and shared files are untouched. */
.homepage-motion-study { --hp-ease:cubic-bezier(.2,.75,.2,1); }
.homepage-motion-study .hp-editorial-art { display:block;width:100%;height:auto;aspect-ratio:16/9;overflow:hidden; }
.homepage-motion-study .hp-editorial-art :is(.hp-stack-block,.hp-document,.hp-chart-point,.hp-journey-origin,.hp-journey-node),
.homepage-motion-study .thinking-map .thinking-core { transform-box:fill-box;transform-origin:center; }
.homepage-motion-study .small-cross,.homepage-motion-study .small-cross svg,
.homepage-motion-study .principle-grid article>span { transform-origin:center; }
.homepage-motion-study .assembly-signals { display:block; }
.homepage-motion-study .assembly-signal { opacity:0; }
.homepage-motion-study .thinking-glow::before { animation:none !important; }
.homepage-motion-study .thinking-glow .thinking-glow::before { display:none; }
.homepage-motion-study .hp-service { position:relative;isolation:isolate; }
.homepage-motion-study .hp-service::after { content:"";position:absolute;inset:0;pointer-events:none;border:1px solid #637a39;border-radius:2px;background:linear-gradient(130deg,rgba(217,245,107,.07),transparent 60%);opacity:0;transition:opacity 220ms ease; }
.homepage-motion-study .hp-service.service--automation::after,
.homepage-motion-study .hp-service:first-child::after { border-color:#d9f56b; }
@media(hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference) {
 .homepage-motion-study:not([data-assembly-paused]) .hp-service:is(:hover,:focus-within)::after { opacity:1; }
 .homepage-motion-study .hp-service .service-icon svg { transition:translate 220ms var(--hp-ease); }
 .homepage-motion-study:not([data-assembly-paused]) .hp-service:is(:hover,:focus-within) .service-icon svg { translate:4px -4px; }
}
.homepage-motion-study .hp-service:focus-within::after { opacity:1; }
/* No CSS pre-hiding: all content, diagrams and logos remain visible without JS. */
@media(prefers-reduced-motion:reduce) {
 .homepage-motion-study .hp-service::after,.homepage-motion-study .hp-service .service-icon svg { transition:none;translate:none; }
 .homepage-motion-study .assembly-signal,.homepage-motion-study .hp-journey-packet { opacity:0 !important; }
}
@media print {
 .homepage-motion-study .assembly-signal,.homepage-motion-study .hp-journey-packet { display:none !important; }
 .homepage-motion-study main>:not(.hero) * { animation:none !important;transform:none !important;opacity:1 !important; }
}

.homepage-motion-study .thinking-points circle { transform-box: fill-box; transform-origin: center; }

/* One centred composition; form internals and their behaviour remain unchanged. */
.homepage-motion-study #contact { display:block; width:100%; max-width:1080px; margin-inline:auto; padding:0 0 88px; }
.homepage-motion-study #contact .contact-copy { text-align:center; border:0; padding:56px 0 0; }
.homepage-motion-study #contact h2 { font-size:clamp(38px,4.8vw,68px); line-height:1.12; margin:20px auto 0; max-width:1000px; }
.homepage-motion-study #contact .contact-copy>p:not(.eyebrow) { max-width:650px; margin:20px auto 0; font-size:17px; line-height:1.7; }
.homepage-motion-study #contact #enquiry-form { width:100%; max-width:none; margin:36px auto 0; padding:0; border:0; min-width:0; text-align:left; }
.homepage-motion-study #contact .service-choices { grid-template-columns:repeat(2,minmax(0,1fr)); }
.homepage-motion-study #contact .wizard-progress { padding:16px 20px; margin:0 0 30px; background:transparent; color:#171c1b; border-top:1px solid #c5cbbd; border-bottom:1px solid #c5cbbd; }
.homepage-motion-study #contact .wizard-progress>p { font-size:17px; font-weight:600; color:#3e5425; margin:0 0 12px; }
.homepage-motion-study #contact .wizard-progress li { display:flex; align-items:baseline; gap:8px; font-size:17px; color:#555e57; }
.homepage-motion-study #contact .wizard-progress li span { display:inline; margin:0; font-size:14px; }
.homepage-motion-study #contact .wizard-progress li[aria-current],.homepage-motion-study #contact .wizard-progress li[data-complete] { color:#3e5425; }
.homepage-motion-study #contact .wizard-track { margin-top:12px; height:3px; background:#d5d9ce; }
.homepage-motion-study #contact .wizard-track span { background:#526b2f; }
@media(max-width:600px) {
 .homepage-motion-study #contact { padding-bottom:60px; }
 .homepage-motion-study #contact .contact-copy { padding-top:36px; }
 .homepage-motion-study #contact .contact-copy>p:not(.eyebrow) { font-size:16px; }
 .homepage-motion-study #contact #enquiry-form { margin-top:26px; }
 .homepage-motion-study #contact .service-choices { grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px; }
 .homepage-motion-study #contact .service-choice { padding:14px 12px; min-height:52px; font-size:13px; line-height:1.45; overflow-wrap:anywhere; }
 .homepage-motion-study #contact .wizard-progress { padding:14px 0; }
 .homepage-motion-study #contact .wizard-progress li { display:block; font-size:16px; }
 .homepage-motion-study #contact .wizard-progress li span { display:block; font-size:12px; margin-top:4px; }
}
