/* Optional service-page presentation. Existing theme layouts remain scoped separately. */
.service-refresh-page{--service-dark:#042f23;--service-green:#064735;--service-cream:#f1eee5;--service-mint:#dfffc0;--service-ink:#313131;color:var(--service-ink);font-family:'DM Sans',sans-serif;background:white}
.service-refresh-page .header{position:absolute;background:transparent;top:0;left:0;width:100%;z-index:20}
.service-refresh-page .header>.wrapper{width:calc(100% - 192px);max-width:1440px;height:120px;padding:0;margin:auto;display:flex;align-items:center;justify-content:space-between}
.service-refresh-page .header .logo{width:190px;max-width:190px}
.service-refresh-page .header .logo img{width:190px;height:auto;display:block}
.service-refresh-page .header nav>div>ul{background:rgba(255,255,255,.25);border-radius:100px}
.service-refresh-page .header nav a{font-size:16px}
.service-refresh-page .service-section{position:relative;padding:88px 0;font-size:18px;line-height:1.5;overflow:hidden}
.service-container{width:calc(100% - 192px);max-width:1440px;margin:0 auto;position:relative}
.service-section *{box-sizing:border-box}
.service-section h1,.service-section h2,.service-section h3,.service-section h4,.service-section p,.service-section figure,.service-section blockquote{margin:0;padding:0}.service-section blockquote{border:0}
.service-section h1{font-size:60px;font-weight:700;line-height:1.15;color:white;letter-spacing:0}
.service-section h2{font-size:40px;font-weight:700;line-height:1.15;letter-spacing:0;color:inherit}
.service-section h3{font-size:28px;font-weight:700;line-height:1.3;color:inherit}
.service-section h4{font-size:21px;line-height:1.35;font-weight:700;color:inherit}
.service-section p+p{margin-top:18px}
.service-section img{max-width:100%;display:block}
.service-section a:not(.service-button){color:inherit}
.service-section .service-button{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;min-height:52px;padding:14px 30px;border-radius:100px;min-width:0;font-size:16px;line-height:1.4;text-decoration:none}
/* Button colours and hover states come from the shared a.link / a.link.green styles. */
.service-section a:focus-visible,.service-section button:focus-visible,.service-section summary:focus-visible,.service-section [tabindex]:focus-visible{outline:3px solid #af5a25;outline-offset:5px}
.service-section .service-eyebrow{font-size:16px;font-weight:700;line-height:1.3}
.service-intro-split{display:grid;grid-template-columns:540fr 628fr;gap:80px;align-items:center;margin-bottom:56px}
.service-section.service-cta-form{padding:174px 0 64px;background:var(--service-dark);color:white;scroll-margin-top:20px}
.service-burst{position:absolute;top:-384px;left:664px;width:900px;height:900px;max-width:none!important;pointer-events:none}
.service-hero-grid{display:grid;grid-template-columns:minmax(0,672fr) minmax(0,500fr);gap:76px;align-items:start;position:relative}
.service-promise{display:flex;flex-direction:column;align-items:start;gap:28px}
.service-promise>.service-eyebrow{color:var(--service-mint)}
.service-lead{font-size:21px;line-height:1.5}
.service-usps{display:flex;flex-direction:column;gap:16px;list-style:none;margin:0;padding:0;width:100%}
.service-usps li{display:flex;gap:16px;align-items:center;font-size:18px;line-height:1.4}
.service-usps img{width:28px;height:28px;flex-shrink:0}
.service-section .service-enquiry{background:var(--service-green);padding:32px;border-radius:8px}
.service-section .service-enquiry h2{font-size:30px;color:var(--service-mint);margin-bottom:20px}
.service-section .service-enquiry>div:not(.wpcf7){font-size:17px;line-height:1.5;margin-bottom:20px}
.service-section .service-enquiry .wpcf7{width:100%;margin:0}
.service-section .service-enquiry form{margin:0}
.service-section .service-enquiry .field-row{display:flex;flex-direction:column;gap:12px}
.service-section .service-enquiry .field-element,.service-section .service-enquiry .field-element p{width:100%;margin:0!important;padding:0}
.service-section .service-enquiry .wpcf7-form-control-wrap{display:block}
.service-section .service-enquiry input:not([type=submit]),.service-section .service-enquiry textarea{font:400 15px/1.45 'DM Sans',sans-serif;color:#313131;background:white;border:0;border-radius:8px;width:100%;height:50px;min-height:50px;padding:14px 18px;margin:0}
.service-section .service-enquiry textarea{height:126px;min-height:126px;resize:vertical}
.service-section .service-enquiry input::placeholder,.service-section .service-enquiry textarea::placeholder{color:#586056;opacity:1}
.service-section .service-enquiry input[type=submit]{border:0;border-radius:100px;min-height:52px;padding:14px 30px;font:400 16px/1.4 'DM Sans',sans-serif;color:var(--service-green);background:var(--service-mint);cursor:pointer;width:auto;min-width:0;margin:8px 0 0}
.service-section .service-enquiry .wpcf7-spinner{position:absolute}
.service-section .service-enquiry .wpcf7-not-valid-tip{font-size:14px;color:#ffd5bd;margin-top:4px}
.service-section .service-enquiry .wpcf7-response-output{margin:16px 0 0!important;font-size:15px}
.service-section.service-logo-carousel{background:var(--service-cream);padding:28px 0}
.service-section .service-logo-heading{font-size:14px;line-height:18px;letter-spacing:.5px;text-transform:uppercase;text-align:center;font-weight:600;margin-bottom:20px}
.service-logos{display:flex;align-items:center;justify-content:space-between;gap:32px;min-height:48px}
.service-logos>div:nth-child(1){width:108px}.service-logos>div:nth-child(2){width:90px}.service-logos>div:nth-child(3){width:110px}.service-logos>div:nth-child(4){width:150px}
.service-logos img{max-height:48px;object-fit:contain}
.service-task-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:48px 32px}
.service-task-grid article{font-size:16px;line-height:1.5}
.service-task-icon{width:60px;height:60px;display:flex;align-items:center;justify-content:center;margin-bottom:18px}
.service-task-icon img{max-width:42px;max-height:42px;width:auto;height:auto}
.service-task-grid h3{font-size:20px;line-height:1.3;margin-bottom:8px}
.service-callout{display:flex;align-items:center;justify-content:space-between;gap:48px;background:var(--service-cream);padding:32px;border-radius:8px;margin-top:56px}
.service-section.service-testimonial-block{background:var(--service-cream);padding:80px 0}
.service-testimonial-block h2{margin-bottom:48px}
.service-quotes{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.service-quotes figure{background:white;border-radius:8px;padding:32px;display:flex;flex-direction:column;align-items:start;gap:20px}
.service-quotes figure:before{content:'';display:block;width:100%;height:4px;border-radius:2px;background:#7a995d}
.service-quotes figcaption{font-size:13px;line-height:17px;text-transform:uppercase;font-weight:600}
.service-quotes blockquote{font-size:18px;line-height:1.55;font-weight:300}
.service-quotes .service-attribution{font-size:15px;line-height:20px;font-weight:600}
.service-team-intro{max-width:930px;margin-bottom:40px;font-size:20px}
.service-team-intro h2{margin-bottom:24px}
.service-profile-rail{display:flex;gap:28px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none}
.service-profile-rail::-webkit-scrollbar{display:none}
.service-profile{flex:0 0 calc((100% - 56px)/3);min-width:0;scroll-snap-align:start}
.service-portrait{height:300px;overflow:hidden;border-radius:8px 8px 0 0;margin-bottom:0}
.service-portrait img{width:100%;height:100%;object-fit:cover}
.service-profile-content{background:var(--service-cream);padding:24px;font-size:16px;line-height:1.45}
.service-profile-content h3{font-size:30px;line-height:36px;margin-bottom:4px}
.service-profile-content>div{margin-top:18px}
.service-profile-content h4{font-size:16px;line-height:21px;margin-bottom:4px}
.service-rail-controls{display:flex;justify-content:space-between;gap:24px;align-items:center;margin-top:16px;margin-bottom:40px;font-size:13px;line-height:18px}
.service-rail-controls>div{display:flex;gap:8px;flex-shrink:0}
.service-rail-controls button{width:36px;height:36px;background:var(--service-cream);color:var(--service-green);border:0;border-radius:50%;cursor:pointer;font-size:18px}
.service-rail-controls button:disabled{opacity:.35;cursor:default}
.service-tool-band{background:var(--service-cream);border-radius:8px;padding:36px 24px;margin-bottom:40px}
.service-tool-band h3{font-size:20px;line-height:26px;text-align:center;margin-bottom:24px}
.service-tools{display:flex;align-items:center;justify-content:space-between;gap:28px}
.service-tools>div{display:flex;flex-direction:column;align-items:center;gap:12px;font-size:13px;font-weight:400;line-height:1.3}
.service-tools img{max-width:48px;max-height:42px;width:auto;height:auto}
.service-working{padding-top:24px;margin-bottom:40px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}
.service-working>h3{font-size:30px;grid-column:1/-1}
.service-working>div{background:var(--service-cream);padding:28px;border-radius:8px}
.service-working>div:last-child:nth-child(even){grid-column:1/-1}
.service-working h4{margin-bottom:8px}
.service-section.service-service-process,.service-section.service-service-contact{background:var(--service-cream)}
.service-process-grid{display:grid;grid-template-columns:420fr 748fr;gap:80px}
.service-process-grid>div>div{font-size:20px;margin:24px 0 28px}
.service-process-grid ol{list-style:none;counter-reset:step;display:flex;flex-direction:column;gap:28px;margin:0;padding:0}
.service-process-grid li{counter-increment:step;position:relative;margin-left:72px;padding-bottom:28px;border-bottom:1px solid #ccd4c6}
.service-process-grid li:before{content:counter(step);position:absolute;left:-72px;top:0;display:flex;align-items:center;justify-content:center;width:48px;height:48px;background:var(--service-green);color:var(--service-mint);border-radius:50%;font-weight:400;font-size:22px}
.service-process-grid li h3{font-size:22px;line-height:1.3;margin-bottom:10px}
.service-employer-note{display:flex;gap:40px;align-items:center;padding:32px 40px;background:#e9cbff;margin-top:48px}
.service-employer-note img{width:24px;height:24px;flex-shrink:0}
.service-section.service-service-contact{padding:80px 0}
.service-service-contact h2{margin-bottom:32px}
.service-contact-grid{display:grid;grid-template-columns:minmax(0,828fr) minmax(0,420fr);gap:0;background:white;border:1px solid #ebe6d8;border-radius:8px;overflow:hidden;align-items:stretch}
.service-contact-copy{padding:40px}
.service-contact-portrait{height:480px;overflow:hidden}
.service-contact-portrait img{width:100%;height:100%;object-fit:cover}
.service-contact-grid h3{font-size:32px;line-height:38px;margin-bottom:6px}
.service-contact-position{font-size:16px;color:#586056}
.service-contact-divider{width:100%;height:1px;margin:24px 0 28px}
.service-contact-copy h3{font-size:30px;color:var(--service-green)}
.service-contact-grid .service-button{margin-top:28px}
.service-pricing-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:32px}
.service-price-panel,.service-inclusions{border-radius:8px;padding:36px}
.service-price-panel{background:var(--service-green);color:white}
.service-price-panel h3{color:var(--service-mint);margin-bottom:24px;font-size:20px}
.service-tier{padding:20px;background:var(--service-dark);border-radius:4px;margin-bottom:16px}
.service-tier strong{font-size:18px}
.service-tier p{display:flex;flex-direction:column;gap:8px;margin-top:8px}
.service-tier b{font-size:36px;font-weight:700;line-height:1.2;color:var(--service-mint)}
.service-tier span{font-size:14px;color:#91b6a6}
.service-price-panel>div:last-child{margin-top:24px;font-size:17px;color:#91b6a6}
.service-inclusions{background:var(--service-cream)}
.service-inclusions h3{margin-bottom:24px;font-size:20px;color:var(--service-green)}
.service-inclusions ul{list-style:none;margin:0 0 24px;padding:0;display:flex;flex-direction:column;gap:16px}
.service-inclusions li{display:flex;align-items:center;gap:14px}
.service-inclusions li img{width:26px;height:26px;flex-shrink:0}
.service-inclusions>div{font-size:14px;color:#586056;margin-top:44px}
.service-pricing-note{margin:32px 0}
.service-section.service-service-comparison{background:var(--service-cream);color:#30332f}
.service-service-comparison h2{max-width:920px;margin-bottom:20px}
.service-table-scroll{overflow-x:auto;margin:36px 0}
.service-table-scroll table{border-collapse:collapse;table-layout:fixed;width:100%;min-width:1000px;border:1px solid #ccd4c6;font-size:17px;line-height:1.45}
.service-table-scroll th,.service-table-scroll td{padding:24px 20px;border:0;border-bottom:1px solid #ccd4c6;text-align:left;vertical-align:top;font-weight:400}
.service-table-scroll th:first-child{width:17.63%;font-weight:700}
.service-table-scroll thead th{height:84px;padding:20px;font-size:20px;background:#e8e3d8;color:var(--service-ink);font-weight:700;vertical-align:middle}
.service-table-scroll thead th.service-comparison-pickle{background:var(--service-green);color:var(--service-mint)}
.service-table-scroll tbody tr:nth-child(odd)>*{background:white}.service-table-scroll tbody tr:nth-child(even)>*{background:var(--service-cream)}.service-table-scroll tbody td.service-comparison-pickle{background:var(--service-green);font-weight:400;color:var(--service-mint)}
.service-difference{padding:28px;background:#e5cafa;color:var(--service-green);font-size:22px;line-height:1.5}
.service-case-study-listing h2{margin-bottom:40px}
.service-stories{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px}
.service-stories article{border-radius:8px;overflow:hidden;background:var(--service-cream)}
.service-story-art{position:relative;display:flex;align-items:center;justify-content:center;aspect-ratio:1.5;overflow:hidden;background:#e0ffc3}
.service-story-burst{position:absolute;left:20%;top:-20%;width:120%;height:180%;max-width:none!important}
.service-story-art .service-story-logo{width:250px;max-width:60%;height:auto;position:relative}
.service-story-copy{padding:30px}
.service-story-copy h3{font-size:34px;line-height:39px;margin-bottom:20px}
.service-story-copy>a{display:inline-block;margin-top:20px;font-size:16px;font-weight:600;text-decoration:none}
.service-carousel{border-left:4px solid #7a995d;padding-left:76px}
.service-carousel figure[hidden]{display:none}
.service-carousel figcaption{font-size:16px;line-height:18px;text-transform:uppercase;font-weight:600;margin-bottom:30px}
.service-carousel blockquote{font-size:32px;line-height:1.3;font-weight:300;margin-bottom:25px}
.service-carousel .service-attribution{font-size:16px;font-weight:600}
.service-dots{display:flex;gap:10px;margin-top:37px}
.service-dots button{padding:0;width:15px;height:15px;border-radius:50%;background:#c8ccbf;border:0;cursor:pointer}
.service-dots button[aria-pressed=true]{background:#7a995d}
.service-section.service-faqs-block{background:#819d60;color:white}
.service-faq-grid{display:grid;grid-template-columns:330px minmax(0,1fr);gap:80px}
.service-faq-intro{font-size:22px;line-height:1.5;margin:28px 0}
.service-faq-pattern{width:320px;height:520px;margin-top:28px;object-fit:contain}
.service-faq-grid details{border-top:1px solid rgba(223,255,192,.5);padding:24px 0}
.service-faq-grid summary{display:flex;align-items:center;justify-content:space-between;gap:20px;list-style:none;cursor:pointer;font-size:23px;line-height:1.3;font-weight:700}
.service-faq-grid summary::-webkit-details-marker{display:none}
.service-faq-grid summary:after{content:'+';color:var(--service-mint);font-size:24px;font-weight:400;flex-shrink:0}
.service-faq-grid details[open] summary:after{content:'−'}
.service-faq-grid details>div{padding-top:12px;color:var(--service-dark)}
.service-section.service-services-grid{background:white}
.service-services-grid h2{margin-bottom:20px}
.service-related-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin-top:32px}
.service-related-grid a{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:28px;border-radius:8px;background:var(--service-cream);text-decoration:none;font-size:22px;font-weight:700}
.service-section.service-cta-block{background:var(--service-green);color:white;padding:80px 0}
.service-closing{display:flex;align-items:center;justify-content:space-between;gap:90px}
.service-closing h2{font-size:46px;margin-bottom:24px;color:var(--cta-heading-colour,var(--service-mint))}
.service-closing>div{flex:1;font-size:21px;color:var(--cta-text-colour,#ffffff)}
.service-closing a.link.green:hover{background:#ffffff;border-color:#ffffff;color:#064733}
.service-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}
@media(min-width:1632px){.service-container,.service-refresh-page .header>.wrapper{max-width:1440px}}
@media(max-width:1199px){.service-container,.service-refresh-page .header>.wrapper{width:calc(100% - 80px)}.service-hero-grid{gap:40px;grid-template-columns:1.2fr 1fr}.service-section h1{font-size:48px}.service-intro-split,.service-process-grid,.service-faq-grid{gap:48px}.service-intro-split{grid-template-columns:1fr 1fr}.service-tools{flex-wrap:wrap;justify-content:center}.service-faq-grid{grid-template-columns:280px 1fr}.service-profile{flex-basis:calc((100% - 28px)/2)}.service-quotes figure{padding:24px}.service-quotes blockquote{font-size:18px}}
@media(max-width:767px){.service-container,.service-refresh-page .header>.wrapper{width:calc(100% - 40px)}.service-refresh-page .header>.wrapper{height:96px}.service-refresh-page .header .logo,.service-refresh-page .header .logo img{width:150px}.service-refresh-page .service-section{padding:56px 0}.service-section.service-cta-form{padding:132px 0 48px}.service-section h1{font-size:40px}.service-section h2{font-size:32px}.service-section h3{font-size:25px}.service-lead,.service-team-intro,.service-process-grid>div>div{font-size:18px}.service-section .service-hero-grid,.service-intro-split,.service-process-grid,.service-pricing-grid,.service-faq-grid,.service-contact-grid,.service-stories{grid-template-columns:1fr;gap:32px}.service-promise{gap:24px}.service-usps li{font-size:16px}.service-section .service-enquiry{padding:24px}.service-section .service-enquiry h2{font-size:27px}.service-burst{left:20%;top:-250px;opacity:.55}.service-section.service-logo-carousel{padding:28px 0}.service-logos{flex-wrap:wrap;justify-content:center;gap:28px 36px}.service-intro-split{margin-bottom:36px}.service-task-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:32px 24px}.service-callout{flex-direction:column;align-items:start;gap:24px;padding:24px;margin-top:36px}.service-quotes{grid-template-columns:1fr}.service-profile{flex-basis:88%}.service-portrait{height:300px}.service-rail-controls{align-items:start}.service-rail-controls p{max-width:70%}.service-tools{gap:24px}.service-tools>div{font-size:18px}.service-working h4{font-size:20px}.service-process-grid li{margin-left:64px;padding-left:0}.service-process-grid li:before{left:-64px}.service-employer-note{align-items:start;padding:24px;gap:16px}.service-contact-portrait{width:100%;height:360px;max-width:100%}.service-contact-copy{padding:24px}.service-working{grid-template-columns:1fr}.service-price-panel,.service-inclusions{padding:28px}.service-tier b{font-size:40px}.service-difference{font-size:20px;padding:24px}.service-carousel{padding-left:24px}.service-carousel blockquote{font-size:25px}.service-section .service-faq-pattern{display:none}.service-faq-grid summary{font-size:21px}.service-related-grid{grid-template-columns:1fr}.service-closing{align-items:start;flex-direction:column;gap:28px}.service-closing h2{font-size:36px}.service-closing>div{font-size:18px}}
@media(prefers-reduced-motion:reduce){.service-section *{scroll-behavior:auto!important;transition:none!important}}

.service-refresh-page header.header{height:120px;justify-content:center}
.service-refresh-page header.header>.wrapper{flex:0 0 auto;align-self:flex-start}
.service-refresh-page header.header .logo img{max-width:190px}
.service-refresh-page header.header nav.menu{background:rgba(255,255,255,.25)}
.service-refresh-page header.header nav.menu>div>ul{background:transparent}
.service-refresh-page header.header nav.menu>div>ul>li>a{padding:12.5px 26px;line-height:21px}
.service-refresh-page header.header nav.menu>div>ul>li.white-link>a{margin-left:0;background:var(--service-cream);font-weight:400}
.service-refresh-page footer{padding:80px 0 100px;background:#30312f;font-size:18px;line-height:1.5}
.service-refresh-page footer>.wrapper{width:calc(100% - 192px);max-width:1440px;margin:auto}
.service-refresh-page footer .wrapper .col .logo img{width:190px}
.service-refresh-page footer .wrapper .col:first-child{flex:0 1 480px}
.service-refresh-page footer .wrapper .col{flex:0 1 260px;gap:30px}
@media(max-width:1199px){.service-refresh-page footer>.wrapper{width:calc(100% - 80px)}}
@media(max-width:991px){.service-refresh-page header.header nav.menu{background:transparent}.service-refresh-page header.header nav.menu.active{background:var(--service-green)}.service-refresh-page header.header nav.menu>div>ul>li>a{font-size:22px}.service-refresh-page header.header nav.menu>div>ul>li.white-link>a{background:transparent;color:white}.service-refresh-page header.header nav.menu>div>ul{border-radius:0}}
@media(max-width:767px){.service-refresh-page header.header{height:96px}.service-refresh-page header.header .logo img{max-width:150px}.service-refresh-page footer{padding:56px 0}.service-refresh-page footer>.wrapper{width:calc(100% - 40px)}.service-refresh-page footer .wrapper .col{flex:initial}.service-refresh-page footer .wrapper .col:first-child{flex:initial}}

.service-section .service-enquiry .field-row>.wpcf7-turnstile{margin-top:0}

.service-contact-copy .service-button{min-height:48px;padding:12px 24px}
.service-task-grid h3,.service-profile-content h3,.service-working h4,.service-story-copy h3{color:var(--service-green)}

.service-section blockquote:before,.service-section blockquote:after{content:none;display:none}

/* Match the existing Contact Form 7 submit hover treatment. */
.service-section .service-enquiry input[type=submit]:hover{background:#ffffff;border-color:#ffffff;color:#064733}

/* Final service-page refinements, v1.0.3. */
@media(min-width:768px){
 .service-section.service-service-process{padding-bottom:40px}
 .service-section.service-service-process+.service-service-contact{padding-top:32px}
}
.service-tool-band{width:100vw;margin-inline:calc(50% - 50vw);border-radius:0;padding-inline:max(96px,calc((100vw - 1440px)/2))}
@media(max-width:1199px){.service-tool-band{padding-inline:40px}}
@media(max-width:767px){.service-tool-band{padding-inline:20px}}
.service-comparison-scroll-cue{display:flex;flex-direction:column;gap:12px;margin-top:28px;color:var(--service-green)}
.service-comparison-scroll-cue[hidden]{display:none}
.service-comparison-scroll-cue p{display:flex;justify-content:space-between;gap:16px;font-size:15px;font-weight:600}
.service-comparison-scroll-cue p span{font-size:24px;line-height:1}
.service-comparison-scroll-track{height:5px;border-radius:5px;background:#ccd4c6;position:relative;overflow:hidden}
.service-comparison-scroll-track span{display:block;position:absolute;height:100%;width:var(--scroll-thumb-width,35%);left:var(--scroll-thumb-left,0%);background:var(--service-green);border-radius:5px}
.service-comparison-scroll-cue:not([hidden])+.service-table-scroll{margin-top:16px}

/* Final EA page amendments, v1.0.4. */
.service-tool-band{background:transparent;padding-top:0;padding-bottom:0}
.service-promise h1 .service-heading-accent{color:var(--service-mint)}
.service-promise:has(.service-heading-accent)>.service-eyebrow{color:#d6ded9}
