/* One blue square follows the architectural rules and becomes the contact panel. */
#main{position:relative}
.page-journey{display:none;position:absolute;z-index:2;inset:0;overflow:hidden;overflow:clip;pointer-events:none}
.journey-ready>.page-journey{display:block}
.page-journey-route{position:absolute;inset:0;width:100%;height:100%;fill:none;stroke:var(--drawing-line);stroke-width:1}
.page-journey-route path{vector-effect:non-scaling-stroke}
.page-journey-square{position:absolute;left:0;top:0;width:100px;height:100px;background:var(--color-spark-blue);transform-origin:0 0;transition:none}
/* Keep the whole contact story readable before the travelling fill arrives. */
.booking-contact-panel{padding:32px;background:var(--color-night-ink);background:color-mix(in srgb,var(--color-spark-blue) 50%,var(--color-night-ink));color:var(--color-paper-white)}
.booking-contact-panel>h2,.booking-contact-panel>p{position:relative;z-index:3}
.booking .booking-contact-panel :is(h2,.display-accent,.lead,#booking-status){color:var(--color-paper-white)}
.booking-contact-panel #booking-status{font-size:1.0625rem}
.booking-contact-panel .contact-actions{--button-fill:var(--color-paper-white)}
.journey-cta{position:relative;z-index:3;margin-top:28px;min-height:88px;padding:16px;background:var(--color-spark-blue);color:var(--color-night-ink)}
.journey-ready .journey-cta{background:transparent}
.journey-ready.journey-docked .journey-cta,.journey-ready .journey-cta:focus-within{background:var(--color-spark-blue)}
.journey-cta .contact-actions{display:flex;flex-direction:column;align-items:stretch;flex-wrap:nowrap;gap:16px;margin:0}
@media(max-width:760px){.booking-contact-panel{padding:24px}.journey-cta{min-height:80px;padding:12px}}
@media(max-width:380px){.booking-contact-panel{padding:16px}.journey-cta{padding:8px}}
@media(prefers-reduced-motion:reduce){.page-journey{display:none!important}.journey-ready .journey-cta{background:var(--color-spark-blue)}}
@media print{.booking-contact-panel{background:white;color:black;padding:0}.booking .booking-contact-panel :is(h2,.display-accent,.lead,#booking-status){color:black}.page-journey{display:none!important}.journey-cta,.journey-ready .journey-cta{background:white!important;min-height:0;padding:0}}
