@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;450;500;550;600;650;700&display=swap');
:root{--blue:#3273d1;--sky:#81b6ff;--ink:#101727;--muted:#5d6677;--line:#dfe5ed}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:105px}body{margin:0;font-family:'DM Sans',Arial,sans-serif;color:var(--ink);font-size:18px;line-height:1.65}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer}button,a{-webkit-tap-highlight-color:transparent}button:focus-visible,a:focus-visible{outline:3px solid #569af5;outline-offset:6px}button{border:0;background:none}h1,h2,h3,p{margin:0}h1,h2,h3{line-height:1.1;letter-spacing:-.045em}p{color:var(--muted)}.wrap{max-width:1320px;width:calc(100% - 112px);margin:auto}.eyebrow{font-size:14px;letter-spacing:.18em;font-weight:650;display:block}.blue{color:var(--blue)}header{height:100px;background:white;display:flex;align-items:center;justify-content:space-between;padding:0 48px;position:sticky;top:0;z-index:10;border-bottom:1px solid #edf0f5}.brand{display:flex;align-items:center;gap:12px;line-height:1}.brand img{width:53px;height:53px}.brand>span{font-size:30px;font-weight:500;letter-spacing:-1.5px}.brand-sub{display:block;font-size:14px;letter-spacing:1.3px;margin-top:9px;font-weight:700}nav{display:flex;gap:29px;align-items:center;font-size:18px}nav button{padding:0}nav button span{margin-left:6px}.header-right{display:flex;gap:25px;align-items:center}.header-right button{font-size:16px}.hamb{margin-left:9px;font-size:18px}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:35px;padding:17px 23px;background:var(--blue);color:white;border-radius:5px;font-size:18px;font-weight:600;transition:background .2s,transform .2s}.button:hover{background:#265caf;transform:translateY(-2px)}.button.small{padding:12px 18px}.button span{font-size:18px}.skip{position:absolute;top:-100px}.skip:focus{top:0;background:white;z-index:20;padding:10px}.hero{background:#0c1527;color:#fff;overflow:hidden;background-image:radial-gradient(ellipse at 90% 25%,#192f50 0%,transparent 60%)}.hero-inner{max-width:1440px;margin:auto;display:grid;grid-template-columns:1.02fr 1fr;min-height:655px;padding:70px 56px 42px;gap:40px}.hero .eyebrow{color:#b6d3fb;font-size:14px;letter-spacing:.17em;display:flex;gap:10px;align-items:center}.eyebrow i,.pulse,.status-dot{width:6px;height:6px;background:#7bb4ff;border-radius:50%;display:inline-block}.hero h1{font-size:clamp(48px,5.1vw,76px);font-weight:550;margin:26px 0 23px;line-height:1.03}.hero h1>span{color:var(--sky)}.hero-lead{font-size:21px;color:#e1e7f2;line-height:1.5;letter-spacing:-.025em}.hero-description{font-size:18px;color:#aab6c9;max-width:410px;margin-top:19px;line-height:1.9}.hero-actions{display:flex;align-items:center;gap:25px;margin-top:30px}.plain-link{font-size:16px;color:#c7d1e1}.hero-foot{border-top:1px solid #ffffff1b;margin-top:38px;padding-top:17px;font-size:14px;letter-spacing:.14em;color:#aab6c9;display:flex;justify-content:space-between;max-width:490px}.hero-foot span{letter-spacing:0;font-size:14px}.hero-art{position:relative;align-self:center;height:505px;border:1px solid #88baff1c;border-radius:12px;background:linear-gradient(145deg,#20375844,#09132277);overflow:hidden;box-shadow:0 30px 60px #0002}.hero-art:before{content:'';position:absolute;inset:0;background-image:linear-gradient(#98bbeb09 1px,transparent 1px),linear-gradient(90deg,#98bbeb09 1px,transparent 1px);background-size:33px 33px}.art-top{position:absolute;top:23px;left:22px;right:22px;display:flex;justify-content:space-between;font-size:14px;letter-spacing:.14em;color:#a2badb}.orbit{position:absolute;border:1px solid #75b0ff26;border-radius:50%;width:340px;height:340px;left:50%;top:50%;transform:translate(-50%,-50%) rotate(-25deg)}.orbit-two{width:440px;height:230px;transform:translate(-50%,-50%) rotate(-35deg)}.orbit-three{width:290px;height:400px;transform:translate(-50%,-50%) rotate(35deg)}.art-centre{position:absolute;left:50%;top:47%;transform:translate(-50%,-50%);width:174px;height:174px;border-radius:50%;background:radial-gradient(circle at 30% 0,#264f85,#132945);border:1px solid #6daaff88;box-shadow:0 0 75px #3273d132;display:flex;align-items:center;justify-content:center;flex-direction:column}.art-centre img{width:54px;border-radius:6px}.art-centre>span{font-size:14px;text-align:center;margin-top:9px;color:#d7e6ff;line-height:1.4}.plus{display:block;color:#80b6ff}.floating{position:absolute;background:#f8fbff;box-shadow:0 10px 35px #0003;border:1px solid #fff9;border-radius:7px;color:#172a46;padding:15px;display:flex;align-items:center;gap:12px;font-size:16px;font-weight:600}.floating div span{display:block;font-size:14px;color:#6b7890;font-weight:400;margin-top:2px}.floating b{color:var(--blue);margin-left:20px}.note-one{left:28px;top:95px;transform:rotate(-4deg)}.note-two{right:17px;top:290px;transform:rotate(3deg)}.note-three{left:35px;bottom:64px;transform:rotate(-3deg)}.node-icon{background:#e6efff;color:var(--blue);width:30px;height:30px;display:grid;place-items:center;border-radius:5px;font-size:20px}.check{color:#2d906e;background:#e6f3ed;border-radius:50%;height:26px;width:26px;text-align:center}.art-bottom{position:absolute;bottom:18px;left:0;right:0;text-align:center;font-size:14px;letter-spacing:.14em;color:#a4b6ce}.art-bottom .pulse{margin-right:8px;width:4px;height:4px}.hero-bottom{border-top:1px solid #ffffff16;padding:19px 56px;display:flex;justify-content:space-between;font-size:14px;color:#a4b1c5;max-width:1440px;margin:auto}.hero-bottom a{font-size:14px;letter-spacing:.12em}.hero-bottom a span{padding-left:16px;font-size:18px}.trust{padding-top:35px;padding-bottom:38px;border-bottom:1px solid var(--line)}.trust>.eyebrow{text-align:center;font-size:14px;color:#7c8799}.logos{display:flex;justify-content:space-between;align-items:center;margin-top:25px;gap:20px;color:#526073}.logos b{font-size:25px;letter-spacing:-1px;line-height:1}.logos small{display:block;font-size:14px;letter-spacing:2px;margin-top:6px}.logos .morrisons{font-family:Georgia,serif;font-size:28px}.logos .lowry{font-weight:400;letter-spacing:4px;font-family:Georgia,serif}.logos .chethams{font-family:Georgia,serif}.logos .kwb{font-size:19px;font-family:Georgia,serif}.section-head{display:flex;justify-content:space-between;align-items:flex-end;gap:50px;margin-bottom:40px}.section-head h2,h2{font-size:clamp(32px,3.15vw,46px);font-weight:500}.section-head .eyebrow,h2+.eyebrow{margin-bottom:18px}.section-head p{max-width:390px;font-size:18px;line-height:1.9}.services{padding-top:83px;padding-bottom:66px}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:17px}.service{padding:25px 28px 26px;border:1px solid var(--line);border-radius:7px;transition:transform .2s,box-shadow .2s;display:flex;flex-direction:column}.service:hover{transform:translateY(-5px);box-shadow:0 16px 30px #15243c0a}.service-num{font-size:14px;letter-spacing:.13em;color:#7a8799}.service-num b{float:right;font-size:14px;background:#dceaff;padding:2px 5px;color:#3273d1;border-radius:3px}.service-icon{color:var(--blue);font-size:32px;margin:26px 0 20px;line-height:1}.service h3{font-size:23px;font-weight:500;margin-bottom:16px}.service p{font-size:16px;line-height:1.9;flex:1}.service-link{font-size:16px;color:var(--blue);margin-top:29px;font-weight:600}.service.feature{background:#f0f5fd;border-color:#bfd4f3}.capabilities{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-top:30px;font-size:14px}.capabilities>span{font-size:14px;letter-spacing:.1em;color:#7c8798}.ai-section{padding:78px 0;background:#f2f5f9}.ai-grid{display:grid;grid-template-columns:1fr 1fr;gap:90px;align-items:center}.ai-visual{background:#10213a;color:white;border-radius:9px;padding:33px;box-shadow:0 20px 40px #0c152710}.ai-visual>.eyebrow{font-size:14px;color:#a3bee3}.build-flow{margin:27px 0}.build-flow>div{padding:17px 13px;border:1px solid #ffffff22;border-radius:4px;margin:12px 0;font-size:16px;color:#d8e5f7;position:relative}.build-flow>div:not(:last-child):after{content:'↓';position:absolute;bottom:-16px;left:25px;color:#79a3db;font-size:16px}.build-flow span{font-size:14px;color:#82a7d7;margin-right:18px}.build-flow b{float:right;font-weight:400;color:#84b7ff}.build-flow .flow-final{background:#3273d1;border-color:#5491e6}.build-flow .flow-final span,.build-flow .flow-final b{color:white}.ai-visual>p{font-size:14px;color:#9eb4d1}.ai-copy .eyebrow{margin-bottom:19px}.ai-copy h2{margin-bottom:23px}.ai-copy>p{font-size:18px;line-height:1.9;margin:15px 0}.ai-principles{display:flex;flex-direction:column;gap:8px;font-size:16px;margin:22px 0;color:#364e70}.text-link{color:var(--blue);font-weight:600;font-size:16px}.work{padding:85px 0}.work-grid{display:grid;grid-template-columns:1fr 1fr;gap:28px}.case-image{height:275px;position:relative;padding:40px;background:#e8ecee;overflow:hidden;border-radius:6px}.case-one .case-image{background:#e8eef0;background-image:linear-gradient(115deg,#ffffff77,transparent),repeating-linear-gradient(55deg,transparent,transparent 35px,#243f5110 36px,#243f5110 37px)}.case-word{font-size:34px;letter-spacing:3px;font-weight:650;position:relative;z-index:1}.case-word>span{display:block;font-size:14px;letter-spacing:3px;margin-top:4px;color:#687c8a}.case-graphic{display:flex;gap:10px;align-items:center;margin-top:40px;font-size:14px;letter-spacing:.08em}.case-graphic>span{padding:12px;background:#ffffffc4;border:1px solid #c8d4dc;border-radius:3px}.case-graphic i{font-size:17px;font-style:normal;color:#7a94a5}.case-badge{position:absolute;bottom:20px;left:25px;font-size:14px;letter-spacing:.1em;color:#506b82}.case-two .case-image{background:#e7edfb;background-image:radial-gradient(ellipse at 90% 0%,#bdd1f3,transparent 70%)}.case-two .case-word{font-size:30px;letter-spacing:-1.7px;font-weight:500;color:#2d466c}.case-word>.inline{display:inline;font-size:38px;color:#3273d1;letter-spacing:-3px}.tracker-graphic{display:flex;gap:10px;margin-top:33px;align-items:flex-end;height:65px}.tracker-graphic i{width:50px;background:#8caedf;border-radius:3px 3px 0 0;height:40%}.tracker-graphic i:nth-child(2){height:65%}.tracker-graphic i:nth-child(3){height:55%}.tracker-graphic i:nth-child(4){height:80%}.tracker-graphic i:nth-child(5){height:100%;background:#3273d1}.case-info{padding:24px 0 0}.case-info>span{font-size:14px;letter-spacing:.1em;color:#758196}.case-info h3{font-size:26px;line-height:1.2;margin:13px 0;font-weight:500}.case-info p{font-size:16px}.case-info>b{display:block;font-size:16px;color:var(--blue);margin-top:19px}.case:hover .case-info>b{text-decoration:underline}.quote-section{background:#f4f7fc;border-top:1px solid #e9edf4;border-bottom:1px solid #e9edf4;padding:49px 0}.quote-inner{display:flex;gap:35px;align-items:center}.quote-mark{font-family:Georgia,serif;font-size:100px;color:var(--blue);line-height:.8}.quote-inner blockquote{font-size:23px;letter-spacing:-.025em;margin:0;max-width:750px;line-height:1.5}.quote-inner cite{font-style:normal;font-size:14px;letter-spacing:.12em;display:block;margin-top:20px;color:#6e7d93}.quote-note{border-left:1px solid #ccd8e9;padding-left:35px;font-size:16px;color:#7788a0;margin-left:auto}.approach{padding:85px 0}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:42px}.steps article{border-top:1px solid #cdd8e8;padding-top:20px}.steps article>span{font-size:16px;color:var(--blue)}.steps h3{font-size:21px;line-height:1.25;font-weight:500;margin:22px 0 15px;max-width:260px}.steps p{font-size:16px;line-height:1.9}.about{padding:58px 0;border-top:1px solid var(--line);display:grid;grid-template-columns:1fr 1fr;gap:90px}.about-title .eyebrow{margin-bottom:19px}.about h2{font-size:36px}.about-copy p{font-size:18px;line-height:1.9;margin-bottom:15px}.modernisation{margin-top:10px;margin-bottom:80px;background:#f3f6fa;border:1px solid #e3e9f1;border-radius:7px;padding:37px 40px;display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center}.modernisation h2{font-size:31px;margin:16px 0}.modernisation p{font-size:16px;margin-bottom:15px;max-width:440px}.modernisation-contact{padding-left:45px;border-left:1px solid #d6dfeb;font-size:14px;letter-spacing:.13em}.modernisation-contact .status-dot{background:#4c9b7a;margin-right:8px}.modernisation-contact a{display:block;font-size:31px;letter-spacing:-1px;margin:15px 0 0}.modernisation-contact>span:last-child{font-size:16px;letter-spacing:0;color:#6d7d93}.contact{background:#173d73;color:white;padding:65px 0 52px;position:relative;overflow:hidden}.contact:after{content:'';width:550px;height:550px;border:1px solid #7cacdf30;border-radius:50%;position:absolute;right:-120px;top:-230px;pointer-events:none;box-shadow:0 0 0 65px #7cacdf0b,0 0 0 130px #7cacdf09}.contact .eyebrow{color:#accaf0}.contact h2{font-size:62px;margin:25px 0 29px;line-height:1.07}.contact h2>span{color:#91bcf6}.contact-bottom{display:flex;align-items:center;justify-content:space-between}.contact p{color:#c3d3e8;font-size:18px;line-height:1.9}.button.white{background:white;color:#173d73;z-index:1}.footer-top{display:grid;grid-template-columns:1.2fr 1.1fr 1fr .7fr;gap:30px;padding:48px 0}.footer-top .brand{align-self:start}.footer-top .brand img{width:42px;height:42px}.footer-top .brand>span{font-size:26px}.footer-top>div a{display:block;font-size:16px;margin-bottom:7px}.footer-top p{font-size:16px}.footer-bottom{display:flex;justify-content:space-between;border-top:1px solid var(--line);padding:19px 0 25px;font-size:14px;color:#7a879b}#mega{position:absolute;top:100%;left:0;right:0;padding:45px 70px;background:#fff;box-shadow:0 20px 40px #08132322;display:grid;grid-template-columns:1.1fr 1fr 1fr;gap:65px;border-top:1px solid #e7edf5}#mega[hidden]{display:none}.mega-intro h2{font-size:31px;margin:18px 0}.mega-intro p{font-size:16px;max-width:240px;margin-bottom:18px}.mega-intro .eyebrow,.mega-links>.eyebrow{color:#7a8ba2;font-size:14px}.mega-links>a{display:block;padding:20px 0;border-bottom:1px solid #e6ecf3;font-size:18px;line-height:1.3}.mega-links>a span{font-size:14px;color:#7a879c;display:block;margin-top:8px}.mega-links>a:hover{color:var(--blue)}.close-menu{position:absolute;right:20px;top:15px;font-size:26px;color:#71829b}
@media(min-width:1500px){.hero-inner{padding-left:80px;padding-right:80px}.hero h1{font-size:76px}}@media(max-width:1050px){header{padding:0 28px;height:85px}nav{gap:18px;font-size:16px}.brand-sub{display:none}.brand>span{font-size:26px}.header-right{gap:15px}.wrap{width:calc(100% - 64px)}.hero-inner{padding:54px 32px 35px;gap:24px}.hero h1{font-size:54px}.hero-art{height:470px}.hero-actions{gap:17px;align-items:flex-start;flex-direction:column}.hero-foot{flex-direction:column;gap:5px}.note-one{left:15px}.note-two{right:10px;font-size:14px}.note-three{left:20px}.hero-bottom{padding-left:32px;padding-right:32px}.service{padding:23px}.service h3{font-size:21px}.service-num b{display:none}.ai-grid{gap:45px}.quote-note{display:none}.about{gap:45px}.capabilities{flex-wrap:wrap}.footer-top{grid-template-columns:1fr 1fr}#mega{padding:35px;gap:30px}.modernisation-contact{padding-left:25px}.modernisation-contact a{font-size:26px}}
@media(max-width:760px){html{scroll-padding-top:85px}header{height:78px;padding:0 20px}header nav{display:none}.brand img{width:43px;height:43px}.brand>span{font-size:25px}.header-right .button{display:none}.header-right button{font-size:16px}.wrap{width:calc(100% - 40px)}.hero-inner{grid-template-columns:1fr;padding:44px 20px 30px;gap:35px}.hero .eyebrow{font-size:14px}.hero h1{font-size:54px;margin-top:25px}.hero h1>span br{display:none}.hero-lead{font-size:20px}.hero-description{font-size:18px;max-width:100%}.hero-actions{flex-direction:row;align-items:center;gap:20px}.hero-actions .button{font-size:16px;padding:15px;gap:14px}.plain-link{font-size:14px}.hero-foot{flex-direction:row;font-size:14px;margin-top:30px}.hero-foot span{font-size:14px}.hero-art{height:390px;width:100%;max-width:510px;justify-self:center}.art-centre{width:145px;height:145px}.note-one{top:70px}.note-two{top:240px}.note-three{bottom:45px}.hero-bottom{padding:15px 20px;font-size:14px}.hero-bottom a{font-size:14px}.trust{padding:25px 0}.logos{flex-wrap:wrap;justify-content:center;gap:25px 30px}.logos b{font-size:21px}.logos .morrisons{font-size:24px}.logos .kwb{font-size:18px}.section-head{display:block;margin-bottom:28px}.section-head h2,h2{font-size:34px}.section-head p{margin-top:22px;font-size:18px;max-width:100%}.services,.work,.approach{padding-top:55px;padding-bottom:50px}.service-grid{grid-template-columns:1fr}.service{padding:25px}.service-icon{margin:22px 0 18px}.service h3{font-size:25px}.service p{font-size:18px}.service-num b{display:inline}.service-link{margin-top:22px}.capabilities{gap:15px;justify-content:flex-start}.capabilities>span{width:100%}.ai-section{padding:50px 0}.ai-grid{display:flex;flex-direction:column-reverse;gap:35px}.ai-visual{width:100%}.work-grid{grid-template-columns:1fr;gap:35px}.case-image{height:260px;padding:30px}.case-info h3{font-size:25px}.quote-inner{gap:15px;align-items:flex-start}.quote-inner blockquote{font-size:21px}.quote-mark{font-size:70px}.quote-section{padding:35px 0}.steps{grid-template-columns:1fr;gap:28px}.steps h3{max-width:100%;margin:14px 0 12px}.section-head>.text-link{display:inline-block;margin-top:20px}.about{grid-template-columns:1fr;gap:25px;padding:35px 0}.about h2{font-size:32px}.modernisation{grid-template-columns:1fr;padding:28px;gap:30px;margin-bottom:45px}.modernisation-contact{padding:24px 0 0;border-left:0;border-top:1px solid #d6dfeb}.modernisation-contact a{font-size:29px}.contact{padding:45px 0}.contact h2{font-size:49px}.contact-bottom{display:block}.contact-bottom .button{margin-top:25px}.contact p{font-size:16px}.footer-top{grid-template-columns:1fr 1fr;gap:25px;padding:35px 0}.footer-top .brand{grid-column:1/-1}.footer-top>div a{overflow-wrap:anywhere}.footer-bottom{flex-wrap:wrap;gap:12px}.footer-bottom>span:nth-child(2){display:none}#mega{max-height:calc(100dvh - 78px);overflow:auto;grid-template-columns:1fr;padding:30px 25px;gap:28px}.mega-intro{display:none}.mega-links>a{padding:15px 0}.close-menu{top:5px;right:10px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

/* Original brand assets: preserve artwork, colour and proportions. */
.brand img,.footer-top .brand img{width:270px;height:auto;max-width:100%;object-fit:contain;border-radius:0}
.art-centre img{border-radius:0}
.logos{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:28px;margin-top:12px}
.logos img{display:block;width:100%;height:auto;object-fit:contain}
.case-client-logo{display:block;width:190px;height:auto;position:relative;margin-top:-35px;margin-bottom:-20px}
.case-one .case-graphic{margin-top:8px}
.case-project-name{font-size:28px;font-weight:500;letter-spacing:-.03em;color:#2d466c;padding-top:10px}
@media(max-width:1050px){.brand img,.footer-top .brand img{width:220px}nav{gap:14px}.logos{gap:16px}}
@media(max-width:760px){.brand img,.footer-top .brand img{width:240px}.logos{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px 18px}.case-client-logo{margin-top:-25px}.footer-top .brand{grid-column:1/-1}}
@media(max-width:380px){header .brand img{width:210px}}

.hero h1{font-size:clamp(40px,4.25vw,64px)}
@media(max-width:760px){.hero h1{font-size:clamp(34px,7.8vw,54px)}}

/* Readable type and flexible layouts at all screen sizes. */
body{font-size:18px;line-height:1.7}
.eyebrow,.service-num,.case-info>span,.case-badge,.mega-links>.eyebrow{letter-spacing:.09em}
.hero .eyebrow{line-height:1.6;flex-wrap:wrap}
.hero-description{max-width:520px;line-height:1.75;color:#c4cede}
.hero-foot{flex-wrap:wrap;gap:12px;color:#c4cede}
.hero-bottom{gap:20px;flex-wrap:wrap;color:#c4cede}
.hero-actions{flex-wrap:wrap;gap:20px}
.section-head p{max-width:440px;line-height:1.75}
.service-num b{float:none;display:block;width:fit-content;margin-top:10px}
.service p,.ai-copy>p,.about-copy p,.steps p,.modernisation p,.contact p{line-height:1.75}
.capabilities{flex-wrap:wrap;gap:18px 28px;justify-content:flex-start}
.capabilities>span{width:100%}
.footer-top{grid-template-columns:1.15fr 1fr 1fr .65fr;gap:25px}
.footer-top a{overflow-wrap:anywhere}
.footer-bottom{flex-wrap:wrap;gap:16px}
.hero-art{height:570px}
.art-top{gap:24px;line-height:1.5}
.art-top span{max-width:45%}
.art-centre{top:44%;width:185px;height:185px}
.note-one{top:90px}
.note-two{top:auto;bottom:124px}
.note-three{bottom:58px}
.floating{font-size:16px;padding:12px;gap:9px;max-width:calc(100% - 30px)}
.floating div span{font-size:14px;line-height:1.4}
.floating b{margin-left:5px}
.art-bottom{font-size:12px;letter-spacing:.06em;bottom:16px}
.art-centre>span{font-size:14px}
.case-image{height:320px}
.case-graphic{gap:6px;flex-wrap:wrap;font-size:14px;letter-spacing:0}
.case-graphic>span{padding:8px}
.case-badge{font-size:14px;letter-spacing:.04em;right:20px}
#mega{max-height:calc(100dvh - 100px);overflow:auto;gap:40px;padding:35px 48px}
.mega-links>a span{color:#536279;line-height:1.6}
.service-num,.case-info>span,.quote-inner cite,.footer-bottom{color:#536279}
.trust>.eyebrow,.capabilities>span,.mega-intro .eyebrow,.mega-links>.eyebrow{color:#536279}
@media(max-width:1200px){header{padding:0 28px}header nav{display:none}.header-right{gap:20px}.hero-inner{gap:28px}.hero-actions{align-items:flex-start;flex-direction:column}.service-grid{grid-template-columns:repeat(2,1fr)}.service:last-child{grid-column:1/-1}.footer-top{grid-template-columns:1fr 1fr}}
@media(max-width:760px){body{font-size:18px}.hero-actions{flex-direction:column;align-items:flex-start}.hero-actions .button{font-size:18px}.plain-link{font-size:16px}.hero-foot{flex-direction:column;align-items:flex-start}.hero-art{height:570px}.note-one{top:90px}.note-two{bottom:124px;top:auto}.note-three{bottom:58px}.art-centre{top:44%;width:180px;height:180px}.service-grid{grid-template-columns:1fr}.service:last-child{grid-column:auto}.footer-top{grid-template-columns:1fr}.footer-top .brand{grid-column:auto}.case-image{padding:25px 20px}.case-graphic{font-size:12px;gap:4px}.case-graphic>span{padding:7px}.case-client-logo{margin-top:-20px}.contact-bottom .button{font-size:18px}#mega{max-height:calc(100dvh - 78px);padding:30px 25px}.modernisation-contact{letter-spacing:.04em}.hero-bottom a{font-size:14px}.hero .eyebrow{font-size:14px}.header-right button{font-size:16px}}
/* Connected site: editorial pages and accessible navigation. */
header nav button{display:inline-flex;align-items:center;gap:10px;line-height:1.3}
.chevron{width:8px;height:8px;border-right:1.7px solid currentColor;border-bottom:1.7px solid currentColor;transform:translateY(-2px) rotate(45deg);transition:transform .2s;margin:0}
[aria-expanded=true] .chevron{transform:translateY(2px) rotate(225deg)}
#menu-toggle{display:inline-flex;align-items:center;gap:12px;min-height:44px;padding:4px}
.menu-icon{display:inline-flex;flex-direction:column;justify-content:space-between;width:23px;height:17px;position:relative}
.menu-icon>span{display:block;width:23px;height:2px;background:currentColor;transition:transform .22s,opacity .15s;transform-origin:center}
#menu-toggle[aria-expanded=true] .menu-icon>span:first-child{transform:translateY(7.5px) rotate(45deg)}
#menu-toggle[aria-expanded=true] .menu-icon>span:nth-child(2){opacity:0}
#menu-toggle[aria-expanded=true] .menu-icon>span:last-child{transform:translateY(-7.5px) rotate(-45deg)}
#mega{grid-template-columns:.85fr 1.15fr 1fr}
.mega-links>a{font-size:19px;padding:15px 0}.mega-links>a span{font-size:15px}.mega-intro p{font-size:18px}
.company-details{border-top:1px solid var(--line);padding:25px 0;display:flex;gap:12px 35px;flex-wrap:wrap;font-size:16px;color:#4f5f75}.company-details p{width:100%;font-size:16px;line-height:1.7}.company-details a{text-decoration:underline;text-underline-offset:4px}
.footer-bottom>div{display:flex;flex-wrap:wrap;gap:18px}.footer-top>div a,.footer-top p{font-size:16px}.footer-top{grid-template-columns:1.1fr 1fr 1fr .7fr}
.page-hero{background:#0c1527;background-image:radial-gradient(ellipse at 80% 10%,#203b61,transparent 70%);color:white;padding:40px 0 70px}.page-hero .eyebrow{color:#a7caf9;margin-top:35px}.page-hero h1{font-size:clamp(40px,5vw,70px);font-weight:500;line-height:1.08;max-width:1000px;margin:24px 0;letter-spacing:-.045em}.page-hero h1 span{color:#91bdff}.page-hero p{font-size:21px;line-height:1.65;color:#c5d1e3;max-width:800px}.breadcrumb{font-size:15px;color:#9bb5d9;display:inline-block}.breadcrumb:hover{text-decoration:underline}
.editorial-section{padding-top:70px;padding-bottom:70px}.editorial-section .section-head h2{max-width:600px}.editorial-section .section-head p{max-width:540px}.content-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.content-panel{border-top:1px solid #cbd7e8;padding:25px 0}.panel-number{font-size:15px;color:var(--blue)}.content-panel h3{font-size:27px;font-weight:500;line-height:1.22;margin:25px 0 18px}.content-panel p{font-size:18px;line-height:1.8}.related-links{display:flex;flex-wrap:wrap;gap:15px 32px;margin-top:40px;padding-top:25px;border-top:1px solid var(--line);color:var(--blue);font-size:17px}.related-links a:hover{text-decoration:underline}
.client-quote{padding-top:55px;padding-bottom:55px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin-top:20px;margin-bottom:20px}.client-quote blockquote{font-size:clamp(22px,2.2vw,30px);line-height:1.6;letter-spacing:-.025em;max-width:1020px;margin:24px 0}.client-quote cite{display:block;font-style:normal;font-size:16px;color:#596b85;margin-bottom:22px}.client-quote .text-link{font-size:17px}.page-cta{background:#173d73;color:white;padding:65px 0}.page-cta .eyebrow{color:#b1cdf4}.page-cta h2{margin:22px 0;font-size:clamp(35px,4vw,56px)}.page-cta p{color:#c8d8ee;max-width:650px;font-size:19px;margin-bottom:28px}.section-title{margin-bottom:35px}.about-story{display:grid;grid-template-columns:1fr 1.2fr;gap:80px;padding-top:75px;padding-bottom:55px}.about-story h2{margin-top:22px;font-size:43px}.about-story p{margin-bottom:22px;font-size:19px}
.article-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:30px;align-items:stretch}.article-grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}.editorial-card{display:flex;flex-direction:column;border:1px solid #e0e6ef;background:white;border-radius:8px;overflow:hidden;min-width:0;transition:transform .2s,box-shadow .2s}.editorial-card:hover{transform:translateY(-4px);box-shadow:0 14px 28px #16253c12}.editorial-card[hidden]{display:none}.card-media{height:230px;overflow:hidden;background:#eaf0fa;display:flex;align-items:center;justify-content:center}.card-media img{width:100%;height:100%;object-fit:cover;object-position:top}.card-content{padding:26px;display:flex;flex-direction:column;align-items:flex-start;flex:1}.card-content .eyebrow{font-size:13px;line-height:1.5}.card-content h3{font-size:27px;line-height:1.22;font-weight:500;margin:17px 0}.card-content p{font-size:17px;line-height:1.75;margin-bottom:25px}.card-content time{color:#66758a;font-size:15px;margin-bottom:17px}.card-content .text-link{font-size:17px;margin-top:auto}.abstract-editorial{font-size:35px;line-height:1.1;letter-spacing:-.04em;color:#234d86;align-self:center;padding:30px}.filter-bar{display:flex;gap:10px;flex-wrap:wrap}.filter-button{padding:11px 18px;border:1px solid #d4dfea;border-radius:30px;font-size:16px;color:#3b506e;background:white;line-height:1.4}.filter-button.active{color:white;background:#255da9;border-color:#255da9}.filter-button:hover{border-color:#3273d1}.results-count{font-size:16px;margin:22px 0 28px;color:#5b6b81}.journal-tools{display:flex;flex-direction:column;gap:25px}.journal-tools label{display:block;max-width:600px;font-size:16px;font-weight:500}.journal-tools input{display:block;margin-top:10px;width:100%;padding:15px 18px;font:inherit;background:#f6f8fc;border:1px solid #cbd6e7;border-radius:5px;color:var(--ink)}.journal-tools input:focus{outline:2px solid #3273d1;outline-offset:3px}.empty-results{padding:35px 0;font-size:19px}.project-story{padding-top:55px;padding-bottom:55px}.project-cover{background:#eaf0f8;padding:30px;border-radius:8px}.project-cover img{width:100%;max-height:650px;object-fit:contain;display:block}.story-grid{display:grid;grid-template-columns:280px 1fr;gap:75px;padding-top:60px}.story-grid aside{border-top:2px solid #3273d1;padding-top:22px;align-self:start;position:sticky;top:130px}.story-grid aside h3{font-size:25px;margin:18px 0}.story-grid aside p{font-size:17px;margin:10px 0 25px}.story-grid aside a{display:block;margin:18px 0;font-size:17px}.prose{font-size:19px;line-height:1.85;color:#344359;overflow-wrap:anywhere}.prose p{font-size:19px;line-height:1.85;margin:0 0 24px;color:#344359}.prose h2{font-size:35px;margin:42px 0 23px;font-weight:500}.prose h3{font-size:28px;margin:35px 0 20px}.prose h2:first-child{margin-top:0}.prose ul,.prose ol{padding-left:26px;margin:20px 0 28px}.prose li{margin:9px 0}.prose a{color:#245fae;text-decoration:underline;text-underline-offset:4px}.prose img{max-width:100%;height:auto;margin:25px 0}.prose pre{overflow:auto;background:#eef3fa;padding:20px;white-space:pre-wrap;font-size:16px}.prose table{width:100%;display:block;overflow:auto;border-collapse:collapse}.prose td,.prose th{padding:12px;border:1px solid #d7e0ec}.prose blockquote{border-left:3px solid #3273d1;margin:30px 0;padding-left:25px}.article-heading{max-width:1050px;padding-top:45px;padding-bottom:45px}.article-heading .breadcrumb{color:#526b8f;margin-bottom:35px}.article-heading h1{font-size:clamp(38px,4.5vw,64px);font-weight:500;margin:20px 0 30px;line-height:1.1}.article-meta{display:flex;gap:14px 30px;flex-wrap:wrap;font-size:16px;color:#62718a}.article-cover{height:430px;overflow:hidden;border-radius:7px;background:#edf3fa}.article-cover img{width:100%;height:100%;object-fit:cover;object-position:center}.article-layout{display:grid;grid-template-columns:230px minmax(0,800px);justify-content:center;gap:60px;padding-top:55px;padding-bottom:55px}.article-sidebar{position:sticky;top:135px;align-self:start;border-top:1px solid #c9d5e6;padding-top:15px}.article-sidebar a{display:block;color:#375779;font-size:16px;margin:16px 0}.archive-note{background:#f1f5fa;border-left:3px solid #7299cd;padding:19px 23px;font-size:16px;line-height:1.7;color:#50637e;margin-bottom:35px}.original-blog span{font-size:inherit!important;line-height:inherit!important}.contact-options{padding-top:65px;padding-bottom:65px;display:grid;grid-template-columns:1fr 1fr;gap:40px}.contact-options>a,.contact-options>div{padding:32px;background:#f3f6fa;border:1px solid #dce5f0;border-radius:7px;min-width:0}.contact-options h2{font-size:clamp(24px,2.5vw,36px);margin:22px 0;overflow-wrap:anywhere}.contact-options h3{font-size:29px;margin:22px 0}.contact-options p{font-size:18px;margin:12px 0}.location-links{display:grid;grid-template-columns:1fr 1fr;gap:25px}.location-links a{padding:28px;border:1px solid #d9e2ee;border-radius:5px;background:#f7f9fc}.location-links h2{font-size:33px;margin-bottom:15px}.location-links span{font-size:17px;color:#536b8c}.coverage-note{margin-top:35px;font-size:19px;max-width:850px}.legal-copy{max-width:950px;padding-top:60px;padding-bottom:70px}.sitemap-columns{display:grid;grid-template-columns:1fr 1fr 1.4fr;gap:45px}.sitemap-columns h2{font-size:29px;margin-bottom:28px}.sitemap-columns a{display:block;color:#315d94;font-size:17px;line-height:1.5;margin:18px 0}.sitemap-columns a:hover{text-decoration:underline}
@media(max-width:1200px){.article-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.footer-top{grid-template-columns:1fr 1fr}.article-layout{grid-template-columns:180px minmax(0,1fr);gap:35px}.content-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.about-story{gap:40px}.story-grid{gap:40px;grid-template-columns:220px minmax(0,1fr)}}
@media(max-width:760px){#mega{grid-template-columns:1fr}.mega-links>a{font-size:20px}.page-hero{padding:25px 0 45px}.page-hero h1{font-size:40px}.page-hero p{font-size:19px}.page-hero .eyebrow{margin-top:25px}.editorial-section{padding-top:45px;padding-bottom:45px}.content-grid,.article-grid,.article-grid.two,.about-story,.contact-options,.location-links,.sitemap-columns{grid-template-columns:1fr}.client-quote{padding-top:35px;padding-bottom:35px}.client-quote blockquote{font-size:23px}.about-story{padding-top:45px;gap:28px}.about-story h2{font-size:34px}.page-cta{padding:45px 0}.page-cta h2{font-size:36px}.article-heading h1{font-size:39px}.article-heading{padding-top:30px;padding-bottom:30px}.article-cover{height:260px}.article-layout{display:block;padding-top:30px}.article-sidebar{position:static;display:flex;flex-wrap:wrap;gap:18px;margin-bottom:30px}.article-sidebar a{margin:0}.prose,.prose p{font-size:18px}.prose h2{font-size:30px}.project-cover{padding:12px}.story-grid{display:flex;flex-direction:column;gap:30px;padding-top:35px}.story-grid aside{position:static}.story-grid aside .text-link{display:inline-block;margin-right:20px}.project-story{padding-top:30px}.card-media{height:220px}.card-content{padding:24px}.contact-options{padding-top:35px;gap:22px}.contact-options>a,.contact-options>div{padding:25px}.footer-top{grid-template-columns:1fr}.footer-bottom>div{gap:15px}.company-details{font-size:16px;gap:10px 25px}.sitemap-columns{gap:35px}.home-journal .section-head{margin-bottom:25px}}
@media(prefers-reduced-motion:reduce){.menu-icon>span,.chevron{transition:none}}
/* Circular CTA treatment shared by every interior page. */
.page-cta{position:relative;overflow:hidden;isolation:isolate}.page-cta:after{content:'';width:550px;height:550px;border:1px solid #7cacdf30;border-radius:50%;position:absolute;right:-120px;top:-230px;pointer-events:none;box-shadow:0 0 0 65px #7cacdf0b,0 0 0 130px #7cacdf09;z-index:-1}.page-cta>.wrap{position:relative;z-index:1}
.contact-options h2{font-size:clamp(25px,2.5vw,36px);font-weight:500;line-height:1.2;letter-spacing:-.035em;margin:22px 0}
.client-quote{max-width:1050px;padding:35px 40px;background:#f3f6fc;border:0;border-left:3px solid #89b2eb;border-radius:0 7px 7px 0;margin-top:45px;margin-bottom:45px}.client-quote .feedback-summary{font-size:24px;line-height:1.55;letter-spacing:-.02em;color:#263f60;max-width:850px;margin:20px 0}.client-quote .eyebrow{font-size:12px}.client-quote cite{margin-bottom:12px}.page-testimonials .client-quote{background:white;border:1px solid #dde5ef;border-left:3px solid #89b2eb;margin-top:30px;margin-bottom:30px}.page-testimonials .client-quote blockquote{font-size:20px;line-height:1.85;letter-spacing:0}.page-testimonials .client-quote .text-link{display:none}
.page-about-us .page-hero{background:#eef3fb;color:#142b4c}.page-about-us .page-hero p{color:#53657d}.page-about-us .page-hero h1 span{color:#3273d1}.page-about-us .page-hero .eyebrow,.page-about-us .breadcrumb{color:#426b9f}.company-timeline{padding-top:35px;padding-bottom:75px}.company-timeline>div{display:grid;grid-template-columns:repeat(4,1fr);gap:30px;margin-top:35px}.company-timeline article{border-top:2px solid #b4ccee;padding-top:25px}.company-timeline article>span{font-size:35px;color:#3273d1;letter-spacing:-.04em}.company-timeline h3{font-size:23px;font-weight:500;margin:20px 0 15px;line-height:1.25}.company-timeline p{font-size:17px;line-height:1.8}
.software-overview>.section-head{align-items:start}.software-overview .outcome-list{display:block;border-top:1px solid #d4dfed}.outcome-list .content-panel{display:grid;grid-template-columns:70px .9fr 1fr;gap:25px;padding:30px 0;align-items:start}.outcome-list .content-panel h3{margin:0;font-size:29px}.outcome-list .panel-number{font-size:26px;line-height:1.2}.proof-feature{display:grid;grid-template-columns:1.1fr 1fr;gap:60px;align-items:center;background:#eef3fb;border-radius:8px;padding:35px;margin-bottom:65px}.proof-image{background:#dfe8f6;border-radius:5px;overflow:hidden;padding:16px}.proof-image img{width:100%;height:330px;object-fit:contain;display:block}.proof-feature h2{font-size:40px;margin:20px 0}.proof-feature p{font-size:18px;line-height:1.8;margin:20px 0}.proof-feature .text-link{font-size:17px}
.workspace-map{padding:38px;background:#122944;color:white;border-radius:9px;margin:35px 0 45px}.workspace-map>.eyebrow{color:#afc8ec}.workspace-nodes{display:grid;grid-template-columns:1fr 1fr 1fr;gap:35px;align-items:center;margin:35px 0}.workspace-nodes>div{border:1px solid #a2b9db50;border-radius:6px;padding:24px;font-size:24px;line-height:1.3}.workspace-nodes span{display:block;font-size:14px;color:#95b8e7;margin-bottom:14px}.workspace-nodes small{display:block;font-size:16px;line-height:1.6;color:#b9cbe4;margin-top:14px}.workspace-nodes .workspace-hub{background:#3273d1;text-align:center;position:relative;padding:45px 20px;border-color:#8fbaff}.workspace-hub:before,.workspace-hub:after{content:'';position:absolute;top:50%;height:1px;width:36px;background:#96b9e8}.workspace-hub:before{left:-36px}.workspace-hub:after{right:-36px}.workspace-data{text-align:center;font-size:16px;color:#bcd0ed}.workspace-data>span{padding:0 15px;color:#5988c9}.connected-features .content-panel{border:0;padding:5px 5px 25px}.connected-features .panel-number{display:none}.connected-features .content-panel h3{margin-top:0}
.change-comparison{display:grid;grid-template-columns:1fr 1fr;gap:0;border-radius:8px;overflow:hidden;margin:30px 0 50px}.change-comparison>div{padding:40px;background:#edf0f4}.change-comparison>div+div{background:#e8f0fc}.change-comparison .eyebrow{font-size:13px;color:#53677e}.change-comparison h3{font-size:34px;font-weight:500;margin:24px 0}.change-comparison ul{margin:20px 0 0;padding-left:22px;color:#43566e;font-size:18px;line-height:1.8}.change-comparison li{margin:12px 0}.migration-steps{position:relative}.migration-steps .content-panel{border-top:3px solid #92b7eb}.migration-steps .panel-number{background:#e8f0fc;border-radius:50%;display:grid;place-items:center;width:40px;height:40px;font-size:17px}
.process-journey{display:block;max-width:1050px;margin:0 auto}.process-journey .content-panel{display:grid;grid-template-columns:80px .8fr 1.2fr;gap:35px;align-items:start;padding:40px 0}.process-journey .content-panel h3{margin:0;font-size:29px}.process-journey .panel-number{width:58px;height:58px;background:#e7effc;border:1px solid #c5d9f4;border-radius:50%;display:grid;place-items:center;font-size:22px}.process-journey .content-panel:nth-child(even){background:#f6f8fc;border-radius:8px;padding-left:20px;padding-right:20px}
.ai-development-steps .content-panel{padding:30px;background:#102943;color:white;border:0;border-radius:8px}.ai-development-steps .content-panel p{color:#bcd0eb}.ai-development-steps .panel-number{color:#84b7ff}.ai-distinction{padding-top:45px;padding-bottom:60px;border-top:1px solid #d9e3f0}.ai-distinction h2{max-width:850px;font-size:42px;margin:22px 0}.ai-distinction p{max-width:850px;font-size:19px;line-height:1.8;margin:20px 0 28px}.ai-distinction p a{text-decoration:underline;color:#3273d1}.ai-distinction .text-link{font-size:18px}
.case-study-page .page-hero{padding-bottom:45px}.case-study-page .page-hero>.wrap{display:grid;grid-template-columns:1fr 1fr;gap:15px 55px;align-items:center}.case-study-page .page-hero .breadcrumb{grid-column:1/-1}.case-study-page .page-hero .eyebrow{grid-column:1;grid-row:2;margin-top:20px}.case-study-page .page-hero h1{grid-column:1;grid-row:3;font-size:clamp(35px,4.2vw,58px);margin:0}.case-study-page .page-hero p{grid-column:1;grid-row:4;font-size:20px;align-self:start}.case-study-page .project-cover{grid-column:2;grid-row:2/5;margin:20px 0 10px;padding:15px;background:#edf3fb;border-radius:8px;box-shadow:0 20px 40px #0003}.case-study-page .project-cover img{max-height:360px;object-fit:contain}.case-study-page .project-story{padding-top:15px}.case-challenge{background:#edf3fb;padding:30px;border-radius:7px;margin-bottom:35px;border-left:3px solid #93b8e9}.case-challenge p:last-child{margin-bottom:0}.case-stevenson-memorials .page-hero,.case-trevon-industrial-finishers .page-hero{background:#17354b}.case-british-register-of-accredited-memorial-masons .page-hero,.case-keith-walton-brickwork .page-hero{background:#192f35}
.location-hero{background:#edf3fa;color:#143054}.location-hero h1 span{color:#3273d1}.location-hero p{color:#51677f}.location-hero .eyebrow,.location-hero .breadcrumb{color:#426b9f}.regional-services{grid-template-columns:1fr;gap:0}.regional-services .content-panel{display:grid;grid-template-columns:45px 1fr 1.5fr;gap:30px;padding:28px 0}.regional-services .content-panel h3{margin:0}
.integration-hero{background:#edf3fb;padding:35px 0 65px}.integration-hero .breadcrumb{color:#536c90}.integration-lead{display:grid;grid-template-columns:1.15fr .85fr;gap:80px;align-items:center;margin-top:45px}.integration-lead h1{font-size:clamp(40px,4.6vw,65px);line-height:1.06;font-weight:500;letter-spacing:-.05em;margin:25px 0}.integration-lead h1>span{color:#3273d1}.integration-lead p{font-size:20px;line-height:1.8;margin-bottom:30px}.goal-diagram{background:#10233e;padding:30px;border-radius:9px;color:white;box-shadow:0 25px 45px #122a4619}.goal-diagram>.eyebrow{font-size:12px;letter-spacing:.1em;color:#a9c4e9;margin-bottom:23px}.goal-diagram>div{padding:20px;border:1px solid #94b5e14a;border-radius:5px;font-size:21px;line-height:1.3}.goal-diagram small{display:block;font-size:15px;line-height:1.5;color:#bfd0e7;margin-top:8px}.goal-diagram .ai-node{background:#3273d1;border-color:#78a9ef}.goal-diagram .ai-node small{color:#e5edff}.diagram-connector{display:block;text-align:center;color:#93b9eb;font-size:23px;line-height:1.5}.ai-usecases{display:grid;grid-template-columns:1fr 1fr;gap:24px}.ai-usecases article{padding:32px;border:1px solid #d8e3f0;border-radius:8px;background:white}.ai-usecases article:nth-child(2),.ai-usecases article:nth-child(3){background:#f0f5fc}.usecase-icon{font-size:17px;display:grid;place-items:center;width:45px;height:45px;border-radius:10px;background:#dce9fc;color:#3273d1}.ai-usecases h3{font-size:30px;font-weight:500;line-height:1.2;margin:25px 0 18px}.ai-usecases p{font-size:18px;line-height:1.8}.goal-label{display:block;font-size:12px;font-weight:600;letter-spacing:.07em;color:#54739b;border-top:1px solid #d4e0ef;margin-top:25px;padding-top:18px}.integration-blueprint{background:#102943;color:white;padding:65px 0}.integration-blueprint>.wrap{display:grid;grid-template-columns:1fr 1.1fr;gap:80px}.integration-blueprint .eyebrow{color:#a7c6ef}.integration-blueprint h2{font-size:45px;margin:25px 0}.integration-blueprint p{font-size:19px;color:#bacde6;line-height:1.8}.integration-blueprint ol{list-style:none;counter-reset:step;margin:0;padding:0}.integration-blueprint li{counter-increment:step;border-top:1px solid #a1bfdf3f;padding:20px 0 20px 50px;position:relative}.integration-blueprint li:before{content:'0' counter(step);position:absolute;left:0;top:20px;color:#86b4f1;font-size:16px}.integration-blueprint strong{font-size:23px;font-weight:500;display:block;line-height:1.3}.integration-blueprint li span{display:block;color:#bcd0e9;font-size:17px;line-height:1.7;margin-top:10px}.integration-plan{display:grid;grid-template-columns:.85fr 1.15fr;gap:80px;padding-top:70px;padding-bottom:70px}.integration-plan h2{font-size:45px;margin:25px 0}.integration-plan>div>p{font-size:19px;line-height:1.8}.integration-questions details{border-top:1px solid #cbd9eb;padding:20px 0}.integration-questions summary{cursor:pointer;font-size:22px;font-weight:500;line-height:1.4;padding-right:18px}.integration-questions p{font-size:18px;line-height:1.8;margin-top:18px}
@media(max-width:1050px){.integration-lead{gap:40px}.integration-blueprint>.wrap,.integration-plan{gap:40px}.proof-feature{gap:35px}.workspace-nodes{gap:20px}.workspace-hub:before{left:-21px;width:21px}.workspace-hub:after{right:-21px;width:21px}.company-timeline>div{grid-template-columns:1fr 1fr}.case-study-page .page-hero>.wrap{gap:20px 30px}}
@media(max-width:760px){.client-quote{padding:28px 24px;width:calc(100% - 40px)}.client-quote .feedback-summary{font-size:22px}.page-testimonials .client-quote blockquote{font-size:18px}.contact-options h2{font-size:28px;font-weight:500}.proof-feature{display:flex;flex-direction:column;padding:22px;align-items:stretch;gap:25px}.proof-feature h2{font-size:33px}.proof-image img{height:240px}.outcome-list .content-panel,.process-journey .content-panel,.regional-services .content-panel{display:block;padding:28px 0}.outcome-list .content-panel h3,.process-journey .content-panel h3,.regional-services .content-panel h3{margin:18px 0;font-size:28px}.process-journey .content-panel:nth-child(even){padding:25px 20px}.workspace-map{padding:25px}.workspace-nodes{display:flex;flex-direction:column;gap:20px}.workspace-nodes>div{width:100%}.workspace-nodes .workspace-hub{padding:25px}.workspace-hub:before,.workspace-hub:after{display:none}.workspace-data{font-size:16px;line-height:2}.workspace-data>span{padding:0 5px}.change-comparison{grid-template-columns:1fr}.change-comparison>div{padding:28px}.change-comparison h3{font-size:30px}.company-timeline>div{grid-template-columns:1fr 1fr;gap:30px 20px}.company-timeline article>span{font-size:30px}.company-timeline h3{font-size:22px}.ai-distinction h2{font-size:33px}.case-study-page .page-hero>.wrap{display:block}.case-study-page .page-hero h1{margin:22px 0;font-size:40px}.case-study-page .project-cover{margin-top:30px}.case-study-page .project-cover img{max-height:280px}.case-challenge{padding:25px}.integration-lead,.integration-blueprint>.wrap,.integration-plan{display:block}.integration-lead{margin-top:28px}.integration-lead h1{font-size:43px}.integration-lead p{font-size:19px}.goal-diagram{margin-top:38px;padding:25px}.ai-usecases{grid-template-columns:1fr}.ai-usecases article{padding:27px}.ai-usecases h3{font-size:29px}.integration-blueprint{padding:45px 0}.integration-blueprint ol{margin-top:35px}.integration-blueprint h2,.integration-plan h2{font-size:36px}.integration-plan{padding-top:45px;padding-bottom:45px}.integration-questions{margin-top:30px}.integration-questions summary{font-size:21px}.page-cta:after{right:-300px}.connected-features{grid-template-columns:1fr}}
/* About page anniversary seal and original client-logo marquee. */
.page-about-us .anniversary-banner{background:#10243f;background-image:radial-gradient(ellipse at 85% 50%,#254b73,transparent 65%);color:white;padding:50px 0 65px}
.anniversary-banner>.wrap{display:grid;grid-template-columns:1.25fr .75fr;gap:70px;align-items:center}
.page-about-us .anniversary-banner h1{font-size:clamp(40px,4.8vw,68px);margin:24px 0}
.page-about-us .anniversary-banner h1 span{color:#9cc5ff}
.page-about-us .anniversary-banner p{color:#c7d6ea;font-size:21px;max-width:730px}
.page-about-us .anniversary-banner .eyebrow,.page-about-us .anniversary-banner .breadcrumb{color:#b2cdec}
.anniversary-mark{display:flex;align-items:center;justify-content:center;position:relative}
.anniversary-mark:before{content:'';position:absolute;inset:10%;background:#75adf31a;border-radius:50%;filter:blur(50px);pointer-events:none}
.anniversary-mark img{width:100%;max-width:330px;height:auto;position:relative;display:block}
.about-client-carousel{padding:55px 0 45px;background:white;overflow:hidden;border-bottom:1px solid #e2e8f1}
.carousel-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:30px;margin-bottom:30px}
.carousel-heading h2{font-size:clamp(30px,3.1vw,44px);margin-top:18px}
.carousel-heading .eyebrow{font-size:12px}
.carousel-toggle{display:inline-flex;align-items:center;gap:10px;font-size:15px;line-height:1.4;color:#3c587e;padding:11px 15px;border:1px solid #d1deef;border-radius:5px;flex-shrink:0;background:#fff;min-height:44px}
.carousel-pause-icon{font-size:18px;display:inline-grid;place-items:center;width:18px;line-height:1}
.logo-carousel-window{position:relative;width:100%;overflow:hidden}



.client-logo-row{width:100%;overflow:hidden}
.client-logo-track{display:flex;width:max-content;animation:client-marquee 56s linear infinite;will-change:transform}
.scroll-right .client-logo-track{animation-direction:reverse;animation-duration:61s}
.client-logo-group{display:flex;align-items:center;flex:0 0 auto;min-width:100vw;width:max-content}
.client-logo-cell{width:210px;min-width:210px;height:140px;flex:1 0 210px;display:flex;justify-content:center;align-items:center;padding:0 13px}
.client-logo-cell img{display:block;width:180px;height:120px;max-width:100%;object-fit:contain;filter:none;opacity:1}
.about-client-carousel.is-paused .client-logo-track,.logo-carousel-window:hover .client-logo-track{animation-play-state:paused}
@keyframes client-marquee{from{transform:translateX(0)}to{transform:translateX(-50%)}}
@media(max-width:1050px){.anniversary-banner>.wrap{gap:35px;grid-template-columns:1.2fr .8fr}.anniversary-mark img{max-width:290px}.page-about-us .anniversary-banner h1{font-size:49px}}
@media(max-width:760px){.page-about-us .anniversary-banner{padding:30px 0 40px}.anniversary-banner>.wrap{grid-template-columns:1fr;gap:30px}.page-about-us .anniversary-banner h1{font-size:40px}.page-about-us .anniversary-banner p{font-size:19px}.anniversary-mark img{max-width:245px}.about-client-carousel{padding:35px 0 25px}.carousel-heading{display:block;margin-bottom:22px}.carousel-toggle{margin-top:20px}.carousel-heading h2{font-size:32px}.client-logo-cell{width:170px;min-width:170px;flex-basis:170px;height:115px;padding:0 10px}.client-logo-cell img{width:150px;height:100px}}
@media(prefers-reduced-motion:reduce){.client-logo-track{animation:none;transform:none;display:block;width:100%;will-change:auto}.client-logo-group{flex-wrap:wrap;width:100%;min-width:0;justify-content:center}.client-logo-group[aria-hidden=true]{display:none}.client-logo-cell{flex:0 1 170px}.carousel-toggle{display:none}}
/* Shared content alignment and scrolling navigation. */
.client-quote{max-width:1320px;width:calc(100% - 112px)}
.process-journey .content-panel:nth-child(odd){padding-left:20px;padding-right:20px}
header{position:relative;top:auto}
.site-header-slot{position:relative;z-index:10}
header.header-docked{position:fixed;top:0;left:0;right:0;transform:translateY(-110%);transition:transform .3s ease;box-shadow:0 6px 24px #10233d12}
header.header-docked.header-visible{transform:translateY(0)}
@media(max-width:1050px){.client-quote{width:calc(100% - 64px)}}
@media(max-width:760px){.client-quote{width:calc(100% - 40px)}.process-journey .content-panel:nth-child(odd){padding-left:20px;padding-right:20px}}
@media(prefers-reduced-motion:reduce){header.header-docked{transition:none}}
/* About: environmental commitment. */
.green-section{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:start;background:#143b34;color:#fff;padding:55px;border-radius:10px;margin-top:15px;margin-bottom:75px;position:relative;overflow:hidden;isolation:isolate}
.green-section:before{content:'';position:absolute;width:440px;height:440px;border:1px solid #b4debf19;border-radius:50%;left:-230px;bottom:-290px;box-shadow:0 0 0 60px #b4debf07,0 0 0 120px #b4debf05;z-index:-1;pointer-events:none}
.green-intro>.eyebrow{font-size:13px;letter-spacing:.12em;color:#a2d8bb}
.green-intro h2{font-size:clamp(34px,3.5vw,49px);line-height:1.1;margin:25px 0 28px;font-weight:500}
.green-intro h2>span{color:#b2dfb7}
.green-intro>p{font-size:18px;line-height:1.85;color:#d2e5db;margin:0 0 22px}
.green-signoff{display:flex;align-items:center;gap:14px;border-top:1px solid #a5d3b92e;padding-top:24px;margin-top:32px;color:#b7ddc1;font-size:16px}
.green-signoff svg{width:31px;height:31px;flex-shrink:0}
.green-facts{display:grid;gap:25px}
.green-fact{background:#ffffff07;border:1px solid #b5ddc438;border-radius:7px;padding:28px 30px}
.green-fact-heading{display:flex;align-items:center;gap:16px;color:#b4dfc1}
.green-fact-heading svg{width:39px;height:39px;flex-shrink:0}
.green-fact-heading .eyebrow{font-size:12px;letter-spacing:.08em;line-height:1.5}
.green-fact .green-number{font-size:66px;line-height:1;letter-spacing:-.055em;color:white;font-weight:500;margin:23px 0 15px}
.green-number>span{font-size:28px;letter-spacing:-.02em;color:#b5dfc0;margin-left:3px}
.green-fact h3{font-size:24px;font-weight:500;line-height:1.25;margin:0 0 15px}
.green-fact>p:not(.green-number){font-size:17px;line-height:1.8;color:#c9dfd3;margin:0}
.green-footnote{display:block;font-size:14px;line-height:1.6;color:#a8c8b7;margin-top:17px}
@media(max-width:1050px){.green-section{gap:35px;padding:38px}.green-fact{padding:25px}.green-fact .green-number{font-size:58px}}
@media(max-width:760px){.green-section{grid-template-columns:1fr;padding:30px 24px;gap:25px;margin-top:0;margin-bottom:45px}.green-intro h2{font-size:36px}.green-intro>p{font-size:18px}.green-signoff{margin-top:25px}.green-fact{padding:25px 22px}.green-fact .green-number{font-size:61px}.green-number>span{font-size:25px}.green-fact-heading .eyebrow{font-size:12px}}
/* Text-only buttons: balanced padding without space reserved for removed arrows. */
.button{justify-content:center;gap:0}
.article-response{background:#eef4fc;border-left:3px solid #3273d1;border-radius:0 6px 6px 0;padding:25px 28px;margin:28px 0}
.article-response .eyebrow{font-size:13px;margin-bottom:18px}.article-response p:last-child{margin-bottom:0}.article-response strong{font-weight:600;color:#234a7d}
.page-php2shell .article-cover{height:auto;max-height:430px}.page-php2shell .article-cover img{display:block;aspect-ratio:2/1;object-fit:cover}
/* Detailed, individual local service pages. */
.local-hero{background:#10243f;color:white;padding:35px 0 60px}.local-hero .breadcrumb{color:#aec9ec}.local-hero-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:65px;align-items:center;margin-top:35px}.local-hero .eyebrow{font-size:13px;line-height:1.7;color:#aac9f2}.local-hero h1{font-size:clamp(40px,4.5vw,65px);font-weight:500;line-height:1.08;margin:23px 0}.local-hero h1 span{color:#9bc4fb}.local-hero p{font-size:20px;color:#c6d7ec;line-height:1.8;max-width:730px}.local-hero .button{margin-top:28px}.local-identity{border:1px solid #abc8ee32;padding:30px;background:#ffffff04;border-radius:8px}.local-identity>.eyebrow{margin-bottom:20px;font-size:12px;letter-spacing:.08em}.identity-line{display:block;font-size:23px;letter-spacing:-.025em;line-height:1.4;padding:17px 0;border-bottom:1px solid #c1d7f22b;color:#dceaff}.local-identity-foot{display:block;font-size:11px;line-height:1.8;letter-spacing:.08em;color:#9ab8de;margin-top:25px}.local-burnley-hero{background:#173b43}.local-blackburn-hero{background:#172f3e}.local-bury-hero{background:#ebf1fa;color:#17314f}.local-bury-hero p{color:#526b87}.local-bury-hero h1 span{color:#3273d1}.local-bury-hero .eyebrow,.local-bury-hero .breadcrumb{color:#466c9f}.local-bury-hero .local-identity{border-color:#c8d8ed;background:#fff8}.local-bury-hero .identity-line{color:#365d8d;border-color:#d3dfed}.local-bury-hero .local-identity-foot{color:#5b789b}.local-preston-hero{background:#163951}
.local-context{padding-top:70px;padding-bottom:65px;display:grid;grid-template-columns:.85fr 1.15fr;gap:75px;border-bottom:1px solid var(--line)}.local-context h2{font-size:41px;margin-top:22px}.local-context p,.local-footnote,.local-story-highlight p,.bury-starting-point p,.preston-development p{font-size:19px;line-height:1.85;margin-bottom:22px}.local-context p:last-child{margin-bottom:0}.local-context a,.local-footnote a{color:#2864b2;text-decoration:underline;text-underline-offset:4px}
.local-proof{padding-top:60px;padding-bottom:50px}.local-proof>.eyebrow{margin-bottom:22px}.local-client-grid{display:grid;grid-template-columns:1fr 1fr;gap:26px}.local-client-grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}.local-client{padding:25px 30px 30px;background:#f3f6fb;border:1px solid #dfe7f1;border-radius:7px;display:flex;flex-direction:column;align-items:flex-start}.local-client img{width:180px;height:120px;object-fit:contain;align-self:center;margin-bottom:15px}.local-client h3{font-size:30px;line-height:1.3;font-weight:500;margin:28px 0 32px}.local-client p{font-size:18px;line-height:1.8;margin-bottom:22px}.local-client .text-link{margin-top:auto;font-size:17px}.local-footnote{padding-top:28px;font-size:17px;max-width:950px}
.local-opportunities{padding-top:45px;padding-bottom:55px}.local-opportunities>div{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:35px;margin-top:28px}.local-opportunities article{border-top:2px solid #bfd3ef;padding-top:25px}.local-opportunities h3{font-size:27px;line-height:1.25;font-weight:500;margin-bottom:22px}.local-opportunities p{font-size:18px;line-height:1.85}.local-faq{display:grid;grid-template-columns:.75fr 1.25fr;gap:65px;padding-top:40px;padding-bottom:50px}.local-faq h2{font-size:39px;margin-top:20px}.local-faq details{padding:22px 0;border-top:1px solid #cedbec}.local-faq summary{font-size:21px;line-height:1.5;cursor:pointer;padding-right:15px}.local-faq details p{font-size:18px;line-height:1.85;margin-top:20px;color:#52657e}.local-conversation{display:flex;align-items:center;justify-content:space-between;gap:55px;background:#eef4fc;border-radius:8px;padding:35px 40px;margin-bottom:50px}.local-conversation h2{font-size:37px;margin:20px 0}.local-conversation p{font-size:18px;line-height:1.8;max-width:760px}.local-conversation .button{flex-shrink:0}.local-neighbours{padding-top:15px;padding-bottom:55px}.local-neighbours>div{display:flex;flex-wrap:wrap;gap:18px 30px;margin-top:22px}.local-neighbours a{font-size:16px;color:#2a62a9}.local-neighbours a:hover{text-decoration:underline}
.burnley-base{display:grid;grid-template-columns:.8fr 1.2fr;gap:65px;padding-top:65px;padding-bottom:30px}.local-address-panel{background:#eef4f7;border-left:3px solid #7ba69e;border-radius:0 7px 7px 0;padding:35px;align-self:start}.local-address-panel h2{font-size:38px;margin:23px 0}.local-address-panel p{font-size:20px;line-height:1.9;margin:25px 0}.local-address-panel .text-link{font-size:17px}.local-story-highlight{padding:35px 40px;background:#173b43;color:white;border-radius:8px;margin-bottom:15px}.local-story-highlight .eyebrow{color:#a5d0d5}.local-story-highlight h2{font-size:38px;margin:22px 0}.local-story-highlight p{color:#d0e1e5;max-width:1000px}.local-story-highlight .text-link{color:#a7ceff;font-size:17px}.blackburn-case{display:grid;grid-template-columns:1fr 1fr;gap:70px;padding-top:60px;padding-bottom:60px}.blackburn-case h2{font-size:40px;margin:23px 0}.blackburn-case>div>p{font-size:19px;line-height:1.85;margin-bottom:25px}.blackburn-case .text-link{font-size:18px}.local-sequence{background:#eef3fa;padding:10px 30px;border-radius:7px}.local-sequence article{padding:24px 0;border-bottom:1px solid #d5dfed}.local-sequence article:last-child{border:0}.local-sequence article>span{color:#3273d1;font-size:16px}.local-sequence h3{font-size:25px;font-weight:500;line-height:1.25;margin:13px 0}.local-sequence p{font-size:17px;line-height:1.8}
.bury-client-feature{display:grid;grid-template-columns:.7fr 1.3fr;gap:70px;padding-top:70px;padding-bottom:35px;align-items:center}.bury-client-logo{background:#f2f5fa;padding:35px;border-radius:8px;text-align:center}.bury-client-logo img{display:block;width:100%;max-width:300px;height:auto;margin:auto auto 20px}.bury-client-logo .eyebrow{font-size:12px}.bury-client-feature h2{font-size:42px;margin:23px 0}.bury-client-feature p{font-size:19px;line-height:1.85;margin-bottom:20px}.bury-starting-point{padding:40px;background:#eaf1fc;border-radius:8px;margin-bottom:35px}.bury-starting-point h2{font-size:40px;margin:22px 0}.bury-starting-point p{max-width:1000px}.bury-starting-point .text-link{font-size:18px}
.preston-experience{padding-top:65px;padding-bottom:50px;display:grid;grid-template-columns:1.2fr .8fr;gap:70px}.preston-experience h2{font-size:42px;margin:23px 0}.preston-experience>div>p{font-size:19px;line-height:1.85;margin-bottom:22px}.preston-sites{background:#173b54;color:white;border-radius:8px;padding:30px}.preston-sites>.eyebrow{color:#aecdec;font-size:12px;margin-bottom:20px}.preston-sites>div{padding:20px 0;border-top:1px solid #abc7e335}.preston-sites h3{font-size:29px;font-weight:500;margin-bottom:12px}.preston-sites p{font-size:17px;line-height:1.7;color:#bad0e6}.preston-development{display:grid;grid-template-columns:.85fr 1.15fr;gap:70px;padding-top:25px;padding-bottom:45px}.preston-development h2{font-size:40px;margin-top:22px}.preston-development .text-link{font-size:18px}.location-links p{font-size:18px;line-height:1.8;margin-bottom:22px}
@media(max-width:1050px){.local-hero-grid{gap:35px}.local-context,.burnley-base,.blackburn-case,.bury-client-feature,.preston-experience,.preston-development,.local-faq{gap:35px}.identity-line{font-size:21px}.local-client-grid.three{grid-template-columns:1fr 1fr}.local-conversation{display:block}.local-conversation .button{margin-top:25px}}
@media(max-width:760px){.local-hero{padding:25px 0 40px}.local-hero-grid,.local-context,.burnley-base,.blackburn-case,.bury-client-feature,.preston-experience,.preston-development,.local-faq{grid-template-columns:1fr;gap:28px}.local-hero-grid{margin-top:25px}.local-hero h1{font-size:40px}.local-hero p{font-size:19px}.local-identity{padding:25px}.identity-line{font-size:21px;padding:12px 0}.local-context{padding-top:45px;padding-bottom:40px}.local-context h2,.blackburn-case h2,.bury-client-feature h2,.preston-experience h2,.preston-development h2{font-size:34px}.local-context p{font-size:18px}.local-client-grid,.local-client-grid.three,.local-opportunities>div{grid-template-columns:1fr}.local-proof{padding-top:40px;padding-bottom:25px}.local-client{padding:25px}.local-client p{font-size:18px}.local-opportunities{padding-top:30px;padding-bottom:35px}.local-opportunities>div{gap:25px}.local-faq{padding-top:30px;padding-bottom:35px}.local-faq h2{font-size:34px}.local-faq summary{font-size:20px}.local-conversation{padding:28px 25px}.local-conversation h2{font-size:32px}.local-neighbours>div{display:grid;gap:15px}.burnley-base,.bury-client-feature,.preston-experience{padding-top:40px}.local-story-highlight{padding:28px 25px}.local-story-highlight h2{font-size:32px}.local-story-highlight p{font-size:18px}.blackburn-case{padding-top:40px;padding-bottom:30px}.local-sequence{padding:5px 25px}.bury-starting-point{padding:28px 25px}.bury-starting-point h2{font-size:33px}.bury-starting-point p{font-size:18px}.preston-sites{padding:25px}.preston-development{padding-bottom:25px}.local-address-panel{padding:28px}.local-address-panel h2{font-size:33px}.local-proof .section-head h2{font-size:33px}.local-hero .eyebrow{font-size:12px}.local-neighbours{padding-bottom:40px}}
/* Expanded regional coverage and nationwide feature. */
.local-nelson-hero{background:#193c45}.local-oldham-hero{background:#183b4f}.local-bolton-hero{background:#1c344b}.local-leeds-hero{background:#172b48}
.local-coverage-link{display:inline-block;font-size:17px;margin-top:25px}
.nelson-project{display:grid;grid-template-columns:1fr 1fr;gap:65px;padding-top:60px;padding-bottom:45px}.nelson-project h2{font-size:41px;margin:22px 0}.nelson-project>div>p{font-size:19px;line-height:1.85;margin-bottom:22px}.nelson-project .text-link{font-size:18px}
.oldham-workflow{background:#173c4a;border-radius:8px;color:white;padding:40px;display:grid;grid-template-columns:1fr 1fr;gap:65px;margin-top:50px;margin-bottom:15px}.oldham-workflow .eyebrow{color:#a4cbdc}.oldham-workflow h2{font-size:40px;margin:22px 0}.oldham-workflow p{font-size:18px;line-height:1.85;color:#c2dbe4}.oldham-workflow ol{counter-reset:local-step;list-style:none;padding:0;margin:0}.oldham-workflow li{counter-increment:local-step;padding:22px 0 22px 48px;border-top:1px solid #c0dbea3a;position:relative}.oldham-workflow li:before{content:'0' counter(local-step);position:absolute;left:0;top:25px;font-size:16px;color:#a6ceeb}.oldham-workflow strong{display:block;font-size:27px;font-weight:500}.oldham-workflow li span{display:block;font-size:17px;line-height:1.8;color:#bdd5e2;margin-top:10px}
.bolton-chain{padding-top:55px;padding-bottom:30px}.bolton-chain>h2{font-size:41px;margin:22px 0 35px}.bolton-chain>div{display:grid;grid-template-columns:repeat(3,1fr);gap:25px}.bolton-chain article{background:#eff4fb;padding:30px;border-radius:7px;border-top:3px solid #9bbce9}.bolton-chain article>span{font-size:18px;color:#3273d1}.bolton-chain h3{font-size:27px;font-weight:500;line-height:1.25;margin:22px 0 18px}.bolton-chain article p{font-size:18px;line-height:1.85}
.leeds-focus{padding-top:60px;padding-bottom:35px;display:grid;grid-template-columns:1.1fr .9fr;gap:65px}.leeds-focus h2{font-size:41px;margin:23px 0}.leeds-focus>div>p{font-size:19px;line-height:1.85;margin-bottom:22px}.leeds-focus .text-link{font-size:18px}.leeds-focus-points{padding:10px 30px;background:#edf3fb;border-radius:8px}.leeds-focus-points article{padding:22px 0;border-bottom:1px solid #d2deee}.leeds-focus-points article:last-child{border:0}.leeds-focus-points h3{font-size:27px;font-weight:500;margin-bottom:16px}.leeds-focus-points p{font-size:18px;line-height:1.8}
.coverage-feature{padding:65px 0;background:#173d73;color:white;position:relative;overflow:hidden;isolation:isolate;margin-bottom:60px;scroll-margin-top:110px}.coverage-feature:after{content:'';position:absolute;width:600px;height:600px;border:1px solid #a8c7f02b;border-radius:50%;right:-150px;top:-250px;box-shadow:0 0 0 80px #86b5f308,0 0 0 160px #86b5f305;z-index:-1;pointer-events:none}.coverage-feature>.wrap{display:grid;grid-template-columns:1.2fr .8fr;gap:85px;align-items:center}.coverage-feature .eyebrow{color:#b8d2f3;font-size:13px}.coverage-feature h2{font-size:clamp(38px,4.4vw,60px);line-height:1.08;margin:25px 0}.coverage-feature h2 span{color:#a6cbff}.coverage-feature p{font-size:21px;line-height:1.85;color:#d0dff2;margin-bottom:28px;max-width:760px}.coverage-reach{border-left:1px solid #b5d1f34f;padding-left:40px}.coverage-reach>span{display:block;font-size:32px;line-height:1.4;letter-spacing:-.025em;padding:14px 0;border-bottom:1px solid #bdd5f331}.coverage-reach>p{font-size:17px;line-height:1.8;margin:24px 0 0;color:#b9cfeb}
@media(max-width:1050px){.nelson-project,.oldham-workflow,.leeds-focus{gap:35px}.coverage-feature>.wrap{gap:40px}.coverage-reach{padding-left:30px}}
@media(max-width:760px){.nelson-project,.oldham-workflow,.leeds-focus{grid-template-columns:1fr;gap:28px}.nelson-project,.leeds-focus{padding-top:40px;padding-bottom:25px}.nelson-project h2,.oldham-workflow h2,.leeds-focus h2,.bolton-chain>h2{font-size:34px}.oldham-workflow{padding:28px 25px;margin-top:35px}.bolton-chain{padding-top:40px}.bolton-chain>div{grid-template-columns:1fr}.bolton-chain article{padding:25px}.leeds-focus-points{padding:5px 25px}.coverage-feature{padding:45px 0;margin-bottom:40px}.coverage-feature>.wrap{grid-template-columns:1fr;gap:35px}.coverage-feature h2{font-size:41px}.coverage-feature p{font-size:19px}.coverage-reach{padding-left:0;border-left:0}.coverage-reach>span{font-size:27px;padding:12px 0}.coverage-reach>p{font-size:17px}}
.page-locations .location-links{grid-template-columns:repeat(3,minmax(0,1fr))}.page-locations .coverage-feature{margin-bottom:0}
@media(max-width:1050px){.page-locations .location-links{grid-template-columns:1fr 1fr}}
@media(max-width:760px){.page-locations .location-links{grid-template-columns:1fr}}
/* Preserve the original Lowry artwork while blending its white matte into the page. */
img.lowry-logo{mix-blend-mode:multiply}
/* Mirror the exact breakpoints where the primary navigation and contact button disappear. */
#mega .mega-about-link{display:block}
.mobile-contact-bar{display:none}
@media(max-width:1200px){#mega .mega-about-link{display:block}}
@media(max-width:760px){
 body{padding-bottom:calc(72px + env(safe-area-inset-bottom,0px))}
 .mobile-contact-bar{display:flex;position:fixed;left:0;right:0;bottom:0;z-index:20;padding:12px 20px calc(12px + env(safe-area-inset-bottom,0px));background:#fff;border-top:1px solid #d7e1ef;box-shadow:0 -5px 22px #1328420d}
 .mobile-contact-bar>.button{width:100%;min-height:48px;padding:10px 20px;font-size:18px}
 #mega{max-height:calc(100dvh - 78px - 72px - env(safe-area-inset-bottom,0px))}
 html{scroll-padding-bottom:calc(85px + env(safe-area-inset-bottom,0px))}
}

/* Client stories: generous typography, original client identities and varied panels. */
.page-testimonials .page-hero{position:relative;overflow:hidden;padding-bottom:85px}
.page-testimonials .page-hero>.wrap{position:relative}
.page-testimonials .page-hero h1{max-width:780px}
.page-testimonials .testimonials-intro{max-width:650px;font-size:21px;margin-top:25px}
.testimonials-seal{position:absolute;right:0;top:50px;width:270px;height:270px;border:1px solid #b8d4ff44;border-radius:50%;display:flex;flex-direction:column;justify-content:center;align-items:center;box-shadow:0 0 0 24px #a7cfff08,0 0 0 50px #a7cfff05}
.testimonials-seal>span{font-family:Georgia,serif;font-size:130px;line-height:.7;color:#9cc7ff;margin-top:28px}
.testimonials-seal p{font-size:18px;text-align:center;color:#d6e5fa;line-height:1.5;margin-top:10px}
.testimonial-story{display:grid;grid-template-columns:minmax(260px,.85fr) minmax(0,1.7fr);gap:65px;margin-top:70px;margin-bottom:70px;padding-top:0;padding-bottom:0;border:1px solid #dce5f1;border-radius:12px;overflow:hidden;background:#fff}
.testimonial-identity{padding:42px 0 42px 40px;align-self:start}
.testimonial-identity .eyebrow{font-size:14px;color:#426da4;letter-spacing:.12em}
.testimonial-identity h2{font-size:clamp(29px,2.8vw,39px);font-weight:500;line-height:1.16;margin:24px 0 30px}
.testimonial-logo{background:#fff;display:flex;align-items:center;justify-content:center;min-height:105px;padding:22px;border:1px solid #e1e7ef;border-radius:5px;max-width:250px;margin-bottom:28px}
.testimonial-logo img{width:auto;max-width:100%;height:auto;max-height:66px;object-fit:contain}
.testimonial-identity .text-link{font-size:18px;color:#275ca4;display:inline-flex;align-items:center;gap:12px}
.testimonial-account{padding:38px 44px 44px;background:#f2f6fc;position:relative}
.testimonial-mark{display:block;font-family:Georgia,serif;color:#73a3e5;font-size:90px;line-height:.8;height:57px}
.testimonial-account blockquote{font-size:20px;line-height:1.85;letter-spacing:0;margin:16px 0 28px;color:#263c59}
.testimonial-account cite{font-size:17px;font-style:normal;color:#426387;display:block;border-top:1px solid #cddaea;padding-top:22px}
.testimonial-story-2{background:#173d73;border-color:#173d73}
.testimonial-story-2 .testimonial-identity{color:#fff}
.testimonial-story-2 .testimonial-identity .eyebrow,.testimonial-story-2 .testimonial-identity .text-link{color:#c1daff}
.testimonial-story-2 .testimonial-account{background:#edf3fb}
.testimonial-story-3 .testimonial-account{background:#edf5f3}
.testimonial-story-3 .testimonial-mark{color:#5d9e91}
@media(max-width:1100px){.testimonials-seal{width:210px;height:210px;top:65px}.page-testimonials .testimonials-intro{max-width:60%}.testimonial-story{gap:30px;grid-template-columns:minmax(240px,.8fr) minmax(0,1.5fr)}.testimonial-identity{padding-left:28px}.testimonial-account{padding:35px 30px}}
@media(max-width:760px){.page-testimonials .page-hero{padding-bottom:45px}.testimonials-seal{display:none}.page-testimonials .testimonials-intro{max-width:100%;font-size:19px}.testimonial-story{grid-template-columns:1fr;gap:0;margin-top:35px;margin-bottom:35px}.testimonial-identity{padding:28px}.testimonial-identity h2{font-size:32px;max-width:480px;margin:20px 0 24px}.testimonial-logo{min-height:90px;margin-bottom:22px}.testimonial-account{padding:28px}.testimonial-account blockquote{font-size:19px;line-height:1.8}.testimonial-account cite{font-size:17px}}
/* Software systems hosting */
.hosting-hero>.wrap{display:grid;grid-template-columns:1.25fr 1fr;gap:75px;align-items:center}.hosting-hero h1{font-size:clamp(40px,4.5vw,64px)}.hosting-hero .button{margin-top:30px}.hosting-platform{padding:38px 30px 25px;border:1px solid #a3c9ff40;border-radius:16px;background:linear-gradient(145deg,#a0c8ff13,#a0c8ff03);box-shadow:0 25px 65px #0002}.hosting-platform>.eyebrow{text-align:center;margin:0 0 28px;color:#c0d8fa;font-size:14px}.hosting-stack{display:grid;gap:13px}.hosting-stack>div{padding:18px 20px;background:linear-gradient(110deg,#2c4d7b,#203b61);border:1px solid #87b1eb66;border-radius:6px;display:grid;grid-template-columns:1fr repeat(3,5px);align-items:center;gap:6px 10px;box-shadow:0 7px 14px #0002}.hosting-stack>div>span{font-size:22px;grid-column:1;line-height:1.4}.hosting-stack small{grid-row:2;grid-column:1/-1;font-size:16px;color:#c7dcf9}.hosting-stack i{height:5px;width:5px;border-radius:50%;background:#b6e9d3;grid-row:1}.hosting-platform>p{font-size:16px;text-align:center;color:#c2d8f5;margin-top:24px;line-height:1.5}.hosting-platform>p>span{color:#a9dfc8;margin-right:7px}.hosting-intro{padding-top:75px;padding-bottom:45px;display:grid;grid-template-columns:1fr 1fr;gap:20px 80px}.hosting-intro>.eyebrow{grid-column:1/-1}.hosting-intro h2,.hosting-connected h2{font-size:clamp(33px,3.4vw,47px);font-weight:500;line-height:1.15}.hosting-intro p,.hosting-connected p{font-size:20px;line-height:1.85}.hosting-features{display:grid;grid-template-columns:1fr 1fr;gap:24px;padding-bottom:80px}.hosting-features article{background:#f2f6fc;border:1px solid #dce6f3;border-radius:8px;padding:35px 38px}.hosting-feature-number{font-size:14px;letter-spacing:.12em;color:#416da9}.hosting-features h2{font-size:31px;font-weight:500;margin:23px 0 17px}.hosting-features p{font-size:19px;line-height:1.85}.hosting-renewable{background:#eaf3ef;padding:65px 0;color:#1f4c40}.hosting-renewable>.wrap{display:grid;grid-template-columns:.85fr 1.3fr;gap:100px;align-items:center}.hosting-energy-stat{padding:30px 0;border-right:1px solid #739e8f55}.hosting-energy-stat>span{font-size:clamp(85px,10vw,142px);line-height:1;font-weight:500;letter-spacing:-.065em}.hosting-energy-stat>span>span{font-size:.42em;letter-spacing:-.04em;margin-left:4px}.hosting-energy-stat>p{font-size:22px;color:#436e60;margin-top:15px}.hosting-renewable h2{font-size:clamp(33px,3.5vw,47px);font-weight:500;margin:24px 0}.hosting-renewable p{font-size:20px;line-height:1.8;color:#42675b}.hosting-renewable .text-link{font-size:18px;display:inline-block;margin-top:25px}.hosting-connected{display:grid;grid-template-columns:1fr 1fr;gap:80px;padding-top:75px;padding-bottom:75px}.hosting-connected h2{margin-top:24px}.hosting-connected .related-links{margin-top:25px}
@media(max-width:1050px){.hosting-hero>.wrap{gap:35px;grid-template-columns:1.15fr 1fr}.hosting-platform{padding:28px 20px 22px}.hosting-intro,.hosting-connected{gap:30px}.hosting-renewable>.wrap{gap:45px}.hosting-features article{padding:30px}}
@media(max-width:760px){.hosting-hero>.wrap,.hosting-intro,.hosting-features,.hosting-renewable>.wrap,.hosting-connected{grid-template-columns:1fr}.hosting-hero>.wrap{gap:38px}.hosting-hero h1{font-size:40px}.hosting-platform{padding:28px 22px}.hosting-intro{padding-top:45px;padding-bottom:30px;gap:24px}.hosting-intro p,.hosting-connected p,.hosting-renewable p{font-size:19px}.hosting-features{gap:18px;padding-bottom:45px}.hosting-features article{padding:28px}.hosting-features h2{font-size:28px}.hosting-renewable{padding:40px 0}.hosting-renewable>.wrap{gap:30px}.hosting-energy-stat{border-right:0;border-bottom:1px solid #739e8f55;padding:0 0 30px}.hosting-energy-stat>span{font-size:95px}.hosting-connected{padding-top:45px;padding-bottom:45px;gap:25px}}
.hosting-stack>div>span{grid-row:1}.hosting-stack i:nth-of-type(1){grid-column:2}.hosting-stack i:nth-of-type(2){grid-column:3}.hosting-stack i:nth-of-type(3){grid-column:4}

/* Secure software access and encrypted browser connections. */
.hosting-security{padding-bottom:80px}.hosting-security-heading{display:grid;grid-template-columns:1fr 1fr;gap:22px 80px;margin-bottom:35px}.hosting-security-heading>.eyebrow{grid-column:1/-1}.hosting-security-heading h2{font-size:clamp(33px,3.4vw,47px);font-weight:500;line-height:1.15}.hosting-security-heading p{font-size:20px;line-height:1.85}.hosting-security-cards{display:grid;grid-template-columns:1fr 1.4fr;gap:24px}.hosting-security-cards article{padding:35px 38px;border:1px solid #dce6f3;border-radius:8px;background:#f7f9fd}.hosting-security-cards h3{font-size:30px;line-height:1.2;font-weight:500;margin:22px 0 18px}.hosting-security-cards p{font-size:19px;line-height:1.85}.hosting-security-cards p+p{margin-top:18px}.hosting-secure-connection{margin-top:24px;background:#163861;border-radius:8px;padding:30px 38px;display:grid;grid-template-columns:1fr 1.5fr 1fr;align-items:center;gap:25px;color:#fff;text-align:center}.hosting-secure-connection>span{font-size:22px}.hosting-secure-connection>div{border-left:1px solid #b4d4ff55;border-right:1px solid #b4d4ff55;padding:0 20px}.hosting-secure-connection>div>span{display:block;font-size:38px;line-height:1;color:#a9ceff;margin-bottom:8px}.hosting-secure-connection strong{display:block;font-size:18px;font-weight:500}.hosting-secure-connection small{display:block;font-size:16px;color:#c7daf3;margin-top:5px}
@media(max-width:1050px){.hosting-security-heading{gap:25px 35px}.hosting-security-cards article{padding:30px}.hosting-secure-connection{padding:28px;gap:18px}}
@media(max-width:760px){.hosting-security{padding-bottom:45px}.hosting-security-heading,.hosting-security-cards{grid-template-columns:1fr;gap:24px}.hosting-security-heading p{font-size:19px}.hosting-security-cards article{padding:28px}.hosting-security-cards h3{font-size:28px}.hosting-secure-connection{grid-template-columns:1fr;gap:18px;padding:28px}.hosting-secure-connection>div{border-left:0;border-right:0;border-top:1px solid #b4d4ff55;border-bottom:1px solid #b4d4ff55;padding:20px 0}}

/* Keep decorative status dots centred with their labels. */
.home-page .art-bottom{display:flex;justify-content:center;align-items:center;gap:8px;line-height:1.5;padding:0 15px}
.home-page .art-bottom .pulse{margin:0;flex:0 0 4px}
/* Reserve the same label width for Menu and Close so the contact button stays still. */
#menu-toggle .menu-label{display:inline-block;flex:0 0 3em;width:3em;text-align:left}
.page-contact-us .page-hero>.wrap{display:grid;grid-template-columns:1.4fr 1fr;gap:60px;align-items:center}
.page-contact-us .page-hero h1{font-size:clamp(39px,4.6vw,64px)}
.contact-conversation{position:relative;text-align:center;padding-top:20px}
.contact-conversation svg{width:100%;max-width:420px;display:block;margin:0 auto}
.contact-conversation>span{display:block;font-size:38px;line-height:1.2;letter-spacing:-.04em;font-weight:500;margin-top:5px;color:#fff}
.contact-conversation>p{font-size:18px!important;line-height:1.6;margin:14px auto 0;max-width:320px;color:#c5d8f4}
@media(max-width:1050px){.page-contact-us .page-hero>.wrap{gap:25px;grid-template-columns:1.4fr 1fr}.contact-conversation>span{font-size:33px}}
@media(max-width:760px){.page-contact-us .page-hero>.wrap{grid-template-columns:1fr;gap:25px}.page-contact-us .page-hero h1{font-size:40px}.contact-conversation{padding-top:0;max-width:320px;width:100%;margin:auto}.contact-conversation svg{max-width:290px}.contact-conversation>span{font-size:32px}.contact-conversation>p{font-size:18px!important;margin-top:10px}}
/* Bespoke software: a fuller service story, scoped to this page. */
.page-software-development .service-hero{padding-bottom:0}.page-software-development .service-hero>.wrap:first-child{display:grid;grid-template-columns:1.25fr 1fr;gap:65px;align-items:center;padding-bottom:55px}.page-software-development .service-hero h1{font-size:clamp(42px,4.65vw,66px)}.development-actions{display:flex;gap:25px;align-items:center;margin-top:30px;flex-wrap:wrap}.development-actions>a:last-child{font-size:18px;color:#c7dbf7}.development-blueprint{border:1px solid #9bbff348;border-radius:12px;background:linear-gradient(145deg,#32588755,#10223955);padding:30px;color:#dceaff;box-shadow:0 20px 50px #0002}.development-blueprint>.eyebrow{font-size:14px;color:#c1d8f8;margin:0 0 26px}.blueprint-inputs{display:flex;gap:9px;justify-content:center}.blueprint-inputs>span{border:1px solid #98bdeb55;background:#192c48;padding:10px 12px;border-radius:4px;font-size:16px;flex:1;text-align:center}.blueprint-core{position:relative;margin:27px 0;padding:25px 15px;text-align:center;border:1px solid #9ac3ff88;border-radius:7px;background:#214d88;box-shadow:0 12px 30px #0002}.blueprint-core:before,.blueprint-core:after{content:'';width:1px;height:28px;background:#87b5f3;position:absolute;left:50%}.blueprint-core:before{top:-28px}.blueprint-core:after{bottom:-28px}.blueprint-symbol{display:block;font-size:32px;line-height:1.2;color:#a8ceff;margin-bottom:10px}.blueprint-core strong{font-size:25px;font-weight:500;letter-spacing:-.025em}.page-software-development .blueprint-core p{font-size:16px;color:#c4d9f5;line-height:1.5;margin:8px 0 0}.blueprint-outputs{display:flex;gap:8px}.blueprint-outputs>span{flex:1;font-size:15px;line-height:1.5;background:#b3d6ff15;padding:12px 7px;border-radius:4px;text-align:center}.development-blueprint>small{display:block;font-size:15px;color:#a9c4e8;text-align:center;margin-top:23px}.development-proofline{display:grid;grid-template-columns:repeat(3,1fr);gap:35px;border-top:1px solid #a2c5f333;padding-top:25px;padding-bottom:28px;color:#a9bfdd;font-size:16px}.development-proofline b{display:block;color:#e4efff;font-size:18px;font-weight:500;margin-bottom:3px}.page-software-development .software-overview{padding-top:65px;padding-bottom:45px}.software-overview>.eyebrow{margin-bottom:25px}.page-software-development .software-overview .section-head{display:grid;grid-template-columns:1fr 1fr;gap:75px;margin-bottom:35px}.page-software-development .software-overview .section-head p{max-width:none;font-size:20px}.page-software-development .software-overview .outcome-list{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;border:0}.page-software-development .outcome-list .content-panel{display:block;padding:30px;background:#f2f6fc;border:1px solid #dce6f3;border-radius:8px}.page-software-development .outcome-list .panel-number{font-size:17px;display:grid;place-items:center;width:42px;height:42px;border:1px solid #b5cef0;border-radius:50%;color:#3273d1}.page-software-development .outcome-list h3{font-size:28px;font-weight:500;margin:25px 0 17px;line-height:1.18}.page-software-development .outcome-list p{font-size:19px;line-height:1.85}.page-software-development .software-overview>.related-links{margin-top:28px}.page-software-development .proof-feature{margin-top:10px;margin-bottom:65px;padding:35px;background:#eaf1fb;border:1px solid #cedef4;border-radius:10px;gap:55px}.page-software-development .proof-feature h2{font-size:clamp(34px,3.5vw,48px)}.page-software-development .proof-image{border-radius:6px;overflow:hidden}.development-journey{background:#112945;color:#fff;padding:65px 0}.development-section-head{display:flex;align-items:end;justify-content:space-between;gap:45px;margin-bottom:40px}.development-section-head .eyebrow{color:#abcaf3;margin-bottom:23px}.development-section-head h2{font-size:clamp(34px,3.5vw,48px)}.development-section-head .text-link{color:#b4d4ff;font-size:18px;white-space:nowrap}.development-journey ol{list-style:none;display:grid;grid-template-columns:repeat(4,1fr);gap:32px;margin:0;padding:0}.development-journey li{padding-top:25px;border-top:1px solid #8eb9ee66}.development-journey li>span{font-size:18px;color:#a6caff}.development-journey h3{font-size:27px;font-weight:500;margin:22px 0 18px}.development-journey p{font-size:19px;line-height:1.8;color:#c2d2e7}.development-next{display:grid;grid-template-columns:1.2fr 1fr;gap:85px;padding-top:70px;padding-bottom:35px}.development-next h2{font-size:clamp(34px,3.5vw,48px);margin:24px 0}.development-next p{font-size:20px;line-height:1.85}.development-next aside{background:#edf4f1;padding:35px;border-radius:8px;border:1px solid #d1e2db}.development-next aside h3{font-size:32px;font-weight:500;margin:23px 0 20px}.development-next aside p{font-size:19px}.development-next aside .text-link{display:block;font-size:18px;margin-top:18px}.development-next>.related-links{margin-top:25px}
@media(max-width:1100px){.page-software-development .service-hero>.wrap:first-child{gap:30px}.development-blueprint{padding:25px}.blueprint-inputs>span{padding:9px 6px;font-size:15px}.blueprint-outputs{flex-direction:column}.blueprint-outputs>span{padding:7px}.development-next{gap:35px}.development-journey ol{grid-template-columns:1fr 1fr;gap:30px 40px}.page-software-development .software-overview .section-head{gap:35px}.page-software-development .outcome-list .content-panel{padding:25px}.page-software-development .proof-feature{gap:30px}}
@media(max-width:760px){.page-software-development .service-hero>.wrap:first-child,.page-software-development .software-overview .section-head,.page-software-development .software-overview .outcome-list,.development-next{grid-template-columns:1fr}.page-software-development .service-hero>.wrap:first-child{padding-bottom:30px;gap:35px}.page-software-development .service-hero h1{font-size:40px}.development-actions{gap:18px}.development-proofline{grid-template-columns:1fr;gap:18px;padding-top:25px;padding-bottom:25px}.blueprint-outputs{flex-direction:row}.blueprint-outputs>span{font-size:14px;padding:10px 5px}.development-blueprint{padding:25px 20px}.blueprint-inputs>span{font-size:15px}.page-software-development .software-overview{padding-top:40px;padding-bottom:30px}.page-software-development .software-overview .section-head{gap:23px}.page-software-development .software-overview .section-head p{font-size:19px}.page-software-development .outcome-list .content-panel{padding:28px}.page-software-development .outcome-list h3{margin:22px 0 17px}.page-software-development .proof-feature{padding:24px;margin-top:0;margin-bottom:40px}.development-journey{padding:45px 0}.development-section-head{display:block;margin-bottom:30px}.development-section-head .text-link{display:inline-block;margin-top:25px;white-space:normal}.development-journey ol{grid-template-columns:1fr;gap:28px}.development-journey h3{margin:15px 0}.development-next{padding-top:45px;padding-bottom:10px;gap:30px}.development-next p{font-size:19px}.development-next aside{padding:28px}}

/* Contact icons and compact mobile navigation. */
.header-right>.button{justify-content:center;gap:10px}
.chat-icon{width:21px;height:21px;flex:0 0 21px;display:block}
@media(max-width:760px){
 header.header-docked,header.header-docked.header-visible{position:relative;top:auto;left:auto;right:auto;transform:none;transition:none;box-shadow:none}
 .mobile-contact-bar{align-items:center;gap:12px;padding-left:16px;padding-right:16px}
 .mobile-footer-brand{display:flex;flex:0 0 48px;width:48px;height:48px;align-items:center;justify-content:center}
 .mobile-footer-brand img{display:block;width:48px;height:48px}
 .mobile-contact-bar>.button{width:auto;flex:1;min-width:0;justify-content:center;gap:10px;padding:10px 12px;white-space:nowrap}
 .back-to-top{display:flex;flex:0 0 48px;width:48px;min-height:48px;align-items:center;justify-content:center;flex-direction:column;padding:3px 0;gap:1px;color:#244d85;border:1px solid #d7e1ef;border-radius:5px;background:#f4f7fc}
 .back-to-top svg{height:23px;width:23px;display:block}
 .back-to-top span{font-size:13px;line-height:1.2}
 .back-to-top:hover{background:#e5eefb}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
/* Software aftercare: continuing the relationship after launch. */
.page-support .page-hero>.wrap{display:grid;grid-template-columns:1.3fr 1fr;gap:70px;align-items:center}.page-support .page-hero h1{font-size:clamp(40px,4.4vw,62px)}.aftercare-hero-copy>.button{margin-top:30px}.aftercare-visual{padding:32px;border:1px solid #9cc5ff44;border-radius:12px;background:linear-gradient(145deg,#426b9d44,#10223844)}.aftercare-visual>.eyebrow{font-size:14px;color:#c6ddff;margin:0 0 30px}.aftercare-system{text-align:center;padding:25px 18px;background:#285388;border:1px solid #9dc7ff88;border-radius:7px}.aftercare-system>span{display:block;font-size:35px;color:#a6ceff;line-height:1.2;margin-bottom:12px}.aftercare-system strong{display:block;font-size:25px;font-weight:500;letter-spacing:-.025em}.aftercare-system small{font-size:16px;color:#d0e1f7;display:block;margin-top:8px}.aftercare-cycle{display:flex;gap:10px;margin-top:25px;position:relative}.aftercare-cycle:before{content:'';height:25px;width:1px;position:absolute;left:50%;top:-25px;background:#9dc7ff88}.aftercare-cycle>span{flex:1;border:1px solid #95b6e15c;border-radius:4px;text-align:center;padding:12px 5px;font-size:17px;color:#d1e3fa}.page-support .aftercare-visual>p{font-size:20px;color:#c0d7f6;text-align:center;margin-top:25px;line-height:1.5}.aftercare-intro>.section-head{display:grid;grid-template-columns:1fr 1fr;gap:75px;align-items:start}.aftercare-intro>.section-head p{font-size:20px;max-width:none}.aftercare-intro .content-grid{grid-template-columns:repeat(3,1fr);gap:22px}.aftercare-intro .content-panel{padding:30px;border:1px solid #dce6f3;background:#f2f6fc;border-radius:8px}.aftercare-intro .panel-number{color:#3273d1;font-size:17px}.aftercare-intro h3{font-size:28px;line-height:1.2;font-weight:500;margin:24px 0 18px}.aftercare-intro .content-panel p{font-size:19px;line-height:1.85}.aftercare-working{background:#163552;color:#fff;padding:65px 0}.aftercare-working>.wrap{display:grid;grid-template-columns:1fr 1.2fr;gap:85px}.aftercare-working .eyebrow{color:#abcaf3}.aftercare-working h2,.aftercare-example h2,.aftercare-connected h2{font-size:clamp(34px,3.4vw,47px);font-weight:500;margin:24px 0}.aftercare-working p{font-size:19px;line-height:1.85;color:#c2d4e9}.aftercare-working .text-link{display:inline-block;font-size:18px;color:#b5d7ff;margin-top:25px}.aftercare-working ol{list-style:none;padding:0;margin:0}.aftercare-working li{display:flex;gap:25px;border-top:1px solid #a0c7f340;padding:25px 0}.aftercare-working li:first-child{padding-top:0;border-top:0}.aftercare-working li:last-child{padding-bottom:0}.aftercare-working li>span{font-size:18px;color:#b6d7ff;border:1px solid #a0c7f355;border-radius:50%;display:grid;place-items:center;width:43px;height:43px;flex:0 0 43px}.aftercare-working h3{font-size:27px;font-weight:500;line-height:1.25;margin:5px 0 15px}.aftercare-example{display:grid;grid-template-columns:.8fr 1.3fr;gap:75px;align-items:center;padding-top:65px;padding-bottom:65px;border-bottom:1px solid #dce5f1}.aftercare-example-brand{background:#edf3fc;border:1px solid #d6e3f4;border-radius:8px;padding:45px;min-height:255px;display:flex;align-items:center;justify-content:center}.aftercare-example-brand img{max-width:100%;width:300px;height:auto;mix-blend-mode:multiply}.aftercare-example p,.aftercare-connected p{font-size:20px;line-height:1.85}.aftercare-example .text-link{display:inline-block;margin-top:25px;font-size:18px}.aftercare-connected{display:grid;grid-template-columns:1fr 1fr;gap:85px;padding-top:65px;padding-bottom:25px}.aftercare-links{display:grid;gap:20px}.aftercare-links>a{padding:28px 30px;border:1px solid #d9e5df;background:#eef5f1;border-radius:7px}.aftercare-links h3{font-size:28px;font-weight:500;line-height:1.2;margin-bottom:15px}.aftercare-links p{font-size:19px}.aftercare-links>a:hover{border-color:#8ab39e}
@media(min-width:761px){#mega{max-height:calc(100dvh - 100px);overflow-y:auto}}
@media(max-width:1050px){.page-support .page-hero>.wrap,.aftercare-working>.wrap,.aftercare-example,.aftercare-connected{gap:35px}.aftercare-intro>.section-head{gap:35px}.aftercare-visual{padding:25px}.aftercare-intro .content-panel{padding:25px}.aftercare-example-brand{padding:25px}}
@media(max-width:760px){.page-support .page-hero>.wrap,.aftercare-intro>.section-head,.aftercare-intro .content-grid,.aftercare-working>.wrap,.aftercare-example,.aftercare-connected{grid-template-columns:1fr}.page-support .page-hero>.wrap{gap:35px}.page-support .page-hero h1{font-size:40px}.aftercare-intro>.section-head{gap:25px}.aftercare-intro>.section-head p{font-size:19px}.aftercare-intro .content-panel{padding:28px}.aftercare-working{padding:45px 0}.aftercare-working>.wrap{gap:35px}.aftercare-working li{gap:18px}.aftercare-working h2,.aftercare-example h2,.aftercare-connected h2{font-size:34px}.aftercare-example{padding-top:40px;padding-bottom:40px;gap:30px}.aftercare-example-brand{min-height:180px}.aftercare-example-brand img{width:250px}.aftercare-example p,.aftercare-connected p{font-size:19px}.aftercare-connected{padding-top:40px;padding-bottom:10px;gap:30px}.aftercare-links>a{padding:27px}}

.page-new-website .article-cover{height:auto}.page-new-website .article-cover img{display:block;width:100%;height:auto;max-height:none;object-fit:contain;border:1px solid #dce5f1;border-radius:7px}

/* Homepage anniversary: an addition celebrating 30 years, with existing sections untouched. */
.home-anniversary{position:relative;isolation:isolate;overflow:hidden;background:#123451;color:#fff;padding:65px 0}
.home-anniversary:after{content:'';position:absolute;right:-160px;top:-240px;width:640px;height:640px;border:1px solid #a6ceff24;border-radius:50%;box-shadow:0 0 0 65px #9fc8ff07,0 0 0 130px #9fc8ff05;z-index:-1;pointer-events:none}
.home-anniversary-inner{display:grid;grid-template-columns:.65fr 1.35fr;gap:85px;align-items:center}
.home-anniversary-badge{display:flex;justify-content:center;align-items:center;position:relative}
.home-anniversary-badge img{display:block;width:240px;max-width:100%;height:auto}
.home-anniversary-copy>.eyebrow{font-size:14px;color:#b7d4f7}
.home-anniversary-copy h2{font-size:clamp(36px,3.8vw,54px);line-height:1.12;margin:22px 0 24px;font-weight:500}
.home-anniversary-copy h2>span{color:#a3cbff}
.home-anniversary-copy p{font-size:20px;line-height:1.8;color:#cedef0;max-width:760px}
.home-anniversary-copy p+p{margin-top:16px}
.home-anniversary-copy>.text-link{display:inline-block;font-size:18px;color:#c3dfff;margin-top:25px}
.home-anniversary-copy>.text-link:hover{text-decoration:underline;text-underline-offset:5px}
@media(max-width:1050px){.home-anniversary-inner{gap:45px;grid-template-columns:.7fr 1.3fr}.home-anniversary-badge img{width:220px}}
@media(max-width:760px){.home-anniversary{padding:40px 0 45px}.home-anniversary-inner{grid-template-columns:1fr;gap:28px}.home-anniversary-badge img{width:180px}.home-anniversary-copy h2{font-size:36px;margin-top:20px}.home-anniversary-copy p{font-size:19px}.home-anniversary-copy>.eyebrow{font-size:13px}}
