/* SAFF Partners Redesign — deliberately scoped to Our Partners. */
body.saff-partners-design-active{overflow-x:clip}
body.saff-partners-design-active .saff-pg,body.saff-partners-design-active .saff-pg *{box-sizing:border-box}
body.saff-partners-design-active .saff-pg{--pg-red:#c51b2d;--pg-deep:#4b101b;--pg-burgundy:#781c2c;--pg-gold:#e5bd72;--pg-ink:#14212b;--pg-muted:#53606b;--pg-cream:#faf7f2;position:relative;left:50%;width:100vw;max-width:100vw;margin-left:-50vw;margin-right:0;isolation:isolate;background:#fff;color:var(--pg-ink);font-family:inherit;line-height:1.65;text-align:left}
.saff-pg .saff-pg-wrap{width:min(1240px,calc(100% - 76px));margin:0 auto}
.saff-pg h1,.saff-pg h2,.saff-pg h3,.saff-pg p{margin-top:0}
.saff-pg h1,.saff-pg h2,.saff-pg h3{font-family:inherit;font-weight:850;letter-spacing:-.036em;line-height:1.13;color:inherit}
.saff-pg h1{font-size:clamp(2.45rem,4.2vw,4.4rem)}
.saff-pg h2{font-size:clamp(2.05rem,3.4vw,3.45rem)}
.saff-pg h3{font-size:clamp(1.4rem,2.2vw,2.1rem)}
.saff-pg p{font-size:1.01rem;line-height:1.65}
.saff-pg a{text-decoration:none}
.saff-pg a:focus-visible{outline:3px solid #e5ba67;outline-offset:4px}
.saff-pg svg{display:inline-block;width:1.15em;height:1.15em;vertical-align:-.12em;flex:none}
.saff-pg .saff-pg-eyebrow{margin:0 0 10px;color:#b41728;font-size:.72rem;letter-spacing:.19em;text-transform:uppercase;font-weight:900;line-height:1.45}
/* Compact subpage masthead; Homepage retains the large photographic hero. */
.saff-pg .saff-pg-banner{position:relative;overflow:hidden;min-height:228px;display:flex;align-items:center;background:radial-gradient(ellipse at 82% 20%,#842534 0,transparent 58%),linear-gradient(110deg,#26151a,#551420 66%,#241920);color:#fff}
.saff-pg .saff-pg-banner-photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.55}
.saff-pg .saff-pg-banner-tint{position:absolute;inset:0;background:linear-gradient(90deg,#240e17f2 0%,#411622de 48%,#4a1b2980 100%)}
.saff-pg .saff-pg-banner:after{content:"";position:absolute;right:3%;bottom:-80px;width:340px;height:340px;border:2px solid #ffffff12;border-radius:50%;box-shadow:0 0 0 75px #ffffff06;pointer-events:none}
.saff-pg .saff-pg-banner-inside{position:relative;z-index:1;display:flex;gap:28px;align-items:center;padding:43px 0 48px}
.saff-pg .saff-pg-banner-stripe{align-self:stretch;width:4px;max-height:130px;background:var(--pg-gold);border-radius:5px;flex:none}
.saff-pg .saff-pg-banner .saff-pg-eyebrow{color:var(--pg-gold)}
.saff-pg .saff-pg-banner h1{color:#fff;margin:0 0 12px}
.saff-pg .saff-pg-banner p:last-child{color:#fff0ef;font-size:1.13rem;max-width:800px;margin:0}
/* Light editorial introduction, icon details like companion plugins. */
.saff-pg .saff-pg-introduction{background:#fff;padding:76px 0 73px}
.saff-pg .saff-pg-intro-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.98fr);gap:66px;align-items:center}
.saff-pg .saff-pg-intro-grid h2{margin:0 0 17px}
.saff-pg .saff-pg-intro-grid>div:first-child>p:last-child{max-width:630px;color:var(--pg-muted);font-size:1.05rem;margin:0}
.saff-pg .saff-pg-intro-icons{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0;align-items:center}
.saff-pg .saff-pg-intro-icons>div{display:flex;min-height:116px;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:15px;padding:11px 8px;border-left:1px solid #e4ded7}
.saff-pg .saff-pg-intro-icons>div:first-child{border-left:0}
.saff-pg .saff-pg-intro-icons svg{width:33px;height:33px;color:#ba1727;stroke-width:1.5}
.saff-pg .saff-pg-intro-icons span{font-size:.78rem;line-height:1.35;color:#39444b;font-weight:750}
/* Tier hierarchy: increased recognition and visual area for higher investments */
.saff-pg .saff-pg-recognition{padding:85px 0 104px;background:linear-gradient(180deg,#faf7f3 0%,#fffaf6 64%,#faf7f3 100%)}
.saff-pg .saff-pg-section-title{text-align:center;margin-bottom:48px}
.saff-pg .saff-pg-section-title h2{margin:0 0 21px}
.saff-pg .saff-pg-rule{width:67px;height:4px;border-radius:5px;background:var(--pg-red);margin:auto}
.saff-pg .saff-pg-premier{position:relative;display:grid;grid-template-columns:.78fr 1.32fr;gap:45px;background:radial-gradient(ellipse at 30% 100%,#82212c85,transparent 70%),linear-gradient(115deg,#280f16,#4c0c19 85%);padding:44px;box-shadow:0 18px 45px #40151d2b;border-radius:17px;border:1px solid #d2aa66;overflow:hidden;color:#fff;margin-bottom:26px}
.saff-pg .saff-pg-premier:before{content:"";position:absolute;top:0;left:0;bottom:0;width:5px;background:var(--pg-gold)}
.saff-pg .saff-pg-premier-copy{position:relative;z-index:1;align-self:center}
.saff-pg .saff-pg-premier-symbol{display:flex;align-items:center;justify-content:center;width:60px;height:60px;margin-bottom:19px;color:var(--pg-gold);border:1px solid #e5bd7263;border-radius:50%;background:#ffffff0b}
.saff-pg .saff-pg-premier-symbol svg{height:31px;width:31px}
.saff-pg .saff-pg-premier-kicker{color:var(--pg-gold);font-size:.69rem;letter-spacing:.21em;text-transform:uppercase;font-weight:900;margin-bottom:10px}
.saff-pg .saff-pg-premier h3{color:#fff;font-size:clamp(2.2rem,3.8vw,4rem);margin:0 0 18px}
.saff-pg .saff-pg-premier-copy>p:not(.saff-pg-premier-kicker){font-size:1.02rem;line-height:1.7;color:#eee3e0;max-width:430px;margin:0 0 26px}
.saff-pg .saff-pg-premier-link{display:inline-flex;align-items:center;gap:11px;padding:12px 19px;border-radius:999px;background:var(--pg-gold);color:#321820;font-size:.84rem;font-weight:850;transition:transform .18s,background .18s}
.saff-pg .saff-pg-premier-link:hover{transform:translateY(-2px);background:#f7d69c;color:#321820}
.saff-pg .saff-pg-premier-link svg{width:17px;height:17px}
.saff-pg .saff-pg-premier-visual{display:flex;flex-direction:column;gap:13px;min-width:0;justify-content:center}
.saff-pg .saff-pg-premier-more{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}
.saff-pg .saff-pg-logo-card{display:flex;flex-direction:column;align-items:center;justify-content:center;min-width:0;text-align:center;gap:12px;background:#fff;border:1px solid #ebe5de;border-radius:11px;padding:20px 15px 16px;color:#23303b;box-shadow:0 5px 18px #29160d12;transition:box-shadow .16s,transform .16s,border-color .16s}
.saff-pg a.saff-pg-logo-card:hover{color:#571421;transform:translateY(-3px);box-shadow:0 12px 25px #4f1c1e23;border-color:#cb9a55}
.saff-pg .saff-pg-logo-card-featured{padding:35px 24px 25px;min-height:280px;background:linear-gradient(135deg,#fff,#f9f5ee)}
.saff-pg .saff-pg-logo-wrap{display:flex;justify-content:center;align-items:center;min-height:58px;width:100%;max-width:100%}
.saff-pg .saff-pg-logo-img{display:block;width:auto;height:auto;max-width:100%;max-height:82px;object-fit:contain}
.saff-pg .saff-pg-logo-card-featured .saff-pg-logo-img{max-height:145px;max-width:88%}
.saff-pg .saff-pg-logo-monogram{width:62px;height:62px;border-radius:50%;background:#f6e8db;color:#88282f;display:flex;align-items:center;justify-content:center;font-size:2rem;font-weight:850}
.saff-pg .saff-pg-logo-card-featured .saff-pg-logo-monogram{width:110px;height:110px;font-size:3.4rem}
.saff-pg .saff-pg-company-name{font-size:.85rem;font-weight:850;line-height:1.3;text-wrap:balance}
.saff-pg .saff-pg-logo-card-featured .saff-pg-company-name{font-size:1.3rem}
.saff-pg .saff-pg-company-story{font-size:.85rem;color:#58616a;line-height:1.4;max-width:330px}
.saff-pg .saff-pg-partner-chip{display:inline-flex;align-items:center;justify-content:center;background:#f3dfb9;color:#4d2f13;border-radius:999px;padding:5px 13px;font-size:.65rem;text-transform:uppercase;letter-spacing:.08em;font-weight:850}
.saff-pg .saff-pg-empty-tile{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:11px;text-align:center;min-height:102px;padding:17px;border:1px dashed #d9beb3;background:linear-gradient(145deg,#fff,#faf4ec);border-radius:11px;color:#856867;max-width:100%}
.saff-pg .saff-pg-empty-tile .saff-pg-empty-mark{width:34px;height:34px;color:#ad8b83;opacity:.7}
.saff-pg .saff-pg-empty-tile .saff-pg-empty-mark svg{width:100%;height:100%}
.saff-pg .saff-pg-empty-label{font-size:.83rem;font-weight:850;color:#6c4c4b;line-height:1.4}
.saff-pg .saff-pg-empty-tile small{font-size:.66rem;line-height:1.4;letter-spacing:.045em;text-transform:uppercase;color:#997871}
.saff-pg .saff-pg-empty-large{min-height:279px;background:linear-gradient(135deg,#fffdfa,#f6eee5);border-color:#cdaa6a}
.saff-pg .saff-pg-empty-large .saff-pg-empty-mark{width:76px;height:76px;color:#c29b60}
.saff-pg .saff-pg-empty-large .saff-pg-empty-label{font-size:1.18rem}
.saff-pg .saff-pg-empty-large small{font-size:.76rem}
/* Four completely separate visual levels, each with its own size, spacing and badge. */
.saff-pg .saff-pg-tier-section{display:grid;grid-template-columns:minmax(220px,.42fr) minmax(0,1fr);gap:35px;align-items:center;margin:15px 0 0;padding:31px 30px;border:1px solid #ebe0d4;border-left:4px solid #9aa1aa;border-radius:15px;background:#fff;box-shadow:0 9px 25px #3f26110a}
.saff-pg .saff-pg-tier-description{display:flex;align-items:flex-start;gap:19px;min-width:0}
.saff-pg .saff-pg-tier-medal{display:flex;align-items:center;justify-content:center;width:57px;height:57px;flex:0 0 57px;border-radius:50%;background:linear-gradient(145deg,#e4e7eb,#8e969f);border:4px solid #f5f5f5;box-shadow:0 0 0 1px #ccd2d8;color:#fff}
.saff-pg .saff-pg-tier-medal svg{width:28px;height:28px}
.saff-pg .saff-pg-tier-eyebrow{font-size:.62rem;color:#826666;text-transform:uppercase;letter-spacing:.12em;font-weight:850;line-height:1.3;margin:0 0 6px}
.saff-pg .saff-pg-tier-section h3{margin:0 0 10px;font-size:clamp(1.35rem,1.65vw,1.72rem)}
.saff-pg .saff-pg-tier-description>div>p:last-child{margin:0;color:var(--pg-muted);font-size:.89rem;line-height:1.5}
.saff-pg .saff-pg-logo-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;align-items:stretch}
.saff-pg .saff-pg-logo-grid .saff-pg-empty-tile{grid-column:auto}
.saff-pg .saff-pg-tier-platinum{border-left-color:#737f91;padding:39px 32px}
.saff-pg .saff-pg-tier-platinum .saff-pg-logo-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:15px}
.saff-pg .saff-pg-tier-platinum .saff-pg-logo-card{min-height:161px;padding:22px 14px}
.saff-pg .saff-pg-tier-platinum .saff-pg-logo-img{max-height:99px}
.saff-pg .saff-pg-tier-platinum .saff-pg-empty-tile{min-height:164px}
.saff-pg .saff-pg-tier-gold{border-left-color:#c89c49;padding:29px 30px}
.saff-pg .saff-pg-tier-gold .saff-pg-tier-medal{background:linear-gradient(145deg,#f3d485,#a97824);box-shadow:0 0 0 1px #e1b85c}
.saff-pg .saff-pg-tier-gold .saff-pg-logo-card{min-height:140px}
.saff-pg .saff-pg-tier-gold .saff-pg-empty-tile{min-height:140px}
.saff-pg .saff-pg-tier-silver{border-left-color:#9a9ba0;padding:25px 30px}
.saff-pg .saff-pg-tier-silver .saff-pg-logo-card{min-height:118px;padding:15px 12px}
.saff-pg .saff-pg-tier-silver .saff-pg-logo-img{max-height:65px}
.saff-pg .saff-pg-tier-silver .saff-pg-empty-tile{min-height:117px}
.saff-pg .saff-pg-tier-bronze{border-left-color:#ba7953;padding:23px 30px}
.saff-pg .saff-pg-tier-bronze .saff-pg-tier-medal{background:linear-gradient(145deg,#e4b594,#a56b49);box-shadow:0 0 0 1px #be8769}
.saff-pg .saff-pg-tier-bronze .saff-pg-logo-card{min-height:100px;padding:12px 10px;gap:7px}
.saff-pg .saff-pg-tier-bronze .saff-pg-logo-img{max-height:51px}
.saff-pg .saff-pg-tier-bronze .saff-pg-company-name{font-size:.77rem}
.saff-pg .saff-pg-tier-bronze .saff-pg-empty-tile{min-height:99px}
.saff-pg .saff-pg-tier-bronze .saff-pg-tier-eyebrow{color:#9b745e}
/* Deep burgundy footer CTA, distinct from site's global footer. */
.saff-pg .saff-pg-cta{padding:47px 0 51px;background:radial-gradient(ellipse at 80% -40%,#aa2536,transparent 50%),linear-gradient(100deg,#4d0b19,#780e21);color:#fff}
.saff-pg .saff-pg-cta-inner{display:grid;grid-template-columns:72px 1fr auto;align-items:center;gap:28px}
.saff-pg .saff-pg-cta-mark{width:67px;height:67px;border:1px solid #d6b27399;color:var(--pg-gold);border-radius:50%;display:flex;align-items:center;justify-content:center}
.saff-pg .saff-pg-cta-mark svg{width:38px;height:38px}
.saff-pg .saff-pg-cta .saff-pg-eyebrow{color:var(--pg-gold)}
.saff-pg .saff-pg-cta h2{font-size:clamp(1.65rem,2.4vw,2.45rem);color:#fff;margin:0 0 10px}
.saff-pg .saff-pg-cta-copy>p:last-child{max-width:600px;margin:0;color:#f2e2e3;font-size:.94rem}
.saff-pg .saff-pg-cta-actions{display:flex;flex-direction:column;align-items:stretch;gap:12px;min-width:280px}
.saff-pg .saff-pg-button{min-height:48px;border-radius:999px;padding:12px 25px;text-align:center;font-size:.85rem;font-weight:850;line-height:1.3;display:inline-flex;gap:10px;justify-content:center;align-items:center;border:1px solid transparent;transition:transform .15s,background .15s}
.saff-pg .saff-pg-button:hover{transform:translateY(-2px)}
.saff-pg .saff-pg-button-red{background:#d01b2d;color:#fff}
.saff-pg .saff-pg-button-red:hover{background:#e22b40;color:#fff}
.saff-pg .saff-pg-button-outline{color:#fff;border-color:#ffffff9c;background:transparent}
.saff-pg .saff-pg-button-outline:hover{background:#ffffff20;color:#fff}
.saff-pg .saff-pg-button svg{width:17px;height:17px}
@media (max-width:1100px){.saff-pg .saff-pg-intro-grid{grid-template-columns:1fr;gap:30px}.saff-pg .saff-pg-intro-icons{max-width:740px;margin:auto;width:100%}.saff-pg .saff-pg-tier-section{grid-template-columns:1fr;gap:22px}.saff-pg .saff-pg-logo-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.saff-pg .saff-pg-cta-inner{grid-template-columns:62px 1fr}.saff-pg .saff-pg-cta-actions{grid-column:2;display:flex;flex-direction:row;flex-wrap:wrap;min-width:0}.saff-pg .saff-pg-cta-actions a{flex:1;min-width:215px}}
@media (max-width:780px){.saff-pg .saff-pg-wrap{width:min(100% - 36px,640px)}.saff-pg .saff-pg-banner{min-height:0}.saff-pg .saff-pg-banner-inside{gap:18px;padding:52px 0;text-align:center;justify-content:center}.saff-pg .saff-pg-banner-stripe{display:none}.saff-pg .saff-pg-banner p:last-child{font-size:1rem}.saff-pg .saff-pg-introduction{padding:60px 0}.saff-pg .saff-pg-intro-grid{text-align:center}.saff-pg .saff-pg-intro-icons{grid-template-columns:repeat(2,minmax(0,1fr));max-width:430px}.saff-pg .saff-pg-intro-icons>div:nth-child(3){border-left:0}.saff-pg .saff-pg-intro-icons>div{border-bottom:1px solid #eee5db}.saff-pg .saff-pg-intro-icons>div:nth-child(n+3){border-bottom:0}.saff-pg .saff-pg-recognition{padding:65px 0}.saff-pg .saff-pg-section-title{margin-bottom:32px}.saff-pg .saff-pg-premier{grid-template-columns:1fr;padding:33px 24px;gap:24px}.saff-pg .saff-pg-premier-copy{text-align:center}.saff-pg .saff-pg-premier-symbol{margin:0 auto 17px}.saff-pg .saff-pg-premier-copy>p:not(.saff-pg-premier-kicker){margin:0 auto 22px}.saff-pg .saff-pg-tier-section{padding:26px 20px;margin-top:15px}.saff-pg .saff-pg-tier-description{flex-direction:column;gap:13px;align-items:center;text-align:center}.saff-pg .saff-pg-tier-section h3{font-size:1.55rem}.saff-pg .saff-pg-logo-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
}
.saff-pg .saff-pg-tier-platinum .saff-pg-logo-grid {
    grid-template-columns: 1fr;
    width: 100%;
    max-width: 285px;
    margin-left: auto;
    margin-right: auto;
}.saff-pg .saff-pg-cta-inner{display:flex;flex-direction:column;gap:17px;text-align:center}.saff-pg .saff-pg-cta-copy{max-width:580px}.saff-pg .saff-pg-cta-actions{width:100%;justify-content:center}.saff-pg .saff-pg-cta-actions a{flex:1}}
@media (max-width:420px){.saff-pg .saff-pg-wrap{width:calc(100% - 28px)}.saff-pg .saff-pg-tier-section{padding:24px 15px}.saff-pg .saff-pg-premier{padding:30px 17px}.saff-pg .saff-pg-logo-grid,.saff-pg .saff-pg-tier-platinum .saff-pg-logo-grid{gap:8px}.saff-pg .saff-pg-logo-card{padding:16px 8px}.saff-pg .saff-pg-company-name{font-size:.8rem}.saff-pg .saff-pg-cta-actions{flex-direction:column}}
@media (prefers-reduced-motion: reduce){.saff-pg a{transition:none!important}}
