.ps-community-visual{background:linear-gradient(180deg,#f4f9fd,#fff)!important}.ps-community-visual .psm-section-head{max-width:800px;margin-bottom:32px}.ps-community-visual .psm-section-head h2{font-size:clamp(32px,4vw,52px)!important;line-height:1.12!important;letter-spacing:-1.5px}.ps-community-visual .psm-section-head p{font-size:18px!important;line-height:1.6}.ps-community-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}.ps-community-card{display:flex;flex-direction:column;align-items:flex-start;background:#fff;border:1px solid #dbe6ef;border-radius:18px;padding:26px;text-decoration:none!important;box-shadow:0 6px 20px #14395d06;transition:transform .18s,border-color .18s;min-width:0}.ps-community-card:hover{transform:translateY(-4px);border-color:#1597c8}.ps-community-card:focus-visible{outline:3px solid #1597c8;outline-offset:4px}.ps-community-icon{display:flex;align-items:center;justify-content:center;width:76px;height:76px;background:#e4f5fb;border-radius:22px;color:#077fa9;margin-bottom:23px}.ps-community-icon svg{width:43px;height:46px;overflow:visible}.ps-community-tone-1 .ps-community-icon{background:#e9eefb;color:#315b9b}.ps-community-tone-2 .ps-community-icon{background:#e7f4ee;color:#28775a}.ps-community-card h3{font-size:19px!important;line-height:1.35!important;text-transform:none!important;letter-spacing:-.25px;margin:0 0 10px!important;color:#162b44!important}.ps-community-card p{font-size:15px!important;line-height:1.6!important;color:#607187!important;margin:0 0 22px!important}.ps-community-cta{margin-top:auto;font-size:12px;font-weight:700;display:flex;width:100%;justify-content:space-between;color:#185a96;border-top:1px solid #edf1f6;padding-top:15px}@media(max-width:1000px){.ps-community-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:540px){.ps-community-grid{gap:12px}.ps-community-card{padding:18px 15px;border-radius:14px}.ps-community-card h3{font-size:16px!important}.ps-community-card p{font-size:13px!important}.ps-community-icon{width:60px;height:60px;border-radius:17px;margin-bottom:18px}.ps-community-icon svg{width:34px;height:38px}.ps-community-cta{font-size:11px}.ps-community-visual .psm-section-head p{font-size:16px!important}}@media(prefers-reduced-motion:reduce){.ps-community-card{transition:none}.ps-community-card:hover{transform:none}}

.ps-how-visual{background:#f1f6fb!important;padding:76px 0!important;color:#162b44;scroll-margin-top:40px}
.ps-how-head{text-align:center;max-width:850px;margin:0 auto 40px}
.ps-how-head h2{font-size:clamp(30px,3.6vw,46px)!important;text-transform:none!important;letter-spacing:-1.3px!important;line-height:1.18!important;color:#162b44!important;margin:14px 0!important}
.ps-how-head p{font-size:18px!important;color:#607187!important;margin:0!important}
.ps-how-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:22px;list-style:none!important;margin:0!important;padding:0!important}
.ps-how-card{position:relative;min-width:0;background:#fff;border:1px solid #dae5ef;border-radius:22px;padding:30px 25px!important;margin:0!important;box-shadow:0 8px 28px #17395f06}
.ps-how-icon{position:relative;display:flex;align-items:center;justify-content:center;width:82px;height:82px;border-radius:24px;background:#e3f5fc;color:#087fa9;margin-bottom:26px}
.ps-how-icon svg{width:45px;height:48px}
.ps-how-icon span{position:absolute;right:-8px;bottom:-7px;background:#17385f;color:#fff;border:4px solid #fff;border-radius:50%;width:31px;height:31px;box-sizing:content-box;display:flex;align-items:center;justify-content:center;font-size:13px;font-weight:700}
.ps-how-card:nth-child(2) .ps-how-icon{background:#e9eefb;color:#315b9b}
.ps-how-card:nth-child(3) .ps-how-icon{background:#e8f4ee;color:#28775a}
.ps-how-card:nth-child(4) .ps-how-icon{background:#e6f0fb;color:#2765a3}
.ps-how-card h3{font-size:21px!important;line-height:1.3!important;text-transform:none!important;letter-spacing:-.4px!important;color:#162b44!important;margin:0 0 12px!important}
.ps-how-card p{font-size:16px!important;line-height:1.65!important;color:#607187!important;margin:0!important}
.ps-how-footer{display:flex;align-items:center;justify-content:center;gap:24px;margin-top:32px;flex-wrap:wrap}
.ps-how-footer a{display:inline-flex;gap:30px;align-items:center;background:#17385f;color:#fff!important;border-radius:12px;padding:16px 24px;text-decoration:none!important;font-size:15px;font-weight:600}
.ps-how-footer a:hover{background:#076f99}.ps-how-footer a:focus-visible{outline:3px solid #079bc9;outline-offset:4px}
.ps-how-footer>span{font-size:14px;color:#607187}
@media(max-width:1000px){.ps-how-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:540px){.ps-how-visual{padding:48px 0!important}.ps-how-head{margin-bottom:26px}.ps-how-head p{font-size:16px!important}.ps-how-grid{grid-template-columns:1fr;gap:14px}.ps-how-card{padding:24px 20px 24px 112px!important;min-height:133px}.ps-how-icon{position:absolute;left:20px;top:24px;width:65px;height:65px;border-radius:19px;margin:0}.ps-how-icon svg{width:36px;height:39px}.ps-how-icon span{width:24px;height:24px;font-size:11px}.ps-how-card h3{font-size:19px!important}.ps-how-card p{font-size:15px!important}.ps-how-footer{gap:14px;text-align:center}}

/* The main site's community guide shares the hero's ink, sky and pennant gold. */
#promospirit-community.ps-community-guide {
  --ink:#122e47; --sky:#d9f0fc; --gold:#ffda53;
  background:#fff; color:var(--ink); font-family:Poppins,Inter,system-ui,sans-serif;
}
.ps-community-guide *, .ps-community-guide *::before, .ps-community-guide *::after { box-sizing:border-box; }
.ps-community-guide .ps-guide-head { display:flex; justify-content:space-between; align-items:flex-end; gap:32px; margin:0 0 30px; }
.ps-community-guide .ps-guide-overline {
  display:flex; align-items:center; gap:10px; color:#315a76; font-size:12px; font-weight:750;
  text-transform:uppercase; letter-spacing:.13em; margin:0 0 10px;
}
.ps-guide-overline::before { content:""; width:27px; height:7px; background:linear-gradient(90deg,#ffda53 0 30%,transparent 30% 37%,#009aca 37% 66%,transparent 66% 73%,#e62631 73%); transform:skew(-18deg); }
#ps-guide-title { margin:0; color:#122e47; font:800 clamp(36px,4vw,60px)/1.08 Poppins,Inter,system-ui,sans-serif; letter-spacing:-.055em; text-transform:none; }
#ps-guide-title em { font-style:normal; color:#176399; }
.ps-guide-head > div > p:last-child { max-width:64ch; margin:14px 0 0; color:#415b70; font-size:17px; line-height:1.58; }
.ps-community-guide a { text-decoration:none!important; }
.ps-community-guide a:focus-visible { outline:3px solid #0878ad; outline-offset:4px; }
.ps-community-guide .ps-guide-start { display:inline-flex; flex-shrink:0; gap:18px; align-items:center; justify-content:center; margin-bottom:4px; padding:13px 21px; min-height:48px; border-radius:28px; background:var(--gold); color:var(--ink); font-size:15px; font-weight:750; border:1px solid #e9c644; box-shadow:0 2px 0 #162e47; }
.ps-community-guide .ps-guide-start:hover { background:#ffe77d; color:var(--ink); }
.ps-guide-body { display:grid; grid-template-columns:minmax(240px,.86fr) minmax(0,1.64fr); gap:clamp(20px,3.2vw,48px); }
.ps-guide-feature { display:flex; flex-direction:column; position:relative; overflow:hidden; border-radius:18px; background:var(--ink); border:1px solid #173c59; }
.ps-guide-art { flex:1; min-height:180px; position:relative; isolation:isolate; display:grid; place-items:center; overflow:hidden; background:var(--sky); }
.ps-guide-art::before { content:""; position:absolute; inset:0; z-index:-1; background:radial-gradient(#6b9bb7 .8px,transparent 1px) 0 0 / 6px 6px; clip-path:polygon(55% 0,100% 0,100% 100%,82% 100%); }
.ps-guide-art::after { content:""; position:absolute; z-index:-1; inset:0; background:#ffdd64; clip-path:polygon(0 86%,100% 60%,100% 79%,0 100%); }
.ps-guide-badge { position:absolute; top:16px; left:16px; z-index:1; border:1px solid #b2cddd; border-radius:30px; padding:4px 10px; font-size:10px; font-weight:750; line-height:1.45; letter-spacing:.1em; text-transform:uppercase; color:#193b54; background:#fff; }
.ps-guide-art img { position:relative; display:block; width:75%; max-width:330px; height:auto; margin:43px 0 12px; transform:rotate(-5deg); }
.ps-guide-caption { display:flex; justify-content:space-between; align-items:center; gap:12px; padding:16px 20px; background:var(--ink); color:white; }
.ps-guide-caption small,.ps-guide-caption strong { display:block; }
.ps-guide-caption small { color:#c5e3f1; font-size:12px; line-height:1.4; }
.ps-guide-caption strong { font-size:clamp(23px,2.2vw,33px); line-height:1.25; letter-spacing:-.035em; }
.ps-guide-caption > span { display:grid; place-items:center; flex-shrink:0; width:39px; height:39px; border:1px solid #7fa9c3; border-radius:50%; color:var(--gold); font-size:21px; }
.ps-guide-feature:hover .ps-guide-caption > span { background:var(--gold); color:var(--ink); }
.ps-guide-groups { align-self:center; }
.ps-community-guide .ps-guide-groups > h3 { margin:0 0 12px; color:var(--ink); font-size:22px; line-height:1.3; font-weight:750; letter-spacing:-.03em; text-transform:none; }
.ps-guide-groups ul { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); column-gap:clamp(16px,2vw,30px); margin:0; padding:0; list-style:none; }
.ps-guide-groups li { display:flex; align-items:center; gap:12px; border-top:1px solid #d9e5ed; padding:15px 0; margin:0; min-width:0; }
.ps-guide-icon { display:grid; place-items:center; flex:0 0 36px; width:36px; height:36px; background:#edf6fb; color:#215f89; border-radius:10px; }
.ps-guide-icon svg { width:22px; height:24px; }
.ps-community-guide .ps-guide-groups h4 { margin:0; color:var(--ink); font-size:16px; line-height:1.35; font-weight:730; text-transform:none; letter-spacing:-.02em; }
.ps-guide-groups li p,.ps-guide-app p { margin:3px 0 0; color:#465f74; font-size:14px; line-height:1.48; }
.ps-guide-app { display:flex; align-items:center; gap:16px; margin-top:24px; padding:18px 22px; border:1px solid #d3e6f2; border-radius:15px; background:#f1f8fd; }
.ps-guide-app img { display:block; width:48px; height:48px; border-radius:10px; }
.ps-community-guide .ps-guide-app h3 { color:var(--ink); font-size:20px; line-height:1.25; letter-spacing:-.03em; text-transform:none; margin:0; }
.ps-guide-app a { display:inline-flex; align-items:center; gap:12px; min-height:44px; margin-left:auto; color:#135984; font-size:15px; font-weight:700; }
.ps-guide-app a:hover { text-decoration:underline!important; }
@media(max-width:810px) {
  .ps-guide-body { grid-template-columns:minmax(0,.8fr) minmax(0,1.6fr); gap:20px; }
  .ps-guide-groups li { align-items:flex-start; gap:8px; }
  .ps-guide-icon { width:30px; height:30px; flex-basis:30px; }
}
@media(max-width:700px) {
  .ps-community-guide .ps-guide-head { flex-direction:column; align-items:flex-start; gap:16px; margin-bottom:20px; }
  .ps-guide-head > div > p:last-child { font-size:16px; }
  .ps-guide-body { grid-template-columns:minmax(0,1fr); gap:24px; }
  .ps-guide-feature { display:grid; grid-template-columns:minmax(0,1.05fr) minmax(0,1fr); }
  .ps-guide-art { min-height:150px; }
  .ps-guide-art img { width:75%; max-width:190px; margin:35px 0 4px; }
  .ps-guide-caption { flex-direction:column; align-items:flex-start; justify-content:center; gap:8px; padding:16px; }
  .ps-guide-caption > span { width:30px; height:30px; font-size:17px; }
  .ps-guide-groups li { padding:13px 0; }
  .ps-guide-badge { top:10px; left:10px; }
}
@media(max-width:540px) {
  .ps-guide-groups ul { grid-template-columns:1fr; }
  .ps-guide-groups li { align-items:center; gap:12px; padding:10px 0; }
  .ps-guide-app { display:grid; grid-template-columns:44px minmax(0,1fr); gap:4px 12px; padding:13px 16px; }
  .ps-guide-app img { align-self:start; width:44px; height:44px; }
  .ps-guide-app a { grid-column:2; margin:0; justify-self:start; }
}

/* A single ordered path from store request to fulfillment. */
#promospirit-how.ps-launch { background:#f3f8fc; color:#122e47; scroll-margin-top:28px; }
.ps-launch *, .ps-launch *::before, .ps-launch *::after { box-sizing:border-box; }
.ps-launch .ps-launch-layout { display:grid; grid-template-columns:minmax(0,.88fr) minmax(0,1.25fr); align-items:stretch; gap:clamp(26px,4vw,64px); }
.ps-launch-intro { position:relative; isolation:isolate; overflow:hidden; display:flex; flex-direction:column; align-items:flex-start; justify-content:center; padding:clamp(26px,3.2vw,46px); background:#122e47; color:#fff; border-radius:20px; }
.ps-launch-intro::after { content:""; position:absolute; z-index:-1; inset:0; background:radial-gradient(#5a7d93 1px,transparent 1px) 0 0 / 7px 7px; clip-path:polygon(70% 0,100% 0,100% 33%); }
.ps-launch-field { position:absolute; inset:auto 0 0 auto; width:116px; height:56px; z-index:-1; background:repeating-linear-gradient(132deg,transparent 0 9px,#2c536d 9px 12px); clip-path:polygon(100% 0,100% 100%,0 100%); }
.ps-launch-kicker { display:flex; align-items:center; gap:9px; margin:0 0 17px; color:#ceeaf8; font:700 12px/1.4 Poppins,Inter,system-ui,sans-serif; text-transform:uppercase; letter-spacing:.1em; }
.ps-launch-kicker::before { content:""; width:22px; height:6px; flex:0 0 22px; transform:skew(-18deg); background:linear-gradient(90deg,#ffda53 0 29%,transparent 29% 37%,#39b9e3 37% 67%,transparent 67% 75%,#fb5b68 75%); }
#ps-launch-title { margin:0; max-width:14ch; color:white; font:800 clamp(34px,3.6vw,55px)/1.06 Poppins,Inter,system-ui,sans-serif; letter-spacing:-.05em; text-transform:none; }
#ps-launch-title em { display:block; font-style:normal; color:#ffda53; }
.ps-launch-intro .ps-launch-summary { max-width:33ch; color:#dbebf5; margin:17px 0 24px; font:500 16px/1.6 Poppins,Inter,system-ui,sans-serif; }
.ps-launch .ps-launch-cta { display:inline-flex; align-items:center; justify-content:center; gap:18px; min-height:46px; padding:10px 19px; border:1px solid #fff; border-radius:24px; background:white; color:#122e47; font:700 15px/1.4 Poppins,Inter,system-ui,sans-serif; text-decoration:none; }
.ps-launch .ps-launch-cta:hover { background:#deeff9; color:#122e47; }
.ps-launch .ps-launch-cta:focus-visible { outline:3px solid #ffda53; outline-offset:4px; }
.ps-launch ol.ps-launch-steps { margin:0; padding:0; list-style:none; align-self:center; }
.ps-launch-steps li { display:grid; grid-template-columns:46px minmax(0,1fr); align-items:start; gap:18px; position:relative; margin:0; padding:0 0 0 1px; color:#122e47; }
.ps-launch-steps li:not(:last-child)::before { content:""; position:absolute; top:37px; bottom:-12px; left:23px; border-left:2px solid #b8cedb; }
.ps-launch-number { z-index:1; display:grid; place-items:center; width:46px; height:46px; margin-top:10px; border-radius:50%; border:1px solid #bdd2df; background:#fff; color:#174e73; font:750 15px/1 Poppins,Inter,system-ui,sans-serif; font-variant-numeric:tabular-nums; }
.ps-launch-steps li:first-child .ps-launch-number { color:#fff; background:#122e47; border-color:#122e47; }
.ps-launch-steps li:last-child .ps-launch-number { color:#122e47; background:#ffda53; border-color:#f1cb43; }
.ps-launch-steps li > div { padding:10px 0 14px; }
.ps-launch-steps li:not(:last-child) > div { border-bottom:1px solid #d3e2ec; }
.ps-launch .ps-launch-steps h3 { margin:0; color:#122e47; text-transform:none; font:750 clamp(18px,1.45vw,22px)/1.3 Poppins,Inter,system-ui,sans-serif; letter-spacing:-.025em; }
.ps-launch .ps-launch-steps p { margin:4px 0 0; color:#405b70; max-width:54ch; font:500 15px/1.55 Poppins,Inter,system-ui,sans-serif; }
@media(max-width:760px) {
  .ps-launch .ps-launch-layout { grid-template-columns:minmax(0,1fr); gap:18px; }
  .ps-launch-intro { padding:26px; }
  .ps-launch-kicker { margin-bottom:9px; }
  #ps-launch-title { max-width:none; }
  #ps-launch-title em { display:inline-block; }
  .ps-launch-intro .ps-launch-summary { max-width:50ch; margin:12px 0 17px; }
  .ps-launch-steps li { gap:14px; }
}
@media(max-width:420px) {
  .ps-launch-intro { padding:23px 20px; border-radius:16px; }
  .ps-launch-steps li { grid-template-columns:38px minmax(0,1fr); gap:12px; }
  .ps-launch-number { width:38px; height:38px; font-size:13px; }
  .ps-launch-steps li:not(:last-child)::before { left:19px; }
}
