/* PPF service hub: approved component rules, scoped to this landing page. */
.ppf-services-page .kc-grid {gap:28px}
.ppf-services-page .kc-card {padding:clamp(22px,2.5vw,38px)}
.ppf-services-page .kc-card p:last-child {margin-bottom:0}
.ppf-services-page .kc-card>h3 {margin-top:0}
.ppf-services-page .kc-content .kc-image-zoom {display:block;margin:0}
.ppf-services-page .ppf-hub-video {display:flex;align-items:center;justify-content:center;min-width:0}
.ppf-services-page .ppf-hub-video .kc-video {margin:0 auto;width:100%}
.ppf-services-page .ppf-hub-video .kc-video-portrait {max-width:320px}
.ppf-services-page .ppf-hub-diagram {display:flex;align-items:center;justify-content:center}
.ppf-services-page .ppf-hub-diagram figure {margin:0;width:100%}
.ppf-services-page .kc-content .ppf-hub-diagram img {width:100%;height:auto;max-height:350px;object-fit:contain}
.ppf-services-page .ppf-hub-note {padding:24px 30px;border:1px solid #dcdce2;border-left:4px solid #c8102d;margin:30px 0;background:#fff}
.ppf-services-page .ppf-hub-note h3 {margin:0 0 14px}
.ppf-services-page .ppf-hub-note p {margin:0;max-width:none}
.ppf-services-page .ppf-hub-gallery {display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:22px;margin-top:30px}
.ppf-services-page .ppf-hub-gallery figure {margin:0;min-width:0}
.ppf-services-page .kc-content .ppf-hub-gallery img {width:100%;aspect-ratio:3/2;height:auto;object-fit:cover;display:block}
.ppf-services-page .ppf-hub-gallery figcaption {font-size:.92rem;line-height:1.5;margin-top:10px;color:#53535b}
.ppf-services-page .ppf-hub-shop-gallery {grid-template-columns:repeat(3,minmax(0,1fr))}
.ppf-services-page .ppf-hub-packages,.ppf-services-page .ppf-hub-films {display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:28px;margin:32px 0}
.ppf-services-page .ppf-hub-package,.ppf-services-page .ppf-hub-film {grid-column:span 2;display:grid;grid-template-rows:subgrid;grid-row:span 4;row-gap:20px;min-width:0}
.ppf-services-page .ppf-hub-package:nth-child(4) {grid-column:2/span 2}
.ppf-services-page .ppf-hub-package>h3,.ppf-services-page .ppf-hub-film>h3,.ppf-services-page .ppf-hub-package>figure,.ppf-services-page .ppf-hub-film>figure {margin:0}
.ppf-services-page .ppf-hub-package-diagram {display:flex;align-items:center;justify-content:center;min-height:150px}
.ppf-services-page .kc-content .ppf-hub-package-diagram img {width:100%;height:auto;max-height:200px;object-fit:contain}
.ppf-services-page .ppf-hub-price {align-self:end;border-top:3px solid #c8102d;padding-top:18px}
.ppf-services-page .ppf-hub-price span {display:block;font-size:.85rem;text-transform:uppercase;letter-spacing:.05em;margin-bottom:8px}
.ppf-services-page .ppf-hub-price strong {display:block;font-size:1.05rem;line-height:1.7}
.ppf-services-page .kc-content .ppf-hub-film img {width:100%;aspect-ratio:3/2;height:auto;object-fit:cover;display:block}
.ppf-services-page .ppf-hub-film .tm-action-row {margin:0;align-self:end}
.ppf-services-page .ppf-hub-film .btn {width:100%}
.ppf-services-page .ppf-hub-accordion {display:grid;gap:14px;margin:28px 0}
.ppf-services-page .ppf-hub-faq {border:1px solid #dcdce2;border-top:3px solid #c8102d;background:white;padding:0 28px}
.ppf-services-page .ppf-hub-faq summary {font-weight:700;cursor:pointer;padding:22px 0;font-size:1.2rem;line-height:1.5}
.ppf-services-page .ppf-hub-faq summary:focus-visible {outline:3px solid #c8102d;outline-offset:5px}
.ppf-services-page .ppf-hub-faq p {margin:0 0 26px;max-width:95ch}
.ppf-services-page .ppf-hub-quote {margin:0!important;width:100%}
.ppf-services-page .ppf-hub-quote .tm-quote-copy {display:flex;flex-direction:column;justify-content:space-between;gap:40px}
.ppf-services-page .ppf-hub-quote .tm-quote-copy h2 {color:#fff;font-size:clamp(2rem,2.8vw,2.6rem);line-height:1.12}
.ppf-services-page .ppf-hub-quote .tm-quote-financing {margin:0;padding:28px 0;border-block:1px solid #37373c}
.ppf-services-page .ppf-hub-quote .tm-quote-visit {margin:0;padding:0;border:0}
.ppf-services-page .ppf-hub-quote .tm-action-row {display:flex;flex-wrap:wrap;gap:14px}
.ppf-services-page .ppf-hub-quote .btn {flex:1 1 160px}
.ppf-services-page #visit-our-raynham-shop {padding-bottom:0}
.ppf-services-page #visit-our-raynham-shop>.kc-shop-map {width:100%;max-width:none;margin:34px 0 0;border-left:0;border-right:0}
.ppf-services-page #visit-our-raynham-shop>.kc-shop-map iframe {width:100%;height:clamp(300px,32vw,480px)}
.ppf-services-page #protecting-factory-paint {background:#000;color:#eee}
.ppf-services-page #protecting-factory-paint h2,.ppf-services-page #protecting-factory-paint h3 {color:#fff}
.ppf-services-page #protecting-factory-paint .ppf-factory-paint-graphic {max-width:1140px;margin:34px auto;background:#000}
.ppf-services-page .kc-content .ppf-factory-paint-graphic img {width:100%;height:auto;max-height:none;object-fit:contain}
.ppf-services-page .ppf-factory-paint-graphic figcaption {margin-top:20px;padding-top:18px;border-top:1px solid #3c3c42;font-size:.92rem;line-height:1.6;color:#c7c7cc}
.ppf-services-page .ppf-factory-paint-copy {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:36px;margin-top:34px}
.ppf-services-page .ppf-factory-paint-copy h3 {margin:0 0 16px;font-size:1.65rem}
.ppf-services-page .ppf-factory-paint-copy p {margin:0}
@media(max-width:700px){.ppf-services-page .ppf-factory-paint-copy{grid-template-columns:1fr;gap:26px}}
.ppf-services-page #ppf-guides-and-articles .tm-resource-grid {grid-template-columns:repeat(3,minmax(0,1fr))}
.ppf-services-page #ppf-guides-and-articles .tm-resource-card {grid-template-columns:1fr}
.ppf-services-page #ppf-guides-and-articles .tm-resource-card img {width:100%;height:170px;object-fit:cover}
.ppf-services-page .kc-icon-grid .kc-card {padding:26px}
@media(max-width:1050px){.ppf-services-page .ppf-hub-packages,.ppf-services-page .ppf-hub-films{grid-template-columns:repeat(2,minmax(0,1fr))}.ppf-services-page .ppf-hub-package,.ppf-services-page .ppf-hub-film,.ppf-services-page .ppf-hub-package:nth-child(4){grid-column:auto}.ppf-services-page .ppf-hub-gallery{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:800px){.ppf-services-page .kc-grid.tm-grid-two{grid-template-columns:1fr}.ppf-services-page .ppf-hub-quote .tm-quote-copy{gap:30px}.ppf-services-page #ppf-guides-and-articles .tm-resource-grid{grid-template-columns:1fr}.ppf-services-page #ppf-guides-and-articles .tm-resource-card{grid-template-columns:130px minmax(0,1fr)}.ppf-services-page #ppf-guides-and-articles .tm-resource-card img{height:100%;min-height:110px}}
@media(max-width:600px){.ppf-services-page .ppf-hub-packages,.ppf-services-page .ppf-hub-films{grid-template-columns:1fr}.ppf-services-page .ppf-hub-package,.ppf-services-page .ppf-hub-film{display:block;grid-row:auto}.ppf-services-page .ppf-hub-package>*+*,.ppf-services-page .ppf-hub-film>*+*{margin-top:22px!important}.ppf-services-page .ppf-hub-note{padding:22px}.ppf-services-page .ppf-hub-gallery{gap:16px}.ppf-services-page .ppf-hub-gallery figcaption{font-size:.83rem}}
@supports not(grid-template-rows:subgrid){.ppf-services-page .ppf-hub-package,.ppf-services-page .ppf-hub-film{display:flex;flex-direction:column}.ppf-services-page .ppf-hub-price,.ppf-services-page .ppf-hub-film .tm-action-row{margin-top:auto}}
