/* Keep the public v58 reference unchanged until a block color is customized. */
#next-recovery-experience{position:relative;width:100%;max-width:none;margin-block:0;isolation:isolate;overflow:clip;font-family:'DM Sans',Arial,sans-serif}
#next-recovery-experience .hero-copy h1{color:var(--nr-hero-title,#fff)}
#next-recovery-experience.nr3d-custom-background{background:var(--nr-bg,#eeeeef)}
#next-recovery-experience.nr3d-custom-background header,#next-recovery-experience.nr3d-custom-background main{background:var(--nr-bg,#eeeeef)}
#next-recovery-experience.nr3d-custom-background .map-veil{background:linear-gradient(180deg,color-mix(in srgb,var(--nr-bg,#eeeeef) 92%,transparent),color-mix(in srgb,var(--nr-bg,#eeeeef) 65%,transparent) 45%,color-mix(in srgb,var(--nr-bg,#eeeeef) 90%,transparent))}
#next-recovery-experience.nr3d-custom-background main.journey .map-veil{background:transparent}
#next-recovery-experience.nr3d-custom-panels .quote,#next-recovery-experience.nr3d-custom-panels .wife-chat,#next-recovery-experience.nr3d-custom-panels main.journey .quote,#next-recovery-experience.nr3d-custom-panels main.journey .wife-chat,#next-recovery-experience.nr3d-custom-panels dialog{background:var(--nr-panel,#fff)}
#next-recovery-experience.nr3d-custom-accent .primary,#next-recovery-experience.nr3d-custom-accent main.journey .wife-chat .primary{background:var(--nr-accent,#31415a);color:#fff}
#next-recovery-experience.nr3d-custom-accent .primary:hover,#next-recovery-experience.nr3d-custom-accent main.journey .wife-chat .primary:hover{filter:brightness(1.1);background:var(--nr-accent,#31415a)}
#next-recovery-experience.nr3d-custom-headings .quote h2,#next-recovery-experience.nr3d-custom-headings .wife-header h3,#next-recovery-experience.nr3d-custom-headings main.journey .quote h2{color:var(--nr-heading,#2f3540)}
#next-recovery-experience button,#next-recovery-experience input,#next-recovery-experience textarea{font-family:inherit;letter-spacing:inherit;text-transform:none}
#next-recovery-experience #swap{padding:0;min-width:0;min-height:0;line-height:1}
#next-recovery-experience a{box-shadow:none}
.nr3d-notice{padding:16px;border-left:4px solid #31415a;background:#f4f5f6}
@media(prefers-reduced-motion:reduce){#next-recovery-experience{scroll-behavior:auto}}

/* Hosted-page refinements: retain the reference palette and white hero title. */
#next-recovery-experience .hero-copy h1{text-shadow:0 2px 10px #2f354066,0 1px 2px #2f354033}
#next-recovery-experience .hero-copy .eyebrow,#next-recovery-experience .scene-label,#next-recovery-experience .drag-hint{color:var(--site-text,#2f3540)}
#next-recovery-experience .quote label,#next-recovery-experience .quote .fine,#next-recovery-experience .wife-chat label,#next-recovery-experience .wife-header small{color:var(--site-muted,#687079)}
#next-recovery-experience #swap{display:grid;place-items:center;width:44px;height:44px;min-width:44px;min-height:44px;margin:-12px 12px -12px auto;font-size:23px}
#next-recovery-experience .navcta{min-height:44px}
/* Reserve a row below the road; the moving distance cannot cover either endpoint label. */
#next-recovery-experience #gpspreview #gpsdistance,#next-recovery-experience #gpspreview.parked #gpsdistance{top:calc(100% + 12px);bottom:auto;left:50%;right:auto;transform:translateX(-50%)}
#next-recovery-experience main.journey .quote #gpspreview .gps-road{margin-bottom:44px}

/* Use the existing phone composition on tablets instead of squeezing three columns.
   app.js phoneLayout and map.js mobile padding must use the same 1050px boundary. */
@media(min-width:650px) and (max-width:1050px){
 #next-recovery-experience header{height:auto;min-height:86px;padding:16px 5%;gap:16px}
 #next-recovery-experience .brand{font-size:16px;flex-shrink:0;white-space:nowrap}
 #next-recovery-experience .brand small{font-size:9px;letter-spacing:2.5px}
 #next-recovery-experience nav{min-width:0;gap:0}
 #next-recovery-experience nav>a:not(.navcta){display:none}
 #next-recovery-experience .navcta{display:block;font-size:13px;line-height:1.4;padding:10px;text-align:center}
 #next-recovery-experience main:not(.journey){height:auto;min-height:980px;max-height:none}
 #next-recovery-experience main:not(.journey) .hero-copy{top:20px;left:6%;right:6%}
 #next-recovery-experience main:not(.journey) .hero-copy h1{font-size:38px;letter-spacing:-2px}
 #next-recovery-experience main:not(.journey) .hero-copy .intro{display:none}
 #next-recovery-experience main:not(.journey) .vehicle-title{font-size:12px;line-height:1.6;letter-spacing:1px}
 #next-recovery-experience main:not(.journey) .scene-wrap{inset:auto;top:105px;left:-15%;right:-15%;height:220px}
 #next-recovery-experience main:not(.journey) .scene-label{top:293px;bottom:auto;left:6%;font-size:12px;line-height:1.4;letter-spacing:1px}
 #next-recovery-experience .scene-label small{font-size:12px}
 #next-recovery-experience main:not(.journey) .controls{top:350px;bottom:auto;left:0;right:0;width:min(88%,560px);margin-inline:auto;transform:none;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
 #next-recovery-experience .controls button{min-height:46px;min-width:0;padding:10px 8px;font-size:20px;justify-content:center}
 #next-recovery-experience .controls span{font-size:14px;line-height:1.35}
 #next-recovery-experience main:not(.journey) .drag-hint{display:none}
 #next-recovery-experience main:not(.journey) .soundtoggle{top:457px;bottom:auto;left:0;right:0;min-height:44px;font-size:13px}
 #next-recovery-experience main:not(.journey) .quote{position:relative;top:520px;inset-inline:auto;bottom:auto;width:min(90%,480px);margin:0 auto 590px;padding:20px}
 #next-recovery-experience .quote .quote-top{gap:8px;flex-wrap:nowrap}
 #next-recovery-experience .quote .quote-top .eyebrow{font-size:10px;line-height:1.5;letter-spacing:.8px}
 #next-recovery-experience .quote .step{font-size:12px}
 #next-recovery-experience .quote h2{font-size:26px;line-height:1.2}
 #next-recovery-experience main:not(.journey) .quote h2,#next-recovery-experience main:not(.journey) .quote>p{text-align:center}
 #next-recovery-experience .quote>p{font-size:15px;line-height:1.5}
 #next-recovery-experience .quote label,#next-recovery-experience .result small{font-size:11px;line-height:1.5;letter-spacing:.8px}
 #next-recovery-experience .quote input{font-size:16px;line-height:1.5}
 #next-recovery-experience .quote .route-input{padding:12px 9px}
 #next-recovery-experience .quote .primary{font-size:15px;line-height:1.4;min-height:48px;padding:12px 10px}
 #next-recovery-experience .quote .choices{max-height:min(160px,24dvh);overflow-y:auto;overscroll-behavior:contain}
 #next-recovery-experience .choices button{font-size:15px;line-height:1.5;padding:10px;overflow-wrap:anywhere}
 #next-recovery-experience .quote p.status{font-size:14px}
 #next-recovery-experience .quote .fine{font-size:12px;line-height:1.6}
 #next-recovery-experience .quote .result{gap:10px;grid-template-columns:repeat(2,minmax(0,1fr))}
 #next-recovery-experience .quote .result strong{font-size:18px;line-height:1.35;overflow-wrap:anywhere}
 #next-recovery-experience .quote .driver-stage{position:relative;inset:auto;width:150px;height:255px;margin:30px auto 15px;transform:none}
 #next-recovery-experience .quote .driver-person,#next-recovery-experience .quote .driver-seat{width:93px;left:0;bottom:29px}
 #next-recovery-experience .quote .exit-door{right:0;transform:none;transform-origin:right bottom}
 #next-recovery-experience .quote .door-frame{box-sizing:border-box}
 #next-recovery-experience .quote .driver-stage>p{left:0;right:0;font-size:11px;line-height:1.5}
 #next-recovery-experience .quote.quote-ready>form,#next-recovery-experience .quote.quote-ready>p,#next-recovery-experience .quote.quote-ready>.quote-top{display:none}
 #next-recovery-experience .quote.quote-ready h2{margin:0 0 12px}
 #next-recovery-experience .quote.quote-ready .result{margin-top:0}
 #next-recovery-experience .quote.quote-ready .driver-stage{height:220px;margin:20px auto 0}
 #next-recovery-experience main.starting:not(.journey) .scene-wrap{top:calc(50svh - 110px)}
 #next-recovery-experience main.starting:not(.journey) .scene-label,#next-recovery-experience main.starting:not(.journey) .controls,#next-recovery-experience main.starting:not(.journey) .soundtoggle{opacity:0;pointer-events:none}
 #next-recovery-experience .wife-chat textarea{font-size:16px;line-height:1.4}
 #next-recovery-experience .wife-chat .primary,#next-recovery-experience .wife-chat #returnhome{min-height:44px;font-size:15px;line-height:1.5}
 #next-recovery-experience main.journey:not(.map-preview){align-content:start;min-height:100svh}
 #next-recovery-experience main.journey #journey-state{display:none}
}

/* Keep the whole vehicle left of the form on narrow desktop viewports. */
@media (1050px < width) and (max-width:1320px){
 #next-recovery-experience main:not(.journey) .scene-wrap{left:4%;right:52%;top:190px;height:300px;bottom:auto}
}

/* Astra's fixed theme control must not cover this experience's return action. */
body:has(#next-recovery-experience) #ast-scroll-top{display:none!important}
/* This stylesheet is enqueued only for a page containing the experience. */
@supports not selector(body:has(*)){body #ast-scroll-top{display:none!important}}

/* Test-page conversation refinements requested by the owner. */
#next-recovery-experience main.journey .quote{padding:12px 14px}
#next-recovery-experience main.journey .quote h2{font-size:22px;line-height:1.2;margin:0 0 8px}
#next-recovery-experience main.journey .quote .result{margin:0;padding-top:8px;gap:12px}
#next-recovery-experience main.journey .quote .result small{font-size:10px;line-height:1.4;margin-bottom:4px}
#next-recovery-experience main.journey .quote .result strong{font-size:18px;line-height:1.25}
#next-recovery-experience main.journey .quote #gpspreview{margin-top:8px;padding-top:8px}
#next-recovery-experience main.journey .quote #gpspreview .gps-labels{font-size:12px;line-height:1.35}
#next-recovery-experience main.journey .quote #gpspreview .gps-road{margin:42px 34px 32px}
#next-recovery-experience main.journey #gpspreview .gps-garage{width:48px;height:42px;right:-24px}
#next-recovery-experience main.journey #gpspreview .gps-car{width:54px}
#next-recovery-experience main.journey #gpspreview .gps-departure{width:18px;height:25px;left:-9px}
#next-recovery-experience main.journey #gpspreview #gpsdistance,#next-recovery-experience main.journey #gpspreview.parked #gpsdistance{top:calc(100% + 8px);bottom:auto;font-size:11px;line-height:1.35;padding:2px 6px}
#next-recovery-experience main.journey .wife-chat #clientmessage{height:160px;min-height:160px;max-height:none;resize:vertical;font-size:16px;line-height:1.5}
#next-recovery-experience #sendwhatsapp,#next-recovery-experience main.journey .wife-chat #sendwhatsapp{background:#25D366;border-color:#25D366;color:#10251b;filter:none}
#next-recovery-experience #sendwhatsapp:hover,#next-recovery-experience main.journey .wife-chat #sendwhatsapp:hover{background:#20BD5A;border-color:#20BD5A;color:#10251b;filter:none}
#next-recovery-experience #sendwhatsapp:focus-visible{outline:2px solid #10251b;outline-offset:3px}
@media(max-width:1050px){
 #next-recovery-experience main.journey .quote{padding:10px 12px}
 #next-recovery-experience main.journey .quote h2{font-size:20px;margin-bottom:6px}
 #next-recovery-experience main.journey .wife-chat #clientmessage{height:150px;min-height:150px}
}
