.pf{--pf-max:1180px;background:var(--bg);color:var(--ink);font-size:16px;overflow-x:clip}html:has(.pf){scroll-behavior:smooth}.pf h1,.pf h2,.pf h3{margin:0;letter-spacing:-.02em;line-height:1.1}.pf p{margin:0}.pf-nav{position:sticky;top:0;z-index:30;display:flex;align-items:center;gap:32px;padding:12px max(24px,calc((100% - var(--pf-max)) / 2));background:color-mix(in srgb,var(--bg) 82%,transparent);backdrop-filter:blur(12px);border-bottom:1px solid var(--line)}.pf-nav img{width:auto;display:block}.pf-nav nav{display:flex;gap:26px;margin-left:auto;font-size:14px;font-weight:600}.pf-nav nav a{position:relative;color:#3b4570}.pf-nav nav a:after{content:"";position:absolute;left:0;right:0;bottom:-4px;height:2px;border-radius:2px;background:var(--leaf);transform:scaleX(0);transition:transform .25s}.pf-nav nav a:hover:after{transform:scaleX(1)}.pf-btn{display:inline-flex;align-items:center;gap:8px;padding:10px 18px;border-radius:999px;background:var(--primary);color:#fff;font-weight:700;font-size:14px;box-shadow:0 6px 18px -6px rgb(36 80 192/55%);transition:transform .2s,box-shadow .2s,background .2s}.pf-btn:hover{transform:translateY(-2px);background:var(--primary-bright);box-shadow:0 12px 26px -8px rgb(36 80 192/60%)}.pf-btn svg{transition:transform .2s}.pf-btn:hover svg{transform:translateX(3px)}.pf-btn.big{padding:14px 24px;font-size:16px}.pf-btn.ghost{background:transparent;color:var(--primary);box-shadow:inset 0 0 0 2px var(--primary)}.pf-btn.ghost:hover{background:var(--mint)}.pf-btn.light{background:#fff;color:var(--primary)}.pf-btn.light:hover{background:#fff8e8}.pf-hero{position:relative;display:grid;grid-template-columns:1.05fr 1fr;align-items:center;gap:40px;max-width:var(--pf-max);margin:auto;padding:72px 24px 96px;min-height:min(88vh,760px)}.pf-blob{position:absolute;z-index:0;border-radius:50%;filter:blur(60px);opacity:.55;animation:pf-drift 14s ease-in-out infinite alternate}.pf-blob.a{width:380px;height:380px;background:#b9d0ff;top:0;right:8%}.pf-blob.b{width:300px;height:300px;background:#bfe9d6;bottom:4%;right:34%;animation-delay:-5s}.pf-blob.c{width:220px;height:220px;background:#ffe2a8;top:18%;left:-4%;animation-delay:-9s}.pf-hero-art,.pf-hero-copy{position:relative;z-index:1}.pf-eyebrow{display:inline-flex;align-items:center;gap:8px;font-size:13px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--leaf)}.pf-eyebrow i{width:8px;height:8px;border-radius:50%;background:var(--leaf);animation:pf-pulse 2s infinite}.pf-hero h1{font-size:clamp(42px,6.4vw,76px);font-weight:800;margin:18px 0 22px;color:var(--ink)}.pf-hero h1 em{font-style:normal;background:linear-gradient(100deg,var(--primary),var(--primary-bright),var(--leaf),var(--primary));background-size:300% 100%;-webkit-background-clip:text;background-clip:text;color:transparent;animation:pf-shine 6s linear infinite}.pf-hero-copy>p{font-size:18px;line-height:1.65;color:#4a5277;max-width:520px}.pf-hero-copy>*{animation:pf-up .8s cubic-bezier(.2,.7,.2,1) both}.pf-hero-copy>:nth-child(2){animation-delay:.1s}.pf-hero-copy>:nth-child(3){animation-delay:.2s}.pf-hero-copy>:nth-child(4){animation-delay:.3s}.pf-cta{display:flex;flex-wrap:wrap;gap:14px;margin-top:34px}.pf-hero-art{display:grid;place-items:center;aspect-ratio:1;animation:pf-pop 1s cubic-bezier(.3,1.4,.5,1) .2s both}.pf-mark{width:78%;height:auto;filter:drop-shadow(0 30px 30px rgb(22 34 74/18%));animation:pf-float 5s ease-in-out infinite}.pf-orbit{position:absolute;inset:6%;border-radius:50%;border:2px dashed rgb(36 80 192/22%);animation:pf-spin 40s linear infinite}.pf-orbit.two{inset:18%;border-color:rgb(79 174 134/30%);animation-duration:28s;animation-direction:reverse}.pf-spark{position:absolute;color:var(--sun);font-size:30px;animation:pf-twinkle 2.4s ease-in-out infinite}.pf-spark.s1{top:10%;left:14%}.pf-spark.s2{top:22%;right:4%;font-size:22px;animation-delay:.8s}.pf-spark.s3{bottom:12%;left:30%;font-size:18px;color:var(--leaf);animation-delay:1.5s}.pf-chip{position:absolute;display:flex;align-items:center;gap:8px;padding:10px 14px;border-radius:14px;background:#fff;font-size:13px;font-weight:700;color:var(--ink);box-shadow:0 14px 30px -12px rgb(22 34 74/28%);animation:pf-bob 4.5s ease-in-out infinite}.pf-chip svg{color:var(--primary)}.pf-chip.c1{top:6%;right:6%}.pf-chip.c2{bottom:22%;left:-2%;animation-delay:-1.5s}.pf-chip.c2 svg{color:var(--leaf)}.pf-chip.c3{bottom:2%;right:4%;animation-delay:-3s}.pf-marquee{overflow:hidden;background:var(--primary);color:#fff;padding:16px 0;transform:rotate(-1.2deg);margin:0 -10px;box-shadow:0 10px 30px -14px rgb(36 80 192/70%)}.pf-marquee>div{display:flex;width:max-content;animation:pf-marquee 30s linear infinite}.pf-marquee span{display:inline-flex;align-items:center;gap:10px;padding:0 34px;font-weight:700;font-size:17px;white-space:nowrap}.pf-marquee svg{color:var(--sun)}.pf-section{max-width:var(--pf-max);margin:auto;padding:110px 24px 0;scroll-margin-top:50px}.pf-section h2{font-size:clamp(30px,4vw,46px);font-weight:800;margin-top:12px;max-width:720px}.pf-head{margin-bottom:44px}[data-reveal]{opacity:0;transform:translateY(28px);transition:opacity .7s,transform .7s cubic-bezier(.2,.7,.2,1)}[data-reveal].in{opacity:1;transform:none}.pf-about{display:grid;grid-template-columns:1fr 1fr;gap:32px 56px}.pf-about-text>p{font-size:17px;line-height:1.7;color:#4a5277}.pf-vm{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:24px}.pf-vm>div{padding:18px;border-radius:16px;background:#fff;border:1px solid var(--line)}.pf-vm b{color:var(--primary)}.pf-vm p{font-size:14px;color:#59617f;margin-top:6px}.pf-stats{grid-column:1/-1;display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-top:16px}.pf-stats>div{padding:26px 22px;border-radius:20px;background:#fff;border:1px solid var(--line)}.pf-stats strong{display:block;font-size:48px;font-weight:800;color:var(--primary);line-height:1}.pf-stats>div:nth-child(2n) strong{color:var(--leaf)}.pf-stats span{font-size:14px;color:#59617f}.pf-route{display:block;width:100%;height:90px;overflow:visible}.pf-route path{fill:none;stroke:var(--primary);stroke-opacity:.35;stroke-width:3;stroke-dasharray:10 10;vector-effect:non-scaling-stroke;animation:pf-dash 1.2s linear infinite}.pf-runner rect{fill:var(--sun);stroke:#fff;stroke-width:3}.pf-steps{list-style:none;padding:0;margin:8px 0 0;display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.pf-steps li{position:relative;padding:28px 22px 24px;border-radius:22px;background:#fff;border:1px solid var(--line)}.pf-steps li>svg{color:var(--primary)}.pf-num{position:absolute;top:-14px;right:18px;width:34px;height:34px;display:grid;place-items:center;border-radius:50%;background:var(--leaf);color:#fff;font-weight:800;box-shadow:0 6px 14px -4px rgb(79 174 134/60%)}.pf-cards h3,.pf-role-grid h3,.pf-steps h3{font-size:19px;margin:14px 0 8px}.pf-cards p,.pf-role-grid p,.pf-steps p{font-size:15px;line-height:1.6;color:#59617f}.pf-cards{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.pf-cards article{padding:26px 22px;border-radius:22px;background:#fff;border:1px solid var(--line);transition:opacity .7s,transform .35s cubic-bezier(.2,.7,.2,1),box-shadow .35s,border-color .35s}.pf-cards article.in:hover{transform:translateY(-8px) rotate(-.6deg);border-color:transparent;box-shadow:0 24px 40px -20px rgb(36 80 192/45%)}.pf-cards article>span{display:grid;place-items:center;width:52px;height:52px;border-radius:16px;background:var(--mint);color:var(--primary);transition:transform .35s}.pf-cards article:hover>span{transform:rotate(-10deg) scale(1.1)}.pf-cards article:nth-child(2)>span{background:#e3f5ec;color:var(--leaf)}.pf-cards article:nth-child(3)>span{background:#fff1d6;color:#c98a10}.pf-role-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.pf-role-grid>div{padding:30px 26px;border-radius:24px;background:linear-gradient(160deg,#fff,var(--mint));border:1px solid var(--line)}.pf-role-grid svg{color:var(--primary)}.pf-band{max-width:calc(var(--pf-max) - 48px);margin:120px auto 0;display:flex;align-items:center;gap:28px;padding:34px 40px;border-radius:32px;color:#fff;background:radial-gradient(circle at 85% 20%,rgb(79 174 134/55%),transparent 45%),linear-gradient(120deg,var(--primary),var(--primary-bright));box-shadow:0 30px 60px -30px rgb(36 80 192/80%)}.pf-band h2{font-size:clamp(24px,3vw,34px);margin:0 0 6px}.pf-band p{color:#fff;opacity:.85}.pf-band .pf-btn{margin-left:auto;flex-shrink:0}.pf-band-mark{height:auto;flex-shrink:0;animation:pf-float 5s ease-in-out infinite}.pf-footer{max-width:var(--pf-max);margin:64px auto 0;padding:32px 24px 40px;display:flex;flex-wrap:wrap;align-items:center;gap:20px;font-size:14px;color:#59617f}.pf-footer img{width:auto}.pf-footer a{padding:8px 0;font-weight:700;color:var(--primary)}.pf-footer span{font-size:13px;color:#59617f}.pf-footer span:last-child{margin-left:auto}@keyframes pf-float{50%{transform:translateY(-16px) rotate(-1.5deg)}}@keyframes pf-bob{50%{transform:translateY(-10px)}}@keyframes pf-spin{to{transform:rotate(1turn)}}@keyframes pf-twinkle{50%{transform:scale(.5) rotate(45deg);opacity:.4}}@keyframes pf-drift{to{transform:translate(40px,-30px) scale(1.15)}}@keyframes pf-shine{to{background-position:300% 0}}@keyframes pf-pulse{0%{box-shadow:0 0 0 0 rgb(79 174 134/60%)}to{box-shadow:0 0 0 10px rgb(79 174 134/0)}}@keyframes pf-up{0%{opacity:0;transform:translateY(24px)}}@keyframes pf-pop{0%{opacity:0;transform:scale(.8)}}@keyframes pf-marquee{to{transform:translateX(-50%)}}@keyframes pf-dash{to{stroke-dashoffset:-20}}@media (max-width:960px){.pf-hero{grid-template-columns:1fr;padding-top:40px;min-height:0}.pf-hero-art{max-width:440px;width:100%;margin:auto}.pf-about,.pf-cards,.pf-role-grid,.pf-stats,.pf-steps{grid-template-columns:1fr 1fr}.pf-nav nav{display:none}.pf-nav .pf-btn{margin-left:auto}}@media (max-width:640px){.pf-about,.pf-cards,.pf-role-grid,.pf-steps,.pf-vm{grid-template-columns:1fr}.pf-steps{gap:26px}.pf-route{display:none}.pf-section{padding:80px 16px 0}.pf-hero{padding:32px 16px 64px}.pf-chip{font-size:11px;padding:8px 10px}.pf-band{flex-direction:column;text-align:center;margin:80px 16px 0;padding:30px 22px}.pf-band .pf-btn{margin:0}.pf-footer span:last-child{margin-left:0}}@media (prefers-reduced-motion:reduce){.pf *,.pf :after,.pf :before{animation:none!important;transition:none!important}html:has(.pf){scroll-behavior:auto}.pf-runner{display:none}[data-reveal]{opacity:1;transform:none}}