
/* Plumbing247 interactive information cards — 1.0.0. Scoped and reversible. */
.pl-home .pl-about{align-items:start;gap:clamp(26px,4vw,56px)}
.pl-home .pl-about>div:nth-child(2){min-width:0}
.pl-home .pl-about .pl-eyebrow{font-size:12px;font-weight:850;letter-spacing:.11em;color:#176a9a}
.pl-home .pl-about .pl-section-title{font-size:clamp(27px,2.7vw,37px);line-height:1.2;letter-spacing:-.035em;margin:11px 0 20px}
.pl-home .pl-about .pl-lead,.pl-home .pl-about>div:nth-child(2)>p{font-size:16px;line-height:1.7;max-width:66ch;color:#415e72;margin:0 0 18px}
.pl-home .pl-about-visual{min-height:350px;border-radius:21px;overflow:hidden}
.pl-home .pl-about-stat{padding:15px 18px;max-width:195px;border-radius:14px}
.pl-home .pl-about-stat strong{font-size:34px}
.pl-home .pl-about-stat span{font-size:12px;line-height:1.5}
.pl-home .plp-about-panels{display:grid;gap:11px;margin:17px 0 17px}
.pl-home .plp-about-card{border:1px solid #d8e7ef;border-radius:15px;box-shadow:0 5px 18px rgba(15,51,74,.04);background:#fbfdff;overflow:hidden;transition:box-shadow .2s,border-color .2s}
.pl-home .plp-about-card[open]{background:#fff;border-color:#a6d0e7;box-shadow:0 10px 25px rgba(9,56,89,.075)}
.pl-home .plp-about-card>summary{list-style:none;display:flex;align-items:center;gap:12px;cursor:pointer;padding:13px 15px;color:#153d5a;font-size:15px;font-weight:780;line-height:1.4}
.pl-home .plp-about-card>summary::-webkit-details-marker{display:none}
.pl-home .plp-about-card>summary:focus-visible{outline:3px solid #efb236;outline-offset:-3px;border-radius:13px}
.pl-home .plp-about-card .plp-icon-shell{width:39px;height:39px;flex:none;border-radius:12px;border:1px solid #cde4f0;background:#eaf5fc;color:#176f9d;display:grid;place-items:center}
.pl-home .plp-about-card .plp-icon-shell svg{display:block;width:20px;height:20px}
.pl-home .plp-about-card .plp-card-chevron{margin-left:auto;flex:none;width:24px;height:24px;border-radius:50%;background:#edf5fa;color:#176b96;display:grid;place-items:center;transition:transform .18s}
.pl-home .plp-about-card[open] .plp-card-chevron{transform:rotate(180deg)}
.pl-home .plp-about-card .plp-card-chevron svg{width:15px;height:15px}
.pl-home .plp-about-copy{padding:0 16px 17px 66px}
.pl-home .plp-about-copy p{margin:0!important;font-size:14px!important;line-height:1.72!important;color:#466378!important}
.pl-home .pl-about .plp-about-proof{padding:10px 13px;border-radius:12px;border:1px solid #d8e8ef;background:#f5f9fc;color:#184d6a!important;font-size:13px!important;line-height:1.65!important;margin:0 0 15px!important;overflow-wrap:anywhere}
.pl-home .pl-about .plp-about-cta{display:inline-flex;align-items:center;justify-content:center;gap:9px;max-width:100%;min-height:43px;padding:10px 16px;border:1px solid #b9d4e5;border-radius:11px;background:#e9f4fb;color:#125a84!important;font-size:13px;font-weight:820;text-decoration:none!important;box-shadow:0 3px 8px rgba(17,86,123,.04);transition:transform .18s,background .18s,border-color .18s}
.pl-home .pl-about .plp-about-cta:hover{background:#daedf8;border-color:#72b7d7;transform:translateY(-2px)}
.pl-home .pl-about .plp-about-cta:focus-visible{outline:3px solid #ffc75f;outline-offset:3px}
/* How-it-works interactive cards */
.pl-home .pl-step-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;align-items:start}
.pl-home .pl-step-grid>.pl-step{position:relative;min-width:0;min-height:0!important;margin:0!important;padding:0!important;border:1px solid #dce8f0!important;border-radius:17px!important;background:#fff!important;overflow:hidden;box-shadow:0 6px 18px rgba(15,50,75,.04);transition:transform .2s,box-shadow .2s,border-color .2s}
.pl-home .pl-step-grid>.pl-step:hover{border-color:#9dc5da!important;box-shadow:0 12px 28px rgba(10,51,80,.09)}
.pl-home .pl-step-grid>.pl-step.is-open{border-color:#aad0e5!important;box-shadow:0 11px 27px rgba(11,60,88,.075)}
.pl-home .pl-step-grid>.pl-step:before{content:"";position:absolute;left:0;top:0;height:3px;width:100%;background:linear-gradient(90deg,#166eaa,#5ac3cb);opacity:.76}
.pl-home .plp-step h3{margin:0!important;font-size:inherit!important;font-weight:inherit!important;line-height:1.3!important}
.pl-home .plp-step-btn{display:flex;align-items:center;gap:11px;width:100%;padding:16px 14px 14px;color:#153950;background:transparent;border:0;text-align:left;font:inherit;cursor:pointer}
.pl-home .plp-step-btn:focus-visible{outline:3px solid #e8af37;outline-offset:-3px;border-radius:14px}
.pl-home .plp-step-icon{display:grid;place-items:center;flex:0 0 40px;width:40px;height:40px;color:#176e9c;background:#ebf5fb;border:1px solid #d2e7f1;border-radius:12px}
.pl-home .plp-step-icon svg{width:20px;height:20px;display:block}
.pl-home .plp-step-label{display:flex;flex-direction:column;gap:4px;flex:1;min-width:0}
.pl-home .plp-step-label>span:first-child{font-size:11px!important;letter-spacing:.07em;font-weight:830;color:#28769b;line-height:1.2}
.pl-home .plp-step-title{font-size:15px;line-height:1.36;font-weight:800;color:#163d59;text-wrap:pretty}
.pl-home .plp-step-chevron{width:24px;height:24px;flex:0 0 24px;border:1px solid #daeaf2;border-radius:50%;background:#f2f8fc;color:#1c739d;display:grid;place-items:center;transition:transform .17s}
.pl-home .plp-step-chevron svg{width:14px;height:14px;display:block}
.pl-home .plp-step.is-open .plp-step-chevron{transform:rotate(180deg);background:#e8f4fb}
.pl-home .plp-step-body{border-top:1px solid #e7eef3;padding:0 15px 15px 65px}
.pl-home .plp-step-body[hidden]{display:none!important}
.pl-home .plp-step-body p{margin:12px 0 0!important;color:#496677!important;font-size:13px!important;line-height:1.64!important}
@media(max-width:1060px){
 .pl-home .pl-step-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
}
@media(max-width:767px){
 .pl-home .pl-about{gap:20px}
 .pl-home .pl-about-visual{min-height:260px!important}
 .pl-home .pl-about-stat{padding:13px 16px!important;max-width:170px}
 .pl-home .pl-about-stat strong{font-size:29px}
 .pl-home .pl-about .pl-section-title{font-size:clamp(25px,6.7vw,30px)!important;line-height:1.21!important;margin:8px 0 15px!important}
 .pl-home .pl-about .pl-eyebrow{font-size:11px}
 .pl-home .pl-about .pl-lead,.pl-home .pl-about>div:nth-child(2)>p{font-size:15px!important;line-height:1.64!important}
 .pl-home .plp-about-panels{margin:14px 0;gap:9px}
 .pl-home .plp-about-card>summary{padding:11px 12px;font-size:14px;gap:10px}
 .pl-home .plp-about-card .plp-icon-shell{width:35px;height:35px;border-radius:10px}
 .pl-home .plp-about-copy{padding:0 13px 14px 58px}
 .pl-home .plp-about-copy p{font-size:13px!important;line-height:1.65!important}
 .pl-home .pl-step-grid{grid-template-columns:1fr!important;gap:10px!important}
 .pl-home .plp-step-btn{padding:13px 14px;gap:11px}
 .pl-home .plp-step-icon{width:39px;height:39px;flex-basis:39px}
 .pl-home .plp-step-title{font-size:15px}
 .pl-home .plp-step-body{padding:0 14px 14px 64px}
 .pl-home .plp-step-body p{font-size:13px!important;line-height:1.58!important}
}
@media(prefers-reduced-motion:reduce){
 .pl-home .plp-about-card,.pl-home .plp-about-cta,.pl-home .pl-step-grid>.pl-step,.pl-home .plp-step-chevron,.pl-home .plp-card-chevron{transition:none!important}
}
