/* Solutions: The foundation (Vanilla Cloud services) with the Plus layer on top */
.fd-in{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:clamp(32px,5vw,88px);align-items:start}
.fd-side{position:sticky;top:calc(var(--tb,36px) + 104px);display:grid;gap:20px;justify-items:start}
.fd-side .h-1{margin:0;font-size:clamp(38px,4vw,56px);line-height:1.05;letter-spacing:-.025em}
.fd-side .lede{margin:0;max-width:40ch}
.fd-brand{display:flex;align-items:center;gap:18px;padding:14px 20px 14px 16px;border-radius:18px;background:#F5F7FB;border:1px solid rgba(11,20,48,.06)}
.fd-brand img{height:40px;width:auto}
.fd-brand span{padding-left:18px;border-left:1px solid rgba(11,20,48,.12);font:600 14px/1.3 var(--f-display);color:#5B6889}
.fd-brand b{display:block;font-size:20px;color:#0B1430;letter-spacing:-.01em}
/* stack */
.fd-stack{position:relative;display:grid;gap:14px}
.fd-plus{position:relative;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:18px;padding:20px 22px;border-radius:20px;background:linear-gradient(135deg,#1C2F5F 0%,#0B1430 75%);color:#fff;text-decoration:none;overflow:hidden;box-shadow:0 26px 50px -30px rgba(11,20,48,.75),inset 0 1px 0 rgba(255,255,255,.08);transition:transform .45s var(--ease),box-shadow .45s var(--ease)}
.fd-plus::before{content:"";position:absolute;inset:0;background:radial-gradient(60% 120% at 100% 0%,rgba(116,194,45,.22),transparent 60%);pointer-events:none}
.fd-plus:hover{transform:translateY(-2px);box-shadow:0 32px 60px -30px rgba(11,20,48,.85),inset 0 1px 0 rgba(255,255,255,.08)}
.fd-pm{position:relative;width:40px;height:40px;border-radius:30%;background:linear-gradient(135deg,#B8EB4F,#5CCB33);box-shadow:0 0 24px rgba(146,214,60,.45)}
.fd-pm::before,.fd-pm::after{content:"";position:absolute;left:50%;top:50%;width:50%;height:13%;border-radius:2px;background:#0B1430;transform:translate(-50%,-50%)}
.fd-pm::after{transform:translate(-50%,-50%) rotate(90deg)}
.fd-pt{position:relative;display:grid;gap:5px}
.fd-pt small{font:600 12px/1 var(--f-display);letter-spacing:.18em;text-transform:uppercase;color:#A9C2EE}
.fd-pt b{font:600 16px/1.4 var(--f-display);color:#fff}
.fd-pa{position:relative;display:grid;place-items:center;width:36px;height:36px;border-radius:50%;background:rgba(255,255,255,.08);color:#92D63C}
.fd-pa svg{width:16px;height:16px;transform:rotate(90deg)}
/* the join between Plus and the foundation */
.fd-list{list-style:none;margin:0;padding:0;display:grid;gap:10px;position:relative}
.fd-list::before{content:"";position:absolute;left:47px;top:-14px;height:14px;width:2px;background:linear-gradient(#74C22D,#3C63B8)}
.fd-s{position:relative;display:grid;grid-template-columns:52px minmax(0,1fr) auto auto;align-items:center;gap:18px;padding:18px 18px 18px 22px;border-radius:18px;background:#fff;border:1px solid rgba(11,20,48,.08);box-shadow:0 1px 0 #fff inset,0 5px 0 -1px #E6ECF6,0 6px 0 -1px rgba(11,20,48,.06),0 20px 34px -26px rgba(28,47,95,.35);transition:transform .45s var(--ease),box-shadow .45s var(--ease),border-color .35s}
.fd-s:hover{transform:translateY(-3px);border-color:rgba(116,194,45,.45);box-shadow:0 1px 0 #fff inset,0 5px 0 -1px #DCEFC7,0 6px 0 -1px rgba(116,194,45,.25),0 26px 40px -24px rgba(28,47,95,.4)}
.fd-ic{display:grid;place-items:center;width:52px;height:52px;border-radius:50%;background:radial-gradient(circle at 35% 28%,#fff,#EEF3FA 75%);border:1px solid rgba(60,99,184,.22);color:#3C63B8;transition:color .35s,border-color .35s}
.fd-ic svg{width:24px;height:24px}
.fd-s:hover .fd-ic{color:#1E9C6B;border-color:rgba(30,156,107,.4)}
.fd-t h3{margin:0;font:600 18px/1.25 var(--f-display);color:#0B1430}
.fd-t p{margin:4px 0 0;font-size:15px;line-height:1.55;color:var(--d-mid)}
.fd-logos{display:flex;align-items:center;gap:14px}
.fd-logos img{height:24px;width:auto;max-width:72px;object-fit:contain;filter:grayscale(1);opacity:.7;transition:filter .35s,opacity .35s}
.fd-s:hover .fd-logos img{filter:none;opacity:1}
.fd-go{display:grid;place-items:center;width:38px;height:38px;border-radius:50%;background:#F5F7FB;color:#1C2F5F;transition:background .3s,color .3s}
.fd-go svg{width:16px;height:16px}
.fd-go:hover,.fd-go:focus-visible{background:#0B1430;color:#92D63C}
.fd-go:focus-visible,.fd-plus:focus-visible{outline:2px solid #3C63B8;outline-offset:3px}
/* build the stack from the bottom up when it comes into view */
.fd-stack[data-in] .fd-s,.fd-stack[data-in] .fd-plus{opacity:0;transform:translateY(-14px)}
.fd-stack.is-in .fd-s,.fd-stack.is-in .fd-plus{opacity:1;transform:none;transition:opacity .55s ease,transform .7s cubic-bezier(.2,.8,.2,1),box-shadow .45s var(--ease),border-color .35s}
.fd-stack.is-in .fd-s{transition-delay:calc(var(--i) * 90ms),calc(var(--i) * 90ms),0s,0s}
.fd-stack.is-in .fd-plus{transition-delay:.62s,.62s,0s}
.fd-stack.is-in .fd-s:hover{transform:translateY(-3px);transition-delay:0s}
.fd-stack.is-in .fd-plus:hover{transform:translateY(-2px);transition-delay:0s}
@media (max-width:1023px){.fd-in{grid-template-columns:1fr}.fd-side{position:static}}
@media (max-width:640px){
  .fd-s{grid-template-columns:44px minmax(0,1fr) auto;gap:14px;padding:16px}
  .fd-ic{width:44px;height:44px}.fd-ic svg{width:21px;height:21px}
  .fd-logos{grid-column:2/-1;grid-row:2;gap:12px}.fd-logos img{height:20px}
  .fd-go{grid-column:3;grid-row:1}
  .fd-list::before{left:37px}
  .fd-plus{grid-template-columns:auto 1fr;padding:18px}.fd-pa{display:none}
  .fd-pt b{font-size:15px}
  .fd-brand{padding:12px 16px 12px 12px}
}
@media (prefers-reduced-motion:reduce){.fd *{transition:none !important}.fd-stack[data-in] .fd-s,.fd-stack[data-in] .fd-plus{opacity:1;transform:none}}
.fd-logos img{filter:none;opacity:.85}
/* m-floor:start (generated by scripts/gen_mfloor.py) */
@media (max-width:760px){.fd-pt small{font-size:max(14px, 12px)}}
/* m-floor:end */
