/* Aarau Taxi R56 · Alpine Atlas — additive visual layer, no external dependencies */
:root{--r56-ice:#c8e1ee;--r56-gold:#f3d09a;--r56-curve:cubic-bezier(.2,.76,.25,1)}
/* First-visit compass choreography: entirely decorative; timed guard and Skip remain R54/R55. */
.r56-splash-coordinates{position:absolute;inset:0;pointer-events:none;z-index:1}
.r56-splash-coordinates::before,.r56-splash-coordinates::after{content:"";position:absolute;left:50%;top:50%;width:min(76vw,420px);aspect-ratio:1;border-radius:50%;border:1px solid rgba(250,218,170,.10);transform:translate(-50%,-50%) rotate(27deg)}
.r56-splash-coordinates::after{width:min(92vw,510px);border-style:dashed;opacity:.4}
.r56-splash-satellite{position:absolute;left:50%;top:50%;width:min(79vw,438px);aspect-ratio:1;transform:translate(-50%,-50%);border-radius:50%;background:conic-gradient(from 150deg,transparent 0 16%,rgba(250,223,173,.27) 22%,transparent 28% 100%);mask:radial-gradient(circle,transparent 67%,#000 69% 69.7%,transparent 71%)}
html.r54-splash-active .r56-splash-satellite{animation:r56-satellite 3.3s linear infinite}
@keyframes r56-satellite{to{transform:translate(-50%,-50%) rotate(360deg)}}
.r56-splash-route{display:flex;align-items:center;justify-content:center;gap:10px;margin:15px auto 0;width:min(260px,68vw);color:#e8d2b2;font:650 10px/1.4 system-ui,sans-serif;letter-spacing:.17em}
.r56-splash-route .r56-route-line{display:block;flex:1;height:1px;position:relative;background:linear-gradient(90deg,rgba(232,197,151,.28),#efcb94,rgba(232,197,151,.28));overflow:visible}
.r56-route-line::after{content:"";display:block;position:absolute;width:6px;height:6px;top:50%;left:0;border-radius:50%;background:#ffe4ae;box-shadow:0 0 14px #e0b779;transform:translateY(-50%)}
html.r54-splash-active .r56-route-line::after{animation:r56-route-trace 1.35s .27s var(--r56-curve) both}
@keyframes r56-route-trace{from{left:0;opacity:0}20%{opacity:1}to{left:100%;opacity:1}}
.r56-splash-caption{position:absolute;top:max(24px,env(safe-area-inset-top));right:max(24px,env(safe-area-inset-right));font:650 9px/1.4 system-ui,sans-serif;letter-spacing:.24em;color:#cbb89b;opacity:.87}
/* Cinematic page opening: native, opt-in cross-document transitions only. No navigation intercept. */
@media(prefers-reduced-motion:no-preference){
  ::view-transition-old(root){animation:r56-page-out .21s ease-in both}
  ::view-transition-new(root){animation:r56-page-in .42s var(--r56-curve) both}
  .r54-page .r54-hero-copy>*{animation-duration:.7s}
  .r55-card:focus-visible .r55-card-arrow{transform:translate(3px,-3px)}
  .r56-gallery-last .r55-card-arrow{transition:transform .3s}
}
@keyframes r56-page-out{to{opacity:.48;filter:brightness(.75)}}
@keyframes r56-page-in{from{opacity:.0;filter:brightness(.75)}to{opacity:1;filter:none}}
/* Prominent, thumb-friendly floating enquiry action on service guides. */
@media(max-width:650px){
 .r54-page .r54-float-actions{bottom:max(17px,env(safe-area-inset-bottom));right:max(15px,env(safe-area-inset-right))}
 .r54-page .r54-float-actions a{min-width:196px;min-height:53px;display:flex;align-items:center;justify-content:center;gap:10px;padding:0 14px;border-radius:16px;font-size:22px;letter-spacing:0;box-shadow:0 12px 26px rgba(0,0,0,.3),inset 0 1px 0 rgba(255,255,255,.39);border:1px solid #f4d6a3}
 .r54-page .r54-float-actions a::before{content:"ANFRAGE VORBEREITEN";font:800 10px/1.1 system-ui,sans-serif;letter-spacing:.075em;white-space:nowrap}
 .r54-page .r54-float-actions a:active{filter:brightness(.93)}
 .r54-page .r55-backtop{left:max(15px,env(safe-area-inset-left));width:44px;height:44px}
 .r54-page .r54-final,.r54-page .r54-footer{scroll-margin-bottom:76px}
}
@media(max-width:355px){.r54-page .r54-float-actions a{min-width:176px;padding-inline:10px;gap:6px}.r54-page .r54-float-actions a::before{font-size:9px;letter-spacing:.03em}}
/* Fine animation polish: no continuous layout changes, no new heavy blur on scroll. */
.r56-journey-feedback{display:flex;align-items:center;gap:9px;min-height:23px;margin:17px 0 0;color:#d9c4a4;font:600 11px/1.6 system-ui,sans-serif;letter-spacing:.045em}
.r56-journey-feedback::before{content:"";flex:none;width:7px;height:7px;background:#edc78f;border-radius:50%;box-shadow:0 0 0 4px rgba(246,210,154,.09)}
.r56-journey-feedback.is-updated::before{animation:r56-feedback-pulse .43s ease-out both}
@keyframes r56-feedback-pulse{50%{box-shadow:0 0 0 8px rgba(245,197,125,.2)}100%{box-shadow:0 0 0 4px rgba(246,210,154,.09)}}
.r54-page [id="entdecken"],.r54-page [id="details"],.r54-page [id="fragen"],.r54-page [id="r54Journey"],.r54-page [id="r55Experience"]{scroll-margin-top:74px}
.r56-footer-routes{display:flex;flex-wrap:wrap;gap:9px;padding:0 0 28px}
.r56-footer-routes a{padding:11px 14px;min-height:44px;border-radius:12px;text-decoration:none;color:#ebd4b1!important;background:#152537;border:1px solid rgba(232,199,147,.25);font:650 12px/1.4 system-ui,sans-serif;transition:border-color .2s,background .2s}
.r56-footer-routes a:hover,.r56-footer-routes a:focus-visible{border-color:#e4c18e;background:#21384b}
.r56-footer-routes a:focus-visible{outline:2px solid #ffdfad;outline-offset:3px}
/* Honest reduced-motion and low-resource fallbacks. */
@media(prefers-reduced-motion:reduce){
 ::view-transition-old(root),::view-transition-new(root){animation-duration:.01ms!important}
 .r56-splash-satellite,.r56-route-line::after,.r56-journey-feedback::before{animation:none!important}
 .r56-footer-routes *{transition:none!important}
}
html.r49-lite .r56-splash-satellite,html.r49-lite .r56-route-line::after,html.r49-lite .r56-journey-feedback::before{animation:none!important}
@media(prefers-reduced-transparency:reduce){.r54-page .r54-float-actions a{backdrop-filter:none!important}}
@media(max-height:590px) and (orientation:landscape){.r56-splash-caption{display:none}.r56-splash-route{margin-top:6px}}

/* Keep the cinematic top caption from colliding with the location label on narrow phones. */
@media(max-width:650px){.r56-splash-caption{display:none}.r54-page .r54-footer{padding-bottom:calc(92px + env(safe-area-inset-bottom))}}
html.r49-lite ::view-transition-old(root),html.r49-lite ::view-transition-new(root){animation-duration:.01ms!important}

/* Contextual enquiry CTA: no duplicated call-to-action over the first-screen hero. */
@media(max-width:650px){
 html.r56-float-enhanced .r54-page .r54-float-actions{opacity:0;visibility:hidden;pointer-events:none;transform:translateY(12px);transition:opacity .24s ease,visibility .24s,transform .24s var(--r56-curve)}
 html.r56-float-enhanced .r54-page .r54-float-actions.r56-float-visible{opacity:1;visibility:visible;pointer-events:auto;transform:none}
}
@media(prefers-reduced-motion:reduce){html.r56-float-enhanced .r54-page .r54-float-actions{transition:none!important}}
