/* PN brand campaign: separate compositions for the opening, catalogue and rail. */
.pn-brand-banner{--brand-ink:#10294b;--brand-green:#007749;color:var(--brand-ink);background:#f2f3ed;overflow:hidden}
.pn-brand-banner__title{font-weight:750;letter-spacing:-.045em;line-height:1.12;margin:0}
.pn-brand-banner__description{font-size:16px;line-height:1.5;margin:14px 0 18px}
.pn-brand-banner__eyebrow{display:block;font-size:12px;line-height:1.5;letter-spacing:.11em;font-weight:700;text-transform:uppercase;margin-bottom:12px}
.pn-brand-banner__cta{display:inline-flex;align-items:center;justify-content:center;gap:16px;min-height:46px;padding:11px 20px;background:var(--brand-green);color:#fff;border-radius:6px;font-size:15px;line-height:1.4;font-weight:700;text-decoration:none}
.pn-brand-banner__cta:hover{background:#005e39;color:#fff}
.pn-brand-banner__cta:focus-visible{outline:3px solid var(--brand-ink);outline-offset:4px}
.pn-brand-banner__disclosure{display:block;font-size:12px;line-height:1.5;font-weight:400}
.pn-brand-banner__credit{font-size:10px;line-height:1.5;color:#43576b}
.pn-brand-banner--launch{position:relative;isolation:isolate}
.pn-brand-banner--launch .pn-brand-banner__content{position:relative;z-index:2;min-height:316px;padding-top:30px;padding-bottom:24px}
.pn-brand-banner--launch .pn-brand-banner__copy{position:relative;width:57%;max-width:680px}
.pn-brand-banner--launch .pn-brand-banner__title{font-size:clamp(32px,3.1vw,46px)}
.pn-brand-banner--launch .pn-brand-banner__title span{color:var(--brand-green)}
.pn-brand-banner--launch .pn-brand-banner__disclosure{margin-top:14px}
.pn-brand-banner__photo{position:absolute;inset:0 0 0 auto;height:100%;width:46%;object-fit:cover;object-position:60% 52%;z-index:0}
.pn-brand-banner--launch:after{content:"";position:absolute;inset:0;z-index:1;pointer-events:none;background:linear-gradient(90deg,#f2f3ed 50%,rgba(242,243,237,.96) 54%,rgba(242,243,237,0) 70%)}
.pn-brand-banner--launch>.pn-brand-banner__credit{position:absolute;z-index:3;right:12px;bottom:7px;background:rgba(255,255,255,.92);padding:2px 5px;border-radius:2px;max-width:42%;text-align:right}
.pn-brand-banner--sidebar{border-radius:12px;background:#f2f3ed}
.pn-brand-banner__sidebar-photo{display:block;width:100%;height:170px;object-fit:cover;object-position:60% 55%}
.pn-brand-banner--sidebar .pn-brand-banner__copy{padding:22px}
.pn-brand-banner--sidebar .pn-brand-banner__title{font-size:30px;margin-top:16px}
.pn-brand-banner--sidebar .pn-brand-banner__description{font-size:16px}
.pn-brand-banner--sidebar .pn-brand-banner__cta{width:100%;padding-left:12px;padding-right:12px}
.pn-brand-banner--sidebar .pn-brand-banner__credit{display:block;margin-top:16px}
.pn-brand-banner--compact .pn-brand-banner__content{display:flex;align-items:center;justify-content:space-between;gap:28px;padding-top:18px;padding-bottom:18px}
.pn-brand-banner__logo{width:160px;height:auto;flex:0 0 auto}
.pn-brand-banner--compact .pn-brand-banner__title{font-size:24px;letter-spacing:-.025em}
.pn-brand-banner--compact .pn-brand-banner__disclosure{margin-top:6px}
.pn-brand-banner--compact .pn-brand-banner__cta{flex:0 0 auto}
.page-home .pn-search-first{padding-top:28px}
.page-home .pn-search-intro{display:block;min-height:0;background:none;border-radius:0;overflow:visible;margin-bottom:22px}
.page-home .pn-search-intro:after,.page-home .pn-search-intro:before{display:none}
.page-home .pn-search-intro-copy{position:static;padding:0;max-width:none;background:none;color:#10294b}
.page-home .pn-search-intro-copy .eyebrow{color:#007749}
.page-home .pn-search-intro-copy h1{color:#10294b;font-size:clamp(26px,2.6vw,36px);line-height:1.15;margin:8px 0 10px;max-width:none}
.page-home .pn-search-intro-copy p{color:#53677a;font-size:16px;max-width:none;margin:0}
@media(max-width:760px){
.pn-brand-banner--launch .pn-brand-banner__content{min-height:280px;padding-top:22px;padding-bottom:20px}
.pn-brand-banner--launch .pn-brand-banner__copy{width:70%;max-width:440px}
.pn-brand-banner--launch .pn-brand-banner__title{font-size:clamp(27px,5vw,36px)}
.pn-brand-banner--launch .pn-brand-banner__eyebrow{font-size:10px;letter-spacing:.06em;margin-bottom:10px;max-width:240px}
.pn-brand-banner--launch .pn-brand-banner__description{font-size:14px;line-height:1.45;max-width:230px;margin:12px 0 16px}
.pn-brand-banner--launch .pn-brand-banner__disclosure{font-size:10px;max-width:200px}
.pn-brand-banner__photo{width:42%;object-position:65% center}
.pn-brand-banner--launch:after{background:linear-gradient(90deg,#f2f3ed 57%,rgba(242,243,237,.94) 64%,rgba(242,243,237,0) 87%)}
.pn-brand-banner--launch>.pn-brand-banner__credit{right:6px;bottom:4px;font-size:8px;max-width:26%}
.pn-brand-banner--compact .pn-brand-banner__content{gap:12px;flex-wrap:wrap;padding-top:14px;padding-bottom:14px}
.pn-brand-banner--compact .pn-brand-banner__logo{display:none}
.pn-brand-banner--compact .pn-brand-banner__title{font-size:19px}
.pn-brand-banner--compact .pn-brand-banner__cta{min-height:44px;font-size:14px;padding:9px 14px}
.pn-brand-banner--compact .pn-brand-banner__copy{flex:1 1 220px}
.page-home .pn-search-first{padding-top:24px}
.page-home .pn-search-intro-copy{padding:0}
}
