    #sp .step{display:none}
    #sp .step.active{display:block}
    #sp .sp-narrow{max-width:600px;margin-left:auto;margin-right:auto}
    #sp .sp-view-wrap{text-align:center}
    #sp .sp-view{display:inline-flex;gap:2px;border:1px solid var(--gs-border);border-radius:999px;padding:3px;background:var(--gs-white);margin:0 auto .9rem}
    #sp .sp-view-btn{border:0;background:transparent;color:var(--gs-text-muted);font-weight:600;font-size:.78rem;padding:.38rem 1.05rem;border-radius:999px;cursor:pointer;transition:background 120ms ease}
    #sp .sp-hidden{display:none}
    /* single-vs-joint segmented control on the input step */
    #sp .sp-mode{display:flex;gap:3px;border:1px solid var(--gs-border);border-radius:999px;padding:3px;background:var(--gs-cream);margin:0 0 1.15rem}
    #sp .sp-mode-btn{flex:1;border:0;background:transparent;color:var(--gs-text-muted);font-weight:600;font-size:.92rem;padding:.6rem .8rem;border-radius:999px;cursor:pointer;transition:background 120ms ease,color 120ms ease}
    #sp .sp-mode-btn.is-active{background:var(--gs-navy);color:#fff}
    #sp .sp-view-btn.is-active{background:var(--gs-navy);color:#fff}
    #sp .sp-eyebrow{font-size:.78rem;font-weight:700;letter-spacing:.09em;text-transform:uppercase;color:var(--gs-gold-hover)}
    #sp .sp-eyebrow--center{text-align:center}
    #sp .sp-rhead{display:flex;align-items:center;justify-content:space-between;gap:.7rem 1rem;flex-wrap:wrap;margin-bottom:1rem}
    #sp .sp-rhead .sp-view-wrap{margin:0}
    #sp .sp-rhead .sp-view{margin:0}
    #sp .sp-proof{margin-top:2rem;padding-top:1.7rem;border-top:1px solid var(--gs-border)}
    #sp .sp-proof .sp-eyebrow{margin-bottom:.8rem}
    #sp .sp-picks{display:flex;flex-direction:column;gap:1.25rem;margin-top:.3rem}
    #sp .sp-pick{position:relative;background:var(--gs-white);border:1px solid var(--gs-border);border-radius:20px;box-shadow:0 6px 20px rgba(30,58,95,.06);transition:transform .2s ease,box-shadow .2s ease}
    #sp .sp-pick:hover{transform:translateY(-2px);box-shadow:0 16px 38px rgba(30,58,95,.12)}
    #sp .sp-pick--best{border:2px solid var(--gs-gold);background:linear-gradient(180deg,#fffdf5 0%,var(--gs-white) 46%);box-shadow:0 18px 44px rgba(184,134,11,.15)}
    #sp .sp-pick-inner{display:flex;flex-direction:column;gap:1.25rem;padding:1.4rem 1.4rem 1.5rem}
    @media(min-width:640px){#sp .sp-pick-inner{flex-direction:row;align-items:stretch;gap:1.7rem;padding:1.65rem 1.85rem}}
    #sp .sp-pick-media{flex-shrink:0;display:flex;flex-direction:column;align-items:center;gap:.5rem;text-decoration:none}
    #sp .sp-pick-thumb{width:122px;height:158px;object-fit:cover;object-position:top;border-radius:10px;border:1px solid rgba(30,58,95,.12);box-shadow:0 8px 22px rgba(30,58,95,.2);background:#fff;display:block;transition:transform .2s ease}
    #sp .sp-pick-thumb-link:hover .sp-pick-thumb{transform:scale(1.03) rotate(-1.2deg)}
    #sp .sp-pick-media--logo{width:122px;height:122px;display:flex;align-items:center;justify-content:center;background:var(--gs-cream);border-radius:14px}
    #sp .sp-pick-logo-lg{max-width:86px;max-height:86px;object-fit:contain}
    #sp .sp-pick-letter{width:72px;height:72px;border-radius:999px;background:var(--gs-cream);color:var(--gs-navy);font-weight:800;font-size:1.7rem;display:flex;align-items:center;justify-content:center}
    #sp .sp-pick-body{flex:1;min-width:0;display:flex;flex-direction:column}
    #sp .sp-pick-head{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;margin-bottom:.7rem}
    #sp .sp-pick-id{display:flex;align-items:center;gap:.6rem;min-width:0}
    #sp .sp-pick-logo{height:34px;width:auto;max-width:38px;object-fit:contain;flex-shrink:0}
    #sp .sp-pick-name{font-weight:700;font-size:1.22rem;color:var(--gs-navy);line-height:1.12}
    #sp .sp-pick-tagline{font-size:.88rem;color:var(--gs-text-muted);line-height:1.3}
    #sp .sp-pick-figure{text-align:right;flex-shrink:0}
    #sp .sp-pick-amount{font-weight:800;font-size:1.9rem;color:var(--gs-gold-hover);letter-spacing:-.015em;line-height:1}
    #sp .sp-pick-per{font-size:.95rem;font-weight:600;color:var(--gs-text-muted)}
    #sp .sp-pick-figsub{font-size:.84rem;color:var(--gs-text-muted);margin-top:.2rem}
    #sp .sp-pick-bullets{list-style:none;margin:1rem 0 0;padding:0;display:flex;flex-direction:column;gap:.6rem}
    #sp .sp-pick-bullets li{display:flex;align-items:flex-start;gap:.6rem;font-size:1rem;color:var(--gs-text);line-height:1.5}
    #sp .sp-pick-bullets li svg{width:18px;height:18px;color:var(--gs-gold-hover);flex-shrink:0;margin-top:.12rem}
    #sp .sp-pick-bullets strong{font-weight:700;color:var(--gs-navy)}
    #sp .sp-badges{display:flex;flex-wrap:wrap;gap:.4rem;margin:.35rem 0 .15rem}
    #sp .sp-badge{display:inline-flex;align-items:center;gap:.32rem;font-size:.685rem;font-weight:600;color:var(--gs-navy);background:var(--gs-cream);border-radius:999px;padding:.32rem .65rem}
    #sp .sp-badge svg{width:12px;height:12px;color:var(--gs-gold-hover);flex-shrink:0}
    #sp .sp-pick-why{font-size:.86rem;color:var(--gs-text);line-height:1.5;margin:.9rem 0 .55rem}
    #sp .sp-pick-product{font-size:.68rem;color:var(--gs-text-muted)}
    #sp .sp-shared{font-size:.88rem;color:var(--gs-text-muted);text-align:center;line-height:1.55;margin:1.5rem auto .15rem;max-width:560px}
    #sp .sp-compared{font-size:.98rem;color:var(--gs-text-muted);text-align:center;line-height:1.5;margin:1rem auto .35rem;max-width:520px}
    #sp .sp-compared strong{color:var(--gs-navy)}
    /* "see all carriers" expander */
    #sp .sp-more{text-align:center;margin:.4rem 0 .2rem}
    #sp .sp-more-toggle{display:inline-flex;align-items:center;gap:.4rem;border:1px solid var(--gs-border);background:var(--gs-white);color:var(--gs-navy);font-weight:600;font-size:.95rem;padding:.62rem 1.25rem;border-radius:999px;cursor:pointer;transition:background .15s ease,border-color .15s ease}
    #sp .sp-more-toggle:hover{background:var(--gs-cream);border-color:var(--gs-gold)}
    #sp .sp-more-toggle svg{width:15px;height:15px;transition:transform .2s ease}
    #sp .sp-more.is-open .sp-more-toggle svg{transform:rotate(180deg)}
    #sp .sp-more-list{display:flex;flex-direction:column;gap:1.25rem;margin-top:1.25rem;text-align:left}
    /* "checking far and wide" loader */
    #sp .sp-loader{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:3rem 1rem 3.5rem;min-height:340px}
    #sp .sp-radar{position:relative;width:168px;height:168px;display:flex;align-items:center;justify-content:center}
    #sp .sp-radar-ring{position:absolute;inset:0;border:1.5px solid rgba(30,58,95,.13);border-radius:50%}
    #sp .sp-radar-ring--2{inset:30px}
    #sp .sp-radar-ring--3{inset:60px}
    #sp .sp-radar-sweep{position:absolute;inset:0;border-radius:50%;background:conic-gradient(from 0deg,rgba(184,134,11,0) 0deg,rgba(184,134,11,0) 300deg,rgba(184,134,11,.32) 350deg,rgba(184,134,11,.55) 360deg);animation:sp-spin 1.5s linear infinite}
    #sp .sp-radar-core{position:absolute;width:54px;height:54px;border-radius:50%;background:var(--gs-navy);color:var(--gs-gold);font-family:'Playfair Display',Georgia,serif;font-weight:700;font-size:1.5rem;display:flex;align-items:center;justify-content:center;box-shadow:0 6px 18px rgba(30,58,95,.3)}
    #sp .sp-radar-blip{position:absolute;width:9px;height:9px;border-radius:50%;background:var(--gs-gold-hover);opacity:0;animation:sp-blip 1.5s ease-in-out infinite}
    #sp .sp-radar-blip--1{top:24px;left:108px;animation-delay:.15s}
    #sp .sp-radar-blip--2{top:62px;left:30px;animation-delay:.5s}
    #sp .sp-radar-blip--3{top:118px;left:120px;animation-delay:.85s}
    #sp .sp-radar-blip--4{top:128px;left:54px;animation-delay:1.15s}
    #sp .sp-radar-blip--5{top:48px;left:132px;animation-delay:1.35s}
    #sp .sp-loader-count{margin-top:1.6rem;font-family:'Playfair Display',Georgia,serif;font-size:1.45rem;color:var(--gs-navy);font-weight:700}
    #sp .sp-loader-count #sp-loader-num{color:var(--gs-gold-hover)}
    #sp .sp-loader-msg{margin-top:.5rem;font-size:1rem;color:var(--gs-text-muted);min-height:1.3em;transition:opacity .2s ease}
    @keyframes sp-spin{to{transform:rotate(360deg)}}
    @keyframes sp-blip{0%,100%{opacity:0;transform:scale(.6)}40%{opacity:1;transform:scale(1)}70%{opacity:.2;transform:scale(1.1)}}
    @media(prefers-reduced-motion:reduce){#sp .sp-radar-sweep,#sp .sp-radar-blip{animation:none}#sp .sp-radar-sweep{background:conic-gradient(from 0deg,rgba(184,134,11,.25),rgba(184,134,11,.05))}}
    #sp .sp-brochure{display:inline-block;font-size:.82rem;font-weight:600;color:var(--gs-navy);text-decoration:none}
    #sp .sp-brochure:hover{text-decoration:underline}
    /* booking handoff band inside the results step */
    #sp .sp-book{margin-top:2.4rem;border-top:1px solid var(--gs-border);padding-top:2rem}
    #sp .sp-book-head{text-align:center;max-width:520px;margin:0 auto 1.4rem}
    #sp .sp-book-head h2{font-family:'Playfair Display',Georgia,serif;font-size:1.6rem;color:var(--gs-navy);line-height:1.15}
    #sp .sp-book-head p{font-size:.9rem;color:var(--gs-text-muted);margin-top:.5rem}
