.ccs{gap:24px;display:grid}@media (width>=1024px){.ccs{grid-template-columns:repeat(3,minmax(0,1fr))}.ccs--2{grid-template-columns:repeat(2,minmax(0,1fr))}}.ccs-card{border:1px solid var(--color-dots-light);background:var(--color-bg);flex-direction:column;transition:border-color .2s,box-shadow .2s;display:flex;position:relative}.ccs-card:hover,.ccs-card:has(:focus-visible){box-shadow:0 16px 40px -24px #1c305e59}.ccs-card__img{aspect-ratio:1200/630;background:var(--color-surface-2);display:block;position:relative;overflow:hidden}.ccs-card__img:after{content:"";background:#dce7ff29;position:absolute;inset:0}.ccs-card__img img{top:calc(-100% * var(--band-top,0) / var(--band-h,1));width:100%;height:calc(100% / var(--band-h,1));object-fit:cover;transition:scale .5s cubic-bezier(.2,.7,.2,1);position:absolute;left:0}.ccs-card:hover .ccs-card__img img{scale:1.03}.ccs-card__b{flex-direction:column;flex:1;padding:24px 24px 28px;display:flex}@media (width>=1024px){.ccs-card__b{padding:36px}}.ccs-card__meta{font:14px/20px var(--font-sans);color:var(--color-muted);flex-wrap:wrap;align-items:baseline;gap:4px 12px;display:flex}.ccs-card__meta b{font:500 16px/22px var(--font-display);color:var(--color-fg-strong)}.ccs-card__v{gap:6px;margin-top:24px;display:grid}.ccs-card__num{font:300 clamp(2.25rem, 3.34vw, 48px) / 1.06 var(--font-display);letter-spacing:-.03em;white-space:nowrap;color:var(--color-fg)}.ccs-card__vl{font:14px/20px var(--font-sans);color:var(--color-muted)}.ccs-card__t{border-top:1px solid var(--color-dots-light);font:400 20px/28px var(--font-display);color:var(--color-fg);text-wrap:pretty;margin-top:24px;padding-top:24px}.ccs-card.is-novalue .ccs-card__t{margin-top:20px}.ccs-card__a{transition:color .15s}.ccs-card__a:after{content:"";z-index:1;position:absolute;inset:0}.ccs-card__a:focus-visible{outline:none}.ccs-card:hover .ccs-card__a{color:var(--color-accent-ink)}.ccs-nw{white-space:nowrap}.ccs-card__chips{flex-wrap:wrap;gap:6px;margin-top:24px;display:flex}.ccs-card__chips li{border:1px solid var(--color-line);border-radius:var(--radius-pill);font:12px/16px var(--font-sans);color:var(--color-fg);padding:3px 10px}.ccs-card__more{width:fit-content;font:500 14px/20px var(--font-sans);color:var(--color-accent-ink);align-items:center;gap:10px;margin-top:auto;padding-top:24px;display:inline-flex}@media (prefers-reduced-motion:reduce){.ccs-card,.ccs-card__img img{transition:none}.ccs-card:hover .ccs-card__img img{scale:none}}.ps-tm__cols[data-astro-cid-iqa4alze]{display:none}.ps-tm[data-astro-cid-iqa4alze]{border-top:1px solid var(--color-line)}.ps-tm__r[data-astro-cid-iqa4alze]{border-bottom:1px solid var(--color-line);gap:4px;padding:20px 0;display:grid}.ps-tm__term[data-astro-cid-iqa4alze]{font:300 28px/34px var(--font-display);color:var(--color-fg)}.ps-tm__logo[data-astro-cid-iqa4alze]{display:none}.ps-tm__proj[data-astro-cid-iqa4alze]{font:400 18px/26px var(--font-display);color:var(--color-fg)}.ps-tm__text[data-astro-cid-iqa4alze]{font:400 14px/20px var(--font-sans);color:var(--color-muted)}.ps-tm__note[data-astro-cid-iqa4alze]{font:400 14px/24px var(--font-sans);color:var(--color-muted);grid-template-columns:24px minmax(0,1fr);align-items:start;column-gap:8px;display:grid}.ps-tm__note[data-astro-cid-iqa4alze]>[data-astro-cid-iqa4alze]:first-child{color:var(--color-fg)}@media (width>=1024px){.ps-tm__cols[data-astro-cid-iqa4alze],.ps-tm__r[data-astro-cid-iqa4alze]{grid-template-columns:minmax(0,318fr) minmax(0,122fr) minmax(0,341fr) minmax(0,419fr);column-gap:0;display:grid}.ps-tm__cols[data-astro-cid-iqa4alze]{font:400 12px/18px var(--font-sans);color:var(--color-accent-ink)}.ps-tm__r[data-astro-cid-iqa4alze]{align-items:center;min-height:120px;padding:0}.ps-tm__term[data-astro-cid-iqa4alze]{font-size:36px;line-height:40px}.ps-tm__logo[data-astro-cid-iqa4alze]{color:var(--color-on-dark-muted);justify-content:center;display:flex}}.ps-st__i[data-astro-cid-iqa4alze]{border-left:1px solid var(--color-on-dark-muted-2);border-right:1px solid var(--color-on-dark-muted-2);border-bottom:1px solid var(--color-on-dark-muted-2);align-content:start;padding:24px 20px 32px;display:grid;position:relative}.ps-st__n[data-astro-cid-iqa4alze]{font:14px/20px var(--font-sans);color:var(--color-accent-ink);align-items:center;gap:16px;margin-left:-21px;display:flex}.ps-st__n[data-astro-cid-iqa4alze]:before{content:"";background:var(--color-accent);width:12px;height:12px}.ps-dot[data-astro-cid-iqa4alze]{background:var(--color-on-dark-muted-2);border-radius:50%;width:4px;height:4px;display:none}@media (width>=640px){.ps-dot[data-astro-cid-iqa4alze]{display:block}.ps-st__i[data-astro-cid-iqa4alze]:nth-child(2n){border-left:0}}@media (width>=1024px){.ps-st[data-astro-cid-iqa4alze]{min-height:260px}.ps-st__i[data-astro-cid-iqa4alze]{border-right:0}.ps-st__i[data-astro-cid-iqa4alze]:nth-child(2n){border-left:1px solid var(--color-on-dark-muted-2)}.ps-st__i[data-astro-cid-iqa4alze]:last-child{border-right:1px solid var(--color-on-dark-muted-2)}}.ip-btn{border-radius:var(--radius-md);min-width:220px;height:60px;font:500 20px/26px var(--font-display);place-items:center;padding:0 24px;transition:background-color .15s,border-color .15s,color .15s;display:inline-grid}.ip-btn--primary{background:var(--color-accent);color:var(--color-accent-fg)}.ip-btn--primary:hover{background:var(--color-cyan)}.ip-btn--ghost{border:1px solid var(--color-blue-muted);color:var(--color-blue-muted);backdrop-filter:blur(4px);background:#202a4033;font-weight:400}.ip-btn--ghost:hover{border-color:var(--color-primary);color:var(--color-primary)}.ip-logo{height:var(--h,40px)}@media (width<=639px){.ip-logo{height:calc(var(--h,40px) * .7)}}a.client.ip-client:hover,a.client.ip-client:focus-visible{color:var(--color-fg)}@media (width<=1023px){.ip-client .client__tip{display:none}}.ip-client .client__tip{background:var(--color-bg);color:var(--color-fg);box-shadow:0 8px 24px -8px #1c305e2e, 0 0 0 1px var(--color-line)}.ip-link{font:500 16px/22px var(--font-display);color:var(--color-accent-ink);transition:color .15s}.ip-link:hover{color:var(--color-accent)}.ip-plink{color:inherit;transition:color .15s}.ip-plink:hover{color:var(--color-accent-ink)}.ip-more{border-top:1px solid var(--color-line);border-left:1px solid var(--color-line);display:grid}@media (width>=640px){.ip-more{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width>=1024px){.ip-more{grid-template-columns:repeat(var(--n,4), minmax(0, 1fr))}}.ip-more__i{border-right:1px solid var(--color-line);border-bottom:1px solid var(--color-line);align-content:start;padding:37px 30px 40px 25px;transition:background-color .15s;display:grid;position:relative}@media (width>=1024px){.ip-more__i{min-height:235px}.ip-more__i:not(:last-child):before,.ip-more__i:not(:last-child):after{content:"";background:var(--color-fg);width:5px;height:5px;position:absolute;right:-3px}.ip-more__i:not(:last-child):before{top:-3px}.ip-more__i:not(:last-child):after{bottom:-3px}}.ip-more__i.is-link:hover{background:var(--color-surface-blue)}.ip-more__a{position:absolute;inset:0}.ip-more__a:focus-visible{outline:2px solid var(--color-accent);outline-offset:-2px}.ip-more__head{justify-content:space-between;align-items:center;gap:12px;height:26px;display:flex}.ip-more__name{font:400 14px/26px var(--font-display);color:var(--color-accent-ink)}.ip-more__mark{color:var(--color-on-dark-muted)}.ip-more__v{min-height:32px;font:400 28px/32px var(--font-display);color:var(--color-fg);margin-top:28px;display:block}.ip-more__t{font:400 16px/22px var(--font-display);color:var(--color-fg);margin-top:6px}.ip-model__logo{height:28px;color:var(--color-fg-soft);align-items:center;display:flex}.ip-model__mark{max-width:150px;height:24px}.ip-card{transition:background-color .2s,box-shadow .2s}.ip-card:hover{background:var(--color-bg);box-shadow:var(--shadow-card);z-index:1;position:relative}.ip-fx{border-top:1px solid var(--color-line);border-left:1px solid var(--color-line);display:grid}.ip-fx__i{border-right:1px solid var(--color-line);border-bottom:1px solid var(--color-line);align-content:start;padding:32px 24px 40px;display:grid}.ip-fx__t{font:400 24px/30px var(--font-display);color:var(--color-fg);margin-top:24px}.ip-fx__p{font:400 16px/22px var(--font-sans);color:var(--color-muted);margin-top:18px}.ip-fx-marks{display:none}@media (width>=640px){.ip-fx{grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:1fr}.ip-fx-marks{display:block}.ip-fx-marks i{z-index:1;background:var(--color-fg);pointer-events:none;position:absolute}.ip-fx-marks i:nth-child(-n+2){width:5px;height:5px;margin-left:-2.5px;left:50%}.ip-fx-marks i:first-child{top:-2px}.ip-fx-marks i:nth-child(2){bottom:-2px}.ip-fx-marks i:nth-child(n+3){width:5px;height:84px;margin-top:-42px;top:50%}.ip-fx-marks i:nth-child(3){left:-2px}.ip-fx-marks i:nth-child(4){right:-2px}}@media (width>=1024px){.ip-fx__i{min-height:524px;padding:59px 50px 63px 49px}.ip-fx__t{margin-top:30px;font-size:32px;line-height:38px}}.ip-src{text-decoration:none}.ip-src sup{vertical-align:super;color:var(--color-accent-ink);font-size:.645em;font-weight:700;line-height:0}.ip-src__l{color:var(--color-ink);transition:color .15s}.ip-src__a,.ip-src:hover .ip-src__l,.ip-src:focus-visible .ip-src__l{color:var(--color-accent-ink)}.ip-sol__cols{display:none}.ip-sol__row{border:1px solid var(--color-line);background:var(--color-bg);border-top:0;gap:12px;padding:28px 24px;display:grid;position:relative}.ip-sol__row:first-of-type{border-top:1px solid var(--color-line)}.ip-sol__row:not(:first-of-type):before,.ip-sol__row:not(:first-of-type):after{content:"";background:var(--color-fg);width:5px;height:5px;position:absolute;top:-3px}.ip-sol__row:not(:first-of-type):before{left:-3px}.ip-sol__row:not(:first-of-type):after{right:-3px}.ip-sol__t{font:400 18px/26px var(--font-display);color:var(--color-fg)}.ip-sol__p{font:400 14px/20px var(--font-sans);color:var(--color-muted);position:relative}.ip-sol__c{flex-wrap:wrap;gap:4px;max-width:250px;display:flex}@media (width>=1024px){.ip-sol__cols,.ip-sol__row{grid-template-columns:minmax(0,250fr) minmax(0,600fr) minmax(0,270fr);column-gap:0}.ip-sol__cols{font:400 12px/18px var(--font-sans);color:var(--color-accent-ink);padding:0 40px;display:grid}.ip-sol__cols>:nth-child(2){padding-left:40px}.ip-sol__cols>:nth-child(3){padding-left:20px}.ip-sol__row{align-items:center;min-height:164px;padding:31px 39px}.ip-sol__p{padding-left:40px}.ip-sol__p:before{content:"";background:var(--color-line);width:1px;height:100px;margin-top:-50px;position:absolute;top:50%;left:0}.ip-sol__c{max-width:270px;padding-left:20px}}.ip-chip{border:1px solid var(--color-line);border-radius:var(--radius-pill);height:28px;font:500 11px/16px var(--font-display);color:var(--color-accent-ink);white-space:nowrap;align-items:center;padding:0 17px;transition:border-color .15s,color .15s;display:inline-flex}.ip-chip:hover,.ip-chip:focus-visible{border-color:var(--color-accent)}.ip-note{color:var(--color-fg);grid-template-columns:24px minmax(0,1fr);align-items:start;column-gap:8px;display:grid}.ip-note__a{font:500 16px/24px var(--font-sans);color:var(--color-accent-ink);white-space:nowrap;margin-left:16px;transition:color .15s}.ip-note__a>span{text-align:right;width:18px;margin-left:8px;font-size:18px;display:inline-block}.ip-note__a:hover{color:var(--color-accent)}
