.service{outline:0}.service:focus-within{box-shadow:0 0 0 4px rgba(87,170,241,.28),var(--shadow)}
.service.is-selected{box-shadow:inset 0 -4px 0 var(--orange),var(--shadow)}
.demo-rail{position:fixed;right:0;top:50%;z-index:40;padding:9px 8px;transform:translateY(-50%);background:var(--orange);color:#fff;font-size:10px;font-weight:950;letter-spacing:.12em;line-height:1;writing-mode:vertical-rl;text-transform:uppercase}
@media(max-width:700px){.demo-rail{display:none}}

/* Birchley-style review carousel, adapted to JPR's navy palette. */
.jpr-carousel{position:relative}.jpr-carousel-viewport{overflow:hidden;margin-inline:.15rem;padding:.4rem .15rem 2rem}
.jpr-carousel-track{--visible-cards:4;--card-gap:16px;display:flex;gap:var(--card-gap);transition:transform .65s cubic-bezier(.22,.7,.16,1)}
.jpr-review-card{position:relative;min-width:calc((100% - (var(--visible-cards) - 1)*var(--card-gap))/var(--visible-cards));min-height:310px;display:flex;flex-direction:column;padding:22px;border:1px solid rgba(255,255,255,.16);border-radius:12px;background:#fff;color:var(--ink);box-shadow:0 18px 45px rgba(3,15,31,.22)}
.jpr-review-card header{display:grid;grid-template-columns:auto 1fr auto;gap:11px;align-items:center}.jpr-review-card header strong,.jpr-review-card header small{display:block}.jpr-review-card header strong{font-size:14px;line-height:1.2}.jpr-review-card header small{margin-top:4px;color:var(--muted);font-size:12px}
.jpr-avatar{width:36px;aspect-ratio:1;display:grid;place-items:center;border-radius:50%;color:#fff;font-size:13px;font-weight:900}.jpr-avatar.purple{background:#934eb7}.jpr-avatar.coral{background:#dd6f59}.jpr-avatar.teal{background:#168c8a}.jpr-avatar.blue{background:#3c72b8}.jpr-avatar.gold{background:#bc8622}.jpr-avatar.navy{background:var(--navy)}
.google-mark{color:#4285f4;font-weight:950}.jpr-review-card .review-stars{margin:20px 0 12px;color:#f6b900;font-size:13px;letter-spacing:.14em}.jpr-review-card p{margin:0 0 22px;color:#344f5a;font-size:15px;line-height:1.65}.jpr-review-card .review-topic{margin-top:auto;padding-top:13px;border-top:1px solid var(--line);color:#287bc2;font-size:12px;font-weight:850}
.jpr-carousel-arrow{position:absolute;z-index:3;top:50%;width:40px;height:40px;display:grid;place-items:center;border:1px solid var(--line);border-radius:50%;background:#fff;color:var(--navy);box-shadow:0 8px 24px rgba(3,15,31,.2);cursor:pointer;transform:translateY(-50%);transition:.2s ease}.jpr-carousel-arrow:hover{background:var(--orange);color:#fff}.jpr-carousel-arrow.previous{left:-20px}.jpr-carousel-arrow.next{right:-20px}
.jpr-carousel-footer{display:flex;align-items:center;justify-content:space-between;gap:32px}.jpr-carousel-footer a{color:#82c9fb;font-size:13px;font-weight:850}.jpr-carousel-dots{display:flex;gap:8px}.jpr-carousel-dot{width:9px;height:9px;padding:0;border:0;border-radius:50%;background:#71869b;cursor:pointer;transition:.2s ease}.jpr-carousel-dot.active{width:27px;border-radius:999px;background:var(--orange)}.review-source{margin:20px 0 0;color:#9fb3c5;font-size:12px}
@media(max-width:1020px){.jpr-carousel-track{--visible-cards:3}}
@media(max-width:820px){.jpr-carousel-track{--visible-cards:2}}
@media(max-width:560px){.jpr-carousel-track{--visible-cards:1}.jpr-carousel-arrow.previous{left:-9px}.jpr-carousel-arrow.next{right:-9px}.jpr-carousel-footer{align-items:flex-start;flex-direction:column;gap:18px}.jpr-review-card{min-height:285px}}
@media(prefers-reduced-motion:reduce){.jpr-carousel-track{transition:none}}
