/* Our Partner Shops V2. Page-local presentation; shared shell remains untouched. */
.ppv2 .partners-hero{min-height:420px;border-bottom:3px solid var(--red);padding-block:42px}
.ppv2 .partners-hero>img{object-position:65% 55%}
.ppv2 .partners-hero .wrap{padding-block:12px}
.ppv2 .partners-hero h1{max-width:900px}
.ppv2 .partners-hero .company-lede{max-width:630px}
.ppv2 .partner-section{padding-block:56px}
.ppv2 .partner-section+.partner-section{border-top:1px solid #d8d8dc}
.ppv2 .partner-profile{display:grid;grid-template-columns:minmax(0,.75fr) minmax(0,1.25fr);gap:clamp(32px,5vw,68px);align-items:start}
.ppv2 .partner-identity,.ppv2 .partner-details{min-width:0}
.ppv2 .partner-logo{height:240px;display:flex;align-items:center;justify-content:center;background:#fff;border:1px solid #d8d8dc;padding:24px;margin-bottom:20px}
.ppv2 .partner-logo--rpm{background:#020303;border-color:#020303;padding:0}
.ppv2 .partner-logo img{display:block;width:100%;height:100%;max-width:360px;object-fit:contain}
.ppv2 .partner-identity .partner-location{font-weight:700;color:#242428;margin:0 0 4px}
.ppv2 .partner-category{font-size:.94rem;margin-bottom:14px}
.ppv2 .partner-address{font-style:normal;color:#595960;line-height:1.6;margin-bottom:12px}
.ppv2 .partner-contact{display:flex;flex-wrap:wrap;align-items:start;gap:4px 24px}
.ppv2 .partner-identity .text-link{display:inline-flex;align-items:center;min-height:44px;font-size:.8rem;line-height:1.5}
.ppv2 .partner-details>.eyebrow{margin-bottom:8px}
.ppv2 .partner-details h2{font-size:clamp(2.35rem,3.5vw,3.5rem);line-height:1.05;margin-bottom:18px;max-width:620px}
.ppv2 .partner-details>p:not(.eyebrow){margin-bottom:0}
.ppv2 .partner-collaboration{border-top:1px solid #d8d8dc;margin-top:22px;padding-top:20px}
.ppv2 .partner-collaboration h3{font:700 .78rem/1.4 var(--body);letter-spacing:.12em;text-transform:uppercase;color:#b80d2d;margin:0 0 14px}
.ppv2 .partner-service-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.ppv2 .partner-service-option{padding:20px;background:#fff;border:1px solid #d8d8dc;border-top:3px solid #1c1c20}
.ppv2 .partner-service-option--inhouse{border-top-color:var(--red);background:#f6f6f7}
.ppv2 .partner-service-option h4{font:700 1.75rem/1 var(--heading);text-transform:uppercase;color:#111113;margin:0 0 10px}
.ppv2 .partner-service-option--inhouse h4{color:#b80d2d}
.ppv2 .partner-service-option p{font-size:.94rem;line-height:1.55;margin:0}
.ppv2 .partner-service-option .partner-option-place{font-weight:700;color:#242428;margin-bottom:12px;min-height:2.9em}
.ppv2 .partner-service-option a{color:#b80d2d;text-decoration:underline;text-underline-offset:3px}
.ppv2 .partner-service-option a:hover{color:#111113}
.ppv2 .partner-coordination{font-size:.9rem;line-height:1.5;margin:16px 0 0}
.ppv2 .partner-collaboration .actions{margin-top:20px;gap:12px}
.ppv2 .partner-collaboration .btn{padding:15px 20px;min-height:48px}
.ppv2 .company-cta{padding-block:52px}
.ppv2 .company-cta h2{font-size:clamp(2.4rem,4vw,3.7rem)}
.ppv2 .company-cta p{max-width:760px}
.ppv2 a:focus-visible{outline:3px solid #bd8b09;outline-offset:5px}
.ppv2 [id]{scroll-margin-top:16px}
.ppv2 .sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media(max-width:1100px) and (min-width:801px){
 .ppv2 .partner-profile{grid-template-columns:minmax(0,.65fr) minmax(0,1.35fr);gap:30px}
 .ppv2 .partner-service-option{padding:16px}
}
@media(max-width:800px){
 .ppv2 .partner-profile{grid-template-columns:1fr;gap:26px}
 .ppv2 .partner-identity{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:0 26px;align-items:start}
 .ppv2 .partner-logo{grid-row:1 / span 5;margin:0;height:210px}
 .ppv2 .partner-location{align-self:end}
 .ppv2 .partner-details h2{max-width:none;font-size:2.7rem}
 .ppv2 .partner-section{padding-block:40px}
}
@media(max-width:560px){
 .ppv2 .partners-hero{min-height:410px;padding-block:26px}
 .ppv2 .partners-hero>img{object-position:61% center}
 .ppv2 .partners-hero .actions{gap:10px}
 .ppv2 .partners-hero .btn{padding:14px 16px;min-height:48px}
 .ppv2 .partner-identity{display:block}
 .ppv2 .partner-logo{height:205px;max-width:420px;margin-bottom:18px;padding:22px}
 .ppv2 .partner-logo--rpm{padding:0}
 .ppv2 .partner-service-options{grid-template-columns:1fr;gap:12px}
 .ppv2 .partner-service-option{padding:18px}
 .ppv2 .partner-service-option .partner-option-place{min-height:0;margin-bottom:8px}
 .ppv2 .partner-details h2{font-size:2.5rem}
 .ppv2 .partner-collaboration .actions{flex-direction:column;align-items:stretch}
 .ppv2 .partner-collaboration .btn{justify-content:center}
 .ppv2 .company-cta{padding-block:40px}
}
