.ptn-page{--ptn-tile:#7c3aed06;--ptn-hover:#7c3aed0d;--ptn-line-hover:hsl(var(--expanso-violet-300));--ptn-rule:hsl(var(--expanso-violet-300))}.dark .ptn-page{--ptn-tile:#ffffff07;--ptn-hover:#ffffff0d;--ptn-line-hover:hsl(var(--expanso-violet-400) / .5);--ptn-rule:hsl(var(--expanso-violet-400) / .45)}.ptn-hero{position:relative;overflow:hidden}.ptn-hero-inner{max-width:var(--container-site);padding:calc(4rem + clamp(46px, 7vw, 70px)) var(--site-gutter) clamp(24px, 3vw, 34px);margin:0 auto;position:relative}.ptn-h1{text-wrap:balance;max-width:26ch;margin:0 0 16px}.ptn-sub{max-width:62ch;font-size:var(--type-body-size);line-height:var(--type-body-leading);color:var(--muted-foreground);text-wrap:pretty;margin:0}.ptn-body{max-width:var(--container-site);padding:clamp(14px, 2vw, 22px) var(--site-gutter) 0;margin:0 auto}.ptn-section{border-top:1px solid var(--border)}.ptn-group{grid-template-columns:minmax(0,4fr) minmax(0,8fr);align-items:start;gap:48px;padding:clamp(30px,4vw,52px) 0 clamp(36px,4.5vw,60px);display:grid}.ptn-group-h2{text-wrap:balance;margin:0 0 12px}.ptn-group-intro{max-width:30ch;font-size:var(--type-body-size);line-height:var(--type-body-leading);color:var(--muted-foreground);text-wrap:pretty;margin:0}.ptn-grid{border:1px solid var(--border);background:var(--border);border-radius:.45rem;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;margin:0;padding:0;list-style:none;display:grid;overflow:hidden}.ptn-grid>li{min-width:0;display:flex}.ptn-cell,.ptn-fill{background-color:var(--background);background-image:linear-gradient(var(--ptn-tile), var(--ptn-tile))}.ptn-cell{box-sizing:border-box;min-width:0;min-height:148px;color:var(--foreground);border-radius:var(--ptn-tl,0) var(--ptn-tr,0) var(--ptn-br,0) var(--ptn-bl,0);flex-direction:column;flex:1;padding:18px;text-decoration:none;display:flex}.ptn-grid>li:first-child>.ptn-cell{--ptn-tl:calc(.45rem - 1px)}.ptn-grid>li:nth-child(2)>.ptn-cell{--ptn-tr:calc(.45rem - 1px)}.ptn-grid>li:nth-last-child(2)>.ptn-cell{--ptn-bl:calc(.45rem - 1px)}.ptn-grid>li:last-child>.ptn-cell{--ptn-br:calc(.45rem - 1px)}.ptn-cell-mark{flex:1;justify-content:center;align-items:center;min-height:0;display:flex}.ptn-logo{--ptn-logo-scale:1.4;max-width:100%;width:calc(var(--w) * var(--ptn-logo-scale) * 1px);height:calc(var(--h) * var(--ptn-logo-scale) * 1px);background-color:var(--muted-foreground);-webkit-mask:var(--src) center / contain no-repeat;mask:var(--src) center / contain no-repeat;display:block}.ptn-cell-foot{justify-content:space-between;align-items:flex-end;gap:10px;min-height:40px;display:flex}.ptn-cell-name{min-width:0;font-size:var(--type-body-sm-size);line-height:var(--type-body-sm-leading);letter-spacing:var(--type-body-sm-tracking);text-wrap:pretty;overflow-wrap:anywhere;font-weight:600}.ptn-cell-arrow{color:var(--ind-accent);flex:none;display:flex}.ptn-cell-arrow svg{transition:transform .26s var(--ease-out-quart)}a.ptn-cell{outline-offset:-1px;outline:1px solid #0000;transition:outline-color .22s}a.ptn-cell:hover{background-image:linear-gradient(var(--ptn-hover), var(--ptn-hover));outline-color:var(--ptn-line-hover)}a.ptn-cell:hover .ptn-cell-arrow--internal svg{transform:translate(4px)}a.ptn-cell:hover .ptn-cell-arrow--external svg{transform:translate(3px,-3px)}.ind-page a.ptn-cell:focus-visible{outline:2px solid var(--ind-accent);outline-offset:-2px;border-radius:var(--ptn-tl,0) var(--ptn-tr,0) var(--ptn-br,0) var(--ptn-bl,0)}@media (forced-colors:active){.ptn-grid{forced-color-adjust:none;background:canvastext;border-color:canvastext}.ptn-grid>li{forced-color-adjust:auto}.ptn-logo{forced-color-adjust:none;background-color:canvastext}a.ptn-cell{outline-style:none}a.ptn-cell:hover,.ind-page a.ptn-cell:focus-visible{outline-style:solid}}.ptn-why{padding:clamp(34px,5vw,52px) 0 clamp(40px,5vw,56px)}.ptn-h2{text-wrap:balance;max-width:22ch;margin:0 0 14px}.ptn-lead{font-size:var(--type-body-size);line-height:var(--type-body-leading);color:var(--muted-foreground);text-wrap:pretty;margin:0 0 clamp(28px,4vw,42px)}.ptn-reasons{grid-template-columns:repeat(3,1fr);gap:clamp(24px,3vw,36px);display:grid}.ptn-reason{border-top:1px solid var(--ptn-rule);padding-top:20px}.ptn-reason-index{font-family:var(--font-mono);font-size:var(--type-caption-size);letter-spacing:.14em;line-height:var(--type-caption-leading);color:var(--ind-accent);margin-bottom:12px;display:block}.ptn-reason-title{margin:0 0 10px}.ptn-reason-body{font-size:var(--type-body-sm-size);line-height:var(--type-body-sm-leading);color:var(--muted-foreground);text-wrap:pretty;margin:0}.ptn-cta{border-top:1px solid var(--border);position:relative;overflow:hidden}.ptn-cta-vignette{background:radial-gradient(60% 120% at 50% 50%, transparent, var(--background) 85%);position:absolute;inset:0}.ptn-cta-inner{max-width:var(--container-site);padding:clamp(48px, 7vw, 72px) var(--site-gutter);text-align:center;flex-direction:column;align-items:center;margin:0 auto;display:flex;position:relative}.ptn-cta-h2{margin:0 0 12px}.ptn-cta-body{max-width:46ch;font-size:var(--type-body-size);line-height:var(--type-body-leading);color:var(--muted-foreground);text-wrap:pretty;margin:0 0 28px}.ptn-cta-actions{gap:10px;display:flex}@media (width<=900px){.ptn-group{grid-template-columns:minmax(0,1fr);gap:22px}.ptn-reasons{grid-template-columns:1fr}}@media (width<=620px){.ptn-hero-inner{padding-top:calc(4rem + 34px);padding-bottom:22px}.ptn-h1{letter-spacing:-.025em;max-width:none}.ptn-cell{min-height:136px;padding:14px}.ptn-logo{--ptn-logo-scale:calc(1.4 * .72)}.ptn-why{padding:26px 0 30px}.ptn-reasons{gap:22px}.ptn-reason-head{align-items:baseline;gap:10px;display:flex}.ptn-reason-index{flex:none;margin-bottom:0}.ptn-reason-title{margin-bottom:6px}.ptn-cta-inner{padding-top:40px;padding-bottom:40px}.ptn-cta-actions{flex-direction:column;align-items:stretch;width:100%}.ptn-cta-actions a{width:100%}}@media (prefers-reduced-motion:reduce){a.ptn-cell,.ptn-cell-arrow svg{transition:none}a.ptn-cell:hover .ptn-cell-arrow svg{transform:none}}
