:root{--ink:#242321;--copper:#906044;--paper:#f2f3f0;--line:#dedbd6;--muted:#646460;--deep:#3d4444;--white:#fff;font-family:Arial,Helvetica,sans-serif;color:var(--ink);font-size:17px;line-height:1.6}*{box-sizing:border-box}body{margin:0;background:var(--white)}a{color:inherit;text-decoration-thickness:1px;text-underline-offset:5px}button,input,textarea,select{font:inherit}button,a,input,textarea,select,summary{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid var(--copper);outline-offset:5px}img{display:block;max-width:100%;height:auto}h1,h2,h3,p,figure{margin:0}h1,h2{font-family:Georgia,'Times New Roman',serif;font-weight:400}h1{font-size:clamp(2.5rem,4.4vw,4rem);line-height:1.09;letter-spacing:-.04em}h2{font-size:clamp(2rem,3vw,2.9rem);line-height:1.17;letter-spacing:-.035em}h3{font-size:1.18rem;line-height:1.35;font-weight:500}p+p{margin-top:1rem}.wrap{width:min(1200px,calc(100% - 112px));margin-inline:auto}.skip{position:fixed;top:-100px;left:1rem;z-index:30;background:white;padding:1rem}.skip:focus{top:1rem}.preview-note{padding:7px 20px;background:var(--paper);text-align:center;font-size:.765rem;color:#4d514b}.preview-note span{margin-left:14px}.site-header{background:white;border-bottom:1px solid var(--line)}.header-inner{display:flex;justify-content:space-between;align-items:center;min-height:108px;gap:32px}.brand{text-decoration:none;display:inline-flex;flex-direction:column;align-items:center;line-height:1.2;flex-shrink:0}.brand>span{font-size:2rem;letter-spacing:.26em;margin-right:-.26em;font-weight:400}.brand>small{font-size:.64rem;letter-spacing:.5em;margin:7px -.5em 0 0;color:var(--copper)}nav{display:flex;gap:30px;align-items:center}nav>a{font-size:.88rem;text-decoration:none;white-space:nowrap}nav>a:hover,nav>a[aria-current]{text-decoration:underline}.nav-cta{border:1px solid var(--ink);padding:12px 18px}.menu-toggle{display:none;border:0;background:none;padding:12px;cursor:pointer}.hero{display:grid;grid-template-columns:1.14fr 1fr;gap:64px;padding-block:72px 64px;align-items:center}.context{font-size:.87rem;color:var(--copper);margin-bottom:22px}.hero-description{max-width:33rem;margin-top:25px;color:#51534f;font-size:1.05rem}.hero-actions{display:flex;gap:14px;flex-wrap:wrap;margin-top:32px}.button{display:inline-block;padding:14px 21px;border:1px solid var(--ink);background:var(--ink);color:white;text-decoration:none;text-align:center;font-size:.88rem;cursor:pointer;border-radius:0;line-height:1.5}.button:hover{background:var(--deep);border-color:var(--deep)}.button.secondary{background:transparent;color:var(--ink);border-color:var(--line)}.button.secondary:hover{background:var(--paper)}.hero-image{align-self:stretch;display:flex;flex-direction:column;justify-content:center}.hero-image img{width:100%;aspect-ratio:1.04;object-fit:cover;object-position:49% 50%}.hero-image figcaption{display:flex;justify-content:space-between;gap:18px;font-size:.78rem;margin-top:15px;color:var(--muted)}.hero-image figcaption>span{font-size:.765rem}.situations{padding-block:36px 88px}.section-intro{display:grid;grid-template-columns:1fr 1fr;gap:90px;align-items:start;margin-bottom:36px}.section-intro>p{max-width:34rem;color:var(--muted);padding-top:5px}.service-rows{border-top:1px solid var(--line)}.service-rows>a{display:flex;justify-content:space-between;align-items:center;gap:40px;padding:27px 0;border-bottom:1px solid var(--line);text-decoration:none}.service-rows>a:hover h3{text-decoration:underline;text-underline-offset:6px}.service-rows h3{font-family:Georgia,serif;font-size:1.55rem}.service-rows p{max-width:690px;margin-top:8px;color:var(--muted);font-size:.94rem}.row-label{color:var(--copper);font-size:.83rem;text-align:right;min-width:160px}.method-band{background:var(--paper);padding-block:76px}.method-grid{display:grid;grid-template-columns:1fr 1fr;gap:110px}.method-grid>div>p:not(.context){margin-top:24px;max-width:440px}.text-link{display:inline-block;margin-top:24px;font-size:.94rem}.process{list-style:none;padding:0;margin:0}.process li{display:flex;gap:24px;padding-block:20px;border-bottom:1px solid #ccd0ca}.process li:first-child{padding-top:0}.process li:last-child{border-bottom:0}.step-number{font-family:Georgia,serif;font-size:2.4rem;line-height:1.2;color:var(--copper);width:26px;flex-shrink:0}.process p{margin-top:8px;color:var(--muted);max-width:400px;font-size:.94rem}.evidence-block{display:grid;grid-template-columns:1fr 1fr;gap:90px;padding-block:92px}.large-copy{font-family:Georgia,serif;font-size:1.5rem;line-height:1.5}.evidence-block p+p{margin-top:20px;color:var(--muted)}.notes-section{padding-bottom:92px}.notes-heading{display:flex;justify-content:space-between;gap:36px;align-items:center;margin-bottom:28px}.notes-heading p{color:var(--muted)}.notes-grid{display:grid;grid-template-columns:1fr 1fr;gap:40px}.note-link{padding:28px 0 0;border-top:2px solid var(--copper);text-decoration:none}.note-topic{font-size:.82rem;color:var(--muted)}.note-link h3{font-family:Georgia,serif;font-size:1.6rem;margin-top:16px;max-width:490px}.note-link p{margin-top:15px;color:var(--muted);font-size:.94rem;max-width:510px}.note-link:hover h3{text-decoration:underline}.closing{background:var(--ink);color:white;padding-block:66px}.closing-inner{display:flex;align-items:center;justify-content:space-between;gap:36px}.closing p{margin-top:16px;color:#dcddd8;max-width:650px}.closing .button{background:white;color:var(--ink);white-space:nowrap}.site-footer{padding-top:58px}.footer-main{display:grid;grid-template-columns:1fr 2fr 2fr;gap:50px;padding-bottom:48px}.footer-main .brand{align-items:flex-start;justify-self:start}.footer-main p{font-size:.86rem;color:var(--muted)}.footer-main nav{display:grid;grid-template-columns:1fr 1fr;gap:10px 30px;align-content:start}.footer-main nav a{white-space:normal;font-size:.82rem}.footer-bottom{border-top:1px solid var(--line);padding-block:20px;display:flex;justify-content:space-between;gap:24px;color:var(--muted);font-size:.765rem}.page-heading{padding-block:66px 58px;max-width:1200px}.page-heading h1{max-width:920px}.page-heading .intro{max-width:760px;font-size:1.16rem;margin-top:25px;color:#51534f}.page-heading .context a{text-decoration:none}.content-section{padding-block:20px 70px}.content-grid{display:grid;grid-template-columns:1fr 1.6fr;gap:90px}.content-grid h2{font-size:2.1rem}.content-grid>div>p{max-width:700px}.content-grid+.content-grid{margin-top:58px;border-top:1px solid var(--line);padding-top:46px}.prose ul{padding-left:21px}.prose li{margin-bottom:10px}.prose h2{margin-top:2rem;margin-bottom:1rem}.prose h3{font-weight:600;margin-top:1.6rem;margin-bottom:.75rem}.prose p{max-width:72ch}.scope-table{border-collapse:collapse;width:100%;font-size:.94rem;text-align:left;margin-block:25px}.scope-table th{font-weight:600;background:var(--paper)}.scope-table th,.scope-table td{padding:16px;border-bottom:1px solid var(--line);vertical-align:top}.scope-table td:first-child{width:40%}.scope-note{border-left:3px solid var(--copper);padding:18px 22px;background:var(--paper);font-size:.94rem;margin-top:24px}.faq{margin-top:40px}.faq details{border-bottom:1px solid var(--line);padding-block:19px}.faq summary{cursor:pointer;font-size:1.06rem}.faq details p{padding-top:16px;color:var(--muted);max-width:65ch}.article{max-width:760px;padding-bottom:80px}.article .lead{font-size:1.2rem}.article h2{font-size:2rem;margin-top:48px;margin-bottom:18px}.article ul{padding-left:22px}.article li{padding-left:5px;margin-bottom:10px}.article-callout{background:var(--paper);padding:28px;margin-top:35px}.sample{background:var(--paper);padding:30px;margin-top:24px}.sample .sample-label{color:var(--copper);font-size:.82rem;margin-bottom:15px}.sample h3{font-family:Georgia,serif;font-size:1.55rem}.sample dl{display:grid;grid-template-columns:130px 1fr;gap:14px;margin-top:22px}.sample dt{font-size:.88rem;font-weight:600}.sample dd{margin:0;font-size:.94rem}.contact-grid{display:grid;grid-template-columns:1fr 1.65fr;gap:88px;padding-bottom:85px}.contact-aside h2{font-size:2rem}.contact-aside p{margin-top:20px;color:var(--muted)}.contact-aside ul{padding-left:21px;color:var(--muted)}.contact-aside li{margin-bottom:12px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}.field{display:flex;flex-direction:column}.field.full{grid-column:1/-1}.field label{font-weight:500;margin-bottom:8px;font-size:.95rem}.optional{font-size:.82rem;color:var(--muted);font-weight:400}.field input,.field select,.field textarea{border:1px solid #92968e;background:white;border-radius:0;padding:12px 13px;color:var(--ink);width:100%;min-width:0}.field textarea{min-height:152px;resize:vertical}.field small{margin-top:7px;color:var(--muted);font-size:.82rem}.field [aria-invalid=true]{border:2px solid #9e3431}.form-error{color:#8e2f2b;font-size:.88rem}.form-notice{font-size:.85rem;color:var(--muted);margin:24px 0}.form-actions{display:flex;flex-wrap:wrap;gap:14px}.form-status{margin-top:16px;font-size:.9rem}.review-panel{background:var(--paper);padding:32px}.review-panel h2{font-size:2rem}.review-panel dl{margin-block:28px}.review-panel dt{font-size:.83rem;color:var(--muted);margin-top:20px}.review-panel dd{margin:4px 0 0;white-space:pre-wrap;overflow-wrap:anywhere}.review-panel .brief-message{line-height:1.6}.empty-state{padding:32px;background:var(--paper);max-width:700px}.copy-fallback{width:100%;min-height:200px;margin-top:15px;padding:15px}.hidden,[hidden]{display:none!important}@media(min-width:1900px){.wrap{max-width:1400px}}@media(max-width:1100px){.wrap{width:calc(100% - 64px)}.hero{gap:36px}nav{gap:20px}nav>a{font-size:.82rem}.header-inner{gap:25px}.method-grid,.content-grid,.contact-grid{gap:50px}.hero-image figcaption{display:block}.hero-image figcaption span{display:block;margin-top:5px}.section-intro,.evidence-block{gap:50px}.footer-main{gap:30px;grid-template-columns:1fr 1.6fr 1.7fr}}@media(max-width:820px){.header-inner{flex-wrap:wrap;min-height:93px;padding-block:18px}.brand>span{font-size:1.7rem}.menu-toggle:not([hidden]){display:inline-flex;gap:14px;align-items:center}#main-nav{width:100%;flex-wrap:wrap;padding-block:15px;gap:22px}.js #main-nav:not(.open){display:none}.js #main-nav.open{display:flex}.hero{padding-top:48px;gap:32px;grid-template-columns:1.14fr 1fr}.hero h1{font-size:2.8rem}.hero-description{font-size:1rem}.hero-actions{display:grid;justify-items:start}.hero-image img{aspect-ratio:.75}.section-intro{gap:35px}.section-intro h2{font-size:2.2rem}.row-label{min-width:120px}.method-grid{gap:45px}.evidence-block{gap:40px}.notes-heading{display:block}.notes-heading p{margin-top:15px}.closing-inner{display:block}.closing .button{margin-top:25px}.footer-main{grid-template-columns:1fr 2fr}.footer-main nav{grid-column:1/-1}.contact-grid{grid-template-columns:1fr;gap:35px}.contact-aside ul{display:none}.content-grid{grid-template-columns:1fr 1.6fr;gap:35px}.content-grid h2{font-size:1.8rem}}@media(max-width:700px){.wrap{width:calc(100% - 40px)}.preview-note{font-size:.765rem;padding:8px 12px}.preview-note span{display:block;margin:0}.header-inner{min-height:85px}.hero{display:flex;flex-direction:column;padding-block:39px 45px;gap:34px;align-items:stretch}.hero h1{font-size:2.72rem;max-width:440px}.hero-description{font-size:1rem}.hero-actions{display:flex;gap:10px}.hero-actions .button{font-size:.83rem;padding:12px 16px}.hero-image img{aspect-ratio:1.5;object-position:50% 54%}.hero-image figcaption{display:flex;gap:12px;font-size:.765rem}.hero-image figcaption span{margin:0}.context{margin-bottom:18px}.situations{padding-block:10px 52px}.section-intro{display:block;margin-bottom:22px}.section-intro h2{font-size:2rem;max-width:340px}.section-intro p{margin-top:20px}.service-rows>a{display:block;padding-block:24px}.service-rows h3{font-size:1.4rem}.row-label{display:block;text-align:left;margin-top:15px}.method-band{padding-block:48px}.method-grid{grid-template-columns:1fr;gap:36px}.method-grid h2 br,.evidence-block h2 br{display:none}.method-grid .context{margin-bottom:15px}.method-grid>div>p:not(.context){margin-top:18px}.process li{padding-block:20px}.evidence-block{grid-template-columns:1fr;padding-block:52px;gap:25px}.large-copy{font-size:1.3rem}.notes-section{padding-bottom:52px}.notes-grid{grid-template-columns:1fr;gap:30px}.note-link h3{font-size:1.5rem}.closing{padding-block:45px}.closing h2{font-size:2rem}.footer-main{gap:25px;grid-template-columns:1fr;padding-bottom:28px}.footer-main nav{grid-column:auto}.site-footer{padding-top:36px}.footer-bottom{display:block}.footer-bottom span{display:block;margin-bottom:7px}.page-heading{padding-block:42px 34px}.page-heading h1{font-size:2.6rem}.page-heading .intro{font-size:1.08rem}.content-grid{grid-template-columns:1fr;gap:20px}.content-grid+.content-grid{padding-top:32px;margin-top:35px}.content-section{padding-bottom:50px}.scope-table th,.scope-table td{padding:12px 9px;font-size:.85rem}.scope-table td:first-child{width:38%}.form-grid{grid-template-columns:1fr;gap:22px}.field.full{grid-column:auto}.contact-grid{padding-bottom:50px}.review-panel{padding:24px 20px}.sample{padding:24px 20px}.sample dl{grid-template-columns:1fr;gap:4px}.sample dd{margin-bottom:12px}.article h2{font-size:1.75rem;margin-top:36px}.article{padding-bottom:50px}.article-callout{padding:22px}#main-nav.open{flex-direction:column;align-items:stretch;gap:0;padding-bottom:0}#main-nav a{padding:12px 0}#main-nav .nav-cta{padding:12px 15px;text-align:center;margin-top:8px}}@media(prefers-reduced-motion:no-preference){.button{transition:background-color .15s}.hero-copy{animation:appear .4s ease-out}@keyframes appear{from{opacity:.6;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}}@media print{.preview-note,.menu-toggle,.hero-actions,.closing,nav,.form-actions{display:none!important}.wrap{width:100%}.site-header{border:0}.hero{padding:25px 0}.page-heading{padding:25px 0}a{text-decoration:none}.hero-image{max-width:350px}}
/* Let enlarged text wrap within its layout without clipping. */
h1,h2,h3,p,li,td,th,dd{overflow-wrap:anywhere}.contact-grid>*,.form-grid>*,.content-grid>*,.method-grid>*,.section-intro>*,.evidence-block>*,.notes-grid>*{min-width:0}.button{max-width:100%;overflow-wrap:anywhere}.closing .button{white-space:normal}

.brand-image{width:220px;height:auto}.footer-main .brand-image{width:190px}@media(max-width:700px){.brand-image{width:180px}.header-inner{min-height:92px}}

/* Keep all three identity pillars readable alongside the adapted lockup. */
.brand .brand-pillars{font-size:.65rem;letter-spacing:.025em;line-height:1.45;margin:3px 0 0;color:var(--ink);text-align:center;max-width:220px;overflow-wrap:normal}
.product-section{padding-block:56px 72px;border-top:1px solid var(--line)}
.product-section .context{margin-bottom:12px}
@media(max-width:700px){.brand .brand-pillars{font-size:.59rem;letter-spacing:0}.product-section{padding-block:36px 48px}}

.product-status{display:inline-block;margin-top:18px;padding:5px 12px;background:var(--paper);border:1px solid var(--line);font-size:.82rem;color:var(--ink)}

/* A compact overview groups the full offer by the visitor's task. */
.service-overview{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:36px}
.service-group{border-top:3px solid var(--copper);padding-top:22px;min-width:0}
.service-group h3{font-family:Georgia,'Times New Roman',serif;font-size:1.55rem}
.service-group>p{font-size:.94rem;color:var(--muted);margin-top:12px;max-width:34ch}
.service-group ul{list-style:none;padding:0;margin:22px 0 0}
.service-group li+li{border-top:1px solid var(--line)}
.service-group a{display:block;padding:13px 0;font-size:.94rem;line-height:1.5;text-decoration:none;overflow-wrap:anywhere}
.service-group a:hover{text-decoration:underline}
.deliverable-intro{margin-top:22px;max-width:28rem;color:var(--muted)}
.deliverable-list{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px 32px}
.deliverable-list li{border-top:1px solid var(--line);padding-top:15px;min-width:0}
.deliverable-list p{font-size:.94rem;color:var(--muted);margin-top:8px}
.examples-note{max-width:48rem;margin-bottom:38px;color:var(--muted)}
@media(max-width:900px){.service-overview{grid-template-columns:1fr;gap:28px}.service-group>p{max-width:100%}.service-group ul{margin-top:10px}}
@media(max-width:700px){.deliverable-list{grid-template-columns:1fr;gap:22px}.service-group{padding-top:18px}.service-group a{padding-block:12px}}

@media(max-width:360px){.product-section .large-copy{font-size:1.15rem}}

/* Editorial imagery supports the work described on each page. */
.editorial-image{min-width:0;margin:0}
.editorial-image .image-frame>img{width:100%;height:auto;aspect-ratio:3/2;object-fit:cover}
.editorial-image figcaption{display:flex;justify-content:space-between;gap:12px;margin-top:10px;font-size:.76rem;line-height:1.5;color:var(--muted)}
.hero-image .image-frame>img{aspect-ratio:1.04;object-position:47% 50%}
.hero-image figcaption>span{font-size:inherit;margin:0}
.service-group{border-top:0;padding-top:0}
.service-group-image{margin-bottom:19px}
.service-group-image .image-frame>img{aspect-ratio:1.65;object-position:center}
.service-group-image figcaption{justify-content:flex-end;margin-top:6px}
.page-heading.has-image{display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:center}
.page-heading.has-image h1{font-size:clamp(2.2rem,3.5vw,3.25rem)}
.page-heading.has-image .intro{font-size:1.06rem}
.page-heading.has-image .editorial-image .image-frame>img{aspect-ratio:1.4}
.contact-image{margin-bottom:28px}
.product-logo{width:100%;max-width:280px;height:auto;margin-block:20px 0}
.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}
@media(max-width:1100px){.page-heading.has-image{gap:36px}}
@media(min-width:701px) and (max-width:820px){.hero-image .image-frame>img{aspect-ratio:.9;object-position:47% 50%}}
@media(max-width:820px){.page-heading.has-image{grid-template-columns:1fr;gap:30px}.page-heading.has-image .editorial-image .image-frame>img{aspect-ratio:1.8}.page-heading.has-image h1{max-width:680px}}
@media(max-width:700px){.hero-image .image-frame>img{aspect-ratio:1.5}.product-logo{max-width:240px}.page-heading.has-image h1{font-size:2.6rem}}
@media print{.editorial-image{max-width:400px}.page-heading.has-image{grid-template-columns:1fr}}

