/*
Theme Name: ProSeal & Paint
Version: 1.0.0
Description: Photo-led painting website, with editable WordPress pages.
Author: ProSeal & Paint
License: GPL-2.0-or-later
Text Domain: proseal-paint
*/

/* ProSeal & Paint: website design. No external font or UI dependencies. */
:root{--p-cream:#f7f5ef;--p-paper:#fffdf8;--p-forest:#203b32;--p-ink:#24372f;--p-rust:#99452f;--p-muted:#59665d;--p-line:#d4d8ce;--p-serif:Georgia,'Times New Roman',serif;--p-sans:Arial,Helvetica,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;background:var(--p-cream);color:var(--p-ink);font:16px/1.6 var(--p-sans)}a{color:inherit}button,input{font:inherit}button,a{-webkit-tap-highlight-color:transparent}img{max-width:100%;display:block}button{cursor:pointer}figure,p,h1,h2,h3{margin:0}button:focus-visible,a:focus-visible,summary:focus-visible,input:focus-visible{outline:3px solid #ad512f;outline-offset:5px}a:hover{text-decoration-thickness:2px}.p-sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}[hidden]{display:none!important}
.p-skip{position:fixed;top:-100px;left:16px;padding:12px 22px;z-index:100;background:var(--p-forest);color:white}.p-skip:focus{top:8px}.p-wrap{width:90%;max-width:1240px;margin-inline:auto}.p-header{height:90px;padding:0 5%;position:sticky;top:0;z-index:30;background:rgba(247,245,239,.98);display:flex;align-items:center;gap:24px;border-bottom:1px solid var(--p-line);justify-content:space-between}.p-brand{position:relative;display:block;width:190px;height:58px;flex-shrink:0;overflow:hidden}.p-brand img{position:absolute;width:255px;max-width:none;height:auto;left:-31px;top:-22px;mix-blend-mode:multiply}.p-nav{display:flex;align-items:center;gap:27px;margin:0;font-size:13px;font-weight:600;letter-spacing:.01em}.p-nav a{text-decoration:none;white-space:nowrap;min-height:44px;display:inline-flex;align-items:center;position:relative}.p-nav a[aria-current=page]:after{content:'';position:absolute;height:2px;background:var(--p-rust);left:0;right:0;bottom:6px}.p-header-action{display:flex;align-items:center;gap:23px}.p-header-phone{font-size:13px;font-weight:600;text-decoration:none;white-space:nowrap}.p-button{display:inline-flex;align-items:center;justify-content:space-between;gap:30px;min-height:52px;padding:15px 22px;background:var(--p-rust);color:#fff;text-decoration:none;font-size:14px;font-weight:600;border:1px solid transparent;border-radius:2px;line-height:1.4;transition:background .15s,transform .15s}.p-button:hover{background:#7e3624;color:white}.p-button>span[aria-hidden]{font-size:20px;font-weight:400}.p-header .p-button{min-height:44px;padding:10px 17px;font-size:12px;gap:20px}.p-menu-toggle{display:none;background:transparent;border:1px solid var(--p-line);color:var(--p-forest);padding:10px 13px;min-height:44px;border-radius:2px}.p-text-link{display:inline-flex;align-items:center;gap:12px;text-decoration:underline;text-underline-offset:5px;font-size:14px;font-weight:600;min-height:44px}.p-eyebrow{font-size:11px;font-weight:700;letter-spacing:2px;text-transform:uppercase;color:var(--p-rust);margin:0 0 18px}.p-lead{font-size:17px;line-height:1.75;color:var(--p-muted)}.p-small{font-size:12px;line-height:1.7;color:var(--p-muted)}
.p-hero{display:grid;grid-template-columns:1fr 1.18fr;gap:5%;padding-block:48px 40px;align-items:center}.p-hero h1{font:500 clamp(44px,4.5vw,66px)/1.06 var(--p-sans);letter-spacing:-2.7px;margin:0 0 24px}.p-hero h1 span{display:block;color:var(--p-rust);font-family:var(--p-serif);font-style:italic;letter-spacing:-2px;font-weight:400;margin-top:8px}.p-hero .p-lead{max-width:430px}.p-actions{display:flex;align-items:center;gap:25px;margin:26px 0 13px;flex-wrap:wrap}.p-hero-image{margin:0;align-self:stretch;display:flex;flex-direction:column;justify-content:center;position:relative}.p-hero-image>img{width:100%;height:100%;max-height:505px;min-height:360px;object-fit:cover;object-position:52% 50%;border-radius:2px}.p-hero-image figcaption{display:flex;justify-content:space-between;gap:16px;align-items:center;font-size:11px;padding-top:12px;color:var(--p-muted)}.p-hero-image figcaption a{text-decoration:none;font-weight:600;color:var(--p-ink);min-height:30px;display:flex;align-items:center}.p-proof{border-top:1px solid var(--p-line);border-bottom:1px solid var(--p-line);display:grid;grid-template-columns:.8fr 1.2fr 1fr;margin-bottom:46px;padding-block:20px;gap:22px}.p-proof p{margin:0;border-right:1px solid var(--p-line);padding-right:22px}.p-proof p:last-child{border:0}.p-proof strong{display:block;font-size:15px;font-weight:600}.p-proof span:not(.p-sr-only){font-size:12px;color:var(--p-muted);display:block;margin-top:3px}.p-proof strong span[aria-hidden]{display:inline;color:var(--p-rust);font-size:16px}.p-proof a{text-decoration:none;display:block}.p-proof a:hover strong{text-decoration:underline;text-underline-offset:4px}
.p-transformation{padding:12px 0 48px}.p-section-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:40px;margin-bottom:28px}.p-section-heading h2,.p-enquiry h2,.p-contact h2{font:500 clamp(32px,3.2vw,44px)/1.12 var(--p-sans);letter-spacing:-1.5px;margin:0}.p-section-intro{max-width:355px;color:var(--p-muted);font-size:14px}.p-section-intro p{margin-bottom:7px}.p-section-intro a{color:var(--p-ink)}.p-stages{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.p-photo-button{position:relative;width:100%;padding:0;background:#dde0d6;border:0;display:block;overflow:hidden;border-radius:2px}.p-photo-button img{width:100%;height:auto;aspect-ratio:4/3;object-fit:cover;transition:transform .3s}.p-photo-button:hover img{transform:scale(1.025)}.p-enlarge{position:absolute;bottom:12px;right:12px;background:var(--p-cream);color:var(--p-ink);font-size:10px;padding:5px 9px;opacity:0;transition:opacity .15s}.p-photo-button:hover .p-enlarge,.p-photo-button:focus-visible .p-enlarge{opacity:1}.p-stage-label{padding-top:15px}.p-stage-label>span{display:block;color:var(--p-rust);font-size:10px;text-transform:uppercase;letter-spacing:1.3px;font-weight:700;margin-bottom:5px}.p-stage-label h3{font:500 21px/1.3 var(--p-sans);letter-spacing:-.4px;margin-bottom:7px}.p-stage-label p{font-size:13px;line-height:1.6;color:var(--p-muted);max-width:310px}.p-transformation-bottom{display:flex;align-items:center;justify-content:space-between;gap:30px;border-top:1px solid var(--p-line);padding-top:22px;margin-top:27px}.p-transformation-bottom p{font-size:11px;color:var(--p-muted);max-width:430px}.p-button-outline{background:transparent;border-color:var(--p-forest);color:var(--p-forest);font-size:13px;min-height:48px;white-space:nowrap}.p-button-outline:hover{background:var(--p-forest)}.p-stage-tabs{display:flex;gap:6px;margin-bottom:15px}.p-stage-tabs button{flex:1;border:1px solid var(--p-line);background:transparent;color:var(--p-ink);min-height:44px;padding:8px;font-size:12px}.p-stage-tabs button[aria-selected=true]{background:var(--p-forest);color:var(--p-cream);border-color:var(--p-forest)}
.p-services{border-top:1px solid var(--p-line);padding-block:40px 45px}.p-services .p-section-heading{margin-bottom:24px}.p-service-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:30px}.p-service-list>a{display:flex;gap:12px;text-decoration:none;border-top:1px solid var(--p-line);padding:21px 0 6px;align-items:flex-start}.p-service-list h3{font-size:18px;line-height:1.3;font-weight:500;margin:0 0 8px;letter-spacing:-.3px}.p-service-list p{font-size:13px;line-height:1.7;color:var(--p-muted);margin:0}.p-service-number{font-size:10px;line-height:2.5;color:var(--p-rust)}.p-service-list>a>span:last-child{font-size:21px;color:var(--p-rust);margin-left:auto}.p-service-list>a:hover h3{text-decoration:underline;text-underline-offset:4px}.p-enquiry{background:var(--p-forest);color:var(--p-cream);padding:40px 0}.p-enquiry-inner{display:flex;align-items:center;justify-content:space-between;gap:40px}.p-enquiry .p-eyebrow{color:#debca4;margin-bottom:13px}.p-enquiry p:not(.p-eyebrow){font-size:14px;line-height:1.7;color:#d9e0d6;margin-top:17px}.p-enquiry-actions{display:flex;flex-direction:column;align-items:flex-start;gap:13px;padding-right:8%}.p-button-cream{background:var(--p-cream);color:var(--p-forest);min-width:265px}.p-button-cream:hover{background:#e3e5da;color:var(--p-forest)}.p-phone{font-size:25px;letter-spacing:-.5px;text-decoration:none;min-height:44px;display:flex;align-items:center}.p-link-light{font-size:12px;text-underline-offset:4px;color:#e2e5db;min-height:30px;display:flex;align-items:center}.p-enquiry a:focus-visible{outline-color:#f0b993}
.p-footer{background:var(--p-cream);color:var(--p-ink);padding:30px 5% 23px;font-size:12px}.p-footer-top,.p-footer-bottom{display:flex;justify-content:space-between;gap:24px;align-items:center;max-width:1240px;margin:auto}.p-footer strong{font-size:14px;font-weight:600;letter-spacing:1px}.p-footer p{font-size:12px;margin:4px 0;color:var(--p-muted)}.p-footer-links{display:flex;flex-wrap:wrap;gap:6px 20px;max-width:540px}.p-footer-links a{min-height:35px;display:flex;align-items:center;text-decoration:none}.p-footer-bottom{border-top:1px solid var(--p-line);margin-top:20px;padding-top:16px;font-size:11px;color:var(--p-muted)}.p-social-links{display:flex;gap:24px}.p-social-links a{min-height:30px;display:flex;align-items:center;text-decoration:none}
.p-lightbox{padding:42px 16px 16px;border:0;max-width:min(94vw,1100px);max-height:94vh;background:var(--p-cream);color:var(--p-ink);border-radius:3px}.p-lightbox::backdrop{background:rgba(16,29,23,.86)}.p-lightbox>img{max-width:100%;max-height:76vh;object-fit:contain;margin:auto}.p-lightbox>p{font-size:13px;margin-top:12px;max-width:700px}.p-dialog-close{position:absolute;right:10px;top:1px;min-height:40px;background:transparent;border:0;color:var(--p-ink);font-size:13px;padding:8px 12px}
/* Existing deeper content retains its source layout and route, with a shared shell. */
.inner-page h1{font:500 clamp(34px,4vw,56px)/1.12 var(--p-sans);letter-spacing:-1.7px}.inner-page h2{font-family:var(--p-sans);font-weight:500;letter-spacing:-.7px}.inner-page .article-hero{padding-top:24px;padding-bottom:35px}.inner-page .article-hero .lead{font-size:16px;line-height:1.75}.inner-page .article-body{font-size:16px;line-height:1.8}.inner-page .article-body p,.inner-page .article-body ul{margin-bottom:20px}.inner-page .article-body h2{margin:30px 0 14px}.inner-page .article-body h3{margin:22px 0 12px}.inner-page .breadcrumbs{font-size:12px}.inner-page .article-photo{border-radius:2px;overflow:hidden}.inner-page .article-photo img{aspect-ratio:4/3;object-fit:cover}.inner-page .article-photo video{display:block;max-height:450px;background:#e4e3db}.inner-page .section{padding-block:40px}.inner-page .page-cta{background:var(--p-forest);color:var(--p-cream)}.inner-page .button{background:var(--p-rust);color:white;font-size:14px;min-height:48px;border-radius:2px}.inner-page .button:hover{background:#7e3624}.inner-page .text-link{min-height:40px;display:inline-flex;align-items:center}.inner-page .gallery-intro{padding-top:35px;padding-bottom:35px}.inner-page .gallery-intro h1{font-size:clamp(36px,4vw,58px)}.inner-page .gallery-intro .featured{border-radius:2px}.inner-page .project-card{border-radius:2px;box-shadow:none}.inner-page .project-card h2{font-size:24px}.inner-page .project-card summary{min-height:46px}.inner-page .project-card summary span{font-size:12px}.inner-page .filter-bar button{min-height:44px}.inner-page .photo-open{border-radius:2px}.inner-page .lightbox{background:var(--p-cream)}.inner-page .lightbox .close{min-width:44px;min-height:44px}.inner-page main{overflow-wrap:break-word}.p-faq-simple{margin-block:35px}.p-faq-simple article{border-top:1px solid var(--p-line);padding:20px 0}.p-faq-simple h3{font-size:19px;margin:0 0 10px}.p-faq-simple p{font-size:15px;max-width:780px}
.p-breadcrumb{padding-top:25px;font-size:12px;color:var(--p-muted)}.p-breadcrumb a{text-underline-offset:3px}.p-contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:10%;padding:42px 0 50px;align-items:start}.p-contact h1{font:500 clamp(44px,5vw,68px)/1.05 var(--p-sans);letter-spacing:-2px;margin-bottom:24px}.p-contact .p-lead{max-width:420px}.p-contact-details{margin-top:30px}.p-contact-details p{margin:0 0 23px;font-size:15px}.p-contact-details p>span{display:block;font-size:10px;color:var(--p-rust);text-transform:uppercase;letter-spacing:1.4px;font-weight:700;margin-bottom:4px}.p-contact-details p>a:not(.p-text-link){font-size:21px;text-decoration:none;display:inline-flex;min-height:34px;align-items:center}.p-request-card{background:#ebece3;border:1px solid var(--p-line);padding:34px}.p-request-card h2{font-size:35px;margin-bottom:22px}.p-request-card>p:not(.p-eyebrow){margin-bottom:16px}.p-request-card ul{padding-left:19px;margin:0 0 28px;font-size:14px}.p-request-card li{padding-bottom:9px}.p-request-card .p-button{width:100%;margin-bottom:15px}.p-contact-help{padding:32px 0 44px;border-top:1px solid var(--p-line)}.p-contact-help h2{font-size:26px;margin-bottom:12px}.p-contact-help p{font-size:15px;color:var(--p-muted);margin-bottom:8px}
@media(min-width:1500px){.p-header{padding-inline:max(5%,calc((100vw - 1240px)/2))}}@media(max-width:1180px){.p-header-phone{display:none}.p-header{gap:18px}.p-nav{gap:19px}.p-hero h1{font-size:54px}.p-hero-image>img{min-height:400px}.p-hero .p-lead{font-size:16px}.p-actions{gap:18px}.p-enquiry-actions{padding-right:3%}}
@media(max-width:900px){.p-header{height:80px}.p-brand{width:165px}.p-brand img{width:228px;left:-29px;top:-16px}.p-nav{gap:15px;font-size:12px}.p-header .p-button{gap:12px;padding-inline:13px}.p-hero{gap:4%;padding-top:35px}.p-hero h1{font-size:46px;letter-spacing:-2px}.p-hero h1 span{letter-spacing:-1.5px}.p-hero-image>img{min-height:390px}.p-actions{gap:10px}.p-hero .p-button{padding-inline:15px;gap:15px}.p-section-intro{max-width:310px}.p-service-list{gap:18px}.p-service-list h3{font-size:16px}.p-service-number{display:none}.p-proof{gap:16px}.p-proof strong{font-size:13px}.p-stage-label h3{font-size:18px}}
@media(max-width:760px){html{scroll-padding-top:88px}.p-wrap{width:90%}.p-header{height:76px;padding-inline:5%;gap:10px}.p-brand{height:54px;width:166px}.p-brand img{top:-18px}.p-header-action{margin-left:auto;gap:10px}.p-header-action>.p-button{display:none}.p-menu-toggle{display:inline-flex;align-items:center;gap:12px}.p-nav{position:absolute;top:76px;left:0;right:0;display:flex;flex-direction:column;align-items:stretch;gap:0;background:var(--p-cream);border-bottom:1px solid var(--p-line);padding:12px 5% 20px;box-shadow:0 10px 20px #203b3210}.p-nav a{font-size:16px;min-height:49px;border-bottom:1px solid var(--p-line)}.p-nav a[aria-current=page]:after{display:none}.p-nav a[aria-current=page]{color:var(--p-rust)}.p-menu-ready .p-nav:not(.is-open){display:none}.p-hero{grid-template-columns:1fr;padding:30px 0 23px;gap:26px}.p-hero h1{font-size:clamp(40px,9.5vw,66px);line-height:1.03;letter-spacing:-2px;margin-bottom:19px}.p-hero h1>br{display:none}.p-hero h1 span{display:block;font-size:.88em;letter-spacing:-1.5px;line-height:1.1;margin-top:8px}.p-hero h1 span br{display:none}.p-hero .p-eyebrow{font-size:10px;letter-spacing:1.6px;margin-bottom:15px}.p-hero .p-lead{font-size:15px;line-height:1.7;max-width:510px}.p-actions{gap:22px;margin:21px 0 9px}.p-hero .p-button{min-height:50px;padding-inline:18px;gap:24px;font-size:13px}.p-hero .p-text-link{font-size:13px}.p-small{font-size:11px}.p-hero-image>img{min-height:0;height:auto;aspect-ratio:4/3;object-fit:cover;max-height:none}.p-hero-image figcaption{font-size:10px;padding-top:5px;gap:8px}.p-proof{grid-template-columns:1fr 1fr;margin-bottom:32px;gap:16px;padding:17px 0}.p-proof p{padding-right:12px}.p-proof p:nth-child(2){display:none}.p-proof p:last-child{border:0;padding:0}.p-proof strong{font-size:13px}.p-proof span:not(.p-sr-only){font-size:10px;margin-top:2px}.p-transformation{padding:0 0 30px}.p-section-heading{display:block;margin-bottom:20px}.p-section-heading h2{font-size:34px;letter-spacing:-1.2px}.p-section-heading h2 br{display:none}.p-eyebrow{font-size:10px;margin-bottom:13px;letter-spacing:1.6px}.p-section-intro{max-width:100%;margin-top:15px;font-size:14px}.p-section-intro .p-text-link{font-size:13px}.p-stages{grid-template-columns:1fr;gap:22px}.p-stage-label{padding-top:13px}.p-stage-label h3{font-size:21px}.p-stage-label p{max-width:none;font-size:13px}.p-enlarge{opacity:1}.p-transformation-bottom{display:block;margin-top:22px;padding-top:17px}.p-transformation-bottom p{font-size:11px;margin-bottom:18px}.p-transformation-bottom .p-button{width:100%;font-size:13px}.p-services{padding:30px 0}.p-services .p-section-heading{margin-bottom:18px}.p-services .p-section-heading>a{margin-top:10px}.p-service-list{grid-template-columns:1fr;gap:0}.p-service-list>a{padding:18px 0;gap:12px}.p-service-list h3{font-size:19px;margin-bottom:5px}.p-service-list p{font-size:13px;max-width:290px}.p-service-number{display:block}.p-enquiry{padding:31px 0}.p-enquiry-inner{display:block}.p-enquiry h2{font-size:38px}.p-enquiry h2 br{display:none}.p-enquiry p:not(.p-eyebrow){font-size:14px;margin-top:15px}.p-enquiry-actions{margin-top:25px;padding:0;gap:12px}.p-button-cream{width:100%}.p-phone{font-size:24px}.p-footer{padding:25px 5% 18px}.p-footer-top{display:block}.p-footer-links{margin-top:17px;gap:0 20px}.p-footer-links a{min-height:42px}.p-footer-bottom{margin-top:15px;align-items:flex-start;gap:18px;flex-wrap:wrap}.p-social-links{gap:18px}.inner-page .article-hero{padding-top:20px;padding-bottom:24px}.inner-page h1{font-size:38px;letter-spacing:-1.2px}.inner-page .article-body{font-size:15px;line-height:1.75}.inner-page .gallery-intro{padding-block:25px}.inner-page .gallery-intro h1{font-size:39px}.inner-page .filter-bar{position:static}.inner-page .project-card h2{font-size:23px}.p-contact-grid{grid-template-columns:1fr;gap:20px;padding-top:28px}.p-contact h1{font-size:49px}.p-contact .p-lead{font-size:15px}.p-contact-details{margin-top:25px}.p-contact-details p>a:not(.p-text-link){font-size:19px}.p-request-card{padding:25px}.p-request-card h2{font-size:31px}.p-contact-help h2{font-size:26px}.p-lightbox{max-width:94vw;padding-inline:10px}.p-lightbox>img{max-height:70vh}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}
.p-footer{display:block}.inner-page .article-photo:has(video){background:transparent;display:flex;justify-content:center}.inner-page .article-photo video{width:min(100%,450px)!important;height:auto!important;max-height:none;aspect-ratio:1;object-fit:contain!important}
.p-nav .p-mobile-contact{display:none}@media(max-width:760px){.p-nav .p-mobile-contact{display:flex}html:not(.p-menu-ready) .p-header{position:static;height:auto;flex-wrap:wrap;padding-block:10px}html:not(.p-menu-ready) .p-nav{position:static;width:100%;order:3;box-shadow:none;padding-inline:0}html:not(.p-menu-ready) .p-menu-toggle{display:none}}
@media print{.p-header,.p-footer,.p-stage-tabs{display:none!important}.p-stage[hidden]{display:block!important}.p-stages{display:block}.p-home,.inner-page{color:black;background:white}a{color:black}.p-enquiry{background:white;color:black}}

/* Homepage refinement: visible profiles, six service paths and direct enquiry. */
.p-home .p-hero .p-eyebrow{font-size:10px;letter-spacing:1.4px;max-width:440px}
.p-home .p-proof{grid-template-columns:repeat(3,minmax(0,1fr));margin-bottom:0}
.p-connect{display:flex;justify-content:space-between;align-items:center;gap:28px;padding-block:22px 28px}
.p-connect>p strong{display:block;font-size:14px;font-weight:600}.p-connect>p>span{display:block;font-size:12px;color:var(--p-muted);margin-top:3px}
.p-profile-links{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;width:65%;max-width:760px}
.p-profile-links>a{display:flex;align-items:center;gap:12px;text-decoration:none;border:1px solid var(--p-line);padding:10px 14px;min-height:68px;background:var(--p-paper);transition:border-color .15s,background .15s}
.p-profile-links>a:hover{border-color:var(--p-rust);background:#eeeee5}.p-profile-links strong{font-size:13px;display:block;font-weight:600;white-space:nowrap}.p-profile-links small{display:block;color:var(--p-muted);font-size:11px;margin-top:2px}
.p-profile-mark{width:30px;height:30px;flex-shrink:0;display:flex;align-items:center;justify-content:center}.p-facebook{color:#2358a4;font:bold 32px/1 Arial,Helvetica,sans-serif}.p-instagram{color:#9a3655}.p-instagram svg{width:26px;height:26px}.p-homestars{color:var(--p-forest);font-size:26px}
.p-home .p-services{padding-block:36px 45px}.p-service-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.p-service-card{background:var(--p-paper);border:1px solid var(--p-line);text-decoration:none;overflow:hidden;display:flex;flex-direction:column;transition:border-color .15s,background .15s}
.p-service-feature>img{width:100%;height:auto;aspect-ratio:2/1;object-fit:cover}.p-service-feature:first-child>img{object-position:50% 49%}
.p-service-copy{padding:20px 22px;display:flex;flex-direction:column;flex:1}.p-service-copy h3{font-size:21px;line-height:1.3;letter-spacing:-.5px;font-weight:500;margin-bottom:9px}.p-service-copy>p:not(.p-service-kicker){font-size:13px;line-height:1.65;color:var(--p-muted);margin-bottom:18px}
.p-service-link{font-size:12px;font-weight:600;display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:auto;min-height:28px;color:var(--p-rust)}.p-service-link>span{font-size:20px;font-weight:400}
.p-service-card:hover{border-color:var(--p-rust);background:#f0f0e8}.p-service-card:hover .p-service-link{text-decoration:underline;text-underline-offset:4px}.p-service-kicker{font-size:9px;font-weight:700;letter-spacing:1.3px;text-transform:uppercase;color:var(--p-rust);margin-bottom:10px}.p-service-detail{background:transparent}
.p-home .p-transformation{padding-top:10px}.p-next{border-top:1px solid var(--p-line);padding-block:40px 45px}.p-process{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));list-style:none;padding:0;margin:0;gap:30px}.p-process li{display:flex;align-items:flex-start;gap:14px}.p-process li>span{color:var(--p-rust);font-size:10px;line-height:2.7}.p-process h3{font-size:17px;font-weight:500;line-height:1.4;margin-bottom:7px}.p-process p{font-size:13px;line-height:1.7;color:var(--p-muted)}
.p-explore{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin-top:30px}.p-explore>a{text-decoration:none;background:#eaece3;padding:23px 25px;display:block;border:1px solid transparent;transition:border-color .15s}.p-explore>a:hover{border-color:var(--p-rust)}.p-explore .p-eyebrow{display:block;font-size:9px;margin-bottom:7px}.p-explore strong{display:flex;justify-content:space-between;align-items:center;font-size:21px;line-height:1.4;font-weight:500}.p-explore strong>span{color:var(--p-rust)}.p-explore>a>span:last-child{display:block;color:var(--p-muted);font-size:12px;line-height:1.7;margin-top:7px}
.p-home .p-enquiry{padding-block:45px}.p-home .p-enquiry-inner>div:first-child{max-width:530px}.p-home .p-enquiry-actions{padding-right:0;min-width:315px;max-width:390px;gap:5px}.p-home .p-enquiry-actions>.p-button{width:100%}.p-home .p-enquiry p.p-form-note{font-size:11px;margin-top:5px;margin-bottom:13px;color:#d9e0d6}.p-home .p-enquiry-actions .p-sr-only{margin:0}.p-contact-alternatives>span{display:block;font-size:11px;color:#d9e0d6;margin-top:5px}.p-contact-alternatives .p-phone{font-size:25px}.p-contact-alternatives .p-link-light{font-size:13px;min-height:40px}.p-home .p-enquiry-inner>div:first-child>.p-link-light{margin-top:12px;min-height:44px}.p-home .p-enquiry-actions>.p-link-light{min-height:40px}.p-footer .p-social-links{flex-wrap:wrap;gap:8px 22px}.p-footer .p-social-links>a{min-height:44px}
@media(max-width:1000px){.p-connect{gap:18px}.p-profile-links{width:70%;gap:8px}.p-profile-links>a{gap:8px;padding-inline:10px}.p-profile-mark{width:23px}.p-profile-links small{font-size:10px}.p-service-copy{padding:18px}.p-service-copy h3{font-size:19px}.p-service-grid{gap:14px}.p-process{gap:20px}.p-home .p-enquiry-actions{min-width:285px}.p-home .p-enquiry-inner{gap:30px}}
@media(max-width:760px){
 .p-home .p-proof{grid-template-columns:1fr;padding-block:15px;gap:10px}.p-home .p-proof p,.p-home .p-proof p:nth-child(2){display:flex;align-items:baseline;justify-content:space-between;gap:12px;border:0;padding:0}.p-home .p-proof strong{font-size:12px;flex-shrink:0}.p-home .p-proof span:not(.p-sr-only){font-size:11px;margin:0;text-align:right;line-height:1.5;max-width:54%}
 .p-connect{display:block;padding-block:19px 24px}.p-connect>p{margin-bottom:13px}.p-connect>p strong{font-size:13px}.p-connect>p>span{font-size:11px}.p-profile-links{width:100%;max-width:none;gap:8px}.p-profile-links>a{flex-direction:column;gap:5px;padding:10px 5px;align-items:center;text-align:center;min-height:95px}.p-profile-links strong{font-size:12px;white-space:normal;line-height:1.5}.p-profile-links small{font-size:10px;line-height:1.5}.p-profile-mark{height:24px;width:26px}.p-facebook{font-size:28px}.p-instagram svg{height:24px;width:24px}.p-homestars{font-size:25px}
 .p-home .p-services{padding-block:28px 30px}.p-service-grid{grid-template-columns:1fr;gap:12px}.p-service-feature{display:grid;grid-template-columns:100px minmax(0,1fr)}.p-service-feature>img{height:100%;width:100%;aspect-ratio:auto;object-fit:cover}.p-service-copy{padding:17px 16px}.p-service-copy h3{font-size:19px;margin-bottom:6px}.p-service-copy>p:not(.p-service-kicker){font-size:12px;margin-bottom:10px;line-height:1.6}.p-service-link{font-size:11px;min-height:30px;gap:8px}.p-service-detail .p-service-copy{padding-block:17px}.p-service-kicker{font-size:9px;margin-bottom:6px}
 .p-next{padding-block:29px 30px}.p-process{grid-template-columns:1fr;gap:18px}.p-process li{gap:13px}.p-process h3{font-size:16px;margin-bottom:4px}.p-process p{font-size:12px}.p-explore{grid-template-columns:1fr;margin-top:24px;gap:12px}.p-explore>a{padding:18px}.p-explore strong{font-size:20px}.p-explore>a>span:last-child{font-size:12px}
 .p-home .p-enquiry{padding-block:32px}.p-home .p-enquiry-actions{min-width:0;max-width:none;margin-top:23px}.p-home .p-enquiry h2{font-size:38px}.p-home .p-enquiry-inner>div:first-child{max-width:none}.p-home .p-enquiry p.p-form-note{font-size:11px;margin-bottom:12px}
}

/* Social buttons immediately below the header; original Jobber system restored. */
.p-home>.p-connect{padding-block:12px;border-bottom:1px solid var(--p-line)}
.p-home>.p-connect .p-profile-links>a{min-height:58px;padding-block:8px}
.p-enquiry-grid{display:grid;grid-template-columns:minmax(0,.65fr) minmax(0,1fr);gap:48px;align-items:start}
.p-home .p-enquiry-intro{min-width:0}.p-home .p-enquiry-intro>.p-link-light{margin-top:16px;min-height:44px}.p-home .p-enquiry-intro>.p-estimate-explanation{font-size:13px}
.p-home .p-enquiry-embedded .p-enquiry-actions{min-width:0;max-width:340px;margin-top:24px}
.p-jobber-card{min-width:0;width:100%;background:#fff;color:var(--p-ink);padding:22px;border-radius:3px}
.p-jobber-card iframe{display:block;width:100%!important;max-width:100%;border:0;min-height:0}
@media(max-width:900px){.p-enquiry-grid{grid-template-columns:minmax(0,.6fr) minmax(0,1fr);gap:25px}.p-jobber-card{padding:15px}}
@media(max-width:760px){.p-home>.p-connect{padding-block:10px}.p-home>.p-connect>p{display:none}.p-home>.p-connect .p-profile-links>a{flex-direction:row;min-height:44px;padding:8px 5px;gap:0}.p-home>.p-connect .p-profile-mark,.p-home>.p-connect small{display:none}.p-home>.p-connect strong{font-size:12px}.p-enquiry-grid{grid-template-columns:1fr;gap:26px}.p-home .p-enquiry-embedded .p-enquiry-actions{max-width:none;margin-top:18px}.p-jobber-card{padding:12px}}

/* Current WordPress integration: preserve the existing Jobber shortcode. */
.p-jobber-card .proseal-jobber{padding:0;border-radius:0;box-shadow:none}.p-jobber-card .proseal-jobber .privacy-note,.p-jobber-card .proseal-jobber .form-note{display:none}.p-jobber-card .proseal-jobber>div[id],.p-jobber-card .jobber-inline-work-request{min-height:1200px}.p-footer a:focus-visible{outline-offset:3px}
body.admin-bar .p-header{top:32px}@media(max-width:782px){body.admin-bar .p-header{top:46px}}@media(max-width:600px){body.admin-bar .p-header{top:0}}
.p-header .p-nav{margin-left:0}.inner-page .plain-page{max-width:1100px;margin:auto;padding-inline:5%}.inner-page .article-body a{overflow-wrap:anywhere}

/* ProSeal deeper-page refinement. Append after the existing flagship CSS.
   Scoped to the inner-page body; shared header, footer, Home and forms retain
   their own styles. Existing gallery behaviour and media dimensions remain. */
body.inner-page {
  --cream: var(--p-cream);
  --ink: var(--p-ink);
  --red: var(--p-rust);
  --muted: var(--p-muted);
  --line: var(--p-line);
  --pale: var(--p-paper);
}

/* A shared shell for introductory and service content; a narrower reading line. */
.inner-page main .breadcrumbs,
.inner-page main .article-hero,
.inner-page main .gallery-intro,
.inner-page main .gallery-body,
.inner-page main .services-overview,
.inner-page main .service-process,
.inner-page main .service-proof,
.inner-page main .local-intro {
  width: 90%;
  max-width: 1240px;
  margin-inline: auto;
  padding-inline: 0;
}
.inner-page main .reading-layout,
.inner-page main > .p-faq-simple,
.inner-page main.plain-page {
  width: 90%;
  max-width: 780px;
  margin-inline: auto;
  padding-inline: 0;
}
.inner-page main .breadcrumbs {
  padding-block: 24px 0;
  color: var(--p-muted);
  font-size: 12px;
  line-height: 1.7;
}
.inner-page main .breadcrumbs a {
  color: var(--p-ink);
  text-underline-offset: 4px;
}
.inner-page main .article-hero {
  padding-block: 30px 40px;
  gap: 6%;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
}
.inner-page main .article-hero > div,
.inner-page main .article-hero > figure {
  min-width: 0;
}
.inner-page main .article-hero h1,
.inner-page main .gallery-intro h1,
.inner-page main.plain-page > h1 {
  color: var(--p-forest);
  font: 500 clamp(36px, 4vw, 56px)/1.12 var(--p-sans);
  letter-spacing: -1.6px;
  margin: 0 0 24px;
}
.inner-page main .eyebrow {
  color: var(--p-rust);
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 1.5px;
  line-height: 1.7;
  margin: 0 0 16px;
}
.inner-page main .article-hero .lead,
.inner-page main .gallery-intro p:not(.eyebrow) {
  color: var(--p-muted);
  font-size: 16px;
  line-height: 1.8;
  max-width: 560px;
  margin: 0 0 24px;
}
.inner-page main .article-photo {
  background: var(--p-paper);
  border-radius: 2px;
}
.inner-page main .article-photo figcaption,
.inner-page main .case-pair figcaption,
.inner-page main .case-photos figcaption {
  color: var(--p-muted);
  font-size: 12px;
  font-weight: 400;
  line-height: 1.7;
  padding-block: 12px 0;
}
.inner-page main .reading-layout {
  padding-block: 0 52px;
}
.inner-page main .reading-layout > section,
.inner-page main.plain-page > section {
  margin-block: 34px;
}
.inner-page main .reading-layout h2,
.inner-page main.plain-page h2,
.inner-page main > .p-faq-simple > h2 {
  color: var(--p-forest);
  font: 500 clamp(25px, 2.6vw, 30px)/1.25 var(--p-sans);
  letter-spacing: -.65px;
  margin: 0 0 16px;
}
.inner-page main .reading-layout h3,
.inner-page main.plain-page h3,
.inner-page main .p-faq-simple h3 {
  color: var(--p-forest);
  font: 500 21px/1.35 var(--p-sans);
  letter-spacing: -.35px;
  margin: 24px 0 12px;
}
.inner-page main .reading-layout p,
.inner-page main .reading-layout li,
.inner-page main.plain-page p,
.inner-page main.plain-page li,
.inner-page main .p-faq-simple p {
  color: var(--p-muted);
  font-size: 16px;
  line-height: 1.8;
}
.inner-page main .reading-layout p,
.inner-page main.plain-page p {
  margin: 0 0 20px;
}
.inner-page main .reading-layout ul,
.inner-page main .reading-layout ol,
.inner-page main.plain-page ul,
.inner-page main.plain-page ol {
  margin: 0 0 22px;
  padding-left: 22px;
}
.inner-page main .reading-layout li,
.inner-page main.plain-page li {
  margin-block: 9px;
}
.inner-page main .reading-layout a:not(.button):not(.p-button),
.inner-page main.plain-page a:not(.button):not(.p-button),
.inner-page main .local-intro a:not(.button):not(.p-button),
.inner-page main .text-link {
  color: var(--p-rust);
  text-decoration: underline;
  text-underline-offset: 4px;
}
.inner-page main .text-link {
  min-height: 44px;
  font-size: 14px;
  font-weight: 600;
  line-height: 1.5;
  white-space: normal;
}
.inner-page main > .p-faq-simple {
  margin-block: 0 48px;
}
.inner-page main .p-faq-simple article {
  border-color: var(--p-line);
  padding-block: 22px;
}
.inner-page main .p-faq-simple article h3 {
  margin-top: 0;
}
.inner-page main .local-intro {
  background: transparent;
  border-block: 1px solid var(--p-line);
  padding-block: 40px;
}
.inner-page main.plain-page {
  padding-block: 42px 52px;
}

/* Dedicated service pages use the same shell as the established routes. */
.inner-page main.p-service-page {
  width: auto;
  max-width: none;
  padding: 0;
}
.inner-page main.p-service-page .article-photo img {
  height: 420px;
  aspect-ratio: auto;
  object-fit: contain;
}

/* Services: paper cards, a quiet assurance strip, and common section rhythm. */
.inner-page main .service-assurance {
  width: 90%;
  max-width: 1240px;
  margin-inline: auto;
  padding: 20px 0;
  gap: 16px 40px;
  border-block: 1px solid var(--p-line);
  background: transparent;
  color: var(--p-ink);
  font-size: 14px;
  line-height: 1.6;
}
.inner-page main .services-overview,
.inner-page main .service-process,
.inner-page main .service-proof {
  padding-block: 48px;
}
.inner-page main .services-overview > h2,
.inner-page main .service-process > h2,
.inner-page main .service-proof > h2,
.inner-page main .drywall-feature h2 {
  color: var(--p-forest);
  font: 500 clamp(29px, 3vw, 40px)/1.18 var(--p-sans);
  letter-spacing: -1px;
  margin: 0 0 28px;
}
.inner-page main .service-choices {
  gap: 22px;
}
.inner-page main .service-choice {
  min-width: 0;
  background: var(--p-paper);
  border: 1px solid var(--p-line);
  border-radius: 2px;
  padding: 26px;
  color: var(--p-ink);
  box-shadow: none;
}
.inner-page main .service-choice:hover {
  border-color: var(--p-forest);
  background: var(--p-paper);
}
.inner-page main .service-choice h2 {
  color: var(--p-forest);
  font: 500 24px/1.25 var(--p-sans);
  letter-spacing: -.5px;
  margin: 16px 0 12px;
}
.inner-page main .service-choice p,
.inner-page main .surface-grid p,
.inner-page main .process-steps p,
.inner-page main .drywall-feature p,
.inner-page main .drywall-feature li,
.inner-page main .service-proof p {
  color: var(--p-muted);
  font-size: 16px;
  line-height: 1.8;
}
.inner-page main .service-choice p {
  margin: 0 0 22px;
}
.inner-page main .service-choice .text-link {
  margin-top: auto;
}
.inner-page main .service-number,
.inner-page main .process-steps > div > span {
  color: var(--p-rust);
  font-size: 12px;
}
.inner-page main .surface-grid,
.inner-page main .process-steps {
  gap: 28px;
}
.inner-page main .surface-grid h3,
.inner-page main .process-steps h3 {
  color: var(--p-forest);
  font: 500 22px/1.3 var(--p-sans);
  letter-spacing: -.4px;
  margin: 10px 0 12px;
}
.inner-page main .surface-grid a {
  color: var(--p-rust);
  min-height: 44px;
  line-height: 1.5;
  text-underline-offset: 4px;
}
.inner-page main .drywall-feature {
  width: 90%;
  max-width: 1240px;
  margin-inline: auto;
  padding: 36px;
  gap: 6%;
  border: 1px solid var(--p-line);
  border-radius: 2px;
  background: var(--p-paper);
}
.inner-page main .drywall-feature figcaption {
  color: var(--p-muted);
  font-size: 12px;
  line-height: 1.7;
}
.inner-page main .service-proof {
  border-color: var(--p-line);
}
.inner-page main .service-proof p {
  max-width: 780px;
}

/* Deep-page actions match the common copper and forest palette. */
.inner-page main .button {
  min-height: 52px;
  padding: 15px 22px;
  gap: 24px;
  background: var(--p-rust);
  border: 1px solid transparent;
  border-radius: 2px;
  color: #fff;
  font-size: 14px;
  font-weight: 600;
  line-height: 1.4;
  text-decoration: none;
  white-space: normal;
}
.inner-page main .button:hover {
  background: #7e3624;
  color: #fff;
}
.inner-page main .gallery-cta,
.inner-page main .page-cta {
  background: var(--p-forest);
  color: var(--p-cream);
  padding: 48px max(5%, calc((100% - 1240px) / 2));
}
.inner-page main .gallery-cta h2,
.inner-page main .page-cta h2 {
  color: var(--p-cream);
  font: 500 clamp(30px, 3vw, 40px)/1.2 var(--p-sans);
  letter-spacing: -1px;
  max-width: 780px;
  margin-inline: auto;
}
.inner-page main .gallery-cta .eyebrow,
.inner-page main .page-cta .eyebrow {
  color: #debca4;
}
.inner-page main .gallery-cta p:not(.eyebrow),
.inner-page main .page-cta p:not(.eyebrow) {
  color: #d9e0d6;
  max-width: 720px;
  margin: 20px auto 26px;
  font-size: 16px;
  line-height: 1.8;
}
.inner-page main .gallery-cta .button,
.inner-page main .page-cta .button {
  background: var(--p-cream);
  color: var(--p-forest);
}
.inner-page main .gallery-cta .button:hover,
.inner-page main .page-cta .button:hover {
  background: #e3e5da;
  color: var(--p-forest);
}
.inner-page main .gallery-cta a:focus-visible,
.inner-page main .page-cta a:focus-visible {
  outline-color: #f0b993;
}

/* Gallery controls and cards; no changes to filtering, expansion or cropping. */
.inner-page main .gallery-intro {
  padding-block: 34px 40px;
}
.inner-page main .gallery-intro .featured {
  border-radius: 2px;
}
.inner-page main .gallery-intro .featured > span {
  background: var(--p-forest);
  color: var(--p-cream);
  font: 500 21px/1.4 var(--p-sans);
  padding: 20px;
}
.inner-page main .gallery-intro .featured b {
  color: #debca4;
  font: 600 12px/1.5 var(--p-sans);
}
.inner-page main .gallery-body {
  padding-block: 40px 52px;
  border-color: var(--p-line);
}
.inner-page main .filter-heading h2 {
  color: var(--p-forest);
  font: 500 30px/1.2 var(--p-sans);
  letter-spacing: -.7px;
}
.inner-page main .filter-heading p {
  color: var(--p-muted);
  font-size: 14px;
}
.inner-page main .filters {
  gap: 9px;
}
.inner-page main .filters button {
  min-height: 44px;
  padding: 10px 18px;
  background: var(--p-paper);
  border: 1px solid var(--p-line);
  border-radius: 2px;
  color: var(--p-ink);
  font-size: 13px;
  line-height: 1.5;
}
.inner-page main .filters button:hover {
  border-color: var(--p-forest);
}
.inner-page main .filters button[aria-pressed="true"] {
  background: var(--p-forest);
  border-color: var(--p-forest);
  color: var(--p-cream);
}
.inner-page main .gallery-tools {
  padding-block: 22px;
}
.inner-page main .gallery-tools label,
.inner-page main .gallery-tools p {
  color: var(--p-muted);
  font-size: 13px;
  line-height: 1.7;
}
.inner-page main .gallery-grid {
  gap: 22px;
}
.inner-page main .project-card {
  background: var(--p-paper);
  border: 1px solid var(--p-line);
  border-radius: 2px;
  box-shadow: none;
}
.inner-page main .card-copy {
  padding: 24px;
}
.inner-page main .card-copy h2 {
  color: var(--p-forest);
  font: 500 24px/1.25 var(--p-sans);
  letter-spacing: -.5px;
}
.inner-page main .card-copy > p:not(.eyebrow) {
  color: var(--p-muted);
  font-size: 14px;
  line-height: 1.8;
}
.inner-page main .card-copy summary {
  min-height: 48px;
  border-color: var(--p-line);
  color: var(--p-ink);
  font-size: 14px;
  line-height: 1.5;
}
.inner-page main .project-card:has(details[open]) .card-copy {
  padding: 28px;
}
.inner-page main .project-detail h3 {
  color: var(--p-forest);
  font: 500 22px/1.3 var(--p-sans);
}
.inner-page main .project-detail figcaption {
  color: var(--p-muted);
  font-size: 12px;
  line-height: 1.7;
}
.inner-page main .photo-open {
  border-radius: 2px;
  background: var(--p-cream);
}
.inner-page main .cover > span,
.inner-page main .enlarge {
  background: var(--p-cream);
  color: var(--p-ink);
}
.inner-page main #no-results {
  background: var(--p-paper);
  border: 1px solid var(--p-line);
  color: var(--p-muted);
  border-radius: 2px;
}
.inner-page main #lightbox {
  background: var(--p-cream);
  color: var(--p-ink);
  border-radius: 2px;
}
.inner-page main #lightbox::backdrop {
  background: rgba(16, 29, 23, .86);
}
.inner-page main #lightbox .close {
  min-height: 44px;
  min-width: 44px;
  border-color: var(--p-line);
  border-radius: 2px;
  color: var(--p-forest);
}
.inner-page main #lightbox > p {
  font-size: 14px;
  line-height: 1.7;
}

@media (max-width: 760px) {
  .inner-page main .breadcrumbs { padding-top: 20px; }
  .inner-page main .article-hero {
    grid-template-columns: minmax(0, 1fr);
    gap: 26px;
    padding-block: 24px 32px;
  }
  .inner-page main .article-hero h1,
  .inner-page main .gallery-intro h1,
  .inner-page main.plain-page > h1 {
    font-size: clamp(32px, 8.5vw, 44px);
    letter-spacing: -1.1px;
    margin-bottom: 20px;
  }
  .inner-page main .article-hero .lead,
  .inner-page main .gallery-intro p:not(.eyebrow) { font-size: 16px; }
  .inner-page main.p-service-page .article-photo img { height: 330px; }
  .inner-page main .reading-layout { padding-bottom: 36px; }
  .inner-page main .reading-layout > section,
  .inner-page main.plain-page > section { margin-block: 28px; }
  .inner-page main.plain-page { padding-block: 30px 40px; }
  .inner-page main > .p-faq-simple { margin-bottom: 36px; }
  .inner-page main .service-assurance {
    justify-content: flex-start;
    gap: 10px 24px;
    padding-block: 18px;
    font-size: 13px;
  }
  .inner-page main .services-overview,
  .inner-page main .service-process,
  .inner-page main .service-proof { padding-block: 34px; }
  .inner-page main .service-choices,
  .inner-page main .surface-grid,
  .inner-page main .process-steps,
  .inner-page main .drywall-feature {
    grid-template-columns: minmax(0, 1fr);
    gap: 22px;
  }
  .inner-page main .service-choice { padding: 22px; }
  .inner-page main .drywall-feature { padding: 24px; }
  .inner-page main .gallery-cta,
  .inner-page main .page-cta { padding-block: 36px; }
  .inner-page main .gallery-cta .button,
  .inner-page main .page-cta .button { width: 100%; max-width: 360px; }
  .inner-page main .gallery-intro { display: block; padding-block: 28px 34px; }
  .inner-page main .gallery-intro .featured { margin-top: 26px; }
  .inner-page main .gallery-body { padding-block: 30px 40px; }
  .inner-page main .filter-heading { display: block; }
  .inner-page main .filter-heading p { margin-top: 12px; }
  .inner-page main .filters button { padding-inline: 14px; }
  .inner-page main .gallery-tools { flex-wrap: wrap; gap: 12px; }
  .inner-page main .gallery-tools label { align-items: flex-start; }
  .inner-page main .gallery-grid { grid-template-columns: minmax(0, 1fr); }
  .inner-page main .card-copy,
  .inner-page main .project-card:has(details[open]) .card-copy { padding: 22px; }
}

@media print {
  .inner-page main .gallery-cta,
  .inner-page main .page-cta { background: white; color: black; }
  .inner-page main .gallery-cta h2,
  .inner-page main .page-cta h2,
  .inner-page main .gallery-cta p,
  .inner-page main .page-cta p { color: black; }
  .inner-page main .button { background: white; color: black; border-color: black; }
}


/* ProSeal brand refinement — genuine project story, Orillia base and complete services. */
.p-brand-lockup{flex:0 0 auto;display:flex;flex-direction:column;align-items:flex-start;gap:0}
.p-brand-lockup .p-brand{height:52px}
.p-brand-locality{font-size:10px;line-height:1.3;font-weight:600;letter-spacing:.08em;color:var(--p-rust);padding-left:8px}
.p-home .p-hero{grid-template-columns:minmax(0,1fr) minmax(0,1.16fr);gap:6%;padding-block:34px 30px;align-items:center}
.p-home .p-hero h1{font-size:clamp(46px,4.7vw,68px);line-height:1.05;letter-spacing:-2.5px}
.p-home .p-hero h1 span{font-size:1em;line-height:1.07;margin-top:10px}
.p-home .p-hero .p-lead{max-width:440px;font-size:16px;line-height:1.75}
.p-home .p-hero .p-eyebrow{letter-spacing:1.8px}
.p-home .p-hero .p-actions{gap:10px 25px;margin-top:24px}
.p-hero-story{min-width:0;border-top:2px solid var(--p-rust);padding-top:12px;scroll-margin-top:130px}
.p-story-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:10px;font-size:10px;letter-spacing:1px;font-weight:600;color:var(--p-muted)}
.p-story-heading>a{font-size:12px;letter-spacing:0;display:inline-flex;align-items:center;gap:10px;min-height:30px;text-decoration:none;color:var(--p-forest)}
.p-hero-story .p-stage-tabs{gap:5px;margin-bottom:10px}
.p-hero-story .p-stage-tabs button{font-size:12px;border-radius:2px;font-weight:600}
.p-hero-story .p-stages{grid-template-columns:1fr;gap:24px}
.p-hero-story .p-photo-button img{aspect-ratio:4/3;width:100%;height:auto}
.p-hero-story .p-stage-label{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:3px 20px;padding-top:12px;min-height:81px;align-items:start}
.p-hero-story .p-stage-label>span{grid-column:1;font-size:9px;margin:0}
.p-hero-story .p-stage-label h2{grid-column:1;font-size:19px;margin:0;letter-spacing:-.4px}
.p-hero-story .p-stage-label p{grid-column:2;grid-row:1 / span 2;font-size:12px;max-width:none;line-height:1.65}
.p-hero-story .p-enlarge{opacity:1;background:var(--p-paper);font-size:10px}
.p-story-note{border-top:1px solid var(--p-line);padding-top:10px;font-size:12px;line-height:1.6;color:var(--p-muted)}
.p-work-next{display:flex;align-items:center;justify-content:space-between;gap:40px;padding-block:34px;border-bottom:1px solid var(--p-line)}
.p-work-next .p-eyebrow{margin-bottom:10px}
.p-work-next h2{font-size:clamp(25px,2.7vw,35px);font-weight:500;line-height:1.25;letter-spacing:-1px}
.p-work-next p:not(.p-eyebrow){font-size:13px;line-height:1.7;color:var(--p-muted);margin-top:10px}
.p-work-next .p-button{flex-shrink:0;white-space:normal}
.p-home .p-services{border-top:0}
.p-service-extra{border-top:1px solid var(--p-line);padding-top:16px;margin-top:20px;color:var(--p-muted);font-size:13px;line-height:1.7}
.p-service-extra>a{display:inline-flex;min-height:40px;align-items:center;gap:12px;color:var(--p-forest);font-weight:600;text-underline-offset:4px}
.inner-page .p-service-extra-hero{border-top:0;padding:0;margin-top:14px;font-size:13px;max-width:460px}
.p-secondary-service{width:90%;max-width:1116px;margin:0 auto 36px;padding:30px 34px;background:#e9ede4;border:1px solid var(--p-line);border-left:3px solid var(--p-rust);border-radius:2px}
.p-secondary-service .eyebrow{font-size:10px;margin-bottom:12px}
.p-secondary-service h2{font-size:31px;line-height:1.2;margin-bottom:14px}
.p-secondary-service p:not(.eyebrow){font-size:15px;line-height:1.75;color:var(--p-muted);max-width:780px;margin-bottom:18px}
.p-secondary-service p:last-child{margin-bottom:0}
.p-service-page .article-photo figcaption{padding:10px 0 0;font-size:11px;line-height:1.6;color:var(--p-muted);background:var(--p-cream)}
.p-contact-form{padding-block:28px 40px;border-top:1px solid var(--p-line)}
.p-contact-form>h2{margin-bottom:16px}
.p-form-guidance{max-width:780px;color:var(--p-muted);font-size:14px;line-height:1.8;margin-bottom:22px}
.p-contact-form>.proseal-jobber{border:1px solid var(--p-line);border-radius:2px;box-shadow:none;background:var(--p-paper)}
.p-footer{border-top:1px solid var(--p-line);padding-block:32px 20px}
.p-footer-top{align-items:flex-start}
.p-footer-top>div{max-width:410px}
.p-footer-links{max-width:570px}
@media(max-width:1100px){.p-home .p-hero{gap:4%;grid-template-columns:minmax(0,1fr) minmax(0,1.08fr)}.p-home .p-hero h1{font-size:52px}.p-hero-story .p-stage-label{grid-template-columns:1fr;min-height:95px}.p-hero-story .p-stage-label p{grid-column:1;grid-row:auto}.p-work-next{gap:25px}}
@media(max-width:760px){.p-header{height:84px}.p-nav{top:84px}.p-brand-lockup .p-brand{height:47px}.p-brand-locality{font-size:9px;padding-left:6px}.p-home .p-hero{grid-template-columns:1fr;gap:26px;padding-block:26px}.p-home .p-hero h1{font-size:clamp(45px,10.5vw,67px);letter-spacing:-2px;line-height:1.04;margin-bottom:19px}.p-home .p-hero h1 span{font-size:.98em;margin-top:8px;line-height:1.06}.p-home .p-hero h1 span br{display:none}.p-home .p-hero .p-lead{font-size:15px;line-height:1.75}.p-home .p-hero .p-actions{gap:6px 18px;margin-top:20px}.p-home .p-hero .p-button{gap:15px;padding-inline:16px}.p-hero-story{scroll-margin-top:98px}.p-story-heading{font-size:9px;gap:12px}.p-hero-story .p-stage-tabs button{font-size:11px;padding-inline:5px}.p-hero-story .p-stage-label{min-height:88px;gap:4px}.p-hero-story .p-stage-label h2{font-size:19px}.p-story-note{font-size:12px}.p-work-next{display:block;padding-block:26px}.p-work-next h2{font-size:29px}.p-work-next .p-button{margin-top:19px;width:100%;min-height:48px}.p-service-extra{font-size:12px;margin-top:18px}.p-service-extra>a{font-size:12px}.p-secondary-service{padding:23px 22px;margin-bottom:28px}.p-secondary-service h2{font-size:27px}.p-secondary-service p:not(.eyebrow){font-size:14px}.p-form-guidance{font-size:13px}.p-contact-form>h2{font-size:28px}.p-footer-top>div{max-width:none}.p-footer-links{max-width:none}.p-footer p{line-height:1.8}}
@media print{.p-hero-story .p-stages{display:block}.p-hero-story .p-stage{break-inside:avoid}.p-hero-story .p-stage-label{display:block}.p-hero-story .p-stage-label p{margin-top:8px}}
@media(max-width:760px){.p-home .p-hero .p-actions{gap:6px 12px;flex-wrap:wrap}.p-home .p-hero .p-button{font-size:12px;min-height:48px;padding-inline:12px;gap:10px}.p-home .p-hero .p-text-link{font-size:12px;gap:8px}.p-home .p-hero .p-small{font-size:11px}}
/* Project stories: a concise route into the five existing case studies. */
.inner-page main.p-projects-page .gallery-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px;margin-top:28px}
.inner-page main.p-projects-page .project-card{overflow:hidden;min-width:0}
.inner-page main.p-projects-page .cover{display:block;position:relative;text-decoration:none}
.inner-page main.p-projects-page .cover img{display:block;width:100%;height:auto;aspect-ratio:4/3;object-fit:cover}
.inner-page main.p-projects-page .cover>span{position:absolute;bottom:14px;left:14px;padding:7px 11px;font-size:12px;line-height:1.5}
.inner-page main.p-projects-page .card-copy h2{margin:12px 0 16px}
.inner-page main.p-projects-page .case-study-link{color:var(--p-rust);font-size:14px;line-height:1.6;margin:18px 0 0;min-height:44px;display:inline-flex;align-items:center}
.inner-page main.p-projects-page .gallery-body>p:not(.eyebrow){color:var(--p-muted);line-height:1.8;margin-top:14px;max-width:720px}
@media(max-width:760px){.inner-page main.p-projects-page .gallery-grid{grid-template-columns:minmax(0,1fr)} }

/* Preserve the complete real-photo story when JavaScript is disabled. */
html:not(.js) .p-hero-story .p-stage[hidden]{display:block!important}
