/* Brand bridge for the site's existing industry, service and editorial pages. */
.pp-existing{--paper:var(--cream);--paper-2:#efefe1;--card:#fff;--bg-warm:var(--cream);--ink-soft:#55574d;--muted:#55574d;--rule:#cccfc0;--red:var(--teal);--red-bright:var(--gold);--font-display:'Archivo Black',Arial,sans-serif;--font-mono:'DM Sans',Arial,sans-serif;--pp-bg:var(--cream);--pp-bg-soft:#efefe1;--pp-ink:var(--ink);--pp-muted:#55574d;--pp-orange:var(--teal);--pp-orange-dark:#2d7472;--pp-line:#ccd0c1;--pp-radius:22px;--pp-shadow:4px 5px 0 #0a0a08;font-family:'DM Sans',Arial,sans-serif;background:var(--cream);color:var(--ink);overflow-wrap:anywhere}
.pp-existing :is(.roofer-page,.pp-print-page,.pp-large-page,.pp-contact-page){background:var(--cream);--pp-orange:var(--teal);--pp-orange-dark:#2d7472;--pp-large-bg:var(--cream);--pp-large-accent:var(--teal)}
.pp-existing :is(h1,h2,h3){font-family:'Archivo Black',Arial,sans-serif;font-weight:400;letter-spacing:-.045em}
.pp-existing :is(.roofer-title,.pp-print-title,.pp-large-title,.pp-contact-title){font-size:clamp(36px,4.5vw,64px);line-height:1.06}
.pp-existing :is(.roofer-section-title,.pp-print-section-title,.pp-large-section-title){font-size:clamp(29px,3.3vw,44px);line-height:1.12}
.pp-existing :is(.roofer-wrap,.pp-print-wrap,.pp-large-wrap,.pp-contact-wrap){width:min(1240px,calc(100% - 64px));margin-inline:auto}
.pp-existing :is(.roofer-hero,.pp-print-hero,.pp-large-hero){background:var(--cream);padding-block:64px}
.pp-existing :is(.roofer-product-card,.roofer-hero-card,.pp-contact-form-card,.pp-print-product-card,.pp-large-product-card){border:2px solid var(--ink);border-radius:22px;box-shadow:4px 5px 0 var(--ink)}
.pp-existing :is(.roofer-mailer-piece,.roofer-mailer-mockup){border-radius:18px}
.pp-existing .roofer-mailer-mockup{background:var(--teal)}
.pp-existing :is(.roofer-dark-block,.roofer-final-cta){background:var(--ink);border-radius:22px}
.pp-existing :is(.roofer-dark-block,.roofer-final-cta) :is(h2,h3,p){color:var(--cream)}
.pp-existing :is(.roofer-eyebrow,.roofer-mailer-topline,.pp-print-eyebrow,.pp-large-eyebrow,.pp-contact-eyebrow){color:#326d6a}
.pp-existing :is(.roofer-dark-block,.roofer-final-cta) .roofer-eyebrow{color:var(--teal)}
.pp-existing :is(.roofer-btn,.pp-print-btn,.pp-large-btn,.btn,.fluentform .ff-btn-submit){display:inline-flex;align-items:center;justify-content:center;min-height:46px;padding:14px 24px;background:var(--pink);color:var(--ink);border:2px solid var(--ink);border-radius:999px;box-shadow:4px 5px 0 var(--ink);font:800 13px/1.4 'DM Sans',Arial,sans-serif;text-decoration:none;transition:transform .1s,box-shadow .1s}
.pp-existing :is(.roofer-btn,.pp-print-btn,.pp-large-btn,.btn,.fluentform .ff-btn-submit):is(:hover,:active){transform:translate(4px,5px);box-shadow:0 0 0 var(--ink);color:var(--ink);background:var(--pink)}
.pp-existing :is(.roofer-btn-secondary,.pp-print-btn-secondary,.pp-large-btn-secondary){background:var(--cream)}
.pp-existing .industry-card{border:2px solid var(--ink);border-radius:20px;background:#fff;color:var(--ink);padding:28px;box-shadow:4px 5px 0 var(--ink);transition:transform .1s,box-shadow .1s}
.pp-existing .industry-grid{gap:20px}
.pp-site .pp-existing a.industry-card{--industry-hover:var(--teal);background:#fff;color:var(--ink);transition:background-color .18s ease,transform .12s ease,box-shadow .12s ease}
.pp-site .pp-existing a.industry-card:nth-child(4n+2){--industry-hover:var(--pink)}
.pp-site .pp-existing a.industry-card:nth-child(4n+3){--industry-hover:var(--gold)}
.pp-site .pp-existing a.industry-card:nth-child(4n){--industry-hover:#c9bce4}
.pp-site .pp-existing a.industry-card:hover{background:#fff;transform:none;box-shadow:4px 5px 0 var(--ink)}
@media(hover:hover) and (pointer:fine){
 .pp-site .pp-existing a.industry-card:hover{background:var(--industry-hover);transform:translate(4px,5px);box-shadow:none}
}
.pp-site .pp-existing a.industry-card:focus-visible{background:var(--industry-hover);outline:3px solid var(--ink);outline-offset:6px}
.pp-site .pp-existing a.industry-card:active{background:var(--industry-hover);transform:translate(4px,5px);box-shadow:none}
.pp-site .pp-existing a.industry-card:is(:hover,:focus-visible,:active) :is(h2,h3,p,a,span){color:var(--ink)}
@media(prefers-reduced-motion:reduce){
 .pp-site .pp-existing a.industry-card{transition:none!important}
 .pp-site .pp-existing a.industry-card:is(:hover,:focus-visible,:active){transform:none!important;box-shadow:4px 5px 0 var(--ink)}
}
.pp-existing .industry-card:hover :is(.industry-num,.industry-meta){color:var(--ink)}
.pp-existing .industries{padding:64px max(20px,calc((100% - 1240px)/2))}
.pp-existing .industries-header{margin-bottom:40px}
.pp-existing .industries-header .section-title{font-size:clamp(34px,4.5vw,60px);line-height:1.1}
.pp-existing .industry-name{font-size:25px;line-height:1.2}
.pp-existing.pp-document{--paper:var(--cream);--paper-2:#efefe1;--card:#fff;--ink:#292b23;--ink-2:#292b23;--ink-soft:#55574d;--accent:#326d6a;--accent-deep:#2d7472;--accent-soft:#dceceb}
.pp-existing.pp-document .hero{display:block;grid-template-columns:none}
.pp-existing.pp-document :is(.rv,.rv.in){opacity:1;transform:none}
.pp-existing.pp-document :is(.section,.feature,.grid-sec,.sec,.vs,.note,.who,.close-s){margin:0}
.pp-existing.pp-document .hero h1{font-size:clamp(38px,5vw,68px)}
.pp-existing.pp-document :is(.hero h1,.hero h1 .l2){font-family:'Archivo Black',Arial,sans-serif;font-style:normal}
.pp-existing :is(input,select,textarea){max-width:100%}
.pp-existing .pp-contact-grid{align-items:start;gap:48px}
.pp-existing .pp-contact-title{margin:24px 0}
.pp-existing .pp-contact-title::after{display:none}
.pp-existing .pp-contact-intro{margin-bottom:28px}
@media(max-width:760px){.pp-existing :is(.roofer-wrap,.pp-print-wrap,.pp-large-wrap,.pp-contact-wrap){width:calc(100% - 40px)}.pp-existing :is(.roofer-hero,.pp-print-hero,.pp-large-hero){padding-block:40px}.pp-existing .pp-contact-grid{grid-template-columns:1fr;gap:32px}.pp-existing .industry-grid{grid-template-columns:1fr}.pp-existing .pp-contact-form-card{padding:22px}.pp-existing .industries-header{display:block}.pp-existing .industries-header .btn{margin-top:24px}}
.pp-site .pp-existing :is(h1,h2,h3){font-family:'Archivo Black',Arial,sans-serif;font-weight:400;letter-spacing:-.045em}
.pp-site .pp-existing :is(.roofer-btn-secondary,.pp-print-btn-secondary,.pp-large-btn-secondary){background:var(--cream)}
.pp-site .pp-existing .pp-content{margin-inline:auto!important}
.pp-site .pp-existing .fluentform button.ff-btn-submit{background:var(--pink)!important;color:var(--ink)!important;border:2px solid var(--ink)!important;border-radius:999px!important;box-shadow:4px 5px 0 var(--ink)!important;transform:none;transition:transform .1s,box-shadow .1s!important}
.pp-site .pp-existing .fluentform button.ff-btn-submit:hover,.pp-site .pp-existing .fluentform button.ff-btn-submit:active{transform:translate(4px,5px)!important;box-shadow:none!important}
/* Yellow cards always retain dark text, including headings and action links. */
.pp-site .pp-existing .industry-card:is(:hover,:focus-within),
.pp-site .pp-existing .industry-card:is(:hover,:focus-within) :is(h2,h3,p,a,span){color:#292b23}
