/* RSM best customer journey rebuild — 2026-07-20 */
:root{
  --journey-blue:#0a6fa6;
  --journey-blue-dark:#063b61;
  --journey-ice:#eef7fb;
  --journey-border:#cbdde7;
  --journey-ink:#12384d;
  --journey-gold:#f2b84b;
}
body.journey-v2{scroll-padding-top:112px}
.journey-v2 [id]{scroll-margin-top:118px}

/* Global header and mobile utility actions */
.journey-v2 .header-pathway{border-color:#85aabd;background:#fff;color:var(--navy)}
.journey-v2 .header-cta{background:var(--journey-blue)}
.journey-v2 .header-cta:hover{background:var(--journey-blue-dark)}
.journey2-dock button{
  appearance:none;border:0;background:transparent;color:#fff;font:inherit;cursor:pointer;
  display:flex;align-items:center;justify-content:center;min-height:52px;padding:.45rem .35rem;
  border-radius:8px;text-align:center;font-size:.77rem;line-height:1.15;font-weight:800
}
.journey2-dock button:hover{background:rgba(255,255,255,.1)}
.journey2-dock .primary{background:var(--journey-blue)}
.journey2-dock .primary:hover{background:#0a6392}
.journey2-dock button:focus-visible{outline:3px solid var(--journey-gold);outline-offset:2px}

/* Homepage */
.journey-home-hero .home-hero-copy{max-width:830px}
.journey-home-hero .home-hero-copy h1{max-width:18ch}
.journey-task-panel{
  position:relative;z-index:3;width:min(var(--max),calc(100% - 40px));margin:-44px auto 4rem;
  padding:clamp(1.2rem,2.4vw,2rem);background:#fff;border:1px solid var(--journey-border);
  border-radius:24px;box-shadow:0 24px 70px rgba(3,31,53,.16)
}
.journey-task-panel__head{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:2rem;align-items:end;margin-bottom:1.25rem}
.journey-task-panel__head h2{margin:.2rem 0 .4rem;font-size:clamp(1.8rem,3.5vw,3rem);color:var(--navy)}
.journey-task-panel__head p{margin:0;max-width:68ch;color:#4c6878}
.journey-inline-link{font-weight:850;color:var(--journey-blue);text-decoration:none}
.journey-inline-link:hover{text-decoration:underline}
.journey-task-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.9rem}
.journey-task-card{
  position:relative;display:grid;grid-template-rows:auto auto 1fr auto;gap:.45rem;min-height:190px;
  padding:1.25rem;border:1px solid var(--journey-border);border-radius:16px;
  background:linear-gradient(145deg,#fff,#f3f8fa);text-decoration:none;color:var(--journey-ink);
  transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease
}
.journey-task-card:hover{transform:translateY(-2px);border-color:#6fa9c8;box-shadow:0 15px 32px rgba(5,61,92,.11)}
.journey-task-card__number{font-size:.76rem;font-weight:900;letter-spacing:.12em;color:#668899}
.journey-task-card strong{font-size:1.12rem;color:var(--navy)}
.journey-task-card>span:not(.journey-task-card__number){font-size:.93rem;line-height:1.5;color:#4d6979}
.journey-task-card b{font-size:.88rem;color:var(--journey-blue)}
.journey-section-heading{max-width:850px}
.journey-audience-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:.8rem;margin-top:1.5rem}
.journey-audience-card{
  display:grid;gap:.55rem;min-height:170px;padding:1.15rem;border-top:4px solid #7aaec8;
  border-radius:0 0 14px 14px;background:#fff;box-shadow:0 10px 25px rgba(3,31,53,.08);
  color:var(--journey-ink);text-decoration:none
}
.journey-audience-card strong{font-size:1.04rem;color:var(--navy)}
.journey-audience-card span{font-size:.9rem;line-height:1.48;color:#526e7d}
.journey-audience-card:hover{box-shadow:0 15px 34px rgba(3,31,53,.13);transform:translateY(-2px)}
.journey-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;list-style:none;padding:0;margin:1.6rem 0 0}
.journey-steps li{display:grid;grid-template-columns:auto 1fr;gap:.9rem;padding:1.25rem;background:#fff;border:1px solid var(--journey-border);border-radius:16px}
.journey-steps li>span{display:grid;place-items:center;width:38px;height:38px;border-radius:50%;background:var(--journey-blue);color:#fff;font-weight:900}
.journey-steps strong{display:block;color:var(--navy);margin-bottom:.25rem}
.journey-steps p{margin:0;color:#526d7c;line-height:1.55}
.journey-featured-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.85rem;margin-top:1.5rem}
.journey-featured-grid a{display:grid;gap:.35rem;padding:1.2rem;border:1px solid var(--journey-border);border-radius:15px;background:#fff;color:var(--journey-ink);text-decoration:none}
.journey-featured-grid a>span{font-size:.75rem;font-weight:900;letter-spacing:.1em;text-transform:uppercase;color:var(--journey-blue)}
.journey-featured-grid strong{font-size:1.08rem;color:var(--navy)}
.journey-featured-grid p{margin:0;color:#536e7d;line-height:1.5;font-size:.91rem}
.journey-featured-grid a:hover{border-color:#6ba5c3;box-shadow:0 12px 26px rgba(3,31,53,.09)}
.journey-trust-section{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(280px,.8fr);gap:2rem;align-items:start;background:#eef5f8;border-radius:24px}
.journey-trust-copy h2{max-width:18ch}
.journey-trust-list{display:grid;gap:.7rem}
.journey-trust-list a{display:grid;gap:.25rem;padding:1rem;border:1px solid var(--journey-border);border-radius:13px;background:#fff;color:var(--journey-ink);text-decoration:none}
.journey-trust-list strong{color:var(--navy)}
.journey-trust-list span{font-size:.9rem;line-height:1.45;color:#536d7b}
.journey-final-cta{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:2rem;align-items:center;background:var(--navy);color:#fff;border-radius:24px}
.journey-final-cta h2,.journey-final-cta .eyebrow{color:#fff}
.journey-final-cta p{color:#dcebf2;max-width:70ch}
.journey-final-cta .btn-secondary{border-color:#fff;color:#fff}

/* Finder */
.journey-finder-intro{grid-column:1/-1;padding:1.2rem 1.25rem;border:1px solid var(--journey-border);border-radius:16px;background:var(--journey-ice)}
.journey-finder-intro h2{margin:.15rem 0 .35rem;color:var(--navy)}
.journey-finder-intro p{margin:.2rem 0;color:#506a79}
.journey-finder-progress{height:8px;margin:.9rem 0 .45rem;border-radius:999px;background:#dbe8ee;overflow:hidden}
.journey-finder-progress span{display:block;width:0;height:100%;background:var(--journey-blue);transition:width .2s ease}
.journey-finder-summary{font-weight:800;color:var(--journey-ink)!important}
.journey-finder-controls{display:flex;gap:.75rem;align-items:center;flex-wrap:wrap;margin-top:1.25rem}
.journey-reset-button{border:0;background:transparent;color:var(--journey-blue);font-weight:800;cursor:pointer;padding:.7rem}
.journey-reset-button:hover{text-decoration:underline}
.finder-results{position:sticky;top:118px}
.journey-recommendation{display:grid;gap:.85rem}
.journey-recommendation__why{padding:.85rem;border-left:4px solid var(--journey-blue);background:var(--journey-ice);color:#395968}
.journey-recommendation__primary{display:grid;gap:.35rem;padding:1rem;border-radius:14px;background:var(--navy);color:#fff;text-decoration:none}
.journey-recommendation__primary strong{font-size:1.05rem}
.journey-recommendation__primary span{color:#d7e9f1;font-size:.9rem;line-height:1.45}
.journey-recommendation__secondary{display:grid;gap:.55rem}
.journey-recommendation__secondary a{display:grid;gap:.2rem;padding:.8rem;border:1px solid var(--journey-border);border-radius:11px;color:var(--journey-ink);text-decoration:none}
.journey-recommendation__secondary strong{color:var(--navy)}
.journey-recommendation__secondary span{font-size:.85rem;color:#587180}

/* Forms */
.journey-contact-form{scroll-margin-top:120px}
.journey-form-core{margin-top:1rem}
.journey-form-more{margin:1rem 0;padding:.9rem 1rem;border:1px solid var(--journey-border);border-radius:12px;background:#f8fbfc}
.journey-form-more summary{cursor:pointer;color:var(--navy);font-weight:850}
.journey-form-more[open] summary{margin-bottom:1rem}
.journey-form-submit{display:grid;gap:.55rem;justify-items:start;margin-top:1rem}
.journey-form-reassurance{margin:0;max-width:70ch;color:#5b7280;font-size:.88rem;line-height:1.45}
.journey-contact-form .b1-checkbox{margin-top:.75rem}

/* Contextual next steps */
.journey-next{padding-top:clamp(2.6rem,5vw,5rem);padding-bottom:clamp(2.6rem,5vw,5rem);background:#eef5f8}
.journey-next__inner{width:min(var(--max),calc(100% - 40px));margin:auto}
.journey-next__head{max-width:780px}
.journey-next__head h2{margin:.15rem 0 .35rem;color:var(--navy)}
.journey-next__head p{margin:0;color:#516d7d}
.journey-next__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.8rem;margin-top:1.25rem}
.journey-next__card{display:grid;grid-template-rows:auto 1fr auto;gap:.4rem;min-height:150px;padding:1.1rem;border:1px solid var(--journey-border);border-radius:14px;background:#fff;color:var(--journey-ink);text-decoration:none}
.journey-next__card strong{color:var(--navy)}
.journey-next__card span{color:#587181;font-size:.9rem;line-height:1.45}
.journey-next__card b{color:var(--journey-blue);font-size:.86rem}
.journey-next__card:hover{border-color:#70a9c5;box-shadow:0 12px 27px rgba(3,31,53,.09);transform:translateY(-1px)}

/* Search help */
.search-empty-actions{display:flex;gap:.55rem;flex-wrap:wrap;margin-top:.85rem}
.search-empty-actions a{display:inline-flex;padding:.55rem .7rem;border:1px solid var(--journey-border);border-radius:9px;color:var(--journey-blue);font-weight:800;text-decoration:none}
.search-shortcut{display:inline-flex;margin-left:.4rem;padding:.08rem .35rem;border:1px solid #9cb5c3;border-radius:5px;font-size:.72rem;color:#58717f}

/* Focus and reduced motion */
.journey-v2 a:focus-visible,.journey-v2 button:focus-visible,.journey-v2 summary:focus-visible{
  outline:3px solid var(--journey-gold);outline-offset:3px
}
@media(max-width:1180px){
  .journey-audience-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
  .journey-featured-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:900px){
  .journey-task-panel__head,.journey-trust-section,.journey-final-cta{grid-template-columns:1fr}
  .journey-task-grid,.journey-steps,.journey-next__grid{grid-template-columns:1fr 1fr}
  .journey-audience-grid{grid-template-columns:1fr 1fr}
  .finder-results{position:static}
}
@media(max-width:620px){
  .journey-task-panel{width:calc(100% - 22px);margin:-24px auto 2.5rem;padding:1rem;border-radius:18px}
  .journey-task-grid,.journey-steps,.journey-audience-grid,.journey-featured-grid,.journey-next__grid{grid-template-columns:1fr}
  .journey-task-card{min-height:auto}
  .journey-audience-card{min-height:auto}
  .journey-final-cta{border-radius:18px}
  .journey-finder-controls .btn{width:100%}
  .journey-reset-button{width:100%;text-align:center}
}
@media(prefers-reduced-motion:reduce){
  .journey-task-card,.journey-audience-card,.journey-next__card,.journey-finder-progress span{transition:none}
}
