/* Platinum Gas brand unify (2026-09-25). Loaded last on every page.
   Black for buttons and dark bands, slate grey (#263640) as the accent, yellow only for highlights (stars, icons). */
:root {
  --pg-accent: #263640; --pg-accent-hover: #18232a; --pg-black: #111718;
  --pg-surface: #f4f5f6; --pg-line: #d9dfe2; --pg-muted: #526168; --pg-light: #c6cdd2;
  --pg-utility-blue: #263640; --pg-blue-dark: #18232a; --pg-blue-soft: #eef1f2; --pg-warm-white: #f4f5f6;
}
html body.pg-site.pg-site { --pg-brand-blue: #263640; --pg-brand-hover: #18232a; --pg-editorial-teal: #263640; --pg-utility-blue: #263640; --pg-blue-dark: #18232a; --pg-blue-soft: #eef1f2; }

/* Dark bands: black instead of teal/navy */
html body.pg-site.pg-site #main-content .et_pb_section.pg-band--blue, html body.pg-site.pg-site #main-content .pg-hero--editorial, html body.pg-site.pg-site #main-content .et_pb_section.pg-hero--success { background-color: #111718 !important; }
html body.pg-site.pg-site #main-content .et_pb_section.pg-band--gold { background-color: #f4f5f6 !important; }
html body.pg-site.pg-site #main-content .pg-article-hero.pg-band--ink:not(.pg-resource-article--urgent-safety) { background-color: #111718 !important; }
html body.pg-site.pg-site #main-content :is(.pg-hero, .pg-content-band--statement, .pg-band--blue) { border-bottom-color: transparent !important; }
html body.pg-site.pg-site #main-content .pg-resource-library__finder { border-color: #d9dfe2 !important; }

/* Eyebrows: slate on light backgrounds, light grey on dark ones */
html body.pg-site.pg-site .pg-eyebrow { color: #263640 !important; }
html body.pg-site.pg-site :is(.pg-band--blue, .pg-band--charcoal, .pg-hero--editorial, .pg-hero--success, .pg-home-contact, .pg-home-photo, .pg-contact-lead, .pg-reilly-story, .pg-contact-reviews, .pg-site-footer, .pg-article-hero, .pg-article-final, .pg-hero--legal, .pg-resource-library__item--featured) .pg-eyebrow { color: #f4bd57 !important; }
html body.pg-site.pg-site .pg-page-about-us .pg-related .pg-eyebrow, html body.pg-site.pg-site.pg-page-about-us .pg-related .pg-eyebrow { color: #263640 !important; }
html body.pg-site.pg-site .pg-ideas-route .pg-route-eyebrow { color: #f4bd57; }
html body.pg-site.pg-site .pg-band--blue dt, html body.pg-site.pg-site .pg-home-story__facts dt { color: #c6cdd2 !important; }

/* Links */
html body.pg-site.pg-site :is(.pg-link-list__link, .pg-featured-guides__read, .pg-featured-guides__all, .pg-resource-library__read, .pg-area-route__link, .pg-home-feature__link, .pg-service-index__link) { color: #263640; }
html body.pg-site.pg-site :is(.pg-link-list__link, .pg-featured-guides__read, .pg-featured-guides__all, .pg-resource-library__read, .pg-area-route__link, .pg-home-feature__link):hover { color: #111718; }
html body.pg-site.pg-site .pg-featured-guides__copy h2 a { color: #111718; }
html body.pg-site.pg-site :is(.pg-resource-library__read, .pg-resource-library__meta) span { color: #263640 !important; }
html body.pg-site.pg-site .pg-skip-link { color: #111718 !important; }

/* Buttons: solid black primary, black outline secondary */
html body.pg-site.pg-site .pg-button.pg-button--primary, html body.pg-site.pg-site #main-header .pg-button.pg-header-text, html body.pg-site.pg-site #main-header .pg-mobile-menu__text {
  background: #111718 !important; border-color: #111718 !important; color: #fff !important; }
html body.pg-site.pg-site .pg-button.pg-button--primary :is(span, svg) { color: #fff !important; }
html body.pg-site.pg-site .pg-button.pg-button--primary:is(:hover, :focus-visible) { background: #263640 !important; border-color: #263640 !important; color: #fff !important; }
html body.pg-site.pg-site #main-header :is(.pg-header-text, .pg-mobile-menu__text) :is(span, svg) { color: #fff !important; }
html body.pg-site.pg-site #main-header :is(.pg-header-text, .pg-mobile-menu__text):is(:hover, :focus-visible) { background: #263640 !important; border-color: #263640 !important; color: #fff !important; }
html body.pg-site.pg-site .pg-button.pg-button--secondary { background: transparent !important; border-color: #111718 !important; color: #111718 !important; }
html body.pg-site.pg-site .pg-button.pg-button--secondary :is(span, svg) { color: inherit !important; }
html body.pg-site.pg-site .pg-button.pg-button--secondary:is(:hover, :focus-visible) { background: #111718 !important; border-color: #111718 !important; color: #fff !important; }
html body.pg-site.pg-site a:is(.pg-project-cta, .pg-flow-cta) { --pg-button-ink: #111718; }
html body.pg-site.pg-site a:is(.pg-project-cta, .pg-flow-cta):hover { --pg-button-ink: #263640; }
/* On dark bands, buttons flip to white */
html body.pg-site.pg-site :is(.pg-band--blue, .pg-band--charcoal, .pg-hero--editorial, .pg-hero--success, .pg-home-contact, .pg-contact-lead, .pg-prefooter, .pg-site-footer, .pg-article-hero, .pg-article-final, .pg-hero--legal, .pg-resource-library__item--featured) .pg-button.pg-button--primary { background: #fff !important; border-color: #fff !important; color: #111718 !important; }
html body.pg-site.pg-site :is(.pg-band--blue, .pg-band--charcoal, .pg-hero--editorial, .pg-hero--success, .pg-home-contact, .pg-contact-lead, .pg-prefooter, .pg-site-footer, .pg-article-hero, .pg-article-final, .pg-hero--legal, .pg-resource-library__item--featured) .pg-button.pg-button--primary :is(span, svg) { color: #111718 !important; }
html body.pg-site.pg-site :is(.pg-band--blue, .pg-band--charcoal, .pg-hero--editorial, .pg-hero--success, .pg-home-contact, .pg-contact-lead, .pg-prefooter, .pg-site-footer, .pg-article-hero, .pg-article-final, .pg-hero--legal, .pg-resource-library__item--featured) .pg-button.pg-button--secondary { background: transparent !important; border-color: #fff !important; color: #fff !important; }
html body.pg-site.pg-site :is(.pg-band--blue, .pg-band--charcoal, .pg-hero--editorial, .pg-hero--success, .pg-home-contact, .pg-contact-lead, .pg-prefooter, .pg-site-footer, .pg-article-hero, .pg-article-final, .pg-hero--legal, .pg-resource-library__item--featured) .pg-button:is(:hover, :focus-visible) { background: #263640 !important; border-color: #fff !important; color: #fff !important; }
html body.pg-site.pg-site :is(.pg-band--blue, .pg-band--charcoal, .pg-hero--editorial, .pg-hero--success, .pg-home-contact, .pg-contact-lead, .pg-prefooter, .pg-site-footer, .pg-article-hero, .pg-article-final, .pg-hero--legal, .pg-resource-library__item--featured) .pg-button:is(:hover, :focus-visible) :is(span, svg) { color: #fff !important; }

/* Mobile action bar */
html body.pg-site.pg-site .pg-mobile-actions a:first-child { background: #111718 !important; border-color: #111718 !important; color: #fff !important; }
html body.pg-site.pg-site .pg-mobile-actions a:first-child :is(span, svg) { color: #fff !important; }
html body.pg-site.pg-site .pg-mobile-actions .pg-mobile-actions__quote { background: #fff !important; border-color: #111718 !important; color: #111718 !important; }

/* Forms */
html body.pg-site.pg-site #main-content :is(.pg-quote-form, .pg-contact-lead) :is(.wpforms-page-next, .wpforms-submit, button[type="submit"]),
html body.pg-site.pg-site .pg-newsletter :is(.wpforms-submit, button[type="submit"]) { background: #111718 !important; border-color: #111718 !important; color: #fff !important; }
html body.pg-site.pg-site #main-content :is(.pg-quote-form, .pg-contact-lead) :is(.wpforms-page-next, .wpforms-submit, button[type="submit"]):hover,
html body.pg-site.pg-site .pg-newsletter :is(.wpforms-submit, button[type="submit"]):hover { background: #263640 !important; border-color: #263640 !important; color: #fff !important; }
html body.pg-site.pg-site #main-content .wpforms-page-indicator-page-progress { background-color: #111718 !important; }
html body.pg-site.pg-site #main-content .pg-form-summary { border-left-color: #263640 !important; }

/* Pre-footer and newsletter */
html body.pg-site.pg-site .pg-prefooter { background: #111718 !important; border-color: #111718 !important; box-shadow: inset 0 1px 0 rgba(255, 255, 255, .08); }
html body.pg-site.pg-site .pg-prefooter :is(h2, p, .pg-eyebrow) { color: #fff !important; }
html body.pg-site.pg-site .pg-prefooter a:focus-visible { outline: 2px solid #fff !important; outline-offset: 4px; }
html body.pg-site.pg-site .pg-newsletter { background: #f4f5f6 !important; }

/* Footer */
html body.pg-site.pg-site #main-footer, html body.pg-site.pg-site .pg-site-footer { background: #111718 !important; }
html body.pg-site.pg-site .pg-site-footer :is(.pg-site-footer__contact-label) { color: #f4bd57 !important; }
html body.pg-site.pg-site .pg-site-footer .pg-site-footer__contact-text a { background: transparent !important; border-color: #fff !important; color: #fff !important; }
html body.pg-site.pg-site .pg-site-footer .pg-site-footer__contact-text a :is(span, svg) { color: #fff !important; }
html body.pg-site.pg-site .pg-site-footer .pg-site-footer__contact-text a:is(:hover, :focus-visible) { background: #fff !important; color: #111718 !important; }
html body.pg-site.pg-site .pg-site-footer .pg-site-footer__contact-text a:is(:hover, :focus-visible) :is(span, svg) { color: #111718 !important; }

/* About page: service-page type and spacing, same layout */
html body.pg-site.pg-page-about-us .pg-hero--about .pg-hero__heading { text-align: center; }
html body.pg-site.pg-page-about-us .pg-hero--about h1 { max-width: 940px; margin-left: auto !important; margin-right: auto !important; color: #111619 !important; font-size: 52px !important; line-height: 1.12 !important; font-weight: 700 !important; letter-spacing: 0 !important; text-align: center; }
html body.pg-site.pg-page-about-us .pg-hero--about :is(.pg-hero__lead, .pg-hero__support-row p:not(.pg-eyebrow)) { color: #526168 !important; font-size: 19px !important; line-height: 1.75 !important; }
html body.pg-site.pg-page-about-us #main-content .et_pb_section:is(.pg-content-band, .pg-faq) { padding-top: 112px !important; padding-bottom: 112px !important; }
html body.pg-site.pg-page-about-us #main-content :is(.pg-content-band, .pg-faq, .pg-related, .pg-home-story) h2 { font-weight: 600 !important; letter-spacing: 0 !important; text-wrap: balance; }
html body.pg-site.pg-page-about-us #main-content :is(.pg-content-band, .pg-faq) :is(.pg-content-band__copy, .pg-faq__heading) h2 { color: #182428 !important; font-size: 40px !important; line-height: 1.2 !important; }
html body.pg-site.pg-page-about-us #main-content .pg-band--blue :is(h2, h3, strong) { color: #fff !important; }
html body.pg-site.pg-page-about-us #main-content .pg-content-band--statement .pg-content-band__copy h2 { color: #fff !important; font-size: 42px !important; }
html body.pg-site.pg-page-about-us #main-content .pg-home-story h2 { font-size: 36px !important; line-height: 1.2 !important; font-weight: 650 !important; }
html body.pg-site.pg-page-about-us #main-content .pg-band--blue :is(p, li):not(.pg-eyebrow) { color: #c6cdd2 !important; }
html body.pg-site.pg-page-about-us #main-content .pg-band--blue :is(.pg-home-story__facts, .pg-home-story__facts *, .pg-feature-list, .pg-feature-list > li) { border-color: #3a4649 !important; }
html body.pg-site.pg-page-about-us #main-content :is(.pg-content-band, .pg-faq) :is(.pg-content-band__copy, .pg-faq__heading) p:not(.pg-eyebrow) { color: #526168; font-size: 18px; line-height: 1.75; }
html body.pg-site.pg-page-about-us #main-content .pg-faq-question { color: #182428 !important; font-size: 19px !important; line-height: 1.5 !important; font-weight: 550 !important; }
html body.pg-site.pg-page-about-us #main-content .pg-faq__accordion p { color: #526168 !important; font-size: 17px !important; line-height: 1.85 !important; }
html body.pg-site.pg-page-about-us #main-content .pg-related h2 { color: #111718 !important; font-size: 20px !important; line-height: 1.4 !important; }
@media (max-width: 767px) {
  html body.pg-site.pg-page-about-us .pg-hero--about h1 { font-size: 36px !important; }
  html body.pg-site.pg-page-about-us #main-content .et_pb_section:is(.pg-content-band, .pg-faq) { padding-top: 80px !important; padding-bottom: 80px !important; }
  html body.pg-site.pg-page-about-us #main-content :is(.pg-content-band, .pg-faq) :is(.pg-content-band__copy, .pg-faq__heading) h2, html body.pg-site.pg-page-about-us #main-content .pg-content-band--statement .pg-content-band__copy h2 { font-size: 30px !important; }
  html body.pg-site.pg-page-about-us #main-content .pg-home-story h2 { font-size: 28px !important; }
  html body.pg-site.pg-page-about-us #main-content .pg-faq-question { font-size: 18px !important; }
}

/* === Yellow highlights: Text Us buttons and accent flair === */
html body.pg-site.pg-site #main-header a.pg-button[href^="sms:"],
html body.pg-site.pg-site #main-content a.pg-button[href^="sms:"],
html body.pg-site.pg-site section.pg-prefooter.pg-prefooter a.pg-button[href^="sms:"],
html body.pg-site.pg-site #main-footer a[href^="sms:"],
html body.pg-site.pg-site .pg-mobile-actions a[href^="sms:"] { background: #e5a128 !important; border-color: #e5a128 !important; color: #111718 !important; }
html body.pg-site.pg-site #main-header a.pg-button[href^="sms:"] :is(span, svg),
html body.pg-site.pg-site #main-content a.pg-button[href^="sms:"] :is(span, svg),
html body.pg-site.pg-site section.pg-prefooter.pg-prefooter a.pg-button[href^="sms:"] :is(span, svg),
html body.pg-site.pg-site #main-footer a[href^="sms:"] :is(span, svg),
html body.pg-site.pg-site .pg-mobile-actions a[href^="sms:"] :is(span, svg) { color: #111718 !important; }
html body.pg-site.pg-site #main-header a.pg-button[href^="sms:"]:is(:hover, :focus-visible),
html body.pg-site.pg-site #main-content a.pg-button[href^="sms:"]:is(:hover, :focus-visible),
html body.pg-site.pg-site section.pg-prefooter.pg-prefooter a.pg-button[href^="sms:"]:is(:hover, :focus-visible),
html body.pg-site.pg-site #main-footer a[href^="sms:"]:is(:hover, :focus-visible),
html body.pg-site.pg-site .pg-mobile-actions a[href^="sms:"]:is(:hover, :focus-visible) { background: #f4bd57 !important; border-color: #f4bd57 !important; color: #111718 !important; }
html body.pg-site.pg-site #main-content .pg-text-action[href^="sms:"] { border-color: #e5a128 !important; }
html body.pg-site.pg-site #main-content .pg-text-action[href^="sms:"] svg { color: #c58a12 !important; }
html body.pg-site.pg-site .pg-flow-plan h3, html body.pg-site.pg-site .pg-process-number { color: #f4bd57 !important; }
html body.pg-site.pg-site .pg-reilly-trust .pg-trust-eyebrow { color: #f4bd57 !important; }
html body.pg-site.pg-site .pg-season { border-top-color: #e5a128 !important; }
html body.pg-site.pg-site .pg-band--blue dt, html body.pg-site.pg-site .pg-home-story__facts dt { color: #f4bd57 !important; }
/* === /Yellow highlights === */

/* === About: "How Platinum Gas handles the job" timeline === */
html body.pg-site:is(.pg-page-about-us, .pg-page-thank-you) #main-content .pg-content-band--process { background: linear-gradient(180deg, #fff 0%, #f7f8f8 100%) !important; overflow: hidden; }
html body.pg-site:is(.pg-page-about-us, .pg-page-thank-you) #main-content .pg-content-band--process .pg-content-band__copy > div > :is(.pg-eyebrow, h2, p) { max-width: 760px; margin-left: auto !important; margin-right: auto !important; text-align: center; }
html body.pg-site:is(.pg-page-about-us, .pg-page-thank-you) #main-content .pg-content-band--process .pg-content-band__copy > div > p:not(.pg-eyebrow) { margin-top: 18px !important; font-size: 19px; }
html body.pg-site:is(.pg-page-about-us, .pg-page-thank-you) .pg-about-track { position: relative; margin: 80px 0 0; --pg-step-gap: 44px; }
html body.pg-site:is(.pg-page-about-us, .pg-page-thank-you) .pg-about-steps { position: relative; display: grid; grid-template-columns: repeat(var(--steps, 5), minmax(0, 1fr)); gap: var(--pg-step-gap, 44px); margin: 0 !important; padding: 0 !important; list-style: none !important; }
html body.pg-site:is(.pg-page-about-us, .pg-page-thank-you) .pg-about-steps::before,
html body.pg-site:is(.pg-page-about-us, .pg-page-thank-you) .pg-about-steps::after { content: ""; position: absolute; top: 43px; left: calc((100% - (var(--steps, 5) - 1) * var(--pg-step-gap, 44px)) / (2 * var(--steps, 5))); right: calc((100% - (var(--steps, 5) - 1) * var(--pg-step-gap, 44px)) / (2 * var(--steps, 5))); height: 3px; border-radius: 3px; }
html body.pg-site:is(.pg-page-about-us, .pg-page-thank-you) .pg-about-steps::before { background: #e3e7e9; }
html body.pg-site:is(.pg-page-about-us, .pg-page-thank-you) .pg-about-steps::after { background: linear-gradient(90deg, #e5a128 0%, #f4bd57 50%, #e5a128 100%); transform-origin: left center; transition: transform 1.05s linear .3s; }
html body.pg-site:is(.pg-page-about-us, .pg-page-thank-you) .pg-reveal:not(.is-in-view) .pg-about-steps::after { transform: scaleX(0); }
/* flowing "gas" along the line */
html body.pg-site:is(.pg-page-about-us, .pg-page-thank-you) .pg-about-flow { position: absolute; z-index: 2; top: 44px; left: calc((100% - (var(--steps, 5) - 1) * var(--pg-step-gap, 44px)) / (2 * var(--steps, 5))); right: calc((100% - (var(--steps, 5) - 1) * var(--pg-step-gap, 44px)) / (2 * var(--steps, 5))); height: 0; pointer-events: none; }
html body.pg-site:is(.pg-page-about-us, .pg-page-thank-you) .pg-about-flow::before { content: ""; position: absolute; top: -9px; left: 0; width: 18px; height: 18px; margin-left: -9px; border-radius: 50%; background: radial-gradient(circle at 35% 35%, #fff8e1 0%, #f4bd57 45%, #e5a128 100%); box-shadow: 0 0 0 5px rgba(244, 189, 87, .22), 0 0 24px 9px rgba(229, 161, 40, .5); opacity: 0; }
html body.pg-site:is(.pg-page-about-us, .pg-page-thank-you) .is-in-view .pg-about-flow::before { animation: pgGasFlow 5s linear 2.2s infinite; }
@keyframes pgGasFlow { 0% { left: 0; opacity: 0; } 4% { left: 0; opacity: 1; } 70% { left: 100%; opacity: 1; } 78% { left: 100%; opacity: 0; } 100% { left: 100%; opacity: 0; } }
/* steps */
html body.pg-site:is(.pg-page-about-us, .pg-page-thank-you) .pg-about-step { position: relative; display: flex; flex-direction: column; align-items: center; gap: 28px; min-width: 0; margin: 0 !important; padding: 0 6px !important; list-style: none !important; text-align: center; }
html body.pg-site:is(.pg-page-about-us, .pg-page-thank-you) .pg-about-step::before, html body.pg-site:is(.pg-page-about-us, .pg-page-thank-you) .pg-about-step::marker { content: none; }
html body.pg-site:is(.pg-page-about-us, .pg-page-thank-you) .pg-about-step__num { position: relative; z-index: 3; display: inline-flex; flex: 0 0 auto; align-items: center; justify-content: center; width: 88px; height: 88px; border-radius: 50%; background: #111718; color: #f4bd57 !important; font-family: Archivo, Manrope, sans-serif; font-size: 27px; font-weight: 700; letter-spacing: .02em; line-height: 1; box-shadow: 0 0 0 8px #fff, 0 16px 34px rgba(17, 23, 24, .22); transition: transform .35s cubic-bezier(.34, 1.56, .64, 1), background-color .3s ease, color .3s ease; }
html body.pg-site:is(.pg-page-about-us, .pg-page-thank-you) .pg-about-step__num::before { content: ""; position: absolute; z-index: -1; inset: 0; border-radius: 50%; background: radial-gradient(circle, rgba(244, 189, 87, .55) 0%, rgba(244, 189, 87, 0) 70%); opacity: 0; }
html body.pg-site:is(.pg-page-about-us, .pg-page-thank-you) .pg-about-step__num::after { content: ""; position: absolute; inset: -9px; border-radius: 50%; border: 3px solid #f4bd57; opacity: 0; pointer-events: none; }
html body.pg-site:is(.pg-page-about-us, .pg-page-thank-you) .pg-reveal:not(.is-in-view) .pg-about-step__num { scale: 0; opacity: 0; }
html body.pg-site:is(.pg-page-about-us, .pg-page-thank-you) .is-in-view .pg-about-step__num { animation: pgStepPop .8s cubic-bezier(.34, 1.56, .64, 1) calc(var(--i, 0) * .24s + .2s) both; }
html body.pg-site:is(.pg-page-about-us, .pg-page-thank-you) .is-in-view .pg-about-step__num::after { animation: pgPing 5s ease-out calc(2.4s + var(--i, 0) * 3.3s / (var(--steps, 5) - 1)) infinite; }
html body.pg-site:is(.pg-page-about-us, .pg-page-thank-you) .is-in-view .pg-about-step__num::before { animation: pgGlow 5s ease-out calc(2.4s + var(--i, 0) * 3.3s / (var(--steps, 5) - 1)) infinite; }
@keyframes pgStepPop { 0% { scale: 0; rotate: -140deg; opacity: 0; } 65% { scale: 1.16; rotate: 12deg; opacity: 1; } 82% { scale: .94; rotate: -4deg; } 100% { scale: 1; rotate: 0deg; opacity: 1; } }
@keyframes pgPing { 0% { transform: scale(.92); opacity: .95; } 24% { transform: scale(1.6); opacity: 0; } 100% { transform: scale(1.6); opacity: 0; } }
@keyframes pgGlow { 0% { opacity: 0; } 4% { opacity: 1; } 22% { opacity: 0; } 100% { opacity: 0; } }
html body.pg-site:is(.pg-page-about-us, .pg-page-thank-you) .pg-about-step__body { display: flex; flex-direction: column; gap: 8px; transition: opacity .6s ease calc(var(--i, 0) * .24s + .45s), transform .6s ease calc(var(--i, 0) * .24s + .45s); }
html body.pg-site:is(.pg-page-about-us, .pg-page-thank-you) .pg-reveal:not(.is-in-view) .pg-about-step__body { opacity: 0; transform: translateY(18px); }
html body.pg-site:is(.pg-page-about-us, .pg-page-thank-you) .pg-about-step__title { display: block; color: #111718; font-size: 19px; font-weight: 650; line-height: 1.35; text-wrap: balance; }
html body.pg-site:is(.pg-page-about-us, .pg-page-thank-you) .pg-about-step__body p { margin: 0 !important; padding: 0 !important; color: #526168; font-size: 15.5px; line-height: 1.65; text-wrap: pretty; }
@media (min-width: 901px) { html body.pg-site:is(.pg-page-about-us, .pg-page-thank-you) .pg-about-step__title { min-height: 2.7em; display: flex; align-items: flex-start; justify-content: center; } }
@media (hover: hover) and (pointer: fine) {
  html body.pg-site:is(.pg-page-about-us, .pg-page-thank-you) .pg-about-step:hover .pg-about-step__num { transform: translateY(-8px) rotate(-6deg); background: #e5a128; color: #111718 !important; }
}
@media (max-width: 900px) {
  html body.pg-site:is(.pg-page-about-us, .pg-page-thank-you) #main-content .pg-content-band--process .pg-content-band__copy > div > :is(.pg-eyebrow, h2, p) { text-align: left; margin-left: 0 !important; }
  html body.pg-site:is(.pg-page-about-us, .pg-page-thank-you) #main-content .pg-content-band--process .pg-content-band__copy > div > p:not(.pg-eyebrow) { font-size: 17px; }
  html body.pg-site:is(.pg-page-about-us, .pg-page-thank-you) .pg-about-track { margin-top: 48px; }
  html body.pg-site:is(.pg-page-about-us, .pg-page-thank-you) .pg-about-flow { display: none; }
  html body.pg-site:is(.pg-page-about-us, .pg-page-thank-you) .pg-about-steps { grid-template-columns: minmax(0, 1fr); gap: 0; }
  html body.pg-site:is(.pg-page-about-us, .pg-page-thank-you) .pg-about-steps::before, html body.pg-site:is(.pg-page-about-us, .pg-page-thank-you) .pg-about-steps::after { content: none; display: none; }
  html body.pg-site:is(.pg-page-about-us, .pg-page-thank-you) .pg-about-step { flex-direction: row; align-items: flex-start; gap: 22px; padding: 0 0 56px !important; text-align: left; }
  html body.pg-site:is(.pg-page-about-us, .pg-page-thank-you) .pg-about-step:last-child { padding-bottom: 0 !important; }
  html body.pg-site:is(.pg-page-about-us, .pg-page-thank-you) .pg-about-step:not(:last-child)::after { content: ""; position: absolute; z-index: 0; top: 36px; bottom: -36px; left: 34px; width: 4px; border-radius: 4px; background: linear-gradient(180deg, #e5a128 0%, #f4bd57 30%, #fff1c9 50%, #f4bd57 70%, #e5a128 100%); background-size: 100% 300%; transform-origin: center top; transition: transform .6s ease calc(var(--i, 0) * .24s + .5s); }
  html body.pg-site:is(.pg-page-about-us, .pg-page-thank-you) .is-in-view .pg-about-step:not(:last-child)::after { animation: pgShimmerY 2.6s linear infinite; }
  html body.pg-site:is(.pg-page-about-us, .pg-page-thank-you) .pg-reveal:not(.is-in-view) .pg-about-step:not(:last-child)::after { transform: scaleY(0); }
  @keyframes pgShimmerY { from { background-position: 0 0%; } to { background-position: 0 300%; } }
  html body.pg-site:is(.pg-page-about-us, .pg-page-thank-you) .pg-about-step__num { width: 72px; height: 72px; font-size: 22px; box-shadow: 0 0 0 6px #fff, 0 12px 26px rgba(17, 23, 24, .2); }
  html body.pg-site:is(.pg-page-about-us, .pg-page-thank-you) .pg-about-step__body { padding-top: 10px; }
  html body.pg-site:is(.pg-page-about-us, .pg-page-thank-you) .pg-about-step__title { font-size: 18px; }
}
@media (prefers-reduced-motion: reduce) {
  html body.pg-site:is(.pg-page-about-us, .pg-page-thank-you) .pg-about-steps::after, html body.pg-site:is(.pg-page-about-us, .pg-page-thank-you) .pg-about-step__body, html body.pg-site:is(.pg-page-about-us, .pg-page-thank-you) .pg-about-step::after, html body.pg-site:is(.pg-page-about-us, .pg-page-thank-you) .pg-about-step__num { transition: none; }
  html body.pg-site:is(.pg-page-about-us, .pg-page-thank-you) .pg-about-step__num, html body.pg-site:is(.pg-page-about-us, .pg-page-thank-you) .pg-about-step__num::before, html body.pg-site:is(.pg-page-about-us, .pg-page-thank-you) .pg-about-step__num::after, html body.pg-site:is(.pg-page-about-us, .pg-page-thank-you) .pg-about-flow::before, html body.pg-site:is(.pg-page-about-us, .pg-page-thank-you) .pg-about-step::after { animation: none !important; }
  html body.pg-site:is(.pg-page-about-us, .pg-page-thank-you) .pg-about-flow { display: none; }
  html body.pg-site:is(.pg-page-about-us, .pg-page-thank-you) .pg-reveal:not(.is-in-view) :is(.pg-about-step__num, .pg-about-step__body) { scale: 1; opacity: 1; transform: none; }
  html body.pg-site:is(.pg-page-about-us, .pg-page-thank-you) .pg-reveal:not(.is-in-view) .pg-about-steps::after, html body.pg-site:is(.pg-page-about-us, .pg-page-thank-you) .pg-reveal:not(.is-in-view) .pg-about-step::after { transform: none; }
}
/* === /About timeline === */

/* === Gas flow: service/town process steps and the Project Ideas gas-line diagram === */
/* Service and town pages: one gold pipe across the steps, with a pulse running through it */
html body.pg-site.pg-site .pg-installation-process .pg-process-steps li { border-top-color: #2b3538; }
html body.pg-site.pg-site .pg-installation-process .pg-process-steps li::before { top: -2px; height: 3px; border-radius: 3px; background: linear-gradient(90deg, #e5a128, #f4bd57); --pg-pipe-end: 100%; }
html body.pg-site.pg-site .pg-installation-process .pg-process-steps li:not(:last-child)::before { width: calc(100% + 48px); }
html body.pg-site.pg-site .pg-installation-process .pg-process-steps li:not(:last-child) { --pg-pipe-end: calc(100% + 48px); }
html body.pg-site.pg-site .pg-installation-process .pg-process-steps li::after { content: ""; position: absolute; top: -8px; left: 0; width: 80px; height: 15px; margin-left: -40px; border-radius: 50%; background: radial-gradient(ellipse at center, #fff6dc 0%, rgba(244, 189, 87, .95) 30%, rgba(229, 161, 40, 0) 70%); opacity: 0; pointer-events: none; }
html body.pg-site.pg-site .pg-installation-process.pg-process-motion li.is-visible::after { animation: pgPipeFlow 4.5s linear 1.4s infinite; }
html body.pg-site.pg-site .pg-installation-process.pg-process-motion li.is-visible:nth-child(2)::after { animation-delay: 2.5s; }
html body.pg-site.pg-site .pg-installation-process.pg-process-motion li.is-visible:nth-child(3)::after { animation-delay: 3.6s; }
@keyframes pgPipeFlow { 0% { left: 0; opacity: 0; } 3% { opacity: 1; } 24% { left: var(--pg-pipe-end, 100%); opacity: 1; } 27% { left: var(--pg-pipe-end, 100%); opacity: 0; } 100% { left: var(--pg-pipe-end, 100%); opacity: 0; } }
html body.pg-site.pg-site .pg-installation-process.pg-process-motion li.is-visible .pg-process-number { animation: pg-process-arrive .8s cubic-bezier(.22, .61, .36, 1) var(--pg-step-delay, 0ms) both, pgNumGlow 4.5s ease-out 1.4s infinite; }
html body.pg-site.pg-site .pg-installation-process.pg-process-motion li.is-visible:nth-child(2) .pg-process-number { animation-delay: var(--pg-step-delay, 0ms), 2.5s; }
html body.pg-site.pg-site .pg-installation-process.pg-process-motion li.is-visible:nth-child(3) .pg-process-number { animation-delay: var(--pg-step-delay, 0ms), 3.6s; }
@keyframes pgNumGlow { 0%, 100% { text-shadow: none; } 4% { text-shadow: 0 0 22px rgba(244, 189, 87, .9), 0 0 3px rgba(244, 189, 87, .95); } 24% { text-shadow: none; } }
@media (max-width: 1000px) {
  html body.pg-site.pg-site .pg-installation-process .pg-process-steps li:not(:last-child)::before { width: calc(100% + 28px); }
  html body.pg-site.pg-site .pg-installation-process .pg-process-steps li:not(:last-child) { --pg-pipe-end: calc(100% + 28px); }
}
@media (max-width: 767px) {
  html body.pg-site.pg-site .pg-installation-process .pg-process-steps li:not(:last-child)::before { width: 100%; }
  html body.pg-site.pg-site .pg-installation-process .pg-process-steps li:not(:last-child) { --pg-pipe-end: 100%; }
}

/* Project Ideas: gas flows from the meter, down the main line, out along the branches to each appliance */
html body.pg-site.pg-site .pg-ideas-route .pg-route-trunk span { z-index: 1; }
html body.pg-site.pg-site .pg-ideas-route .pg-route-trunk::after { content: ""; position: absolute; z-index: 0; top: -10px; left: calc(50% + 1px); width: 10px; height: 34px; margin-left: -5px; border-radius: 10px; background: linear-gradient(180deg, rgba(255, 246, 220, 0), #fff6dc 50%, rgba(255, 246, 220, 0)); opacity: 0; animation: pgTrunkFlow 3.6s linear infinite; pointer-events: none; }
@keyframes pgTrunkFlow { 0% { top: -10px; opacity: 0; } 3% { opacity: 1; } 24% { top: calc(100% - 24px); opacity: 1; } 27%, 100% { top: calc(100% - 24px); opacity: 0; } }
html body.pg-site.pg-site .pg-ideas-route .pg-route-source { animation: pgSourcePulse 3.6s ease-out infinite; }
@keyframes pgSourcePulse { 0% { box-shadow: 0 0 0 0 rgba(244, 189, 87, .45), 0 0 26px rgba(244, 189, 87, .35); } 18%, 100% { box-shadow: 0 0 0 12px rgba(244, 189, 87, 0), 0 0 0 rgba(244, 189, 87, 0); } }
html body.pg-site.pg-site .pg-ideas-route .pg-route-branches li:not(.is-future) { animation: pgBoxGlow 3.6s ease-out infinite; }
@keyframes pgBoxGlow { 0%, 11% { border-color: #3a4649; box-shadow: none; } 15% { border-color: #f4bd57; box-shadow: 0 0 0 1px rgba(244, 189, 87, .35), 0 0 24px rgba(244, 189, 87, .28); } 42%, 100% { border-color: #3a4649; box-shadow: none; } }
@media (min-width: 901px) {
  html body.pg-site.pg-site .pg-ideas-route .pg-route-branches::before { border-top: 0; top: -1px; height: 3px; border-radius: 3px; background-image: linear-gradient(90deg, rgba(255, 246, 220, 0), #fff6dc 50%, rgba(255, 246, 220, 0)), linear-gradient(90deg, rgba(255, 246, 220, 0), #fff6dc 50%, rgba(255, 246, 220, 0)), linear-gradient(#f4bd57, #f4bd57); background-repeat: no-repeat; background-size: 0 100%, 0 100%, 100% 100%; background-position: 50% 0, 50% 0, 0 0; animation: pgBusFlow 3.6s linear infinite; }
  @keyframes pgBusFlow { 0%, 25% { background-size: 0 100%, 0 100%, 100% 100%; background-position: 50% 0, 50% 0, 0 0; } 27% { background-size: 110px 100%, 110px 100%, 100% 100%; background-position: 50% 0, 50% 0, 0 0; } 55% { background-size: 110px 100%, 110px 100%, 100% 100%; background-position: 0% 0, 100% 0, 0 0; } 58%, 100% { background-size: 0 100%, 0 100%, 100% 100%; background-position: 0% 0, 100% 0, 0 0; } }
  html body.pg-site.pg-site .pg-ideas-route .pg-route-branches li::before { border-left: 0; width: 3px; margin-left: -1px; background-image: linear-gradient(180deg, rgba(255, 246, 220, 0), #fff6dc 50%, rgba(255, 246, 220, 0)), linear-gradient(#f4bd57, #f4bd57); background-repeat: no-repeat; background-size: 100% 16px, 100% 100%; background-position: 0 -16px, 0 0; animation: pgDropFlow 3.6s linear infinite; }
  @keyframes pgDropFlow { 0% { background-position: 0 -16px, 0 0; } 12% { background-position: 0 calc(100% + 16px), 0 0; } 13%, 100% { background-position: 0 calc(100% + 16px), 0 0; } }
  html body.pg-site.pg-site .pg-ideas-route .pg-route-branches li.is-future::before { background: repeating-linear-gradient(180deg, #c6cdd2 0 5px, transparent 5px 9px); animation: none; }
  html body.pg-site.pg-site .pg-ideas-route .pg-route-branches li:is(:nth-child(3), :nth-child(4)), html body.pg-site.pg-site .pg-ideas-route .pg-route-branches li:is(:nth-child(3), :nth-child(4))::before { animation-delay: 1.15s; }
  html body.pg-site.pg-site .pg-ideas-route .pg-route-branches li:is(:nth-child(2), :nth-child(5)), html body.pg-site.pg-site .pg-ideas-route .pg-route-branches li:is(:nth-child(2), :nth-child(5))::before { animation-delay: 1.56s; }
  html body.pg-site.pg-site .pg-ideas-route .pg-route-branches li:is(:nth-child(1), :nth-child(6)), html body.pg-site.pg-site .pg-ideas-route .pg-route-branches li:is(:nth-child(1), :nth-child(6))::before { animation-delay: 1.98s; }
}
@media (max-width: 900px) {
  html body.pg-site.pg-site .pg-ideas-route .pg-route-trunk::after { left: 25px; }
  html body.pg-site.pg-site .pg-ideas-route .pg-route-branches li::after { border-left: 0; width: 3px; margin-left: -1px; background: linear-gradient(180deg, #f4bd57 0%, #f4bd57 35%, #fff6dc 50%, #f4bd57 65%, #f4bd57 100%); background-size: 100% 300%; animation: pgShimmerDown 2.4s linear infinite; }
  @keyframes pgShimmerDown { from { background-position: 0 0%; } to { background-position: 0 300%; } }
  html body.pg-site.pg-site .pg-ideas-route .pg-route-branches li:nth-child(1) { animation-delay: .9s; }
  html body.pg-site.pg-site .pg-ideas-route .pg-route-branches li:nth-child(2) { animation-delay: 1.2s; }
  html body.pg-site.pg-site .pg-ideas-route .pg-route-branches li:nth-child(3) { animation-delay: 1.5s; }
  html body.pg-site.pg-site .pg-ideas-route .pg-route-branches li:nth-child(4) { animation-delay: 1.8s; }
  html body.pg-site.pg-site .pg-ideas-route .pg-route-branches li:nth-child(5) { animation-delay: 2.1s; }
}
@media (prefers-reduced-motion: reduce) {
  html body.pg-site.pg-site :is(.pg-installation-process .pg-process-steps li, .pg-installation-process .pg-process-number, .pg-ideas-route .pg-route-source, .pg-ideas-route .pg-route-branches li) { animation: none !important; }
  html body.pg-site.pg-site :is(.pg-installation-process .pg-process-steps li, .pg-ideas-route .pg-route-trunk, .pg-ideas-route .pg-route-branches, .pg-ideas-route .pg-route-branches li)::after,
  html body.pg-site.pg-site :is(.pg-ideas-route .pg-route-branches, .pg-ideas-route .pg-route-branches li)::before { animation: none !important; }
  html body.pg-site.pg-site .pg-ideas-route .pg-route-trunk::after, html body.pg-site.pg-site .pg-installation-process .pg-process-steps li::after { display: none; }
}
/* === /Gas flow === */

/* === Link lists: clean rows with a yellow arrow; statement bands keep one yellow button === */
html body.pg-site.pg-site #main-content .pg-link-list__link { display: flex; align-items: center; justify-content: space-between; gap: 16px; width: 100%; background: transparent; text-decoration: none; transition: color .2s ease; }
html body.pg-site.pg-site #main-content .pg-link-list__link::after { content: "\2192"; flex: 0 0 auto; color: #e5a128; font-weight: 700; transition: transform .2s ease; }
html body.pg-site.pg-site #main-content .pg-link-list__link:is(:hover, :focus-visible)::after { transform: translateX(4px); }
html body.pg-site.pg-site #main-content :is(.pg-band--blue, .pg-band--charcoal, .pg-band--ink) .pg-link-list li { border-color: rgba(255, 255, 255, .16) !important; }
html body.pg-site.pg-site #main-content :is(.pg-band--blue, .pg-band--charcoal, .pg-band--ink) .pg-link-list__link { color: #fff !important; }
html body.pg-site.pg-site #main-content :is(.pg-band--blue, .pg-band--charcoal, .pg-band--ink) .pg-link-list__link:is(:hover, :focus-visible) { color: #f4bd57 !important; }
html body.pg-site.pg-site #main-content .pg-content-band--statement .pg-link-list__link { display: inline-flex; width: auto; justify-content: center; gap: 12px; min-height: 50px; padding: 12px 24px; border: 1px solid #e5a128; border-radius: 4px; background: #e5a128 !important; color: #111718 !important; font-weight: 700; filter: none; }
html body.pg-site.pg-site #main-content .pg-content-band--statement .pg-link-list__link::after { color: #111718; }
html body.pg-site.pg-site #main-content .pg-content-band--statement .pg-link-list__link:is(:hover, :focus-visible) { background: #f4bd57 !important; border-color: #f4bd57; color: #111718 !important; text-decoration: none; }
/* === /Link lists === */

/* === Inline "Text Us" text links stay text links (yellow underline, no fill) === */
html body.pg-site.pg-site #main-content :is(.pg-pilot-form__alternative, .pg-contact-lead__alternative) a.pg-button.pg-text-action[href^="sms:"],
html body.pg-site.pg-site #main-content :is(.pg-pilot-form__alternative, .pg-contact-lead__alternative) a.pg-button.pg-text-action[href^="sms:"]:is(:hover, :focus-visible) { background: transparent !important; box-shadow: none !important; border-color: #e5a128 !important; color: #111718 !important; }
html body.pg-site.pg-site #main-content :is(.pg-pilot-form__alternative, .pg-contact-lead__alternative) a.pg-button.pg-text-action[href^="sms:"] :is(span, svg) { color: #111718 !important; }
html body.pg-site.pg-site #main-content :is(.pg-pilot-form__alternative, .pg-contact-lead__alternative) a.pg-button.pg-text-action[href^="sms:"]:is(:hover, :focus-visible) { border-color: #111718 !important; }
html body.pg-site.pg-site #main-content :is(.pg-contact-lead, .pg-band--blue, .pg-band--charcoal, .pg-band--ink) :is(.pg-pilot-form__alternative, .pg-contact-lead__alternative) a.pg-button.pg-text-action[href^="sms:"],
html body.pg-site.pg-site #main-content :is(.pg-contact-lead, .pg-band--blue, .pg-band--charcoal, .pg-band--ink) :is(.pg-pilot-form__alternative, .pg-contact-lead__alternative) a.pg-button.pg-text-action[href^="sms:"] :is(span, svg) { color: #fff !important; }
html body.pg-site.pg-site #main-content :is(.pg-contact-lead, .pg-band--blue, .pg-band--charcoal, .pg-band--ink) :is(.pg-pilot-form__alternative, .pg-contact-lead__alternative) a.pg-button.pg-text-action[href^="sms:"]:is(:hover, :focus-visible) { border-color: #f4bd57 !important; }
/* === /Inline Text Us === */

/* === Fixes 2026-09-25 late: About hero band, About related links, town spacing, CTA text link === */
/* About hero: same full-width photo band and centred title row as the service pages */
html body.pg-site.pg-page-about-us #main-content .pg-hero--about .pg-hero__heading-row { max-width: none !important; width: 100% !important; margin: 0 !important; padding: 48px 32px 40px !important; }
html body.pg-site.pg-page-about-us #main-content .pg-hero--about :is(.pg-hero__heading-column, .pg-hero__heading) { display: block !important; width: 100% !important; max-width: none !important; margin: 0 !important; text-align: center !important; }
html body.pg-site.pg-page-about-us #main-content .pg-hero--about .pg-hero__heading h1, html body.pg-site.pg-page-about-us #main-content .pg-hero--about h1 { max-width: 940px !important; margin: 0 auto !important; text-align: center !important; }
html body.pg-site.pg-page-about-us #main-content .pg-hero--about :is(.pg-hero__media-row, .pg-hero__visual) { width: 100% !important; max-width: none !important; margin: 0 !important; padding: 0 !important; }
html body.pg-site.pg-page-about-us #main-content .pg-hero--about .pg-hero__visual { height: min(820px, max(560px, 72svh)) !important; overflow: hidden; }
html body.pg-site.pg-page-about-us #main-content .pg-hero--about .pg-hero__heading .et_pb_text_inner { max-width: 940px !important; margin: 0 auto !important; }
html body.pg-site.pg-page-about-us #main-content .pg-hero--about .pg-hero__visual :is(.pg-hero__image, .et_pb_code_inner, picture, figure) { display: block; width: 100% !important; height: 100% !important; max-width: none !important; margin: 0 !important; }
html body.pg-site.pg-page-about-us #main-content .pg-hero--about .pg-hero__visual img { display: block; width: 100% !important; height: 100% !important; max-width: none !important; max-height: none !important; object-fit: cover !important; object-position: 50% 42% !important; border-radius: 0 !important; }
@media (max-width: 767px) {
  html body.pg-site.pg-page-about-us #main-content .pg-hero--about .pg-hero__heading-row { padding: 30px 24px !important; }
  html body.pg-site.pg-page-about-us #main-content .pg-hero--about .pg-hero__visual { height: 360px !important; }
  html body.pg-site.pg-page-about-us #main-content .pg-hero--about .pg-hero__visual img { object-position: 86% 50% !important; }
}
/* About related pages sit on a light band: dark links, light dividers */
html body.pg-site.pg-page-about-us #main-content .pg-related .pg-link-list__link { color: #111718 !important; font-weight: 600; }
html body.pg-site.pg-page-about-us #main-content .pg-related .pg-link-list__link:is(:hover, :focus-visible) { color: #263640 !important; }
html body.pg-site.pg-page-about-us #main-content .pg-related .pg-link-list li { border-color: #d9dfe2 !important; }
/* Town pages: related list follows the black trust band, give it room */
html body.pg-site.pg-site #main-content .et_pb_section:has(.pg-reilly-trust) + .et_pb_section .pg-editorial-related { padding-top: 88px !important; }
@media (max-width: 767px) { html body.pg-site.pg-site #main-content .et_pb_section:has(.pg-reilly-trust) + .et_pb_section .pg-editorial-related { padding-top: 56px !important; } }
/* "Text Reilly" inside CTA copy on photo bands */
html body.pg-site.pg-site #main-content a.pg-cta-text-link { color: #fff !important; font-weight: 650; text-decoration: underline; text-decoration-color: #f4bd57; text-decoration-thickness: 2px; text-underline-offset: 5px; transition: color .2s ease; }
html body.pg-site.pg-site #main-content a.pg-cta-text-link:is(:hover, :focus-visible) { color: #f4bd57 !important; }
/* Featured resource card sits on black: light meta, white read link */
html body.pg-site.pg-site .pg-resource-library__item--featured :is(.pg-resource-library__read, .pg-resource-library__read span) { color: #fff !important; }
html body.pg-site.pg-site .pg-resource-library__item--featured .pg-resource-library__read:is(:hover, :focus-visible), html body.pg-site.pg-site .pg-resource-library__item--featured .pg-resource-library__read:is(:hover, :focus-visible) span { color: #f4bd57 !important; }
html body.pg-site.pg-site .pg-resource-library__item--featured .pg-resource-library__meta span { color: #c6cdd2 !important; }
html body.pg-site.pg-site .pg-resource-library__item--featured .pg-resource-library__meta span:first-child { color: #f4bd57 !important; }
/* === /Fixes 2026-09-25 late === */
/* === Blog posts: centred reading layout === */
/* Column: every body band uses one centred 720px reading measure with side padding */
html body.pg-site.single-post #main-content .pg-resource-article .et_pb_section:is(.pg-article__section, .pg-resource-safety, .pg-resource-intro, .pg-resource-mid-cta, .pg-article__sources-band, .pg-article-final, .pg-faq) > .et_pb_row { width: 100% !important; max-width: 768px !important; margin-left: auto !important; margin-right: auto !important; padding: 0 24px !important; box-sizing: border-box; background: transparent; border: 0 !important; }
html body.pg-site.single-post #main-content .pg-resource-article .et_pb_section:is(.pg-resource-comparison-band, .pg-resource-inline-media) > .et_pb_row { width: 100% !important; max-width: 1008px !important; margin-left: auto !important; margin-right: auto !important; padding: 0 24px !important; box-sizing: border-box; }
html body.pg-site.single-post #main-content .pg-resource-article .et_pb_section:is(.pg-article__section, .pg-resource-safety, .pg-resource-intro, .pg-resource-mid-cta, .pg-article__sources-band, .pg-article-final, .pg-faq) .et_pb_column { width: 100% !important; margin-right: 0 !important; }

/* Body sections: all white, continuous reading, consistent type */
html body.pg-site.single-post #main-content .pg-resource-article .et_pb_section.pg-article__section { background: #fff !important; padding: 32px 0 !important; border: 0 !important; }
html body.pg-site.single-post #main-content .pg-resource-article .et_pb_section.pg-article__section :is(h2, h3, h4, strong) { color: #111718 !important; }
html body.pg-site.single-post #main-content .pg-resource-article .et_pb_section.pg-article__section :is(p, li, dd, td):not(.pg-eyebrow) { color: #2f3a3f !important; }
html body.pg-site.single-post #main-content .pg-resource-article .et_pb_section.pg-article__section .pg-eyebrow { color: #263640 !important; }
html body.pg-site.single-post #main-content .pg-resource-article .et_pb_section.pg-article__section h2 { max-width: none !important; margin: 0 0 20px !important; padding: 0 !important; font-size: 30px !important; line-height: 1.25 !important; font-weight: 700 !important; letter-spacing: -.01em; text-wrap: balance; }
html body.pg-site.single-post #main-content .pg-resource-article .et_pb_section.pg-article__section h3 { margin: 32px 0 12px !important; padding: 0 !important; font-size: 21px !important; line-height: 1.35 !important; }
html body.pg-site.single-post #main-content .pg-resource-article .et_pb_section.pg-article__section :is(p, li) { font-size: 18px !important; line-height: 1.75 !important; }
html body.pg-site.single-post #main-content .pg-resource-article .et_pb_section.pg-article__section p { margin: 0 0 20px !important; padding: 0 !important; }
html body.pg-site.single-post #main-content .pg-resource-article .et_pb_section.pg-article__section .et_pb_text_inner > :last-child { margin-bottom: 0 !important; }
html body.pg-site.single-post #main-content .pg-resource-article .et_pb_section.pg-article__section .et_pb_text_inner > :is(ul, ol):not([class]) { margin: 0 0 24px !important; padding-left: 1.3em !important; }
html body.pg-site.single-post #main-content .pg-resource-article .et_pb_section.pg-article__section .et_pb_text_inner > :is(ul, ol):not([class]) > li { margin: 0 0 8px; padding-left: 4px; }
html body.pg-site.single-post #main-content .pg-resource-article .et_pb_section.pg-article__section .et_pb_text_inner > ul:not([class]) > li::marker { color: #e5a128; }
html body.pg-site.single-post #main-content .pg-resource-article .et_pb_section.pg-article__section a:not(.pg-button) { color: #111718 !important; text-decoration: underline; text-decoration-color: #e5a128; text-decoration-thickness: 2px; text-underline-offset: 4px; }
html body.pg-site.single-post #main-content .pg-resource-article .et_pb_section.pg-article__section a:not(.pg-button):is(:hover, :focus-visible) { color: #263640 !important; text-decoration-color: #111718; }
/* first and last body sections get room from the surrounding bands */
html body.pg-site.single-post #main-content .pg-resource-article .et_pb_section:is(.pg-resource-intro, .pg-resource-comparison-band, .pg-resource-mid-cta, .pg-resource-inline-media) + .pg-article__section { padding-top: 56px !important; }
html body.pg-site.single-post #main-content .pg-resource-article .et_pb_section.pg-article__section:has(+ :is(.pg-faq, .pg-article__sources-band, .pg-related)) { padding-bottom: 64px !important; }

/* Callout sections: cards inside the column */
html body.pg-site.single-post #main-content .pg-resource-article .et_pb_section.pg-article__section:is(.pg-resource-section--contrast, .pg-resource-section--warning) > .et_pb_row { max-width: 816px !important; padding: 36px 48px !important; border-radius: 0 8px 8px 0; }
html body.pg-site.single-post #main-content .pg-resource-article .et_pb_section.pg-article__section.pg-resource-section--contrast > .et_pb_row { background: #f4f5f6 !important; border-left: 4px solid #e5a128 !important; }
html body.pg-site.single-post #main-content .pg-resource-article .et_pb_section.pg-article__section.pg-resource-section--warning > .et_pb_row { background: #fdf1ef !important; border-left: 4px solid #c8372d !important; }
html body.pg-site.single-post #main-content .pg-resource-article .et_pb_section.pg-article__section:is(.pg-resource-section--milestone, .pg-resource-section--checkpoint) > .et_pb_row .et_pb_text_inner { padding-top: 28px; border-top: 3px solid #111718; }
html body.pg-site.single-post #main-content .pg-resource-article .et_pb_section.pg-article__section.pg-resource-section--checkpoint > .et_pb_row .et_pb_text_inner { border-top-color: #e5a128; }

/* Safety note under the hero */
html body.pg-site.single-post #main-content .pg-resource-article .et_pb_section.pg-resource-safety { background: #fff !important; padding: 40px 0 8px !important; }
html body.pg-site.single-post #main-content .pg-resource-article .et_pb_section.pg-resource-safety:not(.pg-resource-safety--urgent-safety) .pg-resource-safety-note { background: #f4f5f6; border-left: 4px solid #e5a128; border-radius: 0 8px 8px 0; padding: 22px 28px; }
html body.pg-site.single-post #main-content .pg-resource-article .et_pb_section.pg-resource-safety .pg-resource-safety-note h2 { font-size: 18px !important; line-height: 1.4 !important; margin: 0 0 8px !important; }
html body.pg-site.single-post #main-content .pg-resource-article .et_pb_section.pg-resource-safety .pg-resource-safety-note p:not(.pg-eyebrow) { font-size: 16px !important; line-height: 1.65 !important; }

/* Intro: short answer, then the contents card, stacked in the column */
html body.pg-site.single-post #main-content .pg-resource-article .et_pb_section.pg-resource-intro { background: #fff !important; padding: 40px 0 16px !important; }
html body.pg-site.single-post #main-content .pg-resource-article .et_pb_section.pg-resource-intro > .et_pb_row { display: block !important; }
html body.pg-site.single-post #main-content .pg-resource-article .et_pb_section.pg-resource-intro .pg-resource-intro__toc { margin-top: 36px !important; }
html body.pg-site.single-post #main-content .pg-resource-article .et_pb_section.pg-resource-intro .pg-resource-answer h2 { font-size: 26px !important; line-height: 1.3 !important; margin: 0 0 16px !important; color: #111718 !important; }
html body.pg-site.single-post #main-content .pg-resource-article .et_pb_section.pg-resource-intro .pg-resource-answer p:not(.pg-eyebrow) { font-size: 19px !important; line-height: 1.7 !important; color: #2f3a3f !important; }
html body.pg-site.single-post #main-content .pg-resource-article .et_pb_section.pg-resource-intro .pg-resource-toc { background: #f4f5f6; border: 0 !important; border-radius: 8px; padding: 28px 32px !important; }
html body.pg-site.single-post #main-content .pg-resource-article .et_pb_section.pg-resource-intro .pg-resource-toc h2 { font-size: 20px !important; line-height: 1.3 !important; margin: 0 0 16px !important; }
html body.pg-site.single-post #main-content .pg-resource-article .et_pb_section.pg-resource-intro .pg-resource-toc ol { column-gap: 32px !important; }
html body.pg-site.single-post #main-content .pg-resource-article .et_pb_section.pg-resource-intro .pg-resource-toc a { color: #111718 !important; }
html body.pg-site.single-post #main-content .pg-resource-article .et_pb_section.pg-resource-intro .pg-resource-toc a:is(:hover, :focus-visible) { color: #263640 !important; text-decoration: underline; text-decoration-color: #e5a128; text-underline-offset: 3px; }

/* Comparison table and images: wider centred column on white */
html body.pg-site.single-post #main-content .pg-resource-article .et_pb_section.pg-resource-comparison-band { background: #fff !important; padding: 48px 0 !important; }
html body.pg-site.single-post #main-content .pg-resource-article .et_pb_section.pg-resource-inline-media { background: #fff !important; padding: 24px 0 !important; border: 0 !important; }
html body.pg-site.single-post #main-content .pg-resource-article .et_pb_section.pg-resource-inline-media img { display: block; width: 100%; height: auto; border-radius: 8px; }
html body.pg-site.single-post #main-content .pg-resource-article .et_pb_section.pg-resource-inline-media figcaption { margin-top: 12px; color: #526168 !important; font-size: 14px !important; line-height: 1.5; text-align: center; }

/* Mid-article CTA: a contained black card */
html body.pg-site.single-post #main-content .pg-resource-article .et_pb_section.pg-resource-mid-cta { background: #fff !important; padding: 32px 0 !important; border: 0 !important; }
html body.pg-site.single-post #main-content .pg-resource-article .et_pb_section.pg-resource-mid-cta > .et_pb_row { max-width: 816px !important; padding: 40px 48px !important; background: #111718 !important; border-radius: 10px; }
html body.pg-site.single-post #main-content .pg-resource-article .et_pb_section.pg-resource-mid-cta h2 { font-size: 26px !important; line-height: 1.3 !important; color: #fff !important; margin: 0 0 12px !important; }
html body.pg-site.single-post #main-content .pg-resource-article .et_pb_section.pg-resource-mid-cta p:not(.pg-eyebrow):not(.pg-resource-mid-cta__service) { color: #c6cdd2 !important; font-size: 17px !important; line-height: 1.65 !important; }
html body.pg-site.single-post #main-content .pg-resource-article .et_pb_section.pg-resource-mid-cta .pg-actions { margin-top: 24px !important; }
html body.pg-site.single-post #main-content .pg-resource-article .et_pb_section:is(.pg-resource-mid-cta, .pg-article-final) :is(.pg-resource-mid-cta__service, .pg-article-final__service) { margin: 18px 0 0 !important; padding: 0 !important; }
html body.pg-site.single-post #main-content .pg-resource-article .et_pb_section:is(.pg-resource-mid-cta, .pg-article-final) :is(.pg-resource-mid-cta__service, .pg-article-final__service) a { display: inline-flex; align-items: center; gap: 8px; color: #fff !important; font-weight: 600; text-decoration: underline; text-decoration-color: #f4bd57; text-decoration-thickness: 2px; text-underline-offset: 5px; }
html body.pg-site.single-post #main-content .pg-resource-article .et_pb_section:is(.pg-resource-mid-cta, .pg-article-final) :is(.pg-resource-mid-cta__service, .pg-article-final__service) a::after { content: "\2192"; color: #f4bd57; text-decoration: none; transition: transform .2s ease; }
html body.pg-site.single-post #main-content .pg-resource-article .et_pb_section:is(.pg-resource-mid-cta, .pg-article-final) :is(.pg-resource-mid-cta__service, .pg-article-final__service) a:is(:hover, :focus-visible) { color: #f4bd57 !important; }
html body.pg-site.single-post #main-content .pg-resource-article .et_pb_section:is(.pg-resource-mid-cta, .pg-article-final) :is(.pg-resource-mid-cta__service, .pg-article-final__service) a:is(:hover, :focus-visible)::after { transform: translateX(4px); }

/* FAQ, sources, closing band */
html body.pg-site.single-post #main-content .pg-resource-article .et_pb_section.pg-faq { padding: 64px 0 !important; border-top: 1px solid #e3e7e9; }
html body.pg-site.single-post #main-content .pg-resource-article .et_pb_section.pg-faq .pg-faq__heading h2 { font-size: 30px !important; line-height: 1.25 !important; }
html body.pg-site.single-post #main-content .pg-resource-article .et_pb_section.pg-article__sources-band { background: #f4f5f6 !important; padding: 48px 0 !important; }
html body.pg-site.single-post #main-content .pg-resource-article .et_pb_section.pg-article__sources-band h2 { font-size: 22px !important; line-height: 1.3 !important; margin: 0 0 12px !important; }
html body.pg-site.single-post #main-content .pg-resource-article .et_pb_section.pg-article__sources-band :is(li, p) { font-size: 16px !important; line-height: 1.6 !important; color: #2f3a3f !important; }
html body.pg-site.single-post #main-content .pg-resource-article .et_pb_section.pg-article__sources-band a { color: #111718 !important; text-decoration: underline; text-decoration-color: #e5a128; text-underline-offset: 3px; }
html body.pg-site.single-post #main-content .pg-resource-article .et_pb_section.pg-article-final { padding: 72px 0 !important; }
html body.pg-site.single-post #main-content .pg-resource-article .et_pb_section.pg-article-final h2 { font-size: 32px !important; line-height: 1.25 !important; }

/* Hero: urgent safety posts keep their light hero with red accents */
html body.pg-site.single-post #main-content .pg-resource-article .et_pb_section.pg-article-hero.pg-resource-article--urgent-safety .pg-eyebrow { color: #b3261e !important; }
html body.pg-site.single-post #main-content .pg-resource-article .et_pb_section.pg-article-hero.pg-resource-article--urgent-safety :is(h1, .pg-article__dek, .pg-resource-meta li) { color: #111718 !important; }
html body.pg-site.single-post #main-content .pg-resource-article .et_pb_section.pg-article-hero.pg-resource-article--urgent-safety .pg-breadcrumbs :is(a, span, li) { color: #263640 !important; }

/* Author box: off the beige, onto the site palette */
html body.pg-site.single-post #main-content aside.pg-resource-author { background: #fff !important; padding: 64px 0 !important; border-top: 1px solid #e3e7e9; }
html body.pg-site.single-post #main-content .pg-resource-author__inner { max-width: 816px !important; margin: 0 auto !important; padding: 0 24px !important; grid-template-columns: 220px minmax(0, 1fr) !important; gap: 36px !important; align-items: center; }
html body.pg-site.single-post #main-content .pg-resource-author__image img { border-radius: 8px; }
html body.pg-site.single-post #main-content .pg-resource-author h2 { font-size: 26px !important; color: #111718 !important; margin: 0 0 12px !important; }
html body.pg-site.single-post #main-content .pg-resource-author p:not(.pg-eyebrow) { color: #2f3a3f !important; font-size: 17px !important; line-height: 1.65 !important; }
html body.pg-site.single-post #main-content .pg-resource-author__link { color: #111718 !important; font-weight: 600; text-decoration: underline; text-decoration-color: #e5a128; text-decoration-thickness: 2px; text-underline-offset: 5px; }

@media (max-width: 767px) {
  html body.pg-site.single-post #main-content .pg-resource-article .et_pb_section:is(.pg-article__section, .pg-resource-safety, .pg-resource-intro, .pg-resource-mid-cta, .pg-article__sources-band, .pg-article-final, .pg-faq, .pg-resource-comparison-band, .pg-resource-inline-media) > .et_pb_row { padding: 0 20px !important; }
  html body.pg-site.single-post #main-content .pg-resource-article .et_pb_section.pg-article__section { padding: 24px 0 !important; }
  html body.pg-site.single-post #main-content .pg-resource-article .et_pb_section.pg-article__section h2 { font-size: 26px !important; }
  html body.pg-site.single-post #main-content .pg-resource-article .et_pb_section.pg-article__section :is(p, li) { font-size: 17px !important; line-height: 1.7 !important; }
  html body.pg-site.single-post #main-content .pg-resource-article .et_pb_section.pg-article__section:is(.pg-resource-section--contrast, .pg-resource-section--warning) > .et_pb_row, html body.pg-site.single-post #main-content .pg-resource-article .et_pb_section.pg-resource-mid-cta > .et_pb_row { width: auto !important; margin-left: 12px !important; margin-right: 12px !important; padding: 28px 22px !important; }
  html body.pg-site.single-post #main-content .pg-resource-article .et_pb_section.pg-resource-intro .pg-resource-toc { padding: 22px 20px !important; }
  html body.pg-site.single-post #main-content .pg-resource-article .et_pb_section.pg-resource-intro .pg-resource-toc ol { grid-template-columns: 1fr !important; }
  html body.pg-site.single-post #main-content .pg-resource-article .et_pb_section.pg-resource-intro .pg-resource-answer h2, html body.pg-site.single-post #main-content .pg-resource-article .et_pb_section.pg-resource-mid-cta h2 { font-size: 23px !important; }
  html body.pg-site.single-post #main-content .pg-resource-article .et_pb_section.pg-resource-intro .pg-resource-answer p:not(.pg-eyebrow) { font-size: 17px !important; }
  html body.pg-site.single-post #main-content .pg-resource-article .et_pb_section.pg-faq { padding: 48px 0 !important; }
  html body.pg-site.single-post #main-content .pg-resource-article .et_pb_section.pg-faq .pg-faq__heading h2, html body.pg-site.single-post #main-content .pg-resource-article .et_pb_section.pg-article-final h2 { font-size: 26px !important; }
  html body.pg-site.single-post #main-content .pg-resource-article .et_pb_section.pg-article-final { padding: 56px 0 !important; }
  html body.pg-site.single-post #main-content aside.pg-resource-author { padding: 48px 0 !important; }
  html body.pg-site.single-post #main-content .pg-resource-author__inner { grid-template-columns: 1fr !important; gap: 24px !important; padding: 0 20px !important; }
}
html body.pg-site.single-post #main-content .pg-resource-article .et_pb_section.pg-related > .et_pb_row { width: 100% !important; max-width: 816px !important; margin-left: auto !important; margin-right: auto !important; padding: 0 24px !important; box-sizing: border-box; }
html body.pg-site.single-post #main-content .pg-resource-article .et_pb_section.pg-resource-comparison-band h2 { font-size: 30px !important; line-height: 1.25 !important; }
/* === /Blog posts === */
/* === Footer refresh === */
html body.pg-site.pg-site #main-footer.pg-site-footer.pg-site-footer { position: relative; overflow: hidden; background: radial-gradient(90% 120% at 100% 0%, rgba(229, 161, 40, .10) 0%, rgba(229, 161, 40, 0) 55%), #111718 !important; border-top: 0 !important; }
html body.pg-site.pg-site #main-footer::before { content: ""; position: absolute; top: 0; left: 0; right: 0; height: 3px; background: linear-gradient(90deg, #e5a128 0%, #f4bd57 35%, rgba(244, 189, 87, 0) 100%); }
html body.pg-site.pg-site #main-footer .pg-site-footer__inner { display: grid !important; grid-template-columns: minmax(0, 1.3fr) minmax(0, 1fr) minmax(0, .75fr) minmax(0, 1.3fr) !important; gap: 56px !important; align-items: start; max-width: 1248px !important; margin: 0 auto !important; padding: 88px 24px 72px !important; }
html body.pg-site.pg-site #main-footer .pg-site-footer__brand { display: block !important; padding: 0 !important; border: 0 !important; }
html body.pg-site.pg-site #main-footer .pg-site-footer__brand img { display: block; width: 156px !important; height: auto !important; margin: 0 0 24px !important; }
html body.pg-site.pg-site #main-footer .pg-site-footer__brand p { max-width: 330px; margin: 0 !important; color: #aeb8bd !important; font-size: 15px !important; line-height: 1.7 !important; }
html body.pg-site.pg-site #main-footer .pg-site-footer__creds { display: flex; flex-wrap: wrap; gap: 8px; margin: 28px 0 0 !important; padding: 0 !important; list-style: none !important; }
html body.pg-site.pg-site #main-footer .pg-site-footer__creds li { position: relative; margin: 0 !important; padding: 7px 12px 7px 26px !important; border: 1px solid rgba(255, 255, 255, .12); border-radius: 999px; color: #e4e8ea !important; font-size: 13px !important; font-weight: 600; line-height: 1.2 !important; }
html body.pg-site.pg-site #main-footer .pg-site-footer__creds li::before { content: ""; position: absolute; top: 50%; left: 12px; width: 6px; height: 6px; margin-top: -3px; border-radius: 50%; background: #f4bd57; box-shadow: 0 0 0 3px rgba(244, 189, 87, .16); }
html body.pg-site.pg-site #main-footer :is(nav h2, .pg-site-footer__contact-label) { margin: 0 0 22px !important; padding: 0 !important; border: 0 !important; color: #f4bd57 !important; font-size: 12px !important; font-weight: 700 !important; line-height: 1.2 !important; letter-spacing: .14em !important; text-transform: uppercase !important; }
html body.pg-site.pg-site #main-footer .pg-footer-menu { display: grid !important; gap: 12px; margin: 0 !important; padding: 0 !important; list-style: none !important; }
html body.pg-site.pg-site #main-footer .pg-footer-menu li { margin: 0 !important; padding: 0 !important; border: 0 !important; }
html body.pg-site.pg-site #main-footer .pg-footer-menu a { display: inline-block; color: #aeb8bd !important; font-size: 15px !important; line-height: 1.45 !important; text-decoration: none !important; transition: color .2s ease, transform .2s ease; }
html body.pg-site.pg-site #main-footer .pg-footer-menu a:is(:hover, :focus-visible) { color: #fff !important; transform: translateX(3px); }
html body.pg-site.pg-site #main-footer .pg-site-footer__contact { padding: 32px !important; border: 1px solid rgba(255, 255, 255, .1) !important; border-radius: 14px; background: linear-gradient(180deg, rgba(255, 255, 255, .055), rgba(255, 255, 255, .02)) !important; }
html body.pg-site.pg-site #main-footer .pg-site-footer__contact .pg-site-footer__contact-label { margin-bottom: 14px !important; }
html body.pg-site.pg-site #main-footer .pg-site-footer__contact h2 { margin: 0 0 8px !important; padding: 0 !important; color: #fff !important; font-size: 26px !important; font-weight: 700 !important; line-height: 1.2 !important; letter-spacing: -.01em; }
html body.pg-site.pg-site #main-footer .pg-site-footer__contact-note { margin: 0 0 24px !important; color: #aeb8bd !important; font-size: 15px !important; line-height: 1.6 !important; }
html body.pg-site.pg-site #main-footer .pg-site-footer__contact ul { display: grid !important; gap: 14px; margin: 0 !important; padding: 0 !important; list-style: none !important; }
html body.pg-site.pg-site #main-footer .pg-site-footer__contact li { margin: 0 !important; padding: 0 !important; border: 0 !important; }
html body.pg-site.pg-site #main-footer .pg-site-footer__contact-text a { display: flex !important; align-items: center; justify-content: center; gap: 10px; width: 100%; min-height: 52px; margin: 0 0 4px !important; padding: 12px 20px !important; border-radius: 6px !important; font-size: 16px !important; font-weight: 700 !important; box-sizing: border-box; }
html body.pg-site.pg-site #main-footer :is(.pg-site-footer__contact-email, .pg-site-footer__contact-quote) a { color: #e4e8ea !important; font-size: 15px !important; font-weight: 500; text-decoration: none !important; transition: color .2s ease; }
html body.pg-site.pg-site #main-footer .pg-site-footer__contact-email a:is(:hover, :focus-visible) { color: #fff !important; text-decoration: underline !important; text-decoration-color: #f4bd57 !important; text-underline-offset: 4px; }
html body.pg-site.pg-site #main-footer .pg-site-footer__contact-quote a::after { content: "\2192"; display: inline-block; margin-left: 8px; color: #f4bd57; transition: transform .2s ease; }
html body.pg-site.pg-site #main-footer .pg-site-footer__contact-quote a:is(:hover, :focus-visible) { color: #fff !important; }
html body.pg-site.pg-site #main-footer .pg-site-footer__contact-quote a:is(:hover, :focus-visible)::after { transform: translateX(4px); }
html body.pg-site.pg-site #main-footer .pg-site-footer__legal { position: relative; display: flex !important; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 12px 24px; max-width: 1248px !important; margin: 0 auto !important; padding: 24px 24px 32px !important; border: 0 !important; background: transparent !important; }
html body.pg-site.pg-site #main-footer .pg-site-footer__legal::before { content: ""; position: absolute; top: 0; left: 24px; right: 24px; height: 1px; background: rgba(255, 255, 255, .1); }
html body.pg-site.pg-site #main-footer .pg-site-footer__legal-links { display: flex !important; flex-wrap: wrap; align-items: center; gap: 12px 24px !important; }
html body.pg-site.pg-site #main-footer .pg-site-footer__legal :is(p, a, span) { margin: 0 !important; color: #8a969c !important; font-size: 13px !important; line-height: 1.5 !important; text-decoration: none !important; }
html body.pg-site.pg-site #main-footer .pg-site-footer__legal a:is(:hover, :focus-visible) { color: #fff !important; }
html body.pg-site.pg-site #main-footer .pg-site-footer__credit { display: block !important; min-height: 0 !important; }
html body.pg-site.pg-site #main-footer .pg-site-footer__credit a { display: inline !important; min-height: 0 !important; padding: 0 !important; color: #aeb8bd !important; }
@media (max-width: 1099px) {
  html body.pg-site.pg-site #main-footer .pg-site-footer__inner { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) !important; grid-template-areas: "brand contact" "services company"; gap: 56px 48px !important; padding: 72px 32px 56px !important; }
  html body.pg-site.pg-site #main-footer .pg-site-footer__inner > .pg-site-footer__brand { grid-area: brand; }
  html body.pg-site.pg-site #main-footer .pg-site-footer__inner > nav:nth-of-type(1) { grid-area: services; }
  html body.pg-site.pg-site #main-footer .pg-site-footer__inner > nav:nth-of-type(2) { grid-area: company; }
  html body.pg-site.pg-site #main-footer .pg-site-footer__inner > .pg-site-footer__contact { grid-area: contact; }
  html body.pg-site.pg-site #main-footer .pg-site-footer__legal { padding: 24px 32px 32px !important; }
  html body.pg-site.pg-site #main-footer .pg-site-footer__legal::before { left: 32px; right: 32px; }
}
@media (max-width: 767px) {
  html body.pg-site.pg-site #main-footer .pg-site-footer__inner { grid-template-areas: "brand brand" "contact contact" "services company"; gap: 40px 24px !important; padding: 56px 20px 40px !important; }
  html body.pg-site.pg-site #main-footer .pg-site-footer__brand img { width: 136px !important; margin-bottom: 20px !important; }
  html body.pg-site.pg-site #main-footer .pg-site-footer__contact { padding: 24px !important; }
  html body.pg-site.pg-site #main-footer .pg-site-footer__contact h2 { font-size: 23px !important; }
  html body.pg-site.pg-site #main-footer :is(nav h2) { margin-bottom: 14px !important; }
  html body.pg-site.pg-site #main-footer .pg-footer-menu { gap: 0; }
  html body.pg-site.pg-site #main-footer .pg-footer-menu a { padding: 8px 0; }
  html body.pg-site.pg-site #main-footer .pg-site-footer__legal { flex-direction: column; align-items: flex-start; padding: 20px 20px 28px !important; }
  html body.pg-site.pg-site #main-footer .pg-site-footer__legal::before { left: 20px; right: 20px; }
  html body.pg-site.pg-site #main-footer .pg-site-footer__contact, html body.pg-site.pg-site #main-footer .pg-site-footer__contact :is(h2, p, ul, li) { text-align: left !important; }
  html body.pg-site.pg-site #main-footer .pg-site-footer__legal-links { flex-direction: column; align-items: flex-start; gap: 6px !important; }
  html body.pg-site.pg-site #main-footer .pg-site-footer__legal-links > a { display: inline-flex; align-items: center; min-height: 32px; }
}
/* === /Footer refresh === */

/* === Reviews: slide transition (2026-09-26) === */
/* service-refresh.js adds .pg-trust-slide and runs the slide with the Web Animations API. */
html body.pg-site .pg-reilly-trust.pg-trust-slide { overflow-x: clip; }
html body.pg-site .pg-reilly-trust.pg-trust-slide.is-enhanced .pg-trust-review { transition: none; }
/* === /Reviews === */

/* === Quote form UX (2026-09-26) === */
/* Job address: full width, with the location button inside the field. */
html body.pg-site .wpforms-page .pg-field-job-address,
html body.pg-site .wpforms-page .pg-field-privacy-note { grid-column: 1 / -1; }
html body.pg-site .pg-address { position: relative; }
/* Let the suggestions list spill over the fields below (the form sets overflow hidden on each field). */
html body.pg-site div.wpforms-container-full .wpforms-form .wpforms-field.pg-field-job-address { overflow: visible !important; z-index: 6; }
html body.pg-site div.wpforms-container-full .wpforms-form .pg-address input[type="text"] { padding-right: 56px !important; }
html body.pg-site .pg-address__locate {
	position: absolute; top: 0; right: 0; z-index: 2;
	display: grid; place-items: center; width: 52px; height: 50px;
	margin: 0; padding: 0; border: 0; border-radius: 0 4px 4px 0;
	background: transparent; color: #263640; cursor: pointer;
	transition: color .15s ease, background-color .15s ease;
}
html body.pg-site .pg-address__locate:hover { background: #f4f5f6; color: #111718; }
html body.pg-site .pg-address__locate:focus-visible { outline: 2px solid #e5a128; outline-offset: -2px; }
html body.pg-site .pg-address__locate svg { width: 22px; height: 22px; }
html body.pg-site .pg-address__spinner { display: none; }
html body.pg-site .pg-address__locate.is-busy svg { display: none; }
html body.pg-site .pg-address__locate.is-busy .pg-address__spinner {
	display: block; width: 20px; height: 20px; border-radius: 50%;
	border: 2px solid #d9dfe2; border-top-color: #111718; animation: pgAddressSpin .7s linear infinite;
}
@keyframes pgAddressSpin { to { transform: rotate(360deg); } }

/* Suggestions dropdown */
html body.pg-site .pg-address__list {
	position: absolute; left: 0; right: 0; top: calc(100% + 6px); z-index: 30;
	overflow: hidden; max-height: none;
	background: #fff; border: 1px solid #d9dfe2; border-radius: 8px;
	box-shadow: 0 18px 40px rgba(17, 23, 24, .16), 0 2px 6px rgba(17, 23, 24, .08);
}
html body.pg-site .pg-address__list[hidden] { display: none; }
html body.pg-site .pg-address__option {
	display: flex; flex-direction: column; gap: 2px;
	padding: 12px 16px; border-bottom: 1px solid #eef1f2; cursor: pointer;
	text-align: left; line-height: 1.35;
}
html body.pg-site .pg-address__option:last-of-type { border-bottom: 0; }
html body.pg-site .pg-address__option:hover,
html body.pg-site .pg-address__option.is-active { background: #f4f5f6; box-shadow: inset 3px 0 0 #e5a128; }
html body.pg-site .pg-address__main { color: #111718; font-size: 15px; font-weight: 600; }
html body.pg-site .pg-address__main mark { background: transparent; color: inherit; font-weight: 800; }
html body.pg-site .pg-address__secondary { color: #5b6b70; font-size: 13px; }
html body.pg-site .pg-address__empty { padding: 14px 16px; color: #5b6b70; font-size: 14px; }
html body.pg-site .pg-address__credit {
	padding: 6px 12px 8px; border-top: 1px solid #eef1f2; background: #fafbfb;
	color: #5b6b70; font: 500 11px/1.4 Roboto, Arial, sans-serif; text-align: right; letter-spacing: .01em;
}
html body.pg-site .pg-address__status { margin: 8px 0 0 !important; padding: 0 !important; font-size: 13px; line-height: 1.5; color: #263640; }
html body.pg-site .pg-address__status[hidden] { display: none; }
html body.pg-site .pg-address__status[data-tone="done"] { color: #1d6b3a; }
html body.pg-site .pg-address__status[data-tone="error"] { color: #b3261e; }

/* Best way to reach you: three tap buttons. */
html body.pg-site div.wpforms-container-full .wpforms-form .pg-field-contact-method fieldset { min-width: 0; margin: 0; padding: 0; border: 0; }
html body.pg-site div.wpforms-container-full .wpforms-form .pg-field-contact-method ul {
	display: grid !important; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 0;
	margin: 0 !important; padding: 0 !important; list-style: none;
	border: 1px solid #788b8d; border-radius: 4px; overflow: hidden;
}
html body.pg-site div.wpforms-container-full .wpforms-form .pg-field-contact-method li {
	position: relative; display: block !important; width: auto !important;
	margin: 0 !important; padding: 0 !important; border-left: 1px solid #788b8d;
}
html body.pg-site div.wpforms-container-full .wpforms-form .pg-field-contact-method li:first-child { border-left: 0; }
html body.pg-site div.wpforms-container-full .wpforms-form .pg-field-contact-method input[type="radio"] {
	position: absolute !important; inset: 0; width: 100% !important; height: 100% !important;
	margin: 0 !important; opacity: 0; cursor: pointer; z-index: 1;
}
html body.pg-site div.wpforms-container-full .wpforms-form .pg-field-contact-method label.wpforms-field-label-inline {
	display: flex !important; align-items: center; justify-content: center; gap: 8px;
	min-height: 50px; margin: 0 !important; padding: 10px 8px !important;
	background: #fff; color: #111718 !important; font-size: 15px !important; font-weight: 650 !important;
	line-height: 1.2 !important; text-align: center; cursor: pointer; transition: background-color .15s ease, color .15s ease;
}
html body.pg-site div.wpforms-container-full .wpforms-form .pg-field-contact-method label.wpforms-field-label-inline::before,
html body.pg-site div.wpforms-container-full .wpforms-form .pg-field-contact-method label.wpforms-field-label-inline::after { display: none !important; }
html body.pg-site div.wpforms-container-full .wpforms-form .pg-field-contact-method li:hover label.wpforms-field-label-inline { background: #f4f5f6; }
html body.pg-site div.wpforms-container-full .wpforms-form .pg-field-contact-method input[type="radio"]:checked + label.wpforms-field-label-inline {
	background: #111718; color: #fff !important;
}
html body.pg-site div.wpforms-container-full .wpforms-form .pg-field-contact-method li:first-child input[type="radio"]:checked + label.wpforms-field-label-inline { box-shadow: inset 0 -3px 0 #e5a128; }
html body.pg-site div.wpforms-container-full .wpforms-form .pg-field-contact-method input[type="radio"]:focus-visible + label.wpforms-field-label-inline { outline: 2px solid #e5a128; outline-offset: -4px; }

/* Privacy notice replaces the checkbox. */
html body.pg-site div.wpforms-container-full .wpforms-form .pg-field-privacy-note { padding-bottom: 4px !important; }
html body.pg-site .pg-privacy-note { margin: 0 !important; padding: 0 !important; color: #4a5a5f; font-size: 13px; line-height: 1.6; }
html body.pg-site .pg-privacy-note a { color: #111718; text-decoration: underline; text-decoration-color: #e5a128; text-underline-offset: 3px; }

/* Shorter description box on phones. */
@media (max-width: 767px) {
	html body.pg-site div.wpforms-container-full .wpforms-form .wpforms-field-textarea textarea { min-height: 120px !important; height: 120px; }
}
/* === /Quote form UX === */

/* === About hero: full-width photo (2026-09-26, night) === */
/* Kyle: match the other pages' edge-to-edge hero. The approved van photo has no spare room (Reilly's head and boots touch the edges),
   so it runs full width at its own proportions instead of being cropped. Overrides the engagement.css rule
   "Keep the approved wide About image complete", whose width:auto + max-height:640px shrank it to an inset on wide screens. */
html body.pg-site.pg-page-about-us #main-content .pg-hero.pg-hero--about .pg-hero__media-row .pg-hero__visual,
html body.pg-site.pg-page-about-us #main-content .pg-hero.pg-hero--about .pg-hero__media-row .pg-hero__visual :is(.pg-hero__image, .et_pb_code_inner) {
	width: 100% !important;
	max-width: none !important;
	height: auto !important;
	max-height: none !important;
	margin-left: 0 !important;
	margin-right: 0 !important;
}
html body.pg-site.pg-page-about-us #main-content .pg-hero.pg-hero--about .pg-hero__media-row .pg-hero__visual img {
	display: block !important;
	width: 100% !important;
	max-width: none !important;
	height: auto !important;
	max-height: none !important;
	aspect-ratio: auto !important;
	object-fit: cover !important;
	object-position: 50% 50% !important;
	margin: 0 !important;
}
/* === /About hero: full-width photo === */

/* === Proudly Canadian (2026-09-28) === */
/* Maple leaves are original SVGs (faceted, outline, solid) embedded as data URIs. */
.pg-leaf-icon { display: inline-block; flex: none; width: 1em; height: 1em; background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 200 200'%3E%3Cpath fill='%23d52b1e' d='M100 4 L111 34 L127 27 L121 70 L146 46 L152 60 L185 55 L174 85 L186 92 L141 122 L148 138 L115 133 L104 148 L103 180 L97 180 L96 148 L85 133 L52 138 L59 122 L14 92 L26 85 L15 55 L48 60 L54 46 L79 70 L73 27 L89 34 Z'/%3E%3C/svg%3E") center / contain no-repeat; vertical-align: -0.14em; }

/* About page band */
html body.pg-site #main-content .et_pb_section.pg-canada { position: relative; overflow: hidden; isolation: isolate; background: #000 !important; padding: clamp(84px, 9vw, 132px) 0 !important; }
html body.pg-site #main-content .et_pb_section.pg-canada::before { content: ""; position: absolute; inset: 0; z-index: -1; pointer-events: none;
	background: radial-gradient(ellipse 48% 62% at 80% 40%, rgba(213, 43, 30, .28), rgba(213, 43, 30, .07) 50%, transparent 72%),
		radial-gradient(ellipse 36% 46% at 4% 104%, rgba(244, 189, 87, .10), transparent 70%); }
html body.pg-site #main-content .et_pb_section.pg-canada::after { content: ""; position: absolute; left: -120px; bottom: -150px; width: 440px; height: 440px; z-index: -1; pointer-events: none;
	background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 200 200' fill='none' stroke='%23fff' stroke-width='3' stroke-linejoin='round' stroke-linecap='round'%3E%3Cpath d='M100 4 L111 34 L127 27 L121 70 L146 46 L152 60 L185 55 L174 85 L186 92 L141 122 L148 138 L115 133 L104 148 L103 180 L97 180 L96 148 L85 133 L52 138 L59 122 L14 92 L26 85 L15 55 L48 60 L54 46 L79 70 L73 27 L89 34 Z'/%3E%3Cg opacity='.55'%3E%3Cpath d='M100 128 L100 4'/%3E%3Cpath d='M100 128 L185 55'/%3E%3Cpath d='M100 128 L15 55'/%3E%3Cpath d='M100 128 L148 138'/%3E%3Cpath d='M100 128 L52 138'/%3E%3Cpath d='M100 128 L100 176'/%3E%3C/g%3E%3C/svg%3E") center / contain no-repeat; opacity: .05; transform: rotate(-18deg); }
html body.pg-site #main-content .pg-canada .et_pb_row.pg-canada__row { width: min(1200px, calc(100% - 64px)) !important; max-width: none !important; margin: 0 auto !important; padding: 0 !important; }
html body.pg-site #main-content .pg-canada .et_pb_column.pg-canada__col { width: 100% !important; margin: 0 !important; }
html body.pg-site #main-content .pg-canada .pg-canada__copy, html body.pg-site #main-content .pg-canada .pg-canada__copy .et_pb_text_inner { margin: 0 !important; padding: 0 !important; }
html body.pg-site #main-content .pg-canada .pg-canada__copy .et_pb_text_inner { display: grid; grid-template-columns: minmax(0, 1.12fr) minmax(0, .88fr); grid-template-areas: "text art" "pillars pillars";
	column-gap: clamp(40px, 6vw, 104px); row-gap: clamp(56px, 6vw, 88px); align-items: center; }
html body.pg-site #main-content .pg-canada .pg-canada__text { grid-area: text; max-width: 660px; }
html body.pg-site #main-content .pg-canada .pg-canada__eyebrow { display: inline-flex !important; align-items: center; gap: 10px; margin: 0 0 20px !important; padding: 0 !important; color: #f4bd57 !important; font-size: 15px !important; font-weight: 700 !important; letter-spacing: .02em; }
html body.pg-site #main-content .pg-canada .pg-canada__eyebrow .pg-leaf-icon { width: 20px; height: 20px; }
html body.pg-site #main-content .pg-canada h2 { margin: 0 0 28px !important; padding: 0 !important; color: #fff !important; font-family: Archivo, Manrope, Inter, sans-serif !important; font-size: clamp(36px, 4.6vw, 60px) !important; line-height: 1.04 !important; font-weight: 700 !important; letter-spacing: -.015em; }
html body.pg-site #main-content .pg-canada h2 .pg-canada__accent { display: block; background: linear-gradient(90deg, #ff6b57, #e0301f 70%); -webkit-background-clip: text; background-clip: text; color: transparent; }
html body.pg-site #main-content .pg-canada .pg-canada__text p:not(.pg-eyebrow):not(.pg-canada__sign) { margin: 0 0 18px !important; padding: 0 !important; color: #c6cdd2 !important; font-size: 18px !important; line-height: 1.75 !important; }
html body.pg-site #main-content .pg-canada .pg-canada__text p.pg-canada__lead { color: #eef1f3 !important; font-size: 20px !important; line-height: 1.7 !important; margin-bottom: 22px !important; }
html body.pg-site #main-content .pg-canada .pg-canada__sign { display: flex !important; flex-wrap: wrap; align-items: baseline; gap: 6px 14px; margin: 30px 0 0 !important; padding: 24px 0 0 !important; border-top: 1px solid #3a4649; }
html body.pg-site #main-content .pg-canada .pg-canada__sign-name { color: #fff; font-family: Archivo, Manrope, sans-serif; font-size: 22px; font-weight: 700; }
html body.pg-site #main-content .pg-canada .pg-canada__sign-role { color: #9aa7ad; font-size: 14px; font-weight: 600; }

/* Artwork */
html body.pg-site #main-content .pg-canada .pg-canada__art { grid-area: art; position: relative; width: 100%; max-width: 470px; aspect-ratio: 1 / 1; justify-self: center; }
html body.pg-site #main-content .pg-canada .pg-canada__ring { position: absolute; inset: 0; border-radius: 50%; border: 1px solid rgba(255, 255, 255, .09); box-shadow: inset 0 0 80px rgba(213, 43, 30, .10); }
html body.pg-site #main-content .pg-canada .pg-canada__ring--dash { inset: 9%; border: 1px dashed rgba(255, 107, 87, .30); box-shadow: none; animation: pgCanadaSpin 90s linear infinite; }
html body.pg-site #main-content .pg-canada .pg-canada__leafwrap { position: absolute; inset: 14%; display: block; transition: opacity .9s ease, transform 1.1s cubic-bezier(.16, 1, .3, 1); }
html body.pg-site #main-content .pg-canada .pg-canada__leaf { position: absolute; inset: 0; display: block; background: url("/wp-content/themes/platinum-gas/assets/images/maple-leaf-modern-266076dac729.webp") center / contain no-repeat;
	filter: drop-shadow(0 28px 48px rgba(213, 43, 30, .38)) drop-shadow(0 0 1px rgba(255, 120, 100, .4)); transform-origin: 50% 70%; animation: pgCanadaFloat 7s ease-in-out infinite alternate; }
html body.pg-site #main-content .pg-canada .pg-canada__ghost { position: absolute; display: block; aspect-ratio: 1 / 1; background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 200 200' fill='none' stroke='%23fff' stroke-width='3' stroke-linejoin='round' stroke-linecap='round'%3E%3Cpath d='M100 4 L111 34 L127 27 L121 70 L146 46 L152 60 L185 55 L174 85 L186 92 L141 122 L148 138 L115 133 L104 148 L103 180 L97 180 L96 148 L85 133 L52 138 L59 122 L14 92 L26 85 L15 55 L48 60 L54 46 L79 70 L73 27 L89 34 Z'/%3E%3Cg opacity='.55'%3E%3Cpath d='M100 128 L100 4'/%3E%3Cpath d='M100 128 L185 55'/%3E%3Cpath d='M100 128 L15 55'/%3E%3Cpath d='M100 128 L148 138'/%3E%3Cpath d='M100 128 L52 138'/%3E%3Cpath d='M100 128 L100 176'/%3E%3C/g%3E%3C/svg%3E") center / contain no-repeat; opacity: .14; animation: pgCanadaDrift 22s ease-in-out infinite; }
html body.pg-site #main-content .pg-canada .pg-canada__ghost--1 { width: 22%; top: -4%; left: -8%; animation-duration: 21s; }
html body.pg-site #main-content .pg-canada .pg-canada__ghost--2 { width: 13%; bottom: 6%; left: 0; opacity: .1; animation-duration: 17s; animation-delay: -6s; }
html body.pg-site #main-content .pg-canada .pg-canada__ghost--3 { width: 28%; top: 4%; right: -16%; opacity: .09; animation-duration: 27s; animation-delay: -11s; }
html body.pg-site #main-content .pg-canada .pg-canada__ghost--4 { width: 11%; bottom: -3%; right: 14%; opacity: .16; animation-duration: 19s; animation-delay: -3s; }
html body.pg-site.pg-motion-ready #main-content .pg-canada.pg-reveal:not(.is-in-view) .pg-canada__leafwrap { opacity: 0; transform: scale(.82) rotate(-10deg); }
@keyframes pgCanadaFloat { from { transform: translateY(-9px) rotate(-3deg); } to { transform: translateY(9px) rotate(2.5deg); } }
@keyframes pgCanadaDrift { 0%, 100% { transform: translate(0, 0) rotate(0deg); } 50% { transform: translate(12px, -18px) rotate(16deg); } }
@keyframes pgCanadaSpin { to { transform: rotate(360deg); } }

/* Three pillars */
html body.pg-site #main-content .pg-canada .pg-canada__pillars { grid-area: pillars; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); margin: 0 !important; padding: 0 !important; list-style: none !important; border-top: 1px solid #3a4649; }
html body.pg-site #main-content .pg-canada .pg-canada__pillars > li { display: grid; align-content: start; gap: 8px; margin: 0 !important; padding: 32px 32px 0 !important; list-style: none !important; border-left: 1px solid #3a4649; }
html body.pg-site #main-content .pg-canada .pg-canada__pillars > li:first-child { padding-left: 0 !important; border-left: 0; }
html body.pg-site #main-content .pg-canada .pg-canada__pillars > li::before, html body.pg-site #main-content .pg-canada .pg-canada__pillars > li::marker { content: none !important; display: none !important; }
html body.pg-site #main-content .pg-canada .pg-canada__badge { display: grid; place-items: center; width: 46px; height: 46px; margin-bottom: 10px; border-radius: 50%; border: 1px solid rgba(255, 107, 87, .45); background: radial-gradient(circle at 30% 25%, rgba(255, 107, 87, .22), rgba(213, 43, 30, .06)); }
html body.pg-site #main-content .pg-canada .pg-canada__badge .pg-leaf-icon { width: 22px; height: 22px; vertical-align: 0; }
html body.pg-site #main-content .pg-canada .pg-canada__pillars strong { color: #fff; font-size: 20px; font-weight: 700; line-height: 1.4; }
html body.pg-site #main-content .pg-canada .pg-canada__pillars li > span:last-child { color: #c6cdd2; font-size: 16.5px; line-height: 1.7; }

@media (max-width: 900px) {
	html body.pg-site #main-content .pg-canada .pg-canada__copy .et_pb_text_inner { grid-template-columns: minmax(0, 1fr); grid-template-areas: "art" "text" "pillars"; row-gap: 40px; }
	html body.pg-site #main-content .pg-canada .et_pb_row.pg-canada__row { width: calc(100% - 48px) !important; }
	html body.pg-site #main-content .pg-canada .pg-canada__art { max-width: 280px; justify-self: start; margin-left: -8px; }
	html body.pg-site #main-content .pg-canada .pg-canada__pillars { grid-template-columns: minmax(0, 1fr); }
	html body.pg-site #main-content .pg-canada .pg-canada__pillars > li { padding: 26px 0 !important; border-left: 0; border-bottom: 1px solid #3a4649; }
	html body.pg-site #main-content .pg-canada .pg-canada__pillars > li:last-child { border-bottom: 0; padding-bottom: 0 !important; }
	html body.pg-site #main-content .et_pb_section.pg-canada::after { width: 300px; height: 300px; left: auto; right: -110px; bottom: -90px; }
	html body.pg-site #main-content .et_pb_section.pg-canada::before { background: radial-gradient(ellipse 80% 34% at 22% 9%, rgba(213, 43, 30, .30), rgba(213, 43, 30, .06) 55%, transparent 75%),
		radial-gradient(ellipse 60% 30% at 90% 100%, rgba(244, 189, 87, .08), transparent 70%); }
}
@media (max-width: 480px) {
	html body.pg-site #main-content .pg-canada .pg-canada__art { max-width: 220px; }
	html body.pg-site #main-content .pg-canada .pg-canada__text p.pg-canada__lead { font-size: 18.5px !important; }
	html body.pg-site #main-content .pg-canada .pg-canada__text p:not(.pg-eyebrow):not(.pg-canada__sign) { font-size: 17px !important; }
}

/* Site-wide touches: footer credential pill and a faint leaf in the pre-footer band */
html body.pg-site #main-footer.pg-site-footer.pg-site-footer .pg-site-footer__creds li.pg-cred-canada { padding-left: 30px !important; }
html body.pg-site #main-footer.pg-site-footer.pg-site-footer .pg-site-footer__creds li.pg-cred-canada::before { width: 13px !important; height: 13px !important; left: 10px !important; top: 50% !important; transform: translateY(-50%) !important; margin-top: 0 !important; border-radius: 0 !important; box-shadow: none !important; background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 200 200'%3E%3Cpath fill='%23d52b1e' d='M100 4 L111 34 L127 27 L121 70 L146 46 L152 60 L185 55 L174 85 L186 92 L141 122 L148 138 L115 133 L104 148 L103 180 L97 180 L96 148 L85 133 L52 138 L59 122 L14 92 L26 85 L15 55 L48 60 L54 46 L79 70 L73 27 L89 34 Z'/%3E%3C/svg%3E") center / contain no-repeat !important; }
html body.pg-site .pg-prefooter { position: relative; overflow: hidden; isolation: isolate; }
html body.pg-site .pg-prefooter::after { content: ""; position: absolute; right: -54px; bottom: -44px; width: 190px; height: 190px; z-index: -1; pointer-events: none;
	background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 200 200' fill='none' stroke='%23fff' stroke-width='3' stroke-linejoin='round' stroke-linecap='round'%3E%3Cpath d='M100 4 L111 34 L127 27 L121 70 L146 46 L152 60 L185 55 L174 85 L186 92 L141 122 L148 138 L115 133 L104 148 L103 180 L97 180 L96 148 L85 133 L52 138 L59 122 L14 92 L26 85 L15 55 L48 60 L54 46 L79 70 L73 27 L89 34 Z'/%3E%3Cg opacity='.55'%3E%3Cpath d='M100 128 L100 4'/%3E%3Cpath d='M100 128 L185 55'/%3E%3Cpath d='M100 128 L15 55'/%3E%3Cpath d='M100 128 L148 138'/%3E%3Cpath d='M100 128 L52 138'/%3E%3Cpath d='M100 128 L100 176'/%3E%3C/g%3E%3C/svg%3E") center / contain no-repeat; opacity: .06; transform: rotate(-14deg); }
@media (min-width: 1100px) {
	/* Sits in the open space between the heading and the buttons. */
	html body.pg-site .pg-prefooter::after { right: auto; bottom: auto; left: calc(50% + 64px); top: 50%; width: 230px; height: 230px; opacity: .08; transform: translate(-50%, -50%) rotate(-14deg); }
}

@media (prefers-reduced-motion: reduce) {
	html body.pg-site #main-content .pg-canada .pg-canada__leaf, html body.pg-site #main-content .pg-canada .pg-canada__ghost, html body.pg-site #main-content .pg-canada .pg-canada__ring--dash { animation: none !important; }
	html body.pg-site #main-content .pg-canada .pg-canada__leafwrap { transition: none !important; opacity: 1 !important; transform: none !important; }
}
/* === /Proudly Canadian === */

/* === Home hero: space between the buttons and the photo on phones and tablets (2026-09-28) === */
@media (max-width: 980px) {
	html body.pg-site #main-content .pg-home-intro .et_pb_row.pg-home-intro__visual { margin-top: 32px !important; }
}
/* === /Home hero spacing === */

/* === Photo scene bands: text centred vertically on phones and tablets (2026-09-29) === */
/* Desktop keeps the original editorial layout (text top-left over the darker top of the photo). */
@media (max-width: 980px) {
	html body.pg-site .pg-pilot-scene:not(.pg-pilot-scene--people) { display: flex !important; flex-direction: column; justify-content: center; }
	html body.pg-site .pg-pilot-scene:not(.pg-pilot-scene--people) > .pg-pilot-scene__content { padding-top: 72px !important; padding-bottom: 72px !important; margin-top: 0 !important; margin-bottom: 0 !important; }
	/* Shade behind the text instead of only at the top, so centred text stays readable. */
	html body.pg-site .pg-pilot-scene:not(.pg-pilot-scene--people)::before { background: radial-gradient(ellipse 150% 58% at 50% 50%, rgba(9, 18, 20, .80) 0%, rgba(9, 18, 20, .58) 55%, rgba(9, 18, 20, .30) 100%) !important; }
	html body.pg-site .pg-pilot-scene:not(.pg-pilot-scene--people) > .pg-pilot-scene__content :is(h2, p) { text-shadow: 0 2px 18px rgba(0, 0, 0, .35); }
}
/* === /Photo scene bands === */

/* === Headers end at the bottom of the screen on desktop (2026-10-02) === */
/* Kyle: the page header (title + photo) should stop exactly at the fold, so the first scroll lands on the page.
   Desktop and landscape tablets only; phones already end above the fold. 76px is the fixed site header. */
@media (min-width: 981px) and (min-aspect-ratio: 1/1) {
	html body.pg-site { --pg-fold: calc(100vh - 76px); }
	@supports (height: 100svh) { html body.pg-site { --pg-fold: calc(100svh - 76px); } }
	html body.pg-site.admin-bar { --pg-fold: calc(100vh - 108px); }

	/* Service, hub and town pages: title on top, photo fills what is left. */
	html body.pg-site #main-content .et_pb_section.pg-pilot-hero .pg-pilot-module > .et_pb_text_inner { display: flex !important; flex-direction: column; min-height: var(--pg-fold); }
	html body.pg-site #main-content .et_pb_section.pg-pilot-hero .pg-pilot-module > .et_pb_text_inner > * { flex: 0 0 auto; }
	html body.pg-site #main-content .et_pb_section.pg-pilot-hero .pg-pilot-module > .et_pb_text_inner > .pg-pilot-hero__photo { flex: 1 1 300px; position: relative; height: auto !important; min-height: 300px !important; max-height: none !important; }
	html body.pg-site #main-content .et_pb_section.pg-pilot-hero .pg-pilot-hero__photo :is(picture, img) { position: absolute; inset: 0; width: 100% !important; height: 100% !important; }

	/* About: the title row is 146px (48 + one 58px line + 40), the photo takes the rest and is cropped from the bottom. */
	html body.pg-site.pg-page-about-us #main-content .pg-hero.pg-hero--about .pg-hero__media-row .pg-hero__visual { height: max(300px, calc(var(--pg-fold) - 146px)) !important; overflow: hidden; }
	html body.pg-site.pg-page-about-us #main-content .pg-hero.pg-hero--about .pg-hero__media-row .pg-hero__visual :is(.pg-hero__image, .et_pb_code_inner) { height: 100% !important; }
	html body.pg-site.pg-page-about-us #main-content .pg-hero.pg-hero--about .pg-hero__media-row .pg-hero__visual img { height: 100% !important; object-fit: cover !important; object-position: 50% 8% !important; }

	/* Home: intro text on top, the illustration fills what is left. */
	html body.pg-site #main-content .et_pb_section.pg-home-intro { min-height: var(--pg-fold); grid-template-rows: auto minmax(280px, 1fr); }
	html body.pg-site #main-content .pg-home-intro .pg-home-intro__visual,
	html body.pg-site #main-content .pg-home-intro .pg-home-intro__visual :is(.et_pb_column, .et_pb_module, .et_pb_text_inner) { min-height: 0 !important; height: auto; align-self: stretch; }
	html body.pg-site #main-content .pg-home-intro .pg-scene { height: auto !important; min-height: 280px; align-self: stretch; }
	/* Trade Partnerships: same idea, its photo fills what is left under the title. */
	html body.pg-site #main-content .pg-trade-v2 .pg-trade-hero { display: flex !important; flex-direction: column; min-height: var(--pg-fold); }
	html body.pg-site #main-content .pg-trade-v2 .pg-trade-hero > * { flex: 0 0 auto; }
	html body.pg-site #main-content .pg-trade-v2 .pg-trade-hero > .pg-trade-hero-photo { flex: 1 1 300px; position: relative; min-height: 300px; margin-bottom: 0 !important; padding-bottom: 0 !important; overflow: hidden; }
	html body.pg-site #main-content .pg-trade-v2 .pg-trade-hero > .pg-trade-hero-photo img { position: absolute; inset: 0; width: 100% !important; height: 100% !important; max-height: none !important; aspect-ratio: auto !important; }
}
/* === /Headers end at the bottom of the screen === */

/* === Photo bands fit the phone screen, so centred text is centred on screen (2026-10-02) === */
/* The bands were 620 to 680px tall but a phone only shows about 505px between the site header (80px) and the
   Text Us / Get a Quote bar (73px), so text centred in the band still looked off-centre. */
@media (max-width: 767px) {
	html body.pg-site { --pg-band: max(440px, calc(100vh - 153px)); }
	@supports (height: 100svh) { html body.pg-site { --pg-band: max(440px, calc(100svh - 153px)); } }
	html body.pg-site .pg-pilot-scene:not(.pg-pilot-scene--people),
	html body.pg-site .pg-service-cta-band .pg-service-cta,
	html body.pg-site .pg-home-photo__scene { min-height: var(--pg-band) !important; }
	html body.pg-site .pg-service-cta-band .pg-service-cta__content { padding-top: 64px !important; padding-bottom: 64px !important; }
}
/* === /Photo bands fit the phone screen === */

/* >>> pg-finder-motion START (2026-10-04): Resources finder, smoother and more polished compress on scroll.
   Compressing: the fields fade out first, the band folds up a beat later, then the "Find a post" bar and a gold hairline settle in.
   Expanding: the band opens first, then the two fields rise in one after the other.
   Rollback: delete everything from this START line to the END line below (backups are in /root/pg-areas). */
html body.pg-site .pg-resource-library__finder-slot {
	--pg-finder-ease: cubic-bezier(.32, .72, 0, 1);
}

/* The band: height, glass tint and shadow move together. */
html body.pg-site .pg-resource-library__finder-slot.is-enhanced .pg-resource-library__finder {
	transition:
		height 520ms var(--pg-finder-ease),
		background-color 320ms ease,
		box-shadow 420ms ease,
		-webkit-backdrop-filter 420ms ease,
		backdrop-filter 420ms ease;
}
html body.pg-site .pg-resource-library__finder-slot.is-enhanced.is-compact .pg-resource-library__finder {
	transition:
		height 560ms var(--pg-finder-ease) 110ms,
		background-color 360ms ease 160ms,
		box-shadow 460ms ease 160ms,
		-webkit-backdrop-filter 460ms ease 160ms,
		backdrop-filter 460ms ease 160ms;
}
html body.pg-site .pg-resource-library__finder-slot.is-enhanced.is-compact:not(.is-open) .pg-resource-library__finder {
	-webkit-backdrop-filter: blur(14px) saturate(140%);
	backdrop-filter: blur(14px) saturate(140%);
	background-color: rgb(17 23 24 / 88%);
	box-shadow: 0 16px 32px -16px rgb(0 0 0 / 58%);
}
html body.pg-site .pg-resource-library__finder-slot.is-enhanced.is-compact.is-open .pg-resource-library__finder {
	box-shadow: 0 22px 44px -18px rgb(0 0 0 / 62%);
	transition:
		height 460ms var(--pg-finder-ease),
		background-color 240ms ease,
		box-shadow 320ms ease,
		-webkit-backdrop-filter 320ms ease,
		backdrop-filter 320ms ease;
}

/* A thin gold hairline draws in along the bottom edge once the band has folded. */
html body.pg-site .pg-resource-library__finder-slot.is-enhanced .pg-resource-library__finder::after {
	background: linear-gradient(90deg, transparent, #f4bd57 20%, #f4bd57 80%, transparent);
	bottom: 0;
	content: '';
	height: 1px;
	left: 0;
	opacity: 0;
	pointer-events: none;
	position: absolute;
	right: 0;
	transform: scaleX(.55);
	transition: opacity 200ms ease, transform 320ms ease;
}
html body.pg-site .pg-resource-library__finder-slot.is-enhanced.is-compact .pg-resource-library__finder::after {
	opacity: .8;
	transform: scaleX(1);
	transition: opacity 380ms ease 300ms, transform 700ms var(--pg-finder-ease) 260ms;
}

/* The compact bar: icon + label + chevron in one row, arriving after the band has folded. */
html body.pg-site .pg-resource-library__finder-slot.is-enhanced .pg-resource-library__finder-toggle {
	background: transparent;
	flex-direction: row;
	gap: 10px;
	letter-spacing: .01em;
	transform: translateY(8px);
	transition: opacity 180ms ease, transform 240ms ease, visibility 0s linear 180ms;
}
html body.pg-site .pg-resource-library__finder-slot.is-enhanced.is-compact .pg-resource-library__finder-toggle {
	transform: translateY(0);
	transition: opacity 360ms ease 280ms, transform 560ms var(--pg-finder-ease) 260ms, visibility 0s;
}
html body.pg-site .pg-resource-library__finder-toggle::before {
	background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23f4bd57' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='11' cy='11' r='8'/%3E%3Cpath d='m21 21-4.3-4.3'/%3E%3C/svg%3E") center / contain no-repeat;
	content: '';
	flex: 0 0 18px;
	height: 18px;
	width: 18px;
}
html body.pg-site .pg-resource-library__finder-toggle svg {
	transition: transform 420ms var(--pg-finder-ease);
}
html body.pg-site .pg-resource-library__finder-toggle[aria-expanded="false"]:hover svg {
	transform: translateY(2px);
}

/* The panel: leaves quickly when compressing; arrives after the band has opened. */
html body.pg-site .pg-resource-library__finder-slot.is-enhanced .pg-resource-library__finder-panel {
	transition: opacity 340ms ease 140ms, transform 520ms var(--pg-finder-ease) 120ms, visibility 0s;
}
html body.pg-site .pg-resource-library__finder-slot.is-enhanced.is-compact .pg-resource-library__finder-panel {
	transition: opacity 150ms ease, transform 260ms ease, visibility 0s linear 150ms;
}
html body.pg-site .pg-resource-library__finder-slot.is-enhanced.is-compact.is-open .pg-resource-library__finder-panel {
	transition: opacity 320ms ease 120ms, transform 520ms var(--pg-finder-ease) 80ms, visibility 0s;
}

/* The two fields rise in one after the other. */
html body.pg-site .pg-resource-library__finder-slot.is-enhanced .pg-resource-library__field {
	opacity: 1;
	transform: none;
	transition: opacity 360ms ease var(--pg-field-delay, 0ms), transform 560ms var(--pg-finder-ease) var(--pg-field-delay, 0ms);
}
html body.pg-site .pg-resource-library__finder-slot.is-enhanced .pg-resource-library__search-field {
	--pg-field-delay: 200ms;
}
html body.pg-site .pg-resource-library__finder-slot.is-enhanced .pg-resource-library__field:not(.pg-resource-library__search-field) {
	--pg-field-delay: 270ms;
}
html body.pg-site .pg-resource-library__finder-slot.is-enhanced.is-compact:not(.is-open) .pg-resource-library__field {
	opacity: 0;
	transform: translateY(10px);
	transition: opacity 120ms ease, transform 220ms ease;
}

@media (prefers-reduced-motion: reduce) {
	html body.pg-site .pg-resource-library__finder-slot .pg-resource-library__finder,
	html body.pg-site .pg-resource-library__finder-slot .pg-resource-library__finder::after,
	html body.pg-site .pg-resource-library__finder-slot .pg-resource-library__finder-toggle,
	html body.pg-site .pg-resource-library__finder-slot .pg-resource-library__finder-panel,
	html body.pg-site .pg-resource-library__finder-slot .pg-resource-library__field,
	html body.pg-site .pg-resource-library__finder-toggle svg {
		transition: none !important;
	}
}
/* <<< pg-finder-motion END */

/* >>> pg-progress-under-header START (2026-10-04): the reading-progress strip on blog posts was drawn on top of the About dropdown (a grey line across "Resources").
   It now sits just under the header layer (header = 9990), so open menus cover it. Rollback: delete this block. */
html body.pg-site .pg-article-progress {
	z-index: 9989;
}
/* <<< pg-progress-under-header END */

/* >>> pg-finder-mobile-search START (2026-10-04): on phones the Resources finder is the live search box only.
   The Topic picker and the "Find guides" button are hidden: results update as you type, and the keyboard's Search key still submits.
   If live search is not available (.is-search-fallback, set by platinum.js) the full form comes back.
   Rollback: delete everything from this START line to the END line below. */
@media (max-width: 767px) {
	html body.pg-site .pg-resource-library:not(.is-search-fallback) .pg-resource-library__finder-slot.is-enhanced .pg-resource-library__field:not(.pg-resource-library__search-field),
	html body.pg-site.pg-site #main-content .pg-resource-library:not(.is-search-fallback) .pg-resource-library__finder-slot.is-enhanced .pg-resource-library__filters .pg-button {
		display: none !important;
	}
	html body.pg-site .pg-resource-library:not(.is-search-fallback) .pg-resource-library__finder-slot.is-enhanced .pg-resource-library__filters {
		grid-template-columns: minmax(0, 1fr);
	}
}
/* <<< pg-finder-mobile-search END */

/* >>> pg-menu-groups START (2026-10-04): the Services dropdown is grouped into categories.
   How it works (all editable in Appearance > Menus, CSS Classes field):
     - a menu entry with the class "pg-menu-heading" shows as a group label, not a link (see pg_child_menu_heading_markup in functions.php);
       on desktop each label starts a new column, unless it also has "pg-menu-heading--stacked" (then it sits under the group above);
     - the parent item ("Services") has the class "pg-menu-grouped", which turns its dropdown into the wide grouped panel;
     - an entry with the class "pg-menu-all" spans the full width at the bottom ("View All Services").
   Rollback: delete everything from this START line to the END line below. */
html body.pg-site .pg-menu-heading__label {
	color: #111718;
	display: block;
	font-size: 12px;
	font-weight: 800;
	letter-spacing: .1em;
	line-height: 1.3;
	text-transform: uppercase;
}

@media (min-width: 981px) {
	html body.pg-site .pg-primary-menu > li.pg-menu-grouped > .sub-menu {
		column-count: 3;
		column-gap: 12px;
		left: -60px;
		padding: 20px 12px 10px;
		width: 720px;
	}
	html body.pg-site .pg-primary-menu > li.pg-menu-grouped > .sub-menu > li {
		break-inside: avoid;
	}
	html body.pg-site .pg-primary-menu > li.pg-menu-grouped > .sub-menu > li.pg-menu-heading {
		break-after: avoid;
	}
	html body.pg-site .pg-primary-menu > li.pg-menu-grouped > .sub-menu > li.pg-menu-heading:not(:first-child):not(.pg-menu-heading--stacked) {
		-webkit-column-break-before: always;
		break-before: column;
	}
	html body.pg-site .pg-primary-menu > li.pg-menu-grouped > .sub-menu > li.pg-menu-heading--stacked {
		margin-top: 18px;
	}
	html body.pg-site .pg-primary-menu > li.pg-menu-grouped > .sub-menu .pg-menu-heading__label {
		border-bottom: 2px solid #f4bd57;
		margin: 0 12px 6px;
		padding: 0 0 8px;
	}
	html body.pg-site .pg-primary-menu > li.pg-menu-grouped > .sub-menu > li.pg-menu-all {
		border-top: 1px solid #dfe3e6;
		column-span: all;
		margin-top: 12px;
		padding-top: 6px;
	}
}

@media (min-width: 1200px) {
	html body.pg-site .pg-primary-menu > li.pg-menu-grouped > .sub-menu {
		column-gap: 24px;
		left: 0;
		padding-inline: 20px;
		width: 820px;
	}
}

@media (max-width: 980px) {
	/* Phones: labels in bold dark type with a divider between groups; the links sit indented under their label. */
	html body.pg-site .pg-mobile-menu__list .sub-menu > li.pg-menu-heading {
		border-top: 1px solid #dfe3e6;
		margin-top: 10px;
	}
	html body.pg-site .pg-mobile-menu__list .sub-menu > li.pg-menu-heading:first-child {
		border-top: 0;
		margin-top: 0;
	}
	html body.pg-site .pg-mobile-menu__list .sub-menu .pg-menu-heading__label {
		font-size: 13px;
		padding: 16px 16px 6px;
	}
	html body.pg-site .pg-mobile-menu__list .sub-menu > li.pg-menu-heading:first-child .pg-menu-heading__label {
		padding-top: 10px;
	}
	html body.pg-site .pg-mobile-menu__list li.pg-menu-grouped > .sub-menu > li:not(.pg-menu-heading):not(.pg-menu-all) > a {
		padding-left: 32px;
	}
	html body.pg-site .pg-mobile-menu__list .sub-menu > li.pg-menu-all {
		border-top: 1px solid #dfe3e6;
		margin-top: 10px;
	}
}
/* <<< pg-menu-groups END */

/* >>> pg-button-radius START (2026-10-04): every button on the site uses the same slightly rounded corner as the header buttons.
   Change the one value below to restyle them all. Selection cards, accordion rows and menu links are not buttons and are left alone.
   Rollback: delete everything from this START line to the END line below. */
html body.pg-site {
	--pg-button-radius: 4px;
}
html body.pg-site.pg-site :is(
	.pg-button,
	.pg-flow-cta,
	.pg-photo-quote-button,
	.pg-project-cta,
	.pg-mobile-actions a,
	.pg-site-footer__contact-text a,
	.pg-link-list__link,
	.wpforms-page-button,
	.wpforms-submit,
	button[type="submit"],
	input[type="submit"],
	.pg-resource-library__pagination .page-numbers,
	.pg-trust-controls button,
	.pg-service-picker__choice
) {
	border-radius: var(--pg-button-radius) !important;
}
/* The footer "Text Us" button is styled with an ID-level rule, so it needs the same weight here. */
html body.pg-site.pg-site #main-footer .pg-site-footer__contact-text a {
	border-radius: var(--pg-button-radius) !important;
}
/* <<< pg-button-radius END */
