/* RRN welcome and personal reveal. Timings match tracker-welcome.js. */
html.rrn-intro-open{overflow:hidden;overscroll-behavior:none}
dialog.rrn-welcome{position:fixed;inset:0;width:100%;height:100dvh;max-width:none;max-height:none;margin:0;padding:0;overflow:hidden;border:0;border-radius:0;background:transparent;color:#f6f3ee;box-shadow:none}
dialog.rrn-welcome::backdrop{background:transparent;backdrop-filter:none}dialog.rrn-welcome:not([open]){display:none}
.rrn-welcome__surface{position:absolute;inset:0;display:grid;place-items:center;overflow:hidden;background:#0c2448;transform-origin:50% 0;will-change:transform;isolation:isolate}
.rrn-welcome__brand{position:relative;z-index:2;width:min(86vw,560px);margin-top:-3vh;text-align:center;will-change:transform,opacity}
.rrn-welcome__mark{display:block;width:174px;height:100px;margin:0 auto 28px;object-fit:contain}.rrn-welcome__mark[hidden]{display:none}
.rrn-welcome__message{margin:0;font:750 clamp(40px,8.4vw,66px)/1.04 RedHat,sans-serif;letter-spacing:-.045em}.rrn-message-line{display:block}.rrn-message-line--green{color:#1cc478}
.rrn-welcome__foot{position:absolute;z-index:3;bottom:max(30px,env(safe-area-inset-bottom));left:0;width:100%;text-align:center;font:650 10px/1.4 RedHat,sans-serif;letter-spacing:.2em;color:#afc1d8}
.rrn-intro-shapes{position:absolute;inset:0;z-index:0;overflow:hidden;pointer-events:none}.rrn-intro-band{position:absolute;display:block;background:#17345b;border-radius:240px;transform-origin:center;opacity:.56}.rrn-intro-band--one{width:260px;height:85vh;min-height:600px;left:-175px;top:-170px;rotate:34deg}.rrn-intro-band--two{width:220px;height:75vh;min-height:500px;right:-165px;bottom:-230px;rotate:34deg;background:#1b365f;opacity:.62}.rrn-intro-lines{position:absolute;inset:0;width:100%;height:100%;overflow:visible}.rrn-intro-line{fill:none;stroke-width:1.5;stroke-linecap:round;stroke-dasharray:1;stroke-dashoffset:1}.rrn-intro-line--green{stroke:#1cc478;opacity:.4}.rrn-intro-line--faint{stroke:#6684aa;opacity:.27}.rrn-intro-orbit{fill:none;stroke:#1cc478;stroke-width:1.5;opacity:.2;transform-box:fill-box;transform-origin:center}.rrn-intro-dot{fill:#80e8b6;opacity:.8}.rrn-intro-lozenge{position:absolute;left:9%;bottom:19%;height:36px;width:9px;border-radius:9px;background:#1cc478;rotate:34deg;opacity:.78}
.rrn-welcome--playing[data-phase=brand] .rrn-welcome__surface{animation:rrn-brand-curtain 3400ms cubic-bezier(.76,0,.24,1) both}
.rrn-welcome--playing[data-phase=brand] .rrn-welcome__mark{animation:rrn-mark-arrive 950ms cubic-bezier(.16,.86,.2,1.12) 170ms both}
.rrn-welcome--playing[data-phase=brand] .rrn-message-line{animation:rrn-line-arrive 740ms cubic-bezier(.18,.85,.25,1) 610ms both}
.rrn-welcome--playing[data-phase=brand] .rrn-message-line--green{animation-delay:800ms}
.rrn-welcome--playing .rrn-intro-band--one{animation:rrn-band-first 3000ms cubic-bezier(.2,.8,.2,1) both}.rrn-welcome--playing .rrn-intro-band--two{animation:rrn-band-second 3200ms cubic-bezier(.2,.8,.2,1) both}
.rrn-welcome--playing .rrn-intro-line--green{animation:rrn-draw-line 2700ms cubic-bezier(.25,.65,.4,1) 120ms both}.rrn-welcome--playing .rrn-intro-line--faint{animation:rrn-draw-line 2900ms ease-out 300ms both}.rrn-welcome--playing .rrn-intro-orbit{animation:rrn-orbit-arrive 2700ms ease-out 250ms both}.rrn-welcome--playing .rrn-intro-lozenge{animation:rrn-lozenge-drift 3100ms cubic-bezier(.2,.8,.3,1) both}
@keyframes rrn-brand-curtain{0%,79%{transform:translateY(0);border-radius:0}88%{border-radius:0 0 42px 42px}100%{transform:translateY(-102%);border-radius:0 0 70px 70px}}
@keyframes rrn-mark-arrive{0%{opacity:0;transform:translateY(22px) scale(.9) rotate(-4deg)}70%{opacity:1;transform:translateY(-2px) scale(1.025) rotate(.6deg)}100%{opacity:1;transform:none}}
@keyframes rrn-line-arrive{from{opacity:0;transform:translateY(22px)}to{opacity:1;transform:none}}
@keyframes rrn-band-first{0%{translate:-100px -220px;opacity:0}35%{opacity:.56}100%{translate:24px 35px;opacity:.56}}
@keyframes rrn-band-second{0%{translate:140px 190px;opacity:0}35%{opacity:.62}100%{translate:-22px -45px;opacity:.62}}
@keyframes rrn-draw-line{0%{stroke-dashoffset:1}85%,100%{stroke-dashoffset:0}}
@keyframes rrn-orbit-arrive{from{transform:translate(15px,-35px) scale(.7);opacity:0}to{transform:translate(-15px,14px) scale(1);opacity:.2}}
@keyframes rrn-lozenge-drift{0%{translate:-30px 100px;opacity:0}25%{opacity:.78}100%{translate:30px -40px;opacity:.78}}
/* A separate, personal moment after the vehicle check. */
.rrn-personal-surface{background:transparent}.rrn-reveal-panel{position:absolute;top:0;bottom:0;width:50.2%;background:#0c2448;z-index:0;will-change:transform}.rrn-reveal-panel--left{left:0}.rrn-reveal-panel--right{right:0}.rrn-personal-brand{margin-top:-1vh;display:flex;flex-direction:column;align-items:center}.rrn-confirmation{width:90px;height:90px;margin:0 auto 22px;position:relative}.rrn-confirmation:before{content:'';position:absolute;inset:2px;background:#163c4e;border-radius:50%}.rrn-confirmation svg{width:100%;height:100%;position:relative;overflow:visible}.rrn-confirm-ring{stroke:#1cc478;stroke-width:2;fill:none;stroke-dasharray:1;stroke-dashoffset:1;transform:rotate(-90deg);transform-origin:center}.rrn-confirm-tick{fill:none;stroke:#7ee3af;stroke-width:4;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:1;stroke-dashoffset:1}.rrn-personal-kicker{font:600 10px RedHat,sans-serif;letter-spacing:1.7px;color:#b4c9dd;margin-bottom:13px}.rrn-personal-plate.proper-plate{font-size:34px;border:2px solid #0a1727;box-shadow:0 8px 20px #0002;border-radius:7px;letter-spacing:1px;background:#f7d117;color:#1a1a1a;display:inline-flex;margin-bottom:30px}.rrn-personal-plate .plate-band{width:29px;font-size:10px;padding-bottom:9px}.rrn-personal-plate.proper-plate>span:last-child{padding:9px 13px}.rrn-personal-brand .rrn-welcome__message{font-size:clamp(40px,8.2vw,58px)}.rrn-personal-caption{font:400 12px/1.7 Raleway,sans-serif;color:#b4c9dd;margin-top:18px;max-width:250px}.rrn-welcome--playing[data-phase=repair] .rrn-reveal-panel--left{animation:rrn-panel-left 2200ms cubic-bezier(.7,0,.2,1) both}.rrn-welcome--playing[data-phase=repair] .rrn-reveal-panel--right{animation:rrn-panel-right 2200ms cubic-bezier(.7,0,.2,1) both}.rrn-welcome--playing[data-phase=repair] .rrn-personal-brand{animation:rrn-personal-resolve 2200ms ease both}.rrn-welcome--playing[data-phase=repair] .rrn-confirm-ring{animation:rrn-draw-line 650ms ease-out 50ms both}.rrn-welcome--playing[data-phase=repair] .rrn-confirm-tick{animation:rrn-draw-line 400ms ease-out 320ms both}.rrn-welcome--playing[data-phase=repair] .rrn-personal-plate{animation:rrn-plate-arrive 850ms cubic-bezier(.15,.8,.25,1.08) 120ms both}.rrn-welcome--playing[data-phase=repair] .rrn-welcome__foot,.rrn-welcome--playing[data-phase=repair] .rrn-welcome__skip{animation:rrn-furniture-exit 2200ms ease both}
@keyframes rrn-panel-left{0%,73%{transform:translateX(0)}100%{transform:translateX(-102%)}}
@keyframes rrn-panel-right{0%,73%{transform:translateX(0)}100%{transform:translateX(102%)}}
@keyframes rrn-personal-resolve{0%{opacity:0;transform:translateY(15px) scale(.98)}24%,68%{opacity:1;transform:translateY(0) scale(1)}82%,100%{opacity:0;transform:translateY(-20px) scale(.96)}}
@keyframes rrn-plate-arrive{0%{transform:translateY(24px) rotate(-5deg) scale(.9)}70%{transform:translateY(-2px) rotate(.5deg) scale(1.02)}100%{transform:none}}
@keyframes rrn-furniture-exit{0%,72%{opacity:1}85%,100%{opacity:0}}
@media(max-height:650px){.rrn-welcome__mark{width:146px;height:80px;margin-bottom:21px}.rrn-confirmation{width:69px;height:69px;margin-bottom:15px}.rrn-personal-plate.proper-plate{font-size:28px;margin-bottom:20px}.rrn-personal-brand .rrn-welcome__message{font-size:38px}.rrn-personal-caption{margin-top:12px}.rrn-welcome__foot{bottom:20px}}
.rrn-welcome[data-phase=brand] .rrn-welcome__message{font-size:clamp(35px,7.8vw,58px)}
/* Four manually advanced scenes follow the fixed brand welcome. */
.rrn-welcome[data-phase=brand]>.rrn-welcome__surface{z-index:2}
.rrn-overview{position:absolute;inset:0;display:grid;grid-template-rows:auto minmax(0,1fr) auto;padding:max(26px,env(safe-area-inset-top)) max(26px,env(safe-area-inset-right)) max(28px,env(safe-area-inset-bottom));background:#0c2448;color:#f6f3ee;overflow-y:auto}
.rrn-overview__header{display:flex;align-items:center;justify-content:space-between;width:min(100%,880px);margin:0 auto;gap:24px}
.rrn-overview__header>img{width:78px;height:40px;object-fit:contain}
.rrn-overview__skip{display:flex;align-items:center;gap:12px;min-height:44px;padding:10px 2px;background:none;border:0;color:#c3d0e1;font:600 13px RedHat,sans-serif;cursor:pointer}
.rrn-overview button:focus-visible{outline:3px solid #1cc478;outline-offset:5px}.rrn-overview__title:focus{outline:none}
.rrn-overview__viewport{min-height:0;overflow:hidden;width:calc(100% + 52px);margin:0 -26px}
.rrn-overview__track{height:100%;width:100%;display:flex;transition:transform 720ms cubic-bezier(.22,.8,.2,1);will-change:transform}
.rrn-overview__slide{flex:0 0 100%;width:100%;min-width:0;box-sizing:border-box;display:grid;place-items:center;padding:0 26px;overflow:hidden}
.rrn-overview__main{align-self:center;text-align:center;width:min(100%,440px);margin:0 auto;padding:16px 0 10px}
.rrn-overview__slide:not(.is-current) .rrn-tour-art *{animation-play-state:paused}
.rrn-overview__slide.is-current .rrn-overview__main{animation:rrn-tour-focus 720ms ease both}
.rrn-overview__eyebrow{font:650 9px/1.5 RedHat,sans-serif;letter-spacing:2px;color:#88a4c1;margin:6px 0 18px}
.rrn-overview__title{font:750 clamp(32px,7.7vw,44px)/1.08 RedHat,sans-serif;color:#f6f3ee;letter-spacing:-1.4px;margin:0 auto;max-width:350px}
.rrn-overview__copy{font:400 14px/1.7 Raleway,sans-serif;color:#b5c9de;max-width:295px;margin:16px auto 0}
.rrn-overview__footer{width:min(100%,360px);margin:0 auto;padding-top:18px}
.rrn-overview__dots{display:flex;justify-content:center;gap:2px;margin:0 0 18px}
.rrn-overview__dots button{height:30px;min-width:30px;border:0;padding:12px 6px;background:none;cursor:pointer;display:grid;place-items:center;border-radius:20px}
.rrn-overview__dots span{width:6px;height:6px;border-radius:20px;background:#526781;transition:width .3s ease,background .3s ease}
.rrn-overview__dots button[aria-current=step] span{width:29px;background:#1cc478}
.rrn-overview__actions{display:flex;gap:12px}
.rrn-overview__next{flex:1;min-height:56px;border:0;border-radius:17px;padding:0 23px;background:#1cc478;color:#0c2448;display:flex;align-items:center;justify-content:space-between;font:750 15px RedHat,sans-serif;cursor:pointer;transition:transform .2s,background .2s}
.rrn-overview__next:hover{background:#42d391;transform:translateY(-2px)}.rrn-overview__next span{font-size:23px}.rrn-overview__next .rrn-overview__next-label{font:inherit}
.rrn-overview__back{width:56px;min-height:56px;border:1px solid #415775;background:transparent;color:#cfdbeb;border-radius:17px;font:500 23px RedHat,sans-serif;cursor:pointer}
.rrn-tour-art{width:280px;height:230px;position:relative;margin:0 auto 20px;isolation:isolate}
.rrn-tour-welcome-mark{position:absolute;left:47px;top:67px;width:186px;height:84px;object-fit:contain;filter:drop-shadow(0 12px 16px #0002)}
.rrn-tour-welcome-route{position:absolute;inset:0;width:100%;height:100%;overflow:visible}.rrn-tour-welcome-route path{fill:none;stroke:#1cc478;stroke-width:1.5;stroke-linecap:round;opacity:.48}.rrn-tour-welcome-route circle{fill:#1cc478}
.rrn-tour-art--welcome .rrn-tour-orbit:after{display:none}
.rrn-tour-orbit{position:absolute;inset:8px 28px;border:1px solid #41618450;border-radius:50%;background:radial-gradient(circle,#1b365f 0,transparent 70%);animation:rrn-tour-breathe 3.6s ease-in-out infinite}
.rrn-tour-orbit:after{content:'';position:absolute;width:9px;height:9px;border-radius:50%;right:10px;top:47px;background:var(--accent);box-shadow:0 0 0 7px #1cc4780c}
.rrn-tour-photo{position:absolute;width:156px;height:174px;left:62px;top:27px;border-radius:19px;background:#f6f3ee;box-shadow:0 22px 35px #0002}
.rrn-tour-photo--back{transform:translate(-24px,-2px) rotate(-13deg);background:#80d8b3;animation:rrn-tour-photo-fan 850ms cubic-bezier(.2,.8,.2,1) both}
.rrn-tour-photo--front{transform:rotate(8deg);display:grid;place-items:center;border:6px solid #fff9;animation:rrn-tour-photo-front .85s cubic-bezier(.2,.8,.2,1) both}
.rrn-tour-photo--front svg{width:95px;height:80px;stroke:#0c2448;fill:none;stroke-width:3;stroke-linecap:round;stroke-linejoin:round}
.rrn-tour-shutter{position:absolute;inset:31px 17px 28px;background:white;border-radius:12px;opacity:0;animation:rrn-tour-shutter 4s ease 1.1s infinite}
.rrn-tour-badge{position:absolute;z-index:2;width:45px;height:45px;border-radius:50%;background:#1cc478;right:30px;bottom:20px;display:grid;place-items:center;border:5px solid #0c2448;box-shadow:0 6px 15px #0002;animation:rrn-tour-check 850ms cubic-bezier(.2,.85,.2,1.15) .3s both}
.rrn-tour-badge svg,.rrn-calendar-selected svg{width:24px;height:24px;stroke:#0c2448;stroke-width:2.5;stroke-linecap:round;stroke-linejoin:round;fill:none}
.rrn-tour-calendar{position:absolute;top:30px;left:52px;width:174px;height:171px;border-radius:21px;background:#f6f3ee;box-shadow:0 22px 35px #0002;transform:rotate(-5deg);animation:rrn-tour-photo-front .75s ease both;overflow:visible}
.rrn-calendar-head{height:42px;background:#d0eade;border-radius:21px 21px 0 0;border-bottom:1px solid #0c244812}.rrn-calendar-binding{position:absolute;left:36px;right:36px;top:-7px;display:flex;justify-content:space-between}.rrn-calendar-binding i{height:24px;width:7px;background:#89a5ab;border:2px solid #f6f3ee;border-radius:5px}
.rrn-calendar-days{display:grid;grid-template-columns:repeat(4,1fr);gap:13px 14px;padding:20px 24px}
.rrn-calendar-days>span{height:19px;width:19px;background:#dee2dc;border-radius:5px;position:relative}.rrn-calendar-days>.rrn-calendar-selected{background:#1cc478;box-shadow:0 0 0 5px #1cc478;animation:rrn-tour-check .65s ease .4s both}.rrn-calendar-selected svg{position:absolute;inset:-2px;width:23px;height:23px}
.rrn-tour-note{position:absolute;right:22px;bottom:14px;background:#1b365f;border:1px solid #4f6b8b;border-radius:13px;width:78px;height:63px;display:flex;align-items:center;justify-content:center;gap:6px;box-shadow:0 8px 20px #0002;animation:rrn-tour-check .65s ease .55s both}.rrn-tour-note i{height:6px;width:6px;border-radius:50%;background:#80d8b3;animation:rrn-tour-message 2.4s ease infinite}.rrn-tour-note i:nth-child(2){animation-delay:.16s}.rrn-tour-note i:nth-child(3){animation-delay:.32s}
.rrn-tour-van{position:absolute;z-index:2;width:257px;height:155px;object-fit:contain;left:0;top:64px;animation:rrn-tour-van-arrive 1.2s cubic-bezier(.16,.8,.25,1) both}
.rrn-tour-road{position:absolute;bottom:40px;left:8px;right:5px;height:2px;background:#58738e;transform:rotate(-1deg)}.rrn-tour-road:after{content:'';position:absolute;left:14px;right:25px;top:13px;border-top:2px dashed #58738e40}
.rrn-tour-door{position:absolute;right:24px;top:29px;width:57px;height:130px;background:#1b365f;border:2px solid #496485;border-bottom:0;border-radius:28px 28px 0 0;transform:rotate(2deg)}.rrn-tour-door i{position:absolute;top:66px;left:9px;width:4px;height:12px;border-radius:3px;background:#1cc478}.rrn-tour-art--visit .rrn-tour-badge{right:12px;bottom:15px}
.rrn-overview--underlay *{animation:none!important}
.rrn-overview--first .rrn-overview__main,.rrn-overview--first .rrn-tour-photo--back,.rrn-overview--first .rrn-tour-photo--front,.rrn-overview--first .rrn-tour-badge{animation:none}
@keyframes rrn-tour-copy-in{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}
@keyframes rrn-tour-focus{from{opacity:.55;scale:.97}to{opacity:1;scale:1}}
@keyframes rrn-tour-photo-fan{from{opacity:0;transform:translate(0,15px) rotate(0)}to{opacity:1;transform:translate(-24px,-2px) rotate(-13deg)}}
@keyframes rrn-tour-photo-front{from{opacity:0;translate:0 23px;rotate:-10deg}to{opacity:1;translate:0 0;rotate:0deg}}
@keyframes rrn-tour-check{from{opacity:0;scale:.5;translate:0 8px}to{opacity:1;scale:1;translate:0 0}}
@keyframes rrn-tour-breathe{0%,100%{transform:scale(.97);opacity:.65}50%{transform:scale(1.04);opacity:1}}
@keyframes rrn-tour-shutter{0%,10%,100%{opacity:0}4%{opacity:.35}}
@keyframes rrn-tour-message{0%,50%,100%{transform:translateY(0);opacity:.6}25%{transform:translateY(-3px);opacity:1}}
@keyframes rrn-tour-van-arrive{from{transform:translateX(-80px);opacity:0}to{transform:translateX(0);opacity:1}}
@media(min-height:850px){.rrn-tour-art{margin-bottom:36px}.rrn-overview__main{padding-bottom:28px}.rrn-overview__footer{padding-bottom:25px}}
@media(max-height:690px){.rrn-overview{padding-top:17px;padding-bottom:18px}.rrn-tour-art{height:188px;scale:.84;transform-origin:center bottom;margin-top:-30px;margin-bottom:12px}.rrn-overview__main{padding-top:12px}.rrn-overview__eyebrow{margin-bottom:12px;font-size:8px}.rrn-overview__title{font-size:32px;max-width:300px}.rrn-overview__copy{font-size:12px;margin-top:12px}.rrn-overview__footer{padding-top:8px}.rrn-overview__dots{margin-bottom:9px}.rrn-overview__next,.rrn-overview__back{min-height:49px}.rrn-overview__header>img{width:65px}}
@media(max-height:510px){.rrn-overview{display:block}.rrn-overview__viewport{min-height:210px}.rrn-overview__main{padding-top:25px}.rrn-tour-art{display:none}.rrn-overview__footer{padding-top:16px}}
@media(prefers-reduced-motion:reduce){.rrn-welcome *{animation:none!important;transition:none!important}.rrn-confirm-ring,.rrn-confirm-tick{stroke-dashoffset:0}.rrn-intro-dot{display:none}}
body.motion-paused .rrn-welcome *{animation:none!important;transition:none!important}body.motion-paused .rrn-confirm-ring,body.motion-paused .rrn-confirm-tick{stroke-dashoffset:0}
