.ppb-brands-page{overflow-x:clip;background:var(--pp-surface)}
.ppb-brands-page .pp-nav-group[data-current-section] summary{color:var(--pp-red)}
.ppb-hero{border-top:1px solid var(--pp-line);border-bottom:1px solid var(--pp-line);background:#fff}
.ppb-hero-grid{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(340px,.7fr);gap:clamp(52px,8vw,150px);padding-block:clamp(62px,6vw,108px)}
.ppb-hero-primary{padding-right:clamp(28px,5vw,92px);border-right:1px solid var(--pp-line)}

.ppb-note-rule{display:block;width:48px;height:4px;background:var(--pp-red)}
.ppb-hero h1{max-width:9.6ch}
.ppb-hero-primary>p:last-child{margin-top:26px;max-width:56ch;color:var(--pp-muted);font-size:var(--pp-type-intro);line-height:1.45}
.ppb-hero-note{align-self:center}.ppb-hero-note h2{font-size:clamp(35px,3.2vw,54px);line-height:1.02;max-width:13ch}.ppb-note-rule{margin:28px 0 24px}
.ppb-hero-note p{max-width:37ch;color:var(--pp-muted);font-size:clamp(18px,1.22vw,22px);line-height:1.45}
.ppb-jump{position:sticky;top:0;z-index:8;background:var(--pp-sticky-surface);border-bottom:1px solid var(--pp-line);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px)}
.ppb-jump .pp-shell{display:grid;grid-template-columns:repeat(6,minmax(120px,1fr));align-items:stretch}
.ppb-jump a{position:relative;display:flex;align-items:center;justify-content:center;min-height:68px;padding:15px 18px;font:650 clamp(16px,1.1vw,19px)/1.2 "Source Sans 3",sans-serif;white-space:nowrap}
.ppb-jump a::after{content:"";position:absolute;right:22%;bottom:0;left:22%;height:3px;background:var(--pp-red);transform:scaleX(0);transform-origin:center;transition:transform .2s var(--pp-ease)}
.ppb-jump a:hover,.ppb-jump a:focus-visible{color:var(--pp-red)}.ppb-jump a:hover::after,.ppb-jump a:focus-visible::after{transform:scaleX(1)}
.ppb-directory{background:#fff}.ppb-brand-row{display:grid;grid-template-columns:minmax(210px,1.05fr) minmax(240px,.95fr) minmax(230px,.9fr) minmax(205px,.72fr);gap:0;align-items:center;min-height:162px;border-bottom:1px solid var(--pp-line);scroll-margin-top:76px;transition:background-color .2s var(--pp-ease)}
.ppb-brand-row:is(:hover,:focus-within,:target){background:var(--pp-surface-inset)}
.ppb-brand-mark,.ppb-brand-role,.ppb-brand-summary,.ppb-brand-action{min-width:0;padding:28px clamp(22px,2.5vw,44px)}
.ppb-brand-mark{align-self:stretch;display:flex;align-items:center;background:#fff}.ppb-brand-mark img{width:min(100%,250px);height:80px;object-fit:contain;object-position:left center}
.ppb-brand-role,.ppb-brand-summary,.ppb-brand-action{border-left:1px solid var(--pp-line)}
.ppb-brand-role h2{font-size:var(--pp-type-row);line-height:1.1;letter-spacing:-.035em}.ppb-brand-role h2 a:hover{color:var(--pp-red)}
.ppb-brand-role p{margin-top:7px;font-size:clamp(17px,1.16vw,20px);line-height:1.35;color:var(--pp-ink);font-weight:500}
.ppb-brand-summary{font-size:clamp(17px,1.12vw,20px);line-height:1.4;color:var(--pp-muted)}
.ppb-brand-action{display:flex;align-self:stretch;align-items:center;padding-right:0}.ppb-brand-action .pp-text-link{font-size:clamp(16px,1.08vw,19px);gap:10px}
.ppb-product-route{border-bottom:1px solid var(--pp-line);background:var(--pp-paper)}.ppb-product-route .pp-shell{display:grid;grid-template-columns:minmax(300px,1fr) minmax(260px,.72fr) auto;gap:clamp(26px,4vw,70px);align-items:center;min-height:144px}
.ppb-product-route h2{font-size:clamp(34px,3.2vw,54px);line-height:1.05}.ppb-product-route p{color:var(--pp-muted);font-size:clamp(18px,1.2vw,21px);line-height:1.4}.ppb-product-route .pp-text-link{font-size:clamp(17px,1.15vw,20px);white-space:nowrap}
.ppb-closing{min-height:clamp(440px,38vw,630px)}
@media(min-width:781px){.ppb-closing.pp-closing--side .pp-closing-copy{width:min(43vw,690px)}.ppb-closing.pp-closing--side h2{max-width:12ch;font-size:clamp(42px,3.8vw,65px)}.ppb-closing .pp-closing-photo>img{object-position:center}}
@media(max-width:1050px){.ppb-hero-grid{grid-template-columns:1.1fr .9fr;gap:50px}.ppb-hero-primary{padding-right:40px}.ppb-brand-row{grid-template-columns:minmax(190px,.9fr) minmax(230px,1fr) minmax(220px,.9fr)}.ppb-brand-action{grid-column:2/4;border-left:1px solid var(--pp-line);border-top:1px solid var(--pp-line);padding-block:16px}.ppb-brand-row{padding-top:0}.ppb-brand-summary{align-self:stretch;display:flex;align-items:center}.ppb-product-route .pp-shell{grid-template-columns:1fr 1fr}.ppb-product-route .pp-text-link{grid-column:2}}
@media(max-width:780px){.ppb-brands-page .pp-shell{width:100%;max-width:100%;padding-inline:var(--pp-gutter)}.ppb-hero-grid{display:block;padding-block:52px}.ppb-hero-primary,.ppb-hero-note{width:100%;min-width:0}.ppb-hero-primary{padding-right:0;padding-bottom:40px;border-right:0;border-bottom:1px solid var(--pp-line)}.ppb-hero h1{font-size:var(--pp-type-hero-mobile);max-width:11ch}.ppb-hero-note{padding-top:40px}.ppb-hero-note h2{font-size:40px}.ppb-jump{overflow-x:auto;overscroll-behavior-inline:contain;scrollbar-width:thin}.ppb-jump .pp-shell{display:flex;width:max-content;min-width:100%;max-width:none;padding-inline:var(--pp-gutter)}.ppb-jump a{min-width:max-content}.ppb-brand-row{grid-template-columns:minmax(170px,.8fr) 1.2fr;min-height:0}.ppb-brand-mark{padding-block:26px}.ppb-brand-role{align-self:stretch;display:flex;flex-direction:column;justify-content:center}.ppb-brand-summary{grid-column:1/3;border-left:0;border-top:1px solid var(--pp-line);padding:20px 0}.ppb-brand-action{grid-column:1/3;border-left:0;padding:0 0 26px}.ppb-product-route .pp-shell{display:block;padding-block:34px}.ppb-product-route p{margin:18px 0 24px}.ppb-closing{min-height:0}}
@media(max-width:520px){.ppb-hero-primary>p:last-child{font-size:19px}.ppb-hero-note h2{font-size:36px}.ppb-brand-row{display:block;padding:0}.ppb-brand-mark{padding:28px 0 22px}.ppb-brand-mark img{width:min(82%,240px);height:72px}.ppb-brand-role{border-left:0;border-top:1px solid var(--pp-line);padding:22px 0}.ppb-brand-role h2{font-size:29px}.ppb-brand-summary{padding:0 0 18px;border-top:0}.ppb-brand-action{border-top:0;padding-bottom:30px}.ppb-product-route h2{font-size:37px}.ppb-closing .pp-closing-photo>img{object-position:32% center}}
@media(prefers-reduced-motion:reduce){.ppb-jump a::after,.ppb-brand-row,.ppb-brand-mark,.ppb-brand-mark img{transition:none}}

/* Compact brand directory: one role summary and one destination per brand. */
.ppb-directory{scroll-margin-top:76px}
.ppb-hero-grid{display:block;padding-block:clamp(44px,5vw,76px)}
.ppb-hero-primary{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);align-items:center;gap:clamp(36px,6vw,96px);padding:0;border:0}
.ppb-hero h1{max-width:15ch;font-size:clamp(42px,4.8vw,72px)}
.ppb-hero-primary>p:last-child{margin:0;max-width:42ch}
.ppb-brand-row{grid-template-columns:minmax(210px,.85fr) minmax(0,1.65fr) minmax(220px,.9fr);min-height:156px}
.ppb-brand-role{align-self:stretch;display:flex;flex-direction:column;justify-content:center}
.ppb-brand-role p{margin-top:12px;max-width:46ch;color:var(--pp-muted);font-weight:400;line-height:1.45}
.ppb-brand-action{grid-column:auto;border-top:0;padding-block:28px}
.ppb-product-route .pp-shell{display:block;min-height:0;padding-block:32px}
.ppb-product-route p{margin:0;font-size:19px}
.ppb-product-route a{color:var(--pp-red);text-decoration:underline;text-underline-offset:4px}
.ppb-product-route a:hover{color:var(--pp-red-dark)}
@media(max-width:1050px) and (min-width:781px){
  .ppb-brand-row{grid-template-columns:minmax(180px,.8fr) minmax(0,1.4fr) minmax(180px,.8fr)}
  .ppb-brand-mark,.ppb-brand-role,.ppb-brand-action{padding-inline:20px}
  .ppb-brand-action{padding-right:0}
  .ppb-brands-page .pp-contact-widget{display:none}
}
@media(max-width:780px){
  .ppb-hero-primary{display:block;padding:0;border:0}
  .ppb-hero-primary>p:last-child{margin-top:24px}
  .ppb-brand-row{grid-template-columns:minmax(160px,.7fr) minmax(0,1.3fr);min-height:0}
  .ppb-brand-role{padding-block:26px}
  .ppb-brand-action{grid-column:2;padding:0 22px 28px;border-left:1px solid var(--pp-line)}
  .ppb-brand-mark{grid-row:1/3}
  .ppb-brands-page .pp-contact-widget{display:none}
}
@media(max-width:520px){
  .ppb-brand-row{display:block}
  .ppb-brand-role{border-top:0;padding:0 0 20px}
  .ppb-brand-action{padding:0 0 28px;border-left:0}
  .ppb-brand-mark{padding-block:28px 18px}
}
