/* ── PAGE HERO ───────────────────────────────────────────── */
.page-hero{padding:5rem 0 4rem;background:var(--paper-2);position:relative;overflow:hidden}
.page-hero::before{content:'';position:absolute;top:-80px;right:-80px;width:500px;height:500px;border-radius:50%;background:rgba(47,74,199,0.05);pointer-events:none}
.page-hero-inner{position:relative;z-index:1}
.page-hero-eyebrow{display:flex;align-items:center;gap:12px;margin-bottom:1.5rem;opacity:0;animation:riseIn 0.6s ease 0.1s forwards}
.page-hero-eyebrow-line{width:28px;height:1px;background:var(--blue)}
.page-hero h1{font-size:clamp(2.6rem,4.5vw,4.5rem);margin-bottom:1.5rem;opacity:0;animation:riseIn 0.6s ease 0.2s forwards}
.page-hero h1 em{font-style:italic;color:var(--blue)}
.page-hero-sub{font-size:1.05rem;color:var(--ink-2);line-height:1.8;max-width:620px;opacity:0;animation:riseIn 0.6s ease 0.3s forwards}

/* ── FILTER TABS ─────────────────────────────────────────── */
.partner-filter{padding:2rem 0 0;background:var(--paper);border-bottom:1px solid var(--paper-3)}
.partner-filter-inner{max-width:var(--max);margin:0 auto;padding:0 2.5rem;display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.pf-btn{font-size:0.82rem;font-weight:500;padding:7px 16px;border-radius:999px;border:1px solid var(--paper-3);background:transparent;color:var(--ink-2);cursor:pointer;transition:all 0.15s;margin-bottom:1rem}
.pf-btn:hover{border-color:var(--ink-3);color:var(--ink)}
.pf-btn.active{background:var(--blue);color:#fff;border-color:var(--blue)}

/* ── PARTNER GRID ────────────────────────────────────────── */
.partners-section{padding:4rem 0 6rem;background:var(--paper)}
.partners-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem;margin-top:0.5rem}

.partner-card{border:1px solid var(--paper-3);border-radius:var(--r-lg);background:var(--paper);transition:all 0.2s;display:flex;flex-direction:column;overflow:hidden}
.partner-card:hover{border-color:var(--blue);box-shadow:0 8px 32px rgba(47,74,199,0.09);transform:translateY(-2px)}
.partner-card.hidden{display:none}

.partner-card-header{padding:1.75rem 1.75rem 1.25rem;border-bottom:1px solid var(--paper-3);display:flex;align-items:center;gap:1.25rem}
.partner-logo-wrap{width:56px;height:56px;border-radius:var(--r-lg);border:1px solid var(--paper-3);display:flex;align-items:center;justify-content:center;flex-shrink:0;background:var(--paper);overflow:hidden;padding:6px}
.partner-logo-wrap img{width:100%;height:100%;object-fit:contain}
.partner-logo-placeholder{width:56px;height:56px;border-radius:var(--r-lg);display:flex;align-items:center;justify-content:center;flex-shrink:0;font-family:var(--serif);font-weight:900;font-size:1.2rem;color:var(--blue);background:var(--blue-pale)}
.partner-header-text{}
.partner-name{font-family:var(--serif);font-weight:700;font-size:1.05rem;color:var(--heading);margin-bottom:3px;line-height:1.2}
.partner-type-badge{font-size:0.62rem;font-weight:500;letter-spacing:0.07em;text-transform:uppercase;padding:2px 8px;border-radius:999px;white-space:nowrap;display:inline-block}
.badge-integrator{background:var(--blue-pale);color:var(--blue)}
.badge-implementation{background:var(--teal-pale);color:var(--teal)}
.badge-technology{background:var(--forest-pale);color:var(--forest)}
.badge-reseller{background:var(--amber-pale);color:var(--amber)}

.partner-card-body{padding:1.25rem 1.75rem;flex:1}
.partner-desc{font-size:0.85rem;color:var(--ink-2);line-height:1.75;margin-bottom:1rem}
.partner-tags{display:flex;flex-wrap:wrap;gap:6px}
.partner-tag{font-size:0.68rem;font-weight:500;padding:3px 9px;border-radius:999px;background:var(--paper-2);color:var(--ink-2);border:1px solid var(--paper-3)}

.partner-card-footer{padding:1rem 1.75rem;border-top:1px solid var(--paper-3);display:flex;align-items:center;justify-content:space-between}
.partner-website{font-size:0.78rem;color:var(--ink-3);display:flex;align-items:center;gap:4px;transition:color 0.15s}
.partner-website:hover{color:var(--blue)}
.partner-website svg{flex-shrink:0}
.partner-contact{font-size:0.78rem;font-weight:500;color:var(--blue);display:flex;align-items:center;gap:4px;cursor:pointer;background:none;border:none;padding:0;transition:gap 0.15s}
.partner-contact:hover{gap:7px}

/* ── BECOME A PARTNER CTA ────────────────────────────────── */
.partner-cta{background:var(--night);padding:6rem 0}
.partner-cta-inner{text-align:center;max-width:640px;margin:0 auto}
.partner-cta h2{font-size:clamp(2rem,3.5vw,3rem);color:#fff;margin-bottom:1.25rem}
.partner-cta h2 em{font-style:italic;color:var(--blue-2)}
.partner-cta p{font-size:1rem;color:rgba(255,255,255,0.65);line-height:1.8;margin-bottom:2.5rem}
.partner-cta-actions{display:flex;justify-content:center;gap:1rem;flex-wrap:wrap}