/* ROYAL TRAVELER public page polish. The shared home header remains the source of truth. */
#rcrV2[data-royal-traveler-page]{
  min-height:100vh;
  isolation:isolate;
}

/* The inline page shell predates the shared home header. Keep its content rules while
   letting the fixed .top header use the exact home branding scale. */
#rcrV2[data-royal-traveler-page] .top .brand img,
#rcrV2[data-royal-traveler-page] .top .brand__mark{
  width:52px;
  height:52px;
  border-radius:14px;
  object-fit:cover;
  box-shadow:none;
}
#rcrV2[data-royal-traveler-page] .top .brand__name{display:block}
#rcrV2[data-royal-traveler-page] .top .navCityPick__trigger--city{white-space:nowrap}
#rcrV2[data-royal-traveler-page] .button svg{display:block!important;width:18px!important;height:18px!important;flex:0 0 18px!important}

#rcrV2[data-royal-traveler-page] main{position:relative;z-index:2}
#rcrV2[data-royal-traveler-page] .hero{padding-top:clamp(76px,9vw,128px);padding-bottom:clamp(38px,6vw,76px)}
#rcrV2[data-royal-traveler-page] .hero__grid{max-width:1180px;margin-inline:auto}
#rcrV2[data-royal-traveler-page] .phoneStage{perspective:1200px}
#rcrV2[data-royal-traveler-page] .phone{transform:rotate(2deg) rotateY(-2deg);transform-style:preserve-3d}
#rcrV2[data-royal-traveler-page] .phoneStage::after{content:"";position:absolute;inset:auto 14% 3%;height:18%;border-radius:50%;background:radial-gradient(ellipse,rgba(255,215,0,.16),transparent 68%);filter:blur(18px);pointer-events:none}

/* All below-the-fold blocks enter once as they cross the viewport. */
#rcrV2[data-royal-traveler-page] .rt-reveal{opacity:0;transform:translate3d(0,28px,0);transition:opacity .72s cubic-bezier(.16,1,.3,1),transform .72s cubic-bezier(.16,1,.3,1);transition-delay:var(--rt-delay,0ms);will-change:opacity,transform}
#rcrV2[data-royal-traveler-page] .rt-reveal.is-visible{opacity:1;transform:none;will-change:auto}
#rcrV2[data-royal-traveler-page] .features .feature.rt-reveal{transform:translate3d(0,34px,0) scale(.985)}
#rcrV2[data-royal-traveler-page] .features .feature.rt-reveal.is-visible{transform:none}

@keyframes rtPhoneFloat{0%,100%{transform:rotate(2deg) rotateY(-2deg) translate3d(0,0,0)}50%{transform:rotate(1deg) rotateY(-2deg) translate3d(0,-10px,0)}}
@keyframes rtRouteDash{to{stroke-dashoffset:-52}}
@keyframes rtGlowPulse{0%,100%{box-shadow:0 0 0 0 rgba(255,215,0,0)}50%{box-shadow:0 0 0 8px rgba(255,215,0,.055)}}
@media (prefers-reduced-motion:no-preference){
  #rcrV2[data-royal-traveler-page] .phone{animation:rtPhoneFloat 6.5s ease-in-out 1.2s infinite}
  #rcrV2[data-royal-traveler-page] .routeMap svg path{animation:rtRouteDash 3.2s linear infinite}
  #rcrV2[data-royal-traveler-page] .feature__icon{animation:rtGlowPulse 4.2s ease-in-out infinite}
  #rcrV2[data-royal-traveler-page] .feature:nth-child(2) .feature__icon{animation-delay:1.2s}
  #rcrV2[data-royal-traveler-page] .feature:nth-child(3) .feature__icon{animation-delay:2.4s}
}

#rcrV2[data-royal-traveler-page] .trustBar div,
#rcrV2[data-royal-traveler-page] .feature,
#rcrV2[data-royal-traveler-page] .steps li,
#rcrV2[data-royal-traveler-page] .qrCard{
  transition:border-color .28s ease,background-color .28s ease,box-shadow .32s ease,transform .32s cubic-bezier(.16,1,.3,1);
}
#rcrV2[data-royal-traveler-page] .trustBar div:hover,
#rcrV2[data-royal-traveler-page] .feature:hover,
#rcrV2[data-royal-traveler-page] .steps li:hover,
#rcrV2[data-royal-traveler-page] .qrCard:hover{
  border-color:rgba(255,215,0,.38);
  box-shadow:0 18px 44px rgba(0,0,0,.32),0 0 24px rgba(255,215,0,.055);
  transform:translateY(-4px);
}
#rcrV2[data-royal-traveler-page] .button{position:relative;overflow:hidden;transition:transform .24s cubic-bezier(.16,1,.3,1),box-shadow .24s ease,filter .24s ease}
#rcrV2[data-royal-traveler-page] .button::after{position:absolute;inset:0;background:linear-gradient(110deg,transparent 24%,rgba(255,255,255,.55) 48%,transparent 72%);content:"";transform:translateX(-140%);pointer-events:none}
#rcrV2[data-royal-traveler-page] .button:hover,#rcrV2[data-royal-traveler-page] .button:focus-visible{transform:translateY(-3px);filter:brightness(1.05)}
@media (prefers-reduced-motion:no-preference){#rcrV2[data-royal-traveler-page] .button:hover::after,#rcrV2[data-royal-traveler-page] .button:focus-visible::after{animation:rtButtonSweep .9s cubic-bezier(.16,1,.3,1) forwards}}
@keyframes rtButtonSweep{to{transform:translateX(140%)}}

@media (max-width:980px){
  #rcrV2[data-royal-traveler-page] .hero{padding-top:clamp(62px,11vw,92px)}
  #rcrV2[data-royal-traveler-page] .phone{transform:none}
}
@media (max-width:620px){
  #rcrV2[data-royal-traveler-page] .hero{padding-top:52px}
  #rcrV2[data-royal-traveler-page] .phone{width:min(355px,94vw)}
  #rcrV2[data-royal-traveler-page] .trustBar div:hover,
  #rcrV2[data-royal-traveler-page] .feature:hover,
  #rcrV2[data-royal-traveler-page] .steps li:hover,
  #rcrV2[data-royal-traveler-page] .qrCard:hover{transform:none}
}
@media (prefers-reduced-motion:reduce){
  #rcrV2[data-royal-traveler-page] .rt-reveal{opacity:1;transform:none;transition:none}
  #rcrV2[data-royal-traveler-page] .phone,
  #rcrV2[data-royal-traveler-page] .routeMap svg path,
  #rcrV2[data-royal-traveler-page] .feature__icon{animation:none!important}
  #rcrV2[data-royal-traveler-page] .button::after{display:none}
}