.service-group-content>p{font-size:.94rem;color:var(--muted);margin-top:12px;max-width:34ch}
@media(min-width:600px) and (max-width:900px){.service-group{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:28px;align-items:start}.service-group-image{margin-bottom:0}.service-group-image .image-frame>img{aspect-ratio:1.25}.service-group ul{margin-top:16px}}

.hero.hero-wide{display:grid;grid-template-columns:1.08fr 1fr;grid-template-areas:'heading introduction' 'image image';gap:36px 72px;padding-top:52px;align-items:end}
.hero-wide .hero-heading{grid-area:heading}
.hero-wide .hero-introduction{grid-area:introduction}
.hero-wide .hero-description{margin-top:0}
.hero-wide .hero-image{grid-area:image;display:block;max-width:none}
.hero-wide .hero-image .image-frame>img{aspect-ratio:auto;object-fit:contain;object-position:center;transform:none;will-change:auto}
.hero-wide .hero-image figcaption>span:last-child{flex-shrink:0}
@media(max-width:900px){.hero.hero-wide{grid-template-columns:1fr;grid-template-areas:'heading' 'image' 'introduction';gap:28px;align-items:start}.hero-wide h1{max-width:720px}.hero-wide .hero-description{max-width:45rem}.hero-wide .hero-actions{display:flex}}
@media(max-width:700px){.hero.hero-wide{padding-top:32px}.hero-wide .hero-image figcaption{font-size:.7rem}.hero-wide .hero-actions{margin-top:24px}}

