/* One shared companion, beside the compact intake and every later screen. */
.journey-shell{display:grid;grid-template-columns:minmax(0,1fr) minmax(300px,350px) 215px;gap:30px 28px;align-items:start;padding-top:30px}
.journey-shell .entry-grid{display:contents}.journey-shell .nfc-warning{grid-column:1/-1;grid-row:1}.journey-shell .introduction{grid-column:1;grid-row:2;padding-top:9px}.journey-shell .form-column{grid-column:2;grid-row:2;width:100%;max-width:350px;margin:0}.journey-shell .form-card{padding:21px 22px;border-radius:23px}
.journey-shell .form-step h2{font-size:23px}.journey-shell .form-step>.muted{font-size:12px;margin-bottom:15px}.journey-shell .step-track{margin:13px 0 20px}.journey-shell .form-card label{font-size:11px;margin-top:13px}.journey-shell .form-card input:not([type=checkbox]),.journey-shell .form-card select{padding:10px 11px;min-height:44px;border-radius:10px;font-size:12px;margin-top:5px}.journey-shell .form-card .two-fields{gap:10px}.journey-shell .form-card .check-row{font-size:10px;gap:8px}.journey-shell .form-card .field-note{font-size:10px;line-height:1.6}.journey-shell .form-card .demo-note{font-size:10px;padding:10px 11px;margin:12px 0}.journey-shell .form-card .choice{min-height:76px;padding:12px 12px 12px 38px}.journey-shell .form-card .choice b{font-size:12px}.journey-shell .form-card .choice small{font-size:10px}.journey-shell .form-card .choice>span{left:13px}.journey-shell .form-card .form-actions{margin-top:20px;gap:10px}.journey-shell .form-card .primary{padding:11px 16px;font-size:12px;min-height:44px}.journey-shell .signature-pad{height:132px}.journey-shell .signature-pad>span{top:57px;font-size:11px}.journey-shell .trust-strip{flex-wrap:wrap;font-size:8px;gap:6px 12px;margin-top:14px}
.benefit-punches{list-style:none;padding:0;margin:27px 0 14px;display:grid;gap:17px}.benefit-punches li{display:flex;gap:13px;align-items:baseline}.benefit-punches span{font-family:'Outfit',system-ui,sans-serif;font-size:11px;color:#ee5678;border:1px solid #733049;border-radius:7px;padding:3px 6px;flex:none}.benefit-punches b{font-family:'Outfit',system-ui,sans-serif;font-size:clamp(19px,1.9vw,27px);font-weight:600;letter-spacing:-.045em;line-height:1.25;color:#f8e4ed}.benefit-punches li:first-child b{color:#8eeeb7}.benefit-note{font-size:10px;color:#b89aaa;line-height:1.7;max-width:400px}.journey-shell .introduction h1{font-size:clamp(55px,6.3vw,79px);margin-top:19px}.journey-shell .introduction .lead{font-size:17px;max-width:390px}.journey-shell .free-preview{margin:24px 0}.journey-shell .free-preview h2{font-size:25px}
.persistent-ninja{grid-column:3;grid-row:1;position:sticky;top:28px;align-self:start;min-width:0;text-align:center;padding:8px 0}.journey-shell[data-screen=entry] .persistent-ninja{grid-row:2;padding-top:23px}.companion-label{font-size:8px;font-weight:700;letter-spacing:.18em;color:#eab7c9;display:flex;justify-content:center;align-items:center;gap:8px}.companion-label i{width:6px;height:6px;background:#ff5477;border-radius:50%;box-shadow:0 0 12px #ff446c77}.companion-stage{position:relative;margin:15px -16px 1px;isolation:isolate}.companion-stage>img{width:100%;height:auto;display:block;filter:drop-shadow(0 15px 20px #0009)}.companion-halo{position:absolute;inset:23% 14% 10%;border:1px solid #9e345f55;border-radius:50%;background:radial-gradient(ellipse,#8b163733,transparent 70%);z-index:-1}.companion-cut{opacity:0;position:absolute;top:49%;right:7%;height:2px;width:90px;transform:rotate(-42deg);background:#fff0f7;box-shadow:0 0 12px #ff3565}
.ninja-speech{position:relative;text-align:left;border:1px solid #86475f;border-radius:17px;background:linear-gradient(130deg,#3a1929,#20121c);padding:15px 16px;min-height:113px}.ninja-speech::before{content:'';position:absolute;top:-7px;left:50%;width:12px;height:12px;transform:rotate(45deg);background:#331725;border-left:1px solid #86475f;border-top:1px solid #86475f}.ninja-speech b{display:block;font-family:'Outfit',system-ui,sans-serif;font-size:16px;line-height:1.3;letter-spacing:-.03em;color:#ffe6ef}.ninja-speech p{font-size:11px;line-height:1.8;color:#d5b2c4;margin:7px 0 0}.companion-demo{display:block;font-size:8px;color:#ad8298;margin-top:13px}.speech-motion{display:none;gap:4px;margin-top:12px}.speech-motion i{width:4px;height:4px;background:#f6779b;border-radius:50%;animation:ninjaSpeech .9s ease-in-out infinite}.speech-motion i:nth-child(2){animation-delay:.15s}.speech-motion i:nth-child(3){animation-delay:.3s}.persistent-ninja[data-mood=working] .speech-motion{display:flex}.persistent-ninja[data-mood=working] .companion-cut{animation:ninjaSwipe 2.4s ease-in-out infinite}.persistent-ninja[data-mood=working] .ninja-speech{border-color:#b85b7b}
.journey-shell>#progress,.journey-shell>#routePreview,.journey-shell>#complete{grid-column:1/3;grid-row:1;min-width:0;width:100%}.journey-shell>#progress,.journey-shell>#complete{margin:40px auto;max-width:650px}.journey-shell .route-heading{margin-top:18px}.journey-shell .result-layout{grid-template-columns:minmax(0,1fr) 260px;gap:20px}.journey-shell .route-heading h1{font-size:42px}.journey-shell .saving-cards strong{font-size:43px}
@keyframes ninjaSpeech{50%{transform:translateY(-3px);opacity:.45}}@keyframes ninjaSwipe{0%,70%,100%{opacity:0;translate:-15px 8px}80%{opacity:1}90%{opacity:0;translate:20px -14px}}
@media(max-width:1100px){.journey-shell{grid-template-columns:minmax(0,1fr) 320px 175px;gap:25px 20px}.journey-shell .form-card{padding:20px 18px}.benefit-punches b{font-size:21px}.journey-shell .introduction h1{font-size:60px}.ninja-speech{padding:13px}.ninja-speech b{font-size:15px}.journey-shell .result-layout{grid-template-columns:1fr}.journey-shell .apply-card{position:static}}
@media(max-width:1000px){.journey-shell{grid-template-columns:minmax(0,1fr) 190px;gap:24px}.journey-shell .introduction{grid-column:1/-1;grid-row:2;padding-top:0}.journey-shell .form-column{grid-column:1;grid-row:3;max-width:370px;justify-self:end}.journey-shell[data-screen=entry] .persistent-ninja{grid-column:2;grid-row:3;top:20px;padding-top:15px}.persistent-ninja{grid-column:2}.journey-shell>#progress,.journey-shell>#routePreview,.journey-shell>#complete{grid-column:1}.journey-shell .introduction h1{font-size:65px}.journey-shell .introduction .lead{max-width:580px}.benefit-punches{grid-template-columns:1fr 1fr;gap:16px 23px}.benefit-note{max-width:620px}.journey-shell .independent-note{max-width:620px}.journey-shell .free-preview h2{font-size:25px}.companion-stage{margin-left:-8px;margin-right:-8px}.journey-shell .saving-cards strong{font-size:36px}.journey-shell .comparison-card dd{font-size:24px}}
@media(max-width:600px){.journey-shell{grid-template-columns:minmax(0,1fr);gap:20px;padding-top:20px}.journey-shell .introduction{grid-column:1;grid-row:2}.journey-shell .form-column{grid-column:1;grid-row:4;max-width:360px;justify-self:center}.journey-shell .form-card{padding:20px 22px}.journey-shell .introduction h1{font-size:62px}.benefit-punches{grid-template-columns:1fr;gap:13px;margin-top:23px}.benefit-punches b{font-size:23px}.benefit-note{font-size:9px}.persistent-ninja,.journey-shell[data-screen=entry] .persistent-ninja{grid-column:1;grid-row:1;display:grid;grid-template-columns:95px minmax(0,1fr);gap:0 11px;align-items:center;top:8px;z-index:5;padding:8px 10px;border:1px solid #633247;border-radius:18px;background:#130d12f5;box-shadow:0 9px 24px #0005;backdrop-filter:blur(10px)}.journey-shell[data-screen=entry] .persistent-ninja{grid-row:3}.companion-stage{grid-column:1;grid-row:1/3;margin:0}.companion-label{grid-column:2;grid-row:1;justify-content:flex-start;font-size:7px;margin-bottom:7px}.ninja-speech{grid-column:2;grid-row:2;min-height:0;padding:9px 11px;border-radius:12px}.ninja-speech::before{display:none}.ninja-speech b{font-size:14px}.ninja-speech p{font-size:10px;line-height:1.6;margin-top:3px}.companion-demo{display:none}.speech-motion{margin-top:6px}.companion-cut{width:45px}.journey-shell>#progress,.journey-shell>#routePreview,.journey-shell>#complete{grid-column:1;grid-row:2}.journey-shell>#progress,.journey-shell>#complete{margin:15px auto}.journey-shell .route-heading h1{font-size:35px}}
@media(prefers-reduced-motion:reduce){.speech-motion i,.persistent-ninja[data-mood=working] .companion-cut{animation:none!important}}
/* Jukebox: one readable benefit gets a soft green turn, every six seconds. */
.benefit-punches li{--jukebox-delay:0s}.benefit-punches li:nth-child(2){--jukebox-delay:6s}.benefit-punches li:nth-child(3){--jukebox-delay:12s}.benefit-punches li:nth-child(4){--jukebox-delay:18s}.benefit-punches li:nth-child(5){--jukebox-delay:24s}
.benefit-punches b{animation:benefitTextGlow 30s ease-in-out var(--jukebox-delay) infinite both}.benefit-punches span{animation:benefitNumberGlow 30s ease-in-out var(--jukebox-delay) infinite both}
body:has(#welcomeSplash[open]) .benefit-punches b,body:has(#welcomeSplash[open]) .benefit-punches span{animation-play-state:paused}
@keyframes benefitTextGlow{0%,16%,100%{color:#f8e4ed;text-shadow:0 0 0 transparent}4%,12%{color:#8eeeb7;text-shadow:0 0 22px #70e8a22e}}
@keyframes benefitNumberGlow{0%,16%,100%{color:#ee5678;border-color:#733049;background:transparent;box-shadow:0 0 0 transparent}4%,12%{color:#9bf3c2;border-color:#5fb985;background:#183e2c;box-shadow:0 0 18px #70e8a21a}}
@media(prefers-reduced-motion:reduce){.benefit-punches b,.benefit-punches span{animation:none!important}.benefit-punches li:first-child b{color:#8eeeb7}}
