.astro-route-announcer{position:absolute;left:0;top:0;clip:rect(0 0 0 0);clip-path:inset(50%);overflow:hidden;white-space:nowrap;width:1px;height:1px}.footer-dock{position:fixed;bottom:0;left:0;width:100%;z-index:9999;transform:translateY(calc(100% - 40px));transition:transform .4s cubic-bezier(.16,1,.3,1);background:var(--navy);box-shadow:0 -15px 40px #0006;padding-top:0;padding-bottom:1rem;padding-bottom:max(1rem,env(safe-area-inset-bottom))}.footer-dock.footer--dark{background:#04293f}.footer-dock.is-open{transform:translateY(0)}@media(hover:hover){.footer-dock:hover{transform:translateY(0)}}.footer-tab{height:40px;display:flex;align-items:center;justify-content:center;color:#fff;font-size:11px;font-weight:800;cursor:pointer;border-top:1px solid rgba(255,255,255,.05);text-transform:uppercase;letter-spacing:1px}.footer-tab-icon{margin-right:8px;font-size:9px;transition:transform .3s}.footer-dock:hover .footer-tab-icon,.footer-dock.is-open .footer-tab-icon{transform:rotate(180deg)}.footer-scroll-area{max-height:calc(100vh - 40px);overflow-y:auto;scrollbar-width:thin}.pp-stats{border-bottom:1px solid var(--border);padding:28px 5%}.pp-stats-inner{max-width:1100px;margin:0 auto;display:flex;justify-content:center;gap:56px;flex-wrap:wrap}.pp-stat{text-align:center}.pp-stat-num{font-size:clamp(28px,3vw,38px);font-weight:800;color:var(--brand, #111827);line-height:1;margin-bottom:6px}.pp-stat-label{font-size:13px;color:#64748b;line-height:1.4}.pp-section{padding:72px 5%}.pp-section-alt{background:#f8fafc}.pp-section-dark{background:var(--navy-slate)}.pp-section-inner{max-width:1100px;margin:0 auto}.pp-section-label,.pp-section-title,.pp-section-sub{text-align:center}.pp-section-label{font-size:11px;font-weight:700;letter-spacing:1.5px;text-transform:uppercase;color:var(--brand, #64748b);margin-bottom:10px;display:block}.pp-section-title{font-size:clamp(24px,2.8vw,36px);font-weight:800;color:#111827;margin-bottom:12px}.pp-section-title--light{color:#fff}.pp-section-sub{font-size:15px;color:#64748b;line-height:1.75;margin-bottom:48px;max-width:700px;margin-left:auto;margin-right:auto}.pp-grid-2{display:grid;grid-template-columns:repeat(2,1fr);gap:24px}.pp-grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.pp-grid-4{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}.pp-card{background:#fff;border:1.5px solid var(--border);border-radius:14px;padding:28px}.pp-card--dark{background:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:14px;padding:28px 22px}.pp-card-icon{font-size:30px;display:block;margin-bottom:14px}.pp-card-num{font-size:clamp(28px,3vw,40px);font-weight:900;color:var(--brand);opacity:.4;display:block;margin-bottom:12px;line-height:1}.pp-card-title{font-size:15px;font-weight:700;color:#111827;margin-bottom:8px;line-height:1.4}.pp-card-title--light{color:#fff}.pp-card-desc{font-size:13px;color:#64748b;line-height:1.7}.pp-card-desc--light{color:#ffffff8c}.pp-testimonial{padding:56px 5%;text-align:center}.pp-testimonial blockquote{max-width:760px;margin:0 auto 20px;font-size:clamp(16px,2vw,24px);color:#fff;line-height:1.65;font-style:italic}.pp-testimonial cite{font-size:13px;font-weight:700;font-style:normal}.pp-testimonial .pp-cite-role{font-size:12px;color:#fff9;margin-top:4px;display:block}@media(max-width:1024px){.pp-grid-3{grid-template-columns:1fr}.pp-grid-4{grid-template-columns:repeat(2,1fr)}.pp-stats-inner{gap:28px}}@media(max-width:768px){.pp-grid-4,.pp-grid-2{grid-template-columns:1fr}}:root{--card-hover-lift: -3px;--card-hover-shadow: 0 8px 24px rgba(0,0,0,.08);--card-hover-accent: var(--brand, var(--navy, #004775));--card-hover-border-soft: rgba(100,116,139,.35);--card-hover-transition: border-color .2s ease, box-shadow .2s ease, transform .2s ease}.card--interactive{transition:var(--card-hover-transition)}.card--interactive:hover,.card--interactive:focus-visible{transform:translateY(var(--card-hover-lift));box-shadow:var(--card-hover-shadow);border-color:var(--card-hover-accent);outline:none}.card--static{transition:border-color .2s ease}.card--static:hover{border-color:var(--card-hover-border-soft)}@media(prefers-reduced-motion:reduce){.card--interactive:hover,.card--interactive:focus-visible{transform:none}}
