.pf-page{--pf-green:var(--accent);--pf-green-hover:#0f6e56;--pf-green-bright:#4ade80;--pf-ink:#1a1c1b;--pf-text-2:#55605b;--pf-text-3:#8a938e;--pf-bullet:#3a423e;--pf-ease:cubic-bezier(.4, 0, .2, 1);color:var(--pf-ink);background:linear-gradient(#fff 0%,#fdfaf3 45%,#fff 100%);position:relative;overflow-x:hidden}.pf-dotgrid{background-image:radial-gradient(var(--pf-green) 1.4px, transparent 1.4px);pointer-events:none;z-index:0;background-size:22px 22px;position:absolute}.pf-dotgrid--a{opacity:.14;width:260px;height:260px;top:92vh;right:-40px}.pf-dotgrid--b{opacity:.1;width:240px;height:300px;top:2100px;left:-50px}.pf-eyebrow{align-items:center;gap:12px;display:flex}.pf-eyebrow-line{background:var(--pf-green);transform-origin:0;width:34px;height:2px;animation:pf-line .7s var(--pf-ease) both;display:block}.pf-eyebrow-label{font-family:var(--font-mono-v3);letter-spacing:.18em;text-transform:uppercase;color:var(--pf-green);font-size:12px}@keyframes pf-line{0%{transform:scaleX(0)}to{transform:scaleX(1)}}.pf-cta{background:var(--pf-green);color:#fff;height:48px;transition:background .2s var(--pf-ease);border-radius:999px;align-items:center;padding:0 26px;font-size:15px;font-weight:600;display:inline-flex;box-shadow:0 2px 8px #1d9e7540}.pf-cta:hover{background:var(--pf-green-hover);color:#fff}.pf-cta--hero{box-shadow:0 2px 8px #1d9e7559}.pf-hero{align-items:flex-end;width:100%;min-height:100vh;margin-top:-84px;display:flex;position:relative;overflow:hidden}.pf-hero-img{object-fit:cover;z-index:0}.pf-hero-overlay-h,.pf-hero-overlay-v{z-index:1;pointer-events:none;position:absolute;inset:0}.pf-hero-overlay-h{background:linear-gradient(90deg,#0c100ed1 0%,#0c100e8c 42%,#0c100e1a 78%,#0c100e00 100%)}.pf-hero-overlay-v{background:linear-gradient(#0c100e00 40%,#0c100e80 100%)}.pf-hero-content{z-index:2;max-width:780px;padding:clamp(28px,5vw,72px) clamp(20px,5vw,80px) clamp(48px,7vw,88px);position:relative}.pf-hero .pf-eyebrow{margin-bottom:22px}.pf-hero .pf-eyebrow-line{background:var(--pf-green-bright)}.pf-hero .pf-eyebrow-label{color:var(--pf-green-bright)}.pf-hero-h1{letter-spacing:-.03em;color:#fff;max-width:15ch;margin:0;font-size:clamp(38px,6vw,78px);font-weight:800;line-height:1.02}.pf-hero-body{color:#ffffffd1;max-width:56ch;margin:24px 0 0;font-size:clamp(15px,1.35vw,19px);line-height:1.6}.pf-hero-actions{flex-wrap:wrap;gap:14px;margin-top:32px;display:flex}.pf-btn-outline-light{color:#fff;height:48px;transition:background .2s var(--pf-ease), border-color .2s var(--pf-ease);border:1px solid #ffffff59;border-radius:999px;align-items:center;padding:0 26px;font-size:15px;font-weight:600;display:inline-flex}.pf-btn-outline-light:hover{color:#fff;background:#ffffff1f;border-color:#fff9}.pf-container{max-width:1240px;margin:0 auto}.pf-intro{z-index:1;padding:clamp(40px,6vw,80px) clamp(20px,5vw,56px) 0;position:relative}.pf-intro .pf-eyebrow{margin-bottom:18px}.pf-intro-h2{letter-spacing:-.02em;margin:0;font-size:clamp(30px,3.6vw,46px);font-weight:700;line-height:1.08}.pf-intro-body{max-width:66ch;color:var(--pf-text-2);margin:18px 0 0;font-size:17px;line-height:1.6}.pf-cases{z-index:1;padding:clamp(36px,5vw,64px) clamp(20px,5vw,56px) clamp(48px,6vw,88px);position:relative}.pf-cases-stack{flex-direction:column;gap:clamp(48px,7vw,104px);max-width:1240px;margin:0 auto;display:flex}.pf-case{grid-template-columns:1.1fr .9fr;align-items:center;gap:clamp(28px,4vw,64px);display:grid}.pf-case--reverse{grid-template-columns:.9fr 1.1fr}.pf-media{order:1}.pf-case-text,.pf-case--reverse .pf-media{order:2}.pf-case--reverse .pf-case-text{order:1}.pf-media-inner{transition:transform .4s var(--pf-ease), box-shadow .4s var(--pf-ease);border-radius:24px;position:relative;overflow:hidden;box-shadow:0 24px 60px -28px #1a1c1b66}.pf-media-inner:hover{transform:translateY(-8px);box-shadow:0 34px 74px -30px #1d9e7566}.pf-media-frame{width:100%;height:clamp(300px,34vw,460px);position:relative}.pf-media-frame img{object-fit:cover}.pf-badge{z-index:2;font-family:var(--font-mono-v3);letter-spacing:.08em;color:#fff;-webkit-backdrop-filter:blur(8px);background:#1a1c1b8c;border-radius:999px;padding:6px 12px;font-size:13px;font-weight:500;position:absolute;top:18px;left:18px}.pf-tag-eyebrow{align-items:center;gap:12px;margin-bottom:16px;display:flex}.pf-tag-eyebrow .pf-eyebrow-line{width:28px}.pf-tag-eyebrow .pf-eyebrow-label{letter-spacing:.16em;font-size:11px}.pf-case-h3{letter-spacing:-.02em;margin:0;font-size:clamp(26px,3vw,38px);font-weight:700;line-height:1.08}.pf-case-desc{color:var(--pf-text-2);margin:16px 0 0;font-size:16px;line-height:1.62}.pf-did{border-top:1px solid #1a1c1b14;margin-top:22px;padding-top:22px}.pf-did-label{font-family:var(--font-mono-v3);letter-spacing:.14em;text-transform:uppercase;color:var(--pf-text-3);font-size:11px}.pf-bullets{flex-direction:column;gap:10px;margin:14px 0 0;padding:0;list-style:none;display:flex}.pf-bullet{color:var(--pf-bullet);align-items:flex-start;gap:12px;font-size:15px;line-height:1.5;display:flex}.pf-dot{background:var(--pf-green);border-radius:999px;flex:none;width:6px;height:6px;margin-top:8px}.pf-band{z-index:1;padding:clamp(20px,4vw,40px) clamp(20px,5vw,56px);position:relative}.pf-band-inner{border-radius:32px;align-items:flex-end;max-width:1240px;min-height:clamp(360px,40vw,480px);margin:0 auto;display:flex;position:relative;overflow:hidden}.pf-band-img{object-fit:cover;z-index:0}.pf-band-overlay{z-index:1;pointer-events:none;background:linear-gradient(105deg,#0f1412e6 0%,#0f14128c 48%,#0f141226 100%);position:absolute;inset:0}.pf-band-content{z-index:2;max-width:640px;padding:clamp(32px,5vw,64px);position:relative}.pf-band .pf-eyebrow{margin-bottom:18px}.pf-band .pf-eyebrow-line{background:var(--pf-green-bright)}.pf-band .pf-eyebrow-label{color:var(--pf-green-bright)}.pf-band-h2{letter-spacing:-.02em;color:#fff;margin:0;font-size:clamp(26px,3.2vw,40px);font-weight:700;line-height:1.12}.pf-band-body{color:#fffc;max-width:52ch;margin:18px 0 28px;font-size:16px;line-height:1.6}@media (max-width:860px){.pf-case,.pf-case--reverse{grid-template-columns:1fr}.pf-media,.pf-case--reverse .pf-media{order:1}.pf-case-text,.pf-case--reverse .pf-case-text{order:2}}@media (prefers-reduced-motion:reduce){.pf-eyebrow-line{animation:none}.pf-media-inner{transition:none}.pf-media-inner:hover{transform:none}}