.image-frame{overflow:hidden}
.reading-progress{display:none;position:fixed;inset:0 0 auto;height:3px;background:var(--copper);z-index:60;transform:scaleX(var(--reading-progress,0));transform-origin:left;pointer-events:none}
.motion-enabled .reading-progress{display:block}
.motion-enabled .image-frame>img{transform:translate3d(0,var(--image-shift,0px),0) scale(1.06)}
.motion-enabled .image-frame.is-in-view>img{will-change:transform}
.motion-enabled .reveal-target{transition:opacity .55s ease,transform .55s cubic-bezier(.2,.7,.2,1)}
.motion-enabled .reveal-target.reveal-pending{opacity:0;transform:translateY(22px)}
.motion-enabled .reveal-target.is-revealed,.motion-enabled .reveal-target:focus-within{opacity:1;transform:none}
@media(prefers-reduced-motion:reduce){.reading-progress{display:none!important}.image-frame>img,.reveal-target{transform:none!important;transition:none!important;opacity:1!important}}
@media print{.reading-progress{display:none!important}.image-frame>img,.reveal-target{transform:none!important;opacity:1!important}}

.hp-field{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}.contact-email{margin-bottom:25px;font-size:1.05rem;overflow-wrap:anywhere}.form-actions button:disabled{opacity:.65;cursor:wait}#enquiry-confirmation p{margin-top:18px}
