/* Site 001 partner component. Its original green palette and typography stay
   independent of the five local palettes, as requested by the owner. */
@font-face{font-family:PartnerProofOutfit;src:url('/assets/partner-outfit.ttf') format('truetype');font-style:normal;font-weight:100 900;font-display:swap}
body.roofing-v2.page-home main #partenaire{position:relative;isolation:isolate;overflow:hidden;background:linear-gradient(125deg,#213f32,#3e5d3b);border:0;border-radius:24px;padding:48px 40px;margin:64px 0;text-align:center;color:#fff;font-family:PartnerProofOutfit,sans-serif;line-height:1.65}
body.roofing-v2.page-home main #partenaire .partner-background{position:absolute;inset:0;z-index:0;margin:0;width:100%;height:100%;pointer-events:none}
body.roofing-v2.page-home main #partenaire .partner-background img{display:block;width:100%;height:100%;max-height:none;aspect-ratio:auto;object-fit:cover;border-radius:0}
body.roofing-v2.page-home main #partenaire::before{content:""!important;position:absolute;inset:0;z-index:1;background:linear-gradient(110deg,#102e24d9,#102e24ad);pointer-events:none}
body.roofing-v2.page-home main #partenaire>:not(.partner-background){position:relative;z-index:2}
body.roofing-v2.page-home main #partenaire :is(h2,p,a,strong){color:#fff;font-family:PartnerProofOutfit,sans-serif}
body.roofing-v2.page-home main #partenaire h2{font-size:clamp(26px,3vw,38px);font-weight:700;line-height:1.15;letter-spacing:-.035em;margin:12px 0}
body.roofing-v2.page-home main #partenaire p{margin:8px 0}
body.roofing-v2.page-home main #partenaire .eyebrow{color:#d9ed92;font-size:13px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}
body.roofing-v2.page-home main #partenaire .partner-logo{display:inline-flex;align-items:center;justify-content:center;background:#213f32;border:1px solid #ffffff30;border-radius:14px;padding:14px 24px;margin-bottom:18px}
body.roofing-v2.page-home main #partenaire .partner-logo img{display:block;width:200px;height:auto;max-width:100%}
body.roofing-v2.page-home main #partenaire .partner-intro{max-width:780px;margin:16px auto;color:#e2ecdf;font-size:17px}
body.roofing-v2.page-home main #partenaire .hero-proof{margin:32px 0 20px;text-align:center;font-size:16px}
body.roofing-v2.page-home main #partenaire .hero-proof-row{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:24px}
body.roofing-v2.page-home main #partenaire .proof-portraits{display:flex;flex-shrink:0;padding-left:12px}
body.roofing-v2.page-home main #partenaire .proof-portraits img{width:56px;height:56px;max-width:none;object-fit:cover;border-radius:50%;border:3px solid #fff;margin-left:-12px}
body.roofing-v2.page-home main #partenaire .proof-stars{color:#f4b94f;font-size:32px;letter-spacing:1px;white-space:nowrap}
body.roofing-v2.page-home main #partenaire .proof-rating{font-size:28px;white-space:nowrap}
body.roofing-v2.page-home main #partenaire .hero-proof-summary{font-size:clamp(18px,2.2vw,26px);margin-top:24px;line-height:1.5}
body.roofing-v2.page-home main #partenaire .hero-proof-summary strong{font-weight:800}
body.roofing-v2.page-home main #partenaire .partner-cta{margin:28px 0 20px}
body.roofing-v2.page-home main #partenaire .partner-cta .btn{display:inline-flex;align-items:center;justify-content:center;font-size:18px;font-weight:700;gap:20px;min-height:52px;padding:15px 24px;background:linear-gradient(180deg,#c65308,#af4004)!important;color:#fff!important;border:1px solid #a64006!important;box-shadow:inset 0 1px 0 #ffffff55,0 3px 8px #9a400326;line-height:1.4;border-radius:10px;text-decoration:none}
body.roofing-v2.page-home main #partenaire .partner-cta p{font-size:13px;margin:12px 0;color:#e2ecdf}
body.roofing-v2.page-home main #partenaire .partner-badges{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px;align-items:center;background:#fff;border-radius:16px;padding:24px;margin-top:32px}
body.roofing-v2.page-home main #partenaire .partner-badges img{display:block;width:100%;max-width:140px;height:auto;justify-self:center}
body.roofing-v2.page-home main #partenaire .partner-badges-caption{font-size:12px;color:#dce7d7;margin:12px 0 0}
body.roofing-v2.page-home main #partenaire :is(a,button):focus-visible{outline:3px solid #fff;outline-offset:4px}
@media(max-width:700px){
 body.roofing-v2.page-home main #partenaire{padding:28px 16px;border-radius:16px;margin:44px 0}
 body.roofing-v2.page-home main #partenaire .partner-logo img{width:170px}
 body.roofing-v2.page-home main #partenaire .partner-intro{font-size:16px}
 body.roofing-v2.page-home main #partenaire .hero-proof-row{flex-wrap:wrap;gap:12px}
 body.roofing-v2.page-home main #partenaire .proof-portraits{padding-left:12px;flex-basis:100%;justify-content:center}
 body.roofing-v2.page-home main #partenaire .proof-portraits img{width:36px;height:36px;margin-left:-12px}
 body.roofing-v2.page-home main #partenaire .proof-stars{font-size:24px}
 body.roofing-v2.page-home main #partenaire .proof-rating{font-size:22px}
 body.roofing-v2.page-home main #partenaire .partner-cta .btn{width:100%;font-size:16px}
 body.roofing-v2.page-home main #partenaire .partner-badges{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;padding:20px}
 body.roofing-v2.page-home main #partenaire .partner-badges img{max-width:105px}
}

body.roofing-v2.page-home main #partenaire .partner-cta .btn:hover{background:linear-gradient(180deg,#b64806,#a43b03)!important;box-shadow:inset 0 1px 0 #ffffff66,0 4px 12px #9a400338}
/* Reset the Dialogue theme's alternate partner layout for this exact reuse. */
body.roofing-v2.page-home main #partenaire::before,body.roofing-v2.page-home main #partenaire .partner-background,body.roofing-v2.page-home main #partenaire .eyebrow{display:block}
body.roofing-v2.page-home main #partenaire .partner-logo{width:auto;height:auto;max-width:100%;margin:0 0 18px;box-sizing:border-box}
body.roofing-v2.page-home main #partenaire .partner-cta{display:block;gap:normal}
