/* A single, confident identity across the agency. Keep this after page styles. */
@font-face{font-family:'Space Grotesk';src:url('/fonts/SpaceGrotesk-variable.woff2') format('woff2');font-style:normal;font-weight:300 700;font-display:swap}
:root{--ink:#211239;--muted:#655e76;--primary:#6c37d9;--primary-dark:#5322b6;--pale:#f1eaff;--line:#ded1f4;--mw-action:#6230d0;--mw-action-hover:#4d20ad;--mw-action-focus:#6825ce;--mw-header-height:104px;--mw-logo-width:172px;--mw-logo-height:86px;--mw-logo-canvas:176px;--mw-logo-left:-2px;--mw-logo-top:-45px}
body{background:#fff;color:var(--ink);font-family:Arial,Helvetica,sans-serif}
h1,h2,h3,.footer-name,.mw-price,.price{font-family:'Space Grotesk',Arial,Helvetica,sans-serif;letter-spacing:-.055em}
h1,h2{font-weight:600}h3{font-weight:600;letter-spacing:-.035em}
::selection{background:#bdf9ef;color:#271144}
.review-bar{background:#26113f;color:#e4d6fa;border-bottom:1px solid #5a367a}
.site-header{height:var(--mw-header-height);background:#5b25d9;border-bottom:1px solid #9871ed;box-shadow:0 6px 28px #1b06351a;backdrop-filter:none;color:#fff}
.site-header .header-inner{gap:28px}
.site-header .brand{padding:0;border:1px solid #ffffffb8;border-radius:15px;background:#fff;box-shadow:0 5px 16px #260b532b;outline-offset:5px;overflow:hidden}
.site-header .logo-frame{width:var(--mw-logo-width);height:var(--mw-logo-height);background:#fff}
.site-header .logo-frame img{width:var(--mw-logo-canvas);height:var(--mw-logo-canvas);left:var(--mw-logo-left);top:var(--mw-logo-top)}
.site-header #site-nav{gap:24px}
.site-header #site-nav>.mw-nav-help,.site-header .mw-nav-group>summary{color:#fff;font-size:14px;font-weight:600}
.site-header .mw-nav-group>summary{padding-inline:12px;border:1px solid transparent}
.site-header #site-nav>.mw-nav-help:hover{color:#c7fff6}
.site-header .mw-nav-group>summary:hover,.site-header .mw-nav-group[open]>summary{color:#fff;background:#ffffff14;border-color:#b99bdd}
.site-header .mw-nav-group.is-current>summary,.site-header #site-nav>a[aria-current="page"]{color:#bdf9ef}
.site-header .mw-nav-panel{width:314px;top:calc(100% + 13px);padding:10px;border:1px solid #d6bdef;border-radius:17px;background:#fff;box-shadow:0 24px 60px #27104430}
.site-header .mw-nav-panel>a{color:#352249;font-size:14px;min-height:44px;line-height:1.4}
.site-header .mw-nav-panel>a:hover{background:#f0e8ff;color:#5923b6}
.site-header .mw-nav-panel>a.mw-nav-overview{background:#eee3ff;color:#5420a3}
.site-header .nav-cta{min-height:48px;padding:12px 20px;background:#fff;border:1px solid #fff;border-radius:11px;color:#472080;font-size:14px;font-weight:700;box-shadow:0 4px 0 #301261;transition:transform .2s,box-shadow .2s,background .2s}
.site-header .nav-cta:hover{background:#d9fff7;border-color:#d9fff7;color:#351263;transform:translateY(-2px);box-shadow:0 6px 0 #301261}
.site-header .nav-cta span{font-size:20px}
.site-header a:focus-visible,.site-header summary:focus-visible,.site-header .menu-toggle:focus-visible{outline:3px solid #bdf9ef;outline-offset:4px}
.site-header .mw-nav-panel>a:focus-visible{outline-color:#6025bf}
.menu-toggle{color:#fff;border:1px solid #b69ad8;background:#ffffff0d;border-radius:10px}
.menu-toggle:hover{background:#ffffff18}
.button:not(.button-secondary),body .button.button-quote{background:var(--mw-action);border-color:var(--mw-action);color:#fff;border-radius:11px;box-shadow:0 4px 0 #35116c;min-height:52px;font-size:14px;font-weight:700;transition:transform .2s,box-shadow .2s,background .2s}
.button:not(.button-secondary):hover,body .button.button-quote:hover{background:var(--mw-action-hover);border-color:var(--mw-action-hover);color:#fff;transform:translateY(-2px);box-shadow:0 6px 0 #35116c}
.button-secondary{border:1px solid #b9a3dc;border-radius:11px;background:#fff;color:#492575;font-weight:700;box-shadow:none}
.button-secondary:hover{background:#eee5fd;color:#3a1b61;border-color:#9470c6}
.button:focus-visible{outline:3px solid #702ad3;outline-offset:5px}
.text-link{color:#5c2bbb}
.eyebrow{color:#6831c6;letter-spacing:.13em}
.page-hero,.service-hero{position:relative;isolation:isolate;overflow:hidden;background:radial-gradient(ellipse at 91% 5%,#9951ed66,transparent 46%),linear-gradient(115deg,#301354,#53249e 68%,#6735b5);color:#fff;border-bottom:1px solid #8055b3}
.page-hero{padding:65px 0 64px}
.page-hero+.section-topless{padding-top:58px}
.page-hero:after,.service-hero:after{content:'';position:absolute;z-index:-1;pointer-events:none;width:370px;height:370px;right:-100px;top:-190px;border:54px solid #d5b6ff10;border-radius:50%;box-shadow:0 0 0 1px #dfc9ff20,0 0 0 92px #dfc9ff05;transform:rotate(-25deg)}
.page-hero h1,.service-hero h1{color:#fff;max-width:1000px;font-weight:600;line-height:1.04}
.page-hero h1 em,.service-hero h1 em{color:#bdf9ef;font-family:inherit;font-style:normal}
.page-hero .lede,.service-hero .lede{color:#e7dbf7;line-height:1.7}
.page-hero .eyebrow,.service-hero .eyebrow{color:#d4b9ff;font-size:11px}
.page-hero .button-secondary,.service-hero .button-secondary{color:#fff;border-color:#b8a0d7;background:#ffffff09}
.page-hero .button-secondary:hover,.service-hero .button-secondary:hover{color:#fff;border-color:#e2d4f6;background:#ffffff17}
.service-hero{padding-bottom:66px}
.service-hero .breadcrumb{color:#d5c1ed;margin-bottom:36px}
.service-hero .breadcrumb a:hover{color:#fff}
.service-hero .scope-card{color:var(--ink);background:#faf7ff;border:1px solid #e7d8ff;border-radius:22px;box-shadow:9px 10px 0 #b78ce52b,0 28px 50px #13052529}
.service-hero .scope-card h2{color:#422168}
.service-hero .scope-card p{color:#665774}
.service-hero .scope-card .eyebrow{color:#6b38b0}
.scope-icon{background:linear-gradient(145deg,#e4d4ff,#f4ecff);color:#662bbf;border:1px solid #d0b5ee;box-shadow:4px 5px 0 #d8c2f0;border-radius:18px}
.scope-foot{border-color:#d8c9eb;color:#69567d}
.scope-foot .check,.check{background:#e5d4ff;color:#5b2b9e}
.section-soft{background:#f5f0fc;border-block:1px solid #e6d9f4}
.service-card{border:1px solid #d4bce9;border-radius:20px;box-shadow:0 6px 0 #f1e9fa;padding:30px;transition:transform .25s,border-color .25s,box-shadow .25s}
.service-card:nth-child(3n+2){background:#f8f3ff}
.service-card:hover{transform:translateY(-6px);border-color:#9062c6;box-shadow:0 10px 0 #e7d7f8,0 20px 30px #5125810c}
.service-card .card-top .icon{color:#7c41cd}
.service-card .card-index{color:#876b9d}
.service-card .text-link{border-color:#e5d9f2;color:#5e2c9d}
.service-card p{color:#655773}
.process-grid{gap:24px}
.process-grid article{border:1px solid #ddc9ef;border-top:3px solid #8d50d6;border-radius:16px;padding:27px;background:#fff;box-shadow:0 5px 0 #ebe0f5}
.process-grid .step-number{display:grid;place-items:center;width:38px;height:38px;background:#eee2fe;color:#6730b5;border:1px solid #d9c2f4;border-radius:10px;font-size:12px;margin-bottom:25px;font-family:'Space Grotesk',Arial,sans-serif}
.process-grid h3{line-height:1.16}
.process-grid p{font-size:14px;line-height:1.8}
.faq-list details{border-color:#d7c5e8}
.faq-list summary{color:#40254f}
.faq-list summary>span{color:#7c3ec5}
.faq-list details[open]{background:#f8f3ff;padding-inline:20px;border-radius:14px}
.scope-note,.notice{background:#f6f0ff;border:1px solid #decbed;border-left:3px solid #9963d0;border-radius:13px}
.support-main,.help-band{background:#f0e6fd;border:1px solid #dac3f1;border-radius:22px;box-shadow:6px 7px 0 #f5effb}
.cta-section{position:relative;background:#f4ecff;border-block:1px solid #d9c4ee;overflow:hidden}
.cta-inner h2{color:#3f1b63}
.cta-inner p{color:#685077}
.mw-contact-page{padding-top:48px;background:radial-gradient(ellipse at 10% 0,#eee0ff,transparent 50%),radial-gradient(ellipse at 100% 40%,#e9fcf9,transparent 45%),#fbf8ff}
.mw-contact-intro h1{font-family:'Space Grotesk',Arial,sans-serif;color:#32124f}
.mw-contact-intro h1 em{color:#7637cf}
.mw-contact-intro .eyebrow{color:#733bb3}
.mw-contact-page .mw-contact-form,.enquiry-form{border:1px solid #ccb0e6;border-top:4px solid #8650ce;box-shadow:0 8px 0 #e9dcf7,0 22px 60px #4928780c;background:#fff}
input,textarea,select{border-color:#b8a8ca;border-radius:9px;background:#fff;color:#332344}
input:hover,textarea:hover,select:hover{border-color:#8e65bc}
input:focus,textarea:focus,select:focus{border-color:#7539c4;box-shadow:0 0 0 3px #8545c915}
.form-grid label{color:#3f2d50}
.mw-contact-extra{border-color:#e2d5ec}
.mw-contact-extra>summary{color:#5f348a}
.mw-contact-next{border-color:#e2d5ec}
.site-footer{background:#251039;border-top:1px solid #563470;color:#fff;padding-top:68px}
.footer-name{font-size:28px;color:#fff}
.footer-name span{color:#c5a0ff}
.footer-top h2{color:#eee1ff;font-size:14px}
.footer-top>div>p,.footer-top>div>a:not(.button):not(.email-link){color:#d4c0e3;font-size:13px}
.footer-top .email-link{color:#e5d7f1;font-size:13px}
.site-footer a:hover{color:#c0fff1}
.footer-top .button:not(.button-secondary){border-color:#a983da;background:#6735a3;color:#fff;box-shadow:0 4px 0 #14071f}
.footer-top .button:not(.button-secondary):hover{background:#7949b4;color:#fff;border-color:#c6a8e9}
.footer-bottom{border-color:#533764}
.footer-bottom a,.footer-bottom p{color:#c4aed6;font-size:12px}
.site-footer a:focus-visible{outline-color:#c0fff1}
@media(min-width:861px){.page-hero>.container,.service-hero-grid>div:first-child{animation:mw-violet-enter .65s ease-out both}}
@keyframes mw-violet-enter{from{opacity:.35;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}
@media(max-width:1100px) and (min-width:861px){.site-header #site-nav{gap:14px}.site-header .header-inner{gap:20px}.site-header #site-nav>.mw-nav-help,.site-header .mw-nav-group>summary{font-size:13px}.site-header .nav-cta{padding-inline:16px;font-size:13px}.service-hero-grid{gap:40px}}
@media(max-width:860px){
  :root{--mw-header-height:94px;--mw-logo-width:158px;--mw-logo-height:78px;--mw-logo-canvas:162px;--mw-logo-left:-2px;--mw-logo-top:-42px}
  .site-header .brand{border-radius:12px}.site-header #site-nav{background:#fff;gap:4px;border-bottom:1px solid #dac8ec;box-shadow:0 20px 40px #26113d24;padding:14px 28px 24px;top:var(--mw-header-height);max-height:calc(100dvh - var(--mw-header-height))}
  .site-header #site-nav>.mw-nav-help,.site-header .mw-nav-group>summary{color:#4b2a68;font-size:16px}
  .site-header .mw-nav-group{border-color:#e3d6ee}
  .site-header .mw-nav-group>summary{padding:12px 7px;border:0}
  .site-header .mw-nav-group>summary:hover,.site-header .mw-nav-group[open]>summary{background:#f6f0fd;color:#5d259f}
  .site-header .mw-nav-group.is-current>summary,.site-header #site-nav>a[aria-current="page"],.site-header #site-nav>.mw-nav-help:hover{color:#7637c5}
  .site-header .mw-nav-panel{position:static;width:100%;padding:6px;border:0;border-radius:12px;background:#f7f1ff;box-shadow:none}
  .site-header .mw-nav-panel>a{min-height:46px;font-size:14px}
  .site-header #site-nav>.nav-cta{background:#6230d0;border-color:#6230d0;color:#fff;box-shadow:0 4px 0 #35116c;min-height:52px;font-size:15px}
  .site-header #site-nav>.nav-cta:hover{background:#4e22ad;color:#fff}
  .site-header #site-nav a:focus-visible,.site-header #site-nav summary:focus-visible{outline-color:#7532c8}
  html:not(.js) .site-header #site-nav{border-radius:14px;box-shadow:none;padding:8px 14px 20px}
  .page-hero{padding:50px 0}.page-hero h1{font-size:clamp(45px,7.5vw,66px)}.service-hero-grid{gap:34px}.service-hero .scope-card{box-shadow:6px 7px 0 #b78ce52b}.process-grid{gap:18px}.process-grid article{padding:23px}
}
@media(max-width:640px){
  :root{--mw-header-height:90px;--mw-logo-width:150px;--mw-logo-height:74px;--mw-logo-canvas:154px;--mw-logo-left:-2px;--mw-logo-top:-40px}
  .site-header .header-inner{gap:16px}.menu-toggle{min-height:44px;padding:8px 12px;font-size:13px}.site-header #site-nav{padding-inline:20px}
  .page-hero{padding:38px 0 42px}.page-hero+.section-topless{padding-top:36px}.page-hero h1{font-size:clamp(39px,10.3vw,59px);line-height:1.06;letter-spacing:-.055em}.page-hero .lede,.service-hero .lede{font-size:16px}.page-hero:after,.service-hero:after{right:-200px;opacity:.6}.page-hero .eyebrow,.service-hero .eyebrow{font-size:10px}
  .service-hero{padding:24px 0 43px}.service-hero h1{font-size:clamp(39px,10.3vw,59px);line-height:1.06}.service-hero .breadcrumb{margin-bottom:28px;font-size:11px}.service-hero .scope-card{padding:25px;border-radius:17px}.service-hero .scope-card h2{font-size:28px}.scope-icon{border-radius:13px}
  .service-card{padding:26px 22px;border-radius:17px}.service-card h3{font-size:24px}.service-card p{font-size:14px}.service-card .text-link{font-size:13px}.service-grid{grid-template-columns:1fr}
  .process-grid article{grid-template-columns:36px 1fr;gap:0 16px;padding:23px 20px}.process-grid .step-number{margin:0;width:33px;height:33px;padding:0;border-radius:9px;font-size:11px}.process-grid h3{font-size:24px}.process-grid p{font-size:14px}
  .faq-list details[open]{padding-inline:14px}.help-band{box-shadow:4px 5px 0 #f5effb}.mw-contact-page{padding-top:32px}.mw-contact-page .mw-contact-form{border-radius:18px}.footer-name{font-size:28px}.footer-top{gap:31px 20px}.footer-top>div>a:not(.button):not(.email-link){font-size:13px;min-height:40px}.footer-bottom a,.footer-bottom p{font-size:11px}.site-footer{padding-top:48px}
}
@media(prefers-reduced-motion:reduce){.page-hero>.container,.service-hero-grid>div:first-child{animation:none}.button,.service-card,.site-header .nav-cta{transition:none}.button:hover,.service-card:hover,.site-header .nav-cta:hover{transform:none}}
@media(forced-colors:active){
  .site-header,.site-header #site-nav,.site-footer,.page-hero,.service-hero,.mw-contact-page,.section-soft,.cta-section{background:Canvas;color:CanvasText}
  .site-header .brand,.site-header .nav-cta,.site-header #site-nav>.nav-cta,.button,.service-card,.process-grid article,.service-hero .scope-card,.enquiry-form{border:1px solid CanvasText;box-shadow:none;background:Canvas;color:CanvasText}
  .site-header #site-nav>.mw-nav-help,.site-header .mw-nav-group>summary,.site-header .mw-nav-panel>a,.page-hero h1,.service-hero h1,.page-hero h1 em,.service-hero h1 em,.page-hero .lede,.service-hero .lede,.site-footer a,.site-footer p,.site-footer h2{color:CanvasText}
  .page-hero:after,.service-hero:after{display:none}.site-header .menu-toggle{color:ButtonText;border-color:ButtonText}.site-header .mw-nav-panel{border:1px solid CanvasText;background:Canvas}
}
/* Package costs stay beside the price, before expandable detail. */
.mw-package-extra{font-size:12px;line-height:1.55;margin:0 0 16px;padding:10px 12px;border:1px solid #d7c8ed;border-radius:10px;background:#f6f1ff;color:#4f3371;font-weight:600}
.mw-package-ownership{max-width:850px;margin:36px auto 0;text-align:center}.mw-package-ownership h2{font-size:clamp(24px,3vw,34px);color:#291342}.mw-package-ownership p{font-size:15px;line-height:1.75;color:#59466a}
/* Plain white header, with an unframed logo and no separator or glow. */
:root{--mw-header-height:144px;--mw-logo-width:256px;--mw-logo-height:136px;--mw-logo-canvas:294px;--mw-logo-left:-21px;--mw-logo-top:-82px}
.site-header{background:#fff;color:#211239;border:0;box-shadow:none;backdrop-filter:none}
.site-header .brand,.site-header .logo-frame{background:transparent;border:0;border-radius:0;box-shadow:none}
.site-header .brand{overflow:visible;flex-shrink:0}
.site-header .logo-frame img{filter:none}
.site-header #site-nav>.mw-nav-help,.site-header .mw-nav-group>summary{color:#352249}
.site-header #site-nav>.mw-nav-help:hover,.site-header .mw-nav-group.is-current>summary,.site-header #site-nav>a[aria-current="page"]{color:#6230a0}
.site-header .menu-toggle{color:#352249;border:0;background:transparent;box-shadow:none}
.site-header .menu-toggle:hover{background:#f7f4fc}
.site-header a:focus-visible,.site-header summary:focus-visible,.site-header .menu-toggle:focus-visible{outline-color:#6230a0}
.site-header .nav-cta{background:#7b4ed0;border-color:#7b4ed0;color:#fff;box-shadow:none}
.site-header .nav-cta:hover{background:#9167dd;border-color:#9167dd;color:#fff;box-shadow:none}
.site-header .mw-nav-group>summary:hover,.site-header .mw-nav-group[open]>summary{color:#352249;background:#f7f4fc;border-color:transparent}
@media(max-width:1100px) and (min-width:861px){:root{--mw-logo-width:226px;--mw-logo-height:120px;--mw-logo-canvas:258px;--mw-logo-left:-19px;--mw-logo-top:-73px;--mw-header-height:128px}.site-header #site-nav{gap:14px}}
@media(max-width:860px){:root{--mw-header-height:116px;--mw-logo-width:204px;--mw-logo-height:108px;--mw-logo-canvas:240px;--mw-logo-left:-18px;--mw-logo-top:-65px}.site-header #site-nav{border-bottom:0}.site-header .brand{border-radius:0}.site-header .mw-nav-group>summary:hover,.site-header .mw-nav-group[open]>summary{background:#f6f0fd}.site-header .header-inner{gap:16px}}
@media(max-width:640px){:root{--mw-header-height:108px;--mw-logo-width:196px;--mw-logo-height:100px;--mw-logo-canvas:222px;--mw-logo-left:-16px;--mw-logo-top:-62px}.site-header .brand{border-radius:0}.menu-toggle{border-color:#8b74a8;background:transparent;min-height:44px}.site-header .header-inner{gap:12px}}
@media(max-width:370px){:root{--mw-logo-width:182px;--mw-logo-canvas:210px;--mw-logo-left:-15px;--mw-logo-top:-57px}.site-header .header-inner{gap:8px}}
@media(forced-colors:active){.site-header{background:Canvas}.site-header .logo-frame img{filter:none}}
@media(max-width:640px){.process-grid article{display:block}.process-grid article h3{margin-bottom:12px}}
/* Services is the primary navigation choice; prices remain a quieter option. */
.site-header .mw-nav-group>summary,.site-header .mw-nav-group.is-current>summary{display:flex;justify-content:space-between;gap:28px;min-height:54px;padding:15px 24px;border:0;border-radius:11px;background:#5b2a93;color:#fff;font-size:16px;font-weight:700}
.site-header .mw-nav-group>summary:hover,.site-header .mw-nav-group[open]>summary{background:#45206e;color:#fff;border:0}
.site-header .nav-cta,.site-header #site-nav>.nav-cta{min-height:46px;padding:11px 17px;background:#fff;border:1px solid #d7c9e7;box-shadow:none;color:#4c286a;font-size:14px;font-weight:600}
.site-header .nav-cta:hover,.site-header #site-nav>.nav-cta:hover{background:#f7f3fc;color:#4c286a;border-color:#b69bcf;box-shadow:none;transform:none}
@media(max-width:860px){.site-header .mw-nav-group{border:0}.site-header .mw-nav-group>summary{width:100%;margin-bottom:8px}.site-header #site-nav>.nav-cta{margin-top:8px}.site-header .mw-nav-group>summary:focus-visible{outline-color:#5b2a93}}
@media(forced-colors:active){.site-header .mw-nav-group>summary,.site-header .nav-cta{background:ButtonFace;color:ButtonText;border:1px solid ButtonText}}
