/* Figma 783:45037 / 783:44931. Approved client base; after-play overrides are separate. */
.dashboard-client-first { --brand-red: #c21b17; }
.dashboard-client-first main { overflow-x: clip; }
.dashboard-client-first .dashboard-hero-html { box-shadow: none; clip-path: none; }
.dashboard-client-first .dashboard-hero-html::after { background: url('../img/figma/login-star-current.svg') 717px 141px / 54px 54px no-repeat, url('../img/figma/login-star-current.svg') 771px 189px / 29px 29px no-repeat, url('../img/figma/login-star-current.svg') 1143px 102px / 29px 29px no-repeat, url('../img/figma/login-dot-current.svg') 613px 405px / 11px 11px no-repeat; content: ""; inset: 0; pointer-events: none; position: absolute; }
.dashboard-client-first .dashboard-hero-html .prospect-hero-copy { top: 126px; }
.dashboard-client-first .dashboard-hero-html > .prospect-hero-outline { height: 373px; left: 577px; top: 111px; width: 1356.42px; }
.dashboard-client-first .campaign-logo-desktop { display: block; height: 18px; width: 135.9px; }
.dashboard-client-first .campaign-logo-mobile,
.dashboard-client-first .dashboard-first-mobile-art { display: none; }
.dashboard-client-first .dashboard-first-logout { align-items: center; color: #fff; display: flex; font-size: 18px; font-weight: 700; gap: 4px; position: absolute; right: 32px; top: 20px; }
.dashboard-client-first .dashboard-first-logout img { height: 24px; width: 24px; }
.dashboard-client-first .dashboard-play { align-items: center; bottom: 60px; display: flex; height: 56px; justify-content: center; width: 298px; }
.dashboard-client-first .dashboard-current { margin-top: 80px; }
.dashboard-client-first .dashboard-current::before { background: url('../img/figma/login-star-current.svg') center / contain no-repeat; content: ""; height: 41px; left: 294px; pointer-events: none; position: absolute; top: -51px; width: 41px; }
.dashboard-client-first .prospect-friend-source,
.dashboard-client-first .prospect-current-stats .prospect-stat:nth-child(2) { display: none; }
.dashboard-client-first .prospect-route-marker.marker-1 { left: 58px; top: 129px; }
.dashboard-client-first .prospect-route-marker.marker-2 { left: 174px; top: 193px; }
.dashboard-client-first .prospect-route-marker.marker-3 { left: 314px; top: 201px; }
.dashboard-client-first .prospect-route-marker.marker-4 { left: 440px; top: 180px; }
.dashboard-client-first .prospect-route-marker.marker-5 { left: 566px; top: 223px; }
.dashboard-client-first .prospect-current-stats { display: flex; gap: 32px; padding: 30px 80px 0; }
.dashboard-client-first .prospect-current-stats .prospect-stat { align-items: center; gap: 11px; height: 54px; position: static; }
.dashboard-client-first .prospect-current-stats > .prospect-stat:last-child { margin-left: auto; }
.dashboard-client-first .prospect-stat-footprints dd strong { font-size: 20px; line-height: 25px; }
.dashboard-client-first .prospect-current-content h2 { font-size: 28px; line-height: 34px; max-width: calc(100% - 160px); }
.dashboard-client-first .prospect-current-copy { color: var(--ink); width: calc(100% - 160px); }
.dashboard-client-first .prospect-current-copy p { margin: 0; }
.dashboard-client-first .prospect-current-actions { gap: 27px; grid-template-columns: repeat(2, minmax(0, 1fr)); right: 80px; }
.dashboard-client-first .prospect-current-actions .button-tome { background: var(--ink); color: #fff; }
.dashboard-client-first .prospect-current-prize { right: 80px; }
.dashboard-client-first .prospect-current-prize img { flex: 0 0 134px; }
.dashboard-client-first .prospect-current-prize p { min-width: 0; width: auto; }
.dashboard-client-first .paths-section { min-height: 0; padding: 80px 0; }
.dashboard-client-first .path-slider { margin-top: 32px; }
.dashboard-client-first .path-card-scene { height: 197px; top: 122px; }
.dashboard-client-first .path-footprints { top: 333px; }
.dashboard-client-first .path-card-action { left: 17px; text-decoration: none; top: 426px; width: calc(100% - 34px); }
.dashboard-client-first .dashboard-invite { height: auto; min-height: 510px; }
.dashboard-client-first .prospect-invite-visual { height: auto; min-height: 510px; }
.dashboard-client-first .prospect-invite-content { align-self: center; height: auto; padding: 56px 80px; }
.dashboard-client-first .prospect-invite-content h2 { margin-bottom: 16px; }
.dashboard-client-first .prospect-copy-link { align-items: flex-start; }
.dashboard-client-first .prospect-copy-link span { min-width: 0; overflow-wrap: anywhere; }
.dashboard-client-first .prospect-copy-link img { flex: 0 0 26px; }
.dashboard-client-first .won-section { padding: 80px 0 0; }
.dashboard-client-first .won-grid:empty { display: none; }
.dashboard-client-first .won-controls { display: none; }
.dashboard-client-first .won-grid article { border-radius: 4px; display: flex; flex-direction: column; overflow: hidden; padding: 0; position: relative; }
.dashboard-client-first .won-grid article > span { background: #2dd36f; max-width: calc(100% - 32px); position: absolute; right: 16px; top: 16px; z-index: 1; }
.dashboard-client-first .won-grid article > img { flex-shrink: 0; height: 240px; margin: 0; }
.dashboard-client-first .won-grid h3 { font-size: 20px; font-weight: 700; line-height: 25px; margin: 16px 16px 8px; }
.dashboard-client-first .won-grid p { color: #3d4047; margin: 0 16px 16px; }
.dashboard-client-first .won-grid article > a,
.dashboard-client-first .won-grid .pending-play-action { align-self: flex-start; margin: auto 16px 16px; padding: 0; }
.dashboard-client-first .car-banner { background: transparent; box-shadow: none; clip-path: none; height: 432.439px; overflow: visible; }
.dashboard-client-first .car-banner::before { background: var(--brand-red); bottom: 0; content: ""; left: 0; position: absolute; right: 0; top: 33.917px; }
.dashboard-client-first .car-copy { left: 83px; max-width: 615px; top: 133px; }
.dashboard-client-first .car-copy p { font-size: 18px; line-height: 24px; max-width: 510px; }
.dashboard-client-first .car-copy .campaign-button { height: 48px; width: 298px; }
.dashboard-client-first .car-image-note { bottom: 8px; color: #000; font-size: 12px; line-height: 16px; margin: 0; max-width: calc(100% - 32px); position: absolute; right: 16px; text-align: right; text-shadow: none; z-index: 2; }
.dashboard-client-first .prizes-section { margin-top: 80px; min-height: 0; padding: 0 0 80px; }
.dashboard-client-first .home-period-card { justify-content: center; padding: 32px; }
.dashboard-client-first .home-period-card img { height: 207.736px; width: 426px; }
.dashboard-client-first .home-period-card h3 { line-height: 33px; }
.dashboard-client-first .home-period-copy { padding: 36px 80px; }
.dashboard-client-first .home-period-copy h2 { font-size: 28px; line-height: 34px; }
.dashboard-client-first .home-period-copy p,
.dashboard-client-first .home-period-copy li { font-size: 18px; line-height: 24px; }
.dashboard-client-first .home-period-copy .campaign-button { align-items: center; display: flex; font-size: 18px; height: 56px; justify-content: center; line-height: 24px; width: 298px; }
.dashboard-client-first .instant-grid { margin-top: 32px; }
.dashboard-client-first .charity-section { box-shadow: none; clip-path: none; }
.dashboard-client-first .charity-section-landing .charity-art { aspect-ratio: 995 / 510; background: url('../img/figma/login-charity-desktop-current.svg') left bottom / contain no-repeat; bottom: 0; height: 510px; max-width: 73%; top: auto; transform: none; width: 995px; }
.dashboard-client-first .charity-art-photo,
.dashboard-client-first .charity-art-ribbon { display: none; }
.dashboard-client-first .charity-section-landing .charity-copy { padding: 80px 80px 80px 190px; }
.dashboard-client-first .charity-section-landing .charity-copy h2 { font-size: 32px; line-height: 38px; }
.dashboard-client-first .charity-section-landing .charity-copy p { color: var(--ink); font-size: 20px; line-height: 25px; margin-bottom: 0; }
.dashboard-client-first .rules-section { min-height: 218px; padding-bottom: 80px; }
.dashboard-client-first .campaign-footer { background: #505359; color: #fff; }
.dashboard-client-first .campaign-footer .design-container { max-width: var(--container); text-align: left; }
.dashboard-client-first .campaign-footer a { color: #fff; }
.dashboard-client-first .campaign-footer p { overflow-wrap: anywhere; }
.dashboard-client-first a:focus-visible { outline: 2px solid #0075b9; outline-offset: 3px; }
@media (min-width: 768px) and (max-width: 1365.98px) {
    .dashboard-client-first .dashboard-hero-html .prospect-hero-copy { left: 32px; width: 48%; }
    .dashboard-client-first .prospect-hero-copy > p:last-of-type { width: auto; }
    .dashboard-client-first .dashboard-play { left: 32px; }
    .dashboard-client-first .prospect-period-label,
    .dashboard-client-first .prospect-period-row,
    .dashboard-client-first .prospect-current-content h2,
    .dashboard-client-first .prospect-current-copy,
    .dashboard-client-first .prospect-current-actions,
    .dashboard-client-first .prospect-current-prize { left: 24px; }
    .dashboard-client-first .prospect-period-row,
    .dashboard-client-first .prospect-current-actions,
    .dashboard-client-first .prospect-current-prize { right: 24px; }
    .dashboard-client-first .prospect-period-row { flex-wrap: wrap; gap: 8px; }
    .dashboard-client-first .prospect-period-status { margin-left: 0; }
    .dashboard-client-first .prospect-current-content h2 { max-width: calc(100% - 48px); top: 132px; }
    .dashboard-client-first .prospect-current-copy { top: 212px; width: calc(100% - 48px); }
    .dashboard-client-first .prospect-current-actions { gap: 12px; top: 350px; }
    .dashboard-client-first .prospect-current-prize { gap: 12px; top: 432px; }
    .dashboard-client-first .prospect-current-prize img { flex-basis: 90px; width: 90px; }
    .dashboard-client-first .prospect-current-stats { gap: 32px; padding-inline: 24px; }
    .dashboard-client-first .prospect-invite-content,
    .dashboard-client-first .home-period-copy { padding-inline: 24px; }
    .dashboard-client-first .prospect-invite-visual img { max-width: calc(100% - 48px); }
    .dashboard-client-first .car-copy { left: 24px; max-width: 45%; top: 88px; }
    .dashboard-client-first .car-image-desktop { right: -250px; }
    .dashboard-client-first .charity-section-landing .charity-copy { padding-inline: 24px; }
    .dashboard-client-first .charity-section-landing .charity-art { max-width: 50%; }
}
@media (min-width: 768px) and (max-width: 991.98px) {
    .dashboard-client-first .dashboard-hero-html { height: 560px; }
}
@media (max-width: 767.98px) {
    .dashboard-client-first .dashboard-hero-html { height: 487px; }
    .dashboard-client-first .dashboard-hero-html::after,
    .dashboard-client-first .dashboard-current::before { display: none; }
    .dashboard-client-first .prospect-hero-header { height: 50px; }
    .dashboard-client-first .dashboard-hero-html .prospect-hero-logo { height: 24px; left: 16px; top: 16px; width: 136px; }
    .dashboard-client-first .prospect-hero-logo .campaign-logo-desktop { flex: 0 0 135.9px; }
    .dashboard-client-first .dashboard-hero-html .dashboard-mobile-copy > p:first-of-type { font-size: 18px; }
    .dashboard-client-first .dashboard-first-logout { font-size: 0; right: 16px; top: 13px; }
    .dashboard-client-first .dashboard-hero-html > .prospect-hero-art,
    .dashboard-client-first .dashboard-hero-html > .prospect-hero-outline { display: none; }
    .dashboard-client-first .dashboard-first-mobile-art { display: block; inset: 0; pointer-events: none; position: absolute; }
    .dashboard-client-first .dashboard-first-mobile-art img { max-width: none; position: absolute; transform: rotate(180deg); }
    .dashboard-client-first .dashboard-first-mobile-art img:first-child { height: 170px; left: 85px; top: 317px; width: 622px; }
    .dashboard-client-first .dashboard-first-mobile-art img:last-child { height: 198px; left: 39px; top: 289px; width: 720.43px; }
    .dashboard-client-first .dashboard-hero-html .prospect-hero-copy { left: 16px; top: 90px; width: calc(100% - 32px); }
    .dashboard-client-first .prospect-hero-copy h1 { font-size: 32px; line-height: 38px; }
    .dashboard-client-first .prospect-hero-copy > p:last-of-type { font-size: 20px; line-height: 25px; width: auto; }
    .dashboard-client-first .dashboard-play { bottom: 64px; height: 61px; left: 17px; width: calc(100% - 34px); z-index: 2; }
    .dashboard-client-first .dashboard-current { margin-top: 40px; }
    .dashboard-client-first .prospect-current-card { display: flex; flex-direction: column; height: auto; }
    .dashboard-client-first .prospect-current-visual { height: auto; }
    .dashboard-client-first .prospect-current-scene { aspect-ratio: 707 / 388; height: auto; }
    .dashboard-client-first .prospect-current-landscape { height: 100%; position: absolute; width: 100%; }
    .dashboard-client-first .prospect-route-marker { height: 34px; width: 34px; }
    .dashboard-client-first .prospect-route-marker .route-token { height: 39px; left: -2px; top: -2px; width: 38px; }
    .dashboard-client-first .prospect-route-marker.marker-1 { left: 8.2%; top: 33.2%; }
    .dashboard-client-first .prospect-route-marker.marker-2 { left: 24.6%; top: 49.7%; }
    .dashboard-client-first .prospect-route-marker.marker-3 { left: 44.4%; top: 51.8%; }
    .dashboard-client-first .prospect-route-marker.marker-4 { left: 62.2%; top: 46.4%; }
    .dashboard-client-first .prospect-route-marker.marker-5 { left: 80.1%; top: 57.5%; }
    .dashboard-client-first .prospect-current-stats { gap: 32px; height: auto; min-height: 102px; padding: 26px 17px 22px; }
    .dashboard-client-first:not(.dashboard-client-after):not(.dashboard-prospect) .prospect-current-stats { display: grid; gap: 8px; grid-template-columns: minmax(0, 184fr) minmax(0, 152fr); }
    .dashboard-client-first:not(.dashboard-client-after):not(.dashboard-prospect) .prospect-current-stats > .prospect-stat:last-child { margin-left: 0; }
    .dashboard-client-first:not(.dashboard-client-after):not(.dashboard-prospect) .prospect-current-stats .prospect-stat { background: #fff; border-radius: 4px; gap: 8px; height: 69px; min-width: 0; padding: 8px; }
    .dashboard-client-first:not(.dashboard-client-after):not(.dashboard-prospect) .prospect-stat dt,
    .dashboard-client-first:not(.dashboard-client-after):not(.dashboard-prospect) .prospect-stat dd,
    .dashboard-client-first:not(.dashboard-client-after):not(.dashboard-prospect) .prospect-stat-footprints dd strong { font-size: 16px; line-height: 20px; }
    .dashboard-client-first:not(.dashboard-client-after):not(.dashboard-prospect) .prospect-stat-footprints .prospect-stat-icon,
    .dashboard-client-first:not(.dashboard-client-after):not(.dashboard-prospect) .prospect-stat > img { height: 40px; width: 40px; }
    .dashboard-client-first:not(.dashboard-client-after):not(.dashboard-prospect) .stat-coin img { transform: scale(.74); transform-origin: top left; }
    .dashboard-client-first .prospect-current-content { height: auto; padding: 24px 17px 36px; }
    .dashboard-client-first .prospect-period-label,
    .dashboard-client-first .prospect-period-row,
    .dashboard-client-first .prospect-current-content h2,
    .dashboard-client-first .prospect-current-copy,
    .dashboard-client-first .prospect-current-actions,
    .dashboard-client-first .prospect-current-prize { left: auto; position: static; right: auto; top: auto; width: auto; }
    .dashboard-client-first .prospect-period-row { flex-wrap: wrap; gap: 8px; margin: 8px 0 24px; }
    .dashboard-client-first .prospect-period-status { margin-left: 0; }
    .dashboard-client-first .prospect-current-content h2 { font-size: 28px; line-height: 34px; margin: 0 0 24px; max-width: none; }
    .dashboard-client-first .prospect-current-copy-desktop { display: block; font-size: 20px; line-height: 25px; }
    .dashboard-client-first .prospect-current-copy-mobile { display: none; }
    .dashboard-client-first .prospect-current-actions { display: flex; flex-direction: column; gap: 16px; margin-top: 32px; }
    .dashboard-client-first .prospect-current-actions a { height: 61px; width: 100%; }
    .dashboard-client-first .prospect-current-actions .button-tome { order: -1; }
    .dashboard-client-first .prospect-current-prize { gap: 12px; margin-top: 32px; }
    .dashboard-client-first .prospect-current-prize img { flex: 0 0 82px; height: 40px; width: 82px; }
    .dashboard-client-first .prospect-current-prize p { font-size: 18px; line-height: 23px; }
    .dashboard-client-first .paths-section { padding: 40px 0; }
    .dashboard-client-first .path-card { flex-basis: min(346px, 100%); }
    .dashboard-client-first .path-card-scene { width: calc(100% - 32px); }
    .dashboard-client-first .prospect-invite { display: block; }
    .dashboard-client-first .prospect-invite { background-image: none; padding: 0; }
    .dashboard-client-first .prospect-invite-visual { height: 250px; min-height: 0; }
    .dashboard-client-first .prospect-invite-visual img { height: 229px; max-width: 100%; object-fit: contain; width: 80%; }
    .dashboard-client-first .prospect-invite-visual { align-items: flex-start; padding-top: 22px; }
    .dashboard-client-first .prospect-invite-visual img { width: 79.76%; }
    .dashboard-client-first .prospect-invite-content { padding: 24px 16px 40px; }
    .dashboard-client-first .prospect-invite-copy-desktop { display: block; }
    .dashboard-client-first .prospect-invite-copy-mobile { display: none; }
    .dashboard-client-first .won-section { padding-top: 40px; }
    .dashboard-client-first .won-grid { display: flex; gap: 16px; overflow-x: auto; overscroll-behavior-inline: contain; scrollbar-width: none; scroll-snap-type: x mandatory; }
    .dashboard-client-first .won-grid::-webkit-scrollbar { display: none; }
    .dashboard-client-first .won-grid article { flex: 0 0 100%; min-height: 366px; min-width: 0; scroll-snap-align: start; }
    .dashboard-client-first .won-grid article > img { height: 215px; }
    .dashboard-client-first .won-grid article > span { font-size: 11px; padding: 4px 7px; right: 14px; top: 14px; }
    .dashboard-client-first .won-grid h3 { font-size: 18px; line-height: 22.5px; margin: 14px 14px 7px; }
    .dashboard-client-first .won-grid p { font-size: 14.35px; line-height: 18.8px; margin: 0 14px 14px; }
    .dashboard-client-first .won-grid article > a,
    .dashboard-client-first .won-grid .pending-play-action { font-size: 14px; line-height: 17px; margin: auto 14px 14px; }
    .dashboard-client-first .won-controls { align-items: center; display: flex; gap: 16px; margin-top: 12px; }
    .dashboard-client-first .won-controls [data-slider-count] { font-size: 18px; font-weight: 700; line-height: 24px; min-width: 32px; text-align: center; }
    .dashboard-client-first .car-banner { background: var(--brand-red); height: 574px; margin-top: 40px; overflow: hidden; }
    .dashboard-client-first .car-banner::before,
    .dashboard-client-first .car-banner .car-image-desktop { display: none; }
    .dashboard-client-first .car-copy { left: 16px; max-width: none; right: 16px; top: 40px; }
    .dashboard-client-first .car-copy h2 { font-size: 28px; line-height: 34px; }
    .dashboard-client-first .car-copy p { font-size: 20px; line-height: 25px; }
    .dashboard-client-first .car-copy .campaign-button { max-width: 100%; }
    .dashboard-client-first .car-banner > img.car-image-mobile { bottom: -1px; display: block; height: auto; right: calc(50% - 202px); top: auto; width: 404px; }
    .dashboard-client-first .car-image-note { bottom: 10px; font-size: 10px; line-height: 14px; }
    .dashboard-client-first .prizes-section { margin-top: 40px; padding-bottom: 44px; }
    .dashboard-client-first .home-period-prizes { display: flex; flex-direction: column; }
    .dashboard-client-first .home-period-copy { order: 0; padding: 0 16px 24px; }
    .dashboard-client-first .home-period-copy li { font-size: 16px; line-height: 24px; }
    .dashboard-client-first .home-period-copy .campaign-button { align-self: center; margin-top: 24px; max-width: 100%; }
    .dashboard-client-first .home-period-card { height: auto; margin: 0 16px; min-height: 284px; order: 1; padding: 24px 16px; width: auto; }
    .dashboard-client-first .home-period-card img { height: 150px; margin-bottom: 12px; max-width: 100%; width: 311px; }
    .dashboard-client-first .home-period-card h3 { line-height: 24px; }
    .dashboard-client-first .prize-heading { margin-top: 40px; }
    .dashboard-client-first .instant-grid { display: flex; overflow-x: auto; scroll-snap-type: x mandatory; }
    .dashboard-client-first .instant-card { flex-basis: min(343px, 100%); }
    .dashboard-client-first .charity-section-landing { display: block; }
    .dashboard-client-first .charity-art,
    .dashboard-client-first .charity-copy { display: none; }
    .dashboard-client-first .charity-mobile { display: block; }
    .dashboard-client-first .charity-photo { aspect-ratio: auto; background-image: url('../img/figma/login-charity-mobile-current.png'); background-position: right top; background-size: 113.8% 100%; height: 250px; }
    .dashboard-client-first .charity-mobile > div:last-child { padding: 24px 16px; }
    .dashboard-client-first .charity-mobile h2 { font-size: 28px; line-height: 34px; margin-bottom: 24px; }
    .dashboard-client-first .charity-mobile p { font-size: 18px; line-height: 24px; margin-bottom: 0; }
    .dashboard-client-first .rules-section { margin-top: 60px; min-height: 234px; padding-bottom: 40px; }
    .dashboard-client-first .campaign-footer { padding: 8px 0 16px; }
}
@media (max-width: 360px) {
    .dashboard-client-first .dashboard-hero-html { height: 537px; }
    .dashboard-client-first .dashboard-first-mobile-art { top: 50px; }
    .dashboard-client-first .prospect-hero-copy h1 { font-size: 30px; }
    .dashboard-client-first .prospect-current-stats { gap: 20px; padding-inline: 12px; }
    .dashboard-client-first .prospect-stat { gap: 7px; }
    .dashboard-client-after .prospect-current-stats { gap: 8px; }
    .dashboard-client-after .prospect-stat dt,
    .dashboard-client-after .prospect-stat dd,
    .dashboard-client-after .prospect-stat-footprints dd strong { font-size: 16px; line-height: 20px; }
    .dashboard-client-after .prospect-stat-footprints .prospect-stat-icon,
    .dashboard-client-after .prospect-stat > img { height: 40px; width: 40px; }
    .dashboard-client-first:not(.dashboard-client-after):not(.dashboard-prospect) .prospect-current-stats .prospect-stat { gap: 6px; padding-inline: 6px; }
    .dashboard-client-first:not(.dashboard-client-after):not(.dashboard-prospect) .prospect-stat dt,
    .dashboard-client-first:not(.dashboard-client-after):not(.dashboard-prospect) .prospect-stat dd,
    .dashboard-client-first:not(.dashboard-client-after):not(.dashboard-prospect) .prospect-stat-footprints dd strong { font-size: 14px; line-height: 18px; }
    .dashboard-client-first:not(.dashboard-client-after):not(.dashboard-prospect) .prospect-stat-footprints .prospect-stat-icon,
    .dashboard-client-first:not(.dashboard-client-after):not(.dashboard-prospect) .prospect-stat > img { height: 32px; width: 32px; }
    .dashboard-client-first:not(.dashboard-client-after):not(.dashboard-prospect) .stat-coin img { transform: scale(.59); }
    .dashboard-client-first .car-banner { height: 650px; }
}
