body.home-brand-colours{--rs-ink:#012850;--rs-blue:#0051fe;--rs-paper:#eaf0ff;--rs-muted:#294665;background:#fff;color:#012850}
body.home-brand-colours .alt-header{position:absolute;top:1.5rem;left:5vw;right:5vw;width:auto;background:#fff!important;color:#012850!important;border:0!important;border-radius:999px;padding:1rem 2rem;box-shadow:0 8px 32px #0128500a;z-index:100}
body.home-brand-colours .alt-header .tw-site-mark{background:none!important;color:#012850!important}
body.home-brand-colours .alt-header-cta{background:#0051fe!important;border-color:#0051fe!important;color:#fff!important;border-radius:999px}
body.home-brand-colours .refined-hero{margin:0 2vw;border-radius:0 0 2.5rem 2.5rem;min-height:85vh!important;padding:11rem 6vw 4rem!important;position:relative;overflow:hidden}
body.home-brand-colours[data-hero-image="off"] .refined-hero{background:radial-gradient(ellipse at 50% 90%,#cedcff,transparent 70%),#f5f8ff!important;color:#012850!important}
body.home-brand-colours .refined-hero h1{font-size:clamp(3.3rem,7.6vw,8rem)!important;line-height:1!important;text-transform:none!important;letter-spacing:-.06em;max-width:1000px}
body.home-brand-colours[data-hero-image="off"] .refined-hero h1{color:#012850!important}
body.home-brand-colours[data-hero-image="off"] .refined-hero h1 span{color:#0051fe!important}
body.home-brand-colours[data-hero-image="on"] .refined-hero h1 span{color:#fdfa2d!important}
body.home-brand-colours .alt-hero-bottom a{border-radius:999px;background:#0051fe!important;color:#fff!important;padding:1rem 1.5rem;border:0!important}
body.home-brand-colours .hero-option-panel{position:absolute;top:7.5rem;background:#012850;border-radius:1rem;box-shadow:none;right:5vw}
body.home-brand-colours .refined-work{padding:6rem 5vw!important;background:#fff!important;color:#012850!important}
body.home-brand-colours .alt-section-head h2,body.home-brand-colours .refined-clients h2{color:#012850!important}
body.home-brand-colours .alt-case{border-radius:1.5rem;overflow:hidden;background:#f5f8ff;margin-bottom:2rem}
body.home-brand-colours .alt-case-art{border-radius:1.5rem;height:clamp(22rem,48vw,45rem)}
body.home-brand-colours .alt-case-meta{padding:1.5rem 2rem!important;background:#eaf0ff;color:#012850!important;border:0}
body.home-brand-colours .refined-clients{background:#fff!important;padding:3rem 5vw 6rem!important;color:#012850!important}
body.home-brand-colours .alt-client-grid{border:0!important;gap:1rem}
body.home-brand-colours .alt-client-grid>div{border:0!important;background:#fff;color:#012850!important}
body.home-brand-colours .refined-belief{margin:2rem 5vw;border-radius:2rem;background:#012850!important;color:#fff!important;padding:4rem!important}
body.home-brand-colours .refined-belief :is(h2,p,.alt-kicker){color:#fff!important}
body.home-brand-colours .refined-proof{margin:2rem 5vw;border-radius:2rem;background:#fdfa2d!important;color:#012850!important;padding:3rem 4rem!important}
body.home-brand-colours .refined-proof :is(strong,p,.alt-kicker){color:#012850!important}
body.home-brand-colours .refined-services{background:#fff!important;padding:6rem 5vw!important;color:#012850!important}
body.home-brand-colours .alt-service-list{display:grid;grid-template-columns:1fr 1fr;gap:1rem}
body.home-brand-colours .alt-service-list>a{display:grid;grid-template-columns:2rem 1fr 2rem;gap:1rem;border:1px solid #d0dbed!important;border-radius:1.5rem;background:#f5f8ff;color:#012850!important;padding:2rem!important;transition:background .2s,transform .2s}
body.home-brand-colours .alt-service-list>a strong{font-size:clamp(1.35rem,2.2vw,2rem)!important;color:#012850!important}
body.home-brand-colours .alt-service-list>a p{grid-column:2;color:#294665!important}
body.home-brand-colours .alt-service-list>a b{grid-column:3;grid-row:1}
body.home-brand-colours .alt-service-list>a:last-child{grid-column:1/-1;background:#f5f8ff}
body.home-brand-colours .alt-service-list>a:hover{background:#e1eaff!important;transform:translateY(-3px)}
body.home-brand-colours .refined-people{margin:0 5vw 4rem;border-radius:2rem;overflow:hidden;border:0!important;background:#0051fe!important;color:#fff!important}
body.home-brand-colours .refined-people :is(h2,p,a,.alt-kicker){color:#fff!important}
body.home-brand-colours .alt-people-copy{padding:3rem!important}
body.home-brand-colours .alt-people-copy a{background:#fdfa2d;color:#012850!important;padding:1rem 1.5rem;border-radius:999px;display:inline-block}
body.home-brand-colours :is(.floating-menu,.floating-close){background:#0051fe!important;color:#fff!important}
body.home-brand-colours .mega-intro{background:#0051fe!important;color:#fff!important}
body.home-brand-colours .wpf-footer{margin-top:0!important}
@media(max-width:800px){body.home-brand-colours .alt-header{top:1rem;left:1rem;right:1rem;padding:1rem 1.25rem}body.home-brand-colours .refined-hero{margin:0;min-height:0!important;padding:12rem 1.25rem 3rem!important;border-radius:0 0 1.5rem 1.5rem}body.home-brand-colours .refined-hero h1{font-size:clamp(3rem,9vw,5rem)!important}body.home-brand-colours .hero-option-panel{top:6rem;bottom:auto;left:auto;right:1rem;width:13rem;padding:.65rem}body.home-brand-colours .alt-service-list{grid-template-columns:1fr}body.home-brand-colours .refined-belief,body.home-brand-colours .refined-proof{margin:1rem;padding:2.5rem 1.25rem!important}body.home-brand-colours .refined-people{margin:0 1rem 2rem}body.home-brand-colours .alt-people-copy{padding:2rem 1.25rem!important}body.home-brand-colours .alt-case-meta{padding:1.25rem!important}}
@media(prefers-reduced-motion:reduce){body.home-brand-colours .alt-service-list>a{transition:none}body.home-brand-colours .alt-service-list>a:hover{transform:none}}

/* Final alignment and typography for this homepage concept. */
body.home-brand-colours{--mono:"DM Mono",monospace;--sans:"Manrope",sans-serif}
body.home-brand-colours .alt-header .tw-site-brand,body.home-brand-colours .alt-header .tw-site-brand .tw-site-mark{color:#012850!important;background:none!important;opacity:1;visibility:visible}
body.home-brand-colours .alt-header .tw-site-brand .tw-site-mark::before{background:#012850!important;opacity:1;visibility:visible}
body.home-brand-colours .alt-header .tw-site-brand .tw-site-mark::after{background:#0051fe}
body.home-brand-colours .refined-services .alt-service-list{border-top:0!important;margin-left:0;width:100%}
body.home-brand-colours .refined-services .alt-section-head{margin-bottom:3rem}
body.home-brand-colours .f3-footer{font-family:"Manrope",sans-serif}
body.home-brand-colours .f3-title>span,body.home-brand-colours .f3-contact>span,body.home-brand-colours .f3-nav h3{font:400 .75rem/1.5 "DM Mono",monospace;letter-spacing:.04em}
body.home-brand-colours .f3-legal,body.home-brand-colours .f3-legal a,body.home-brand-colours .f3-legal span{font:400 .7rem/1.6 "DM Mono",monospace;letter-spacing:.025em}
body.home-brand-colours .f3-cta{font:400 .75rem/1.4 "DM Mono",monospace;padding:1rem 1.4rem}
body.home-brand-colours .f3-grid{grid-template-columns:minmax(15rem,1.1fr) minmax(0,2fr) 112px;gap:3vw;padding:2.5rem 0}
body.home-brand-colours .f3-nav{gap:1.5rem}
body.home-brand-colours .f3-nav nav{gap:.65rem}
body.home-brand-colours .f3-nav a{font:400 .95rem/1.5 "Manrope",sans-serif}
body.home-brand-colours .f3-contact>a:first-of-type{font-size:clamp(1rem,1.45vw,1.3rem)}
body.home-brand-colours .f3-contact p{font:400 .95rem/1.6 "Manrope",sans-serif;color:#294665!important}
body.home-brand-colours .f3-legal{align-items:center;gap:1.5rem;color:#012850}
body.home-brand-colours .f3-legal>div{gap:1.25rem;flex-wrap:wrap}
body.home-brand-colours .f3-partners{width:112px;align-items:center;justify-self:center}
body.home-brand-colours .f3-badge{align-self:center}
@media(max-width:1100px){body.home-brand-colours .f3-grid{grid-template-columns:1fr 2fr}body.home-brand-colours .f3-partners{grid-column:1;justify-self:start}}
@media(max-width:650px){body.home-brand-colours .f3-grid{grid-template-columns:1fr;gap:2.5rem}body.home-brand-colours .f3-legal{display:flex;flex-direction:column;align-items:flex-start;gap:1rem}body.home-brand-colours .f3-legal>div{margin:0}body.home-brand-colours .f3-nav{gap:2rem 1rem}}

body.refined-system.home-brand-colours .refined-people .alt-people-copy a,body.refined-system.home-brand-colours .refined-people .alt-people-copy a:is(:hover,:focus-visible){background:#fdfa2d!important;color:#012850!important;-webkit-text-fill-color:#012850;border-color:#fdfa2d!important}
/* Blue greeting and yellow capsule. */
body.refined-system.home-brand-colours .wpf-footer .f3-title h2 em{color:#0051fe!important;-webkit-text-fill-color:#0051fe;background:none;padding:0;border-radius:0}
body.refined-system.home-brand-colours .wpf-footer .f3-title .f3-big-mail{background:#fdfa2d!important;color:#012850!important;-webkit-text-fill-color:#012850}
/* Artwork fills the complete case study card, matching its caption width. */
body.refined-system.home-brand-colours .refined-work .alt-case{width:100%;max-width:none;margin-left:0;margin-right:0;padding:0}
body.refined-system.home-brand-colours .refined-work .alt-case .alt-case-art{display:flex;width:100%!important;max-width:none!important;margin:0!important;box-sizing:border-box;border-radius:1.5rem 1.5rem 0 0}
/* Simple colour-only interaction for the header project action. */
body.home-brand-colours .alt-header .alt-header-cta{transition:background .2s ease,color .2s ease,border-color .2s ease;transform:none;box-shadow:none}
body.home-brand-colours .alt-header .alt-header-cta:is(:hover,:focus-visible,:active){background:#012850!important;border-color:#012850!important;color:#fff!important;transform:none;box-shadow:none}
body.home-brand-colours .alt-header .alt-header-cta:focus-visible{outline:2px solid #012850;outline-offset:4px}
@media(prefers-reduced-motion:reduce){body.home-brand-colours .alt-header .alt-header-cta{transition:none}}
body.refined-system.home-brand-colours .alt-header nav a{color:#012850!important}
body.refined-system.home-brand-colours .alt-header nav a::after{background:#012850!important;border-color:#012850!important}
/* A hover-only wave inside the existing capsule, without changing its width. */
body.home-brand-colours .wpf-footer .f3-big-mail{position:relative;overflow:hidden}
body.home-brand-colours .wpf-footer .f3-big-mail .hello-label{display:inline-block;transition:transform .22s ease}
body.home-brand-colours .wpf-footer .f3-big-mail .hello-hover-hand{position:absolute;right:.55rem;top:50%;font-size:.7em;line-height:1;opacity:0;transform:translateY(-50%) scale(.6);transform-origin:70% 80%;pointer-events:none;-webkit-text-fill-color:initial;transition:opacity .18s ease}
body.home-brand-colours .wpf-footer .f3-big-mail:is(:hover,:focus-visible) .hello-label{transform:translateX(-.5rem)}
body.home-brand-colours .wpf-footer .f3-big-mail:is(:hover,:focus-visible) .hello-hover-hand{opacity:1;animation:footer-hello-wave .9s both}
@keyframes footer-hello-wave{0%{transform:translateY(-50%) scale(.6) rotate(0)}20%{transform:translateY(-50%) scale(1) rotate(24deg)}40%{transform:translateY(-50%) scale(1) rotate(-14deg)}60%{transform:translateY(-50%) scale(1) rotate(24deg)}80%{transform:translateY(-50%) scale(1) rotate(-8deg)}100%{transform:translateY(-50%) scale(1) rotate(0)}}
@media(prefers-reduced-motion:reduce){body.home-brand-colours .wpf-footer .f3-big-mail .hello-label,body.home-brand-colours .wpf-footer .f3-big-mail .hello-hover-hand{transition:none}body.home-brand-colours .wpf-footer .f3-big-mail:is(:hover,:focus-visible) .hello-hover-hand{animation:none;transform:translateY(-50%)}}
body.refined-system.home-brand-colours .wpf-footer .f3-title .f3-big-mail .hello-label{font-family:"Manrope",sans-serif!important;font-size:inherit!important;font-weight:inherit!important;line-height:inherit!important;letter-spacing:inherit!important;text-transform:none!important}
body.refined-system.home-brand-colours .wpf-footer .f3-title .f3-big-mail .hello-hover-hand{font-family:"Apple Color Emoji","Segoe UI Emoji","Noto Color Emoji",sans-serif!important;text-transform:none!important}

/* Keep the wave beside the greeting and restore its hover underline. */
body.refined-system.home-brand-colours .wpf-footer .f3-title .f3-big-mail .hello-content{position:relative;display:inline-block;font:inherit!important;letter-spacing:inherit!important;text-transform:none!important;transition:transform .22s ease}
body.home-brand-colours .wpf-footer .f3-big-mail .hello-hover-hand{left:calc(100% + .3em);right:auto}
body.home-brand-colours .wpf-footer .f3-big-mail:is(:hover,:focus-visible) .hello-content{transform:translateX(-.5em)}
body.home-brand-colours .wpf-footer .f3-big-mail:is(:hover,:focus-visible) .hello-label{transform:none;text-decoration:underline;text-underline-offset:.15em;text-decoration-thickness:.04em}
@media(prefers-reduced-motion:reduce){body.home-brand-colours .wpf-footer .f3-big-mail .hello-content{transition:none}}
/* Blue actions always retain white labels, with the shared navy hover. */
body.refined-system.home-brand-colours .alt-header .alt-header-cta{color:#fff!important;-webkit-text-fill-color:#fff!important}
body.refined-system.home-brand-colours .alt-header .alt-header-cta:is(:hover,:focus-visible,:active){background:#012850!important;border-color:#012850!important;color:#fff!important;-webkit-text-fill-color:#fff!important}
/* Centre the homepage legal links independently of the side items. */
body.home-brand-colours .f3-legal{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center}
body.home-brand-colours .f3-legal>div{margin:0;justify-content:center;justify-self:center}
body.home-brand-colours .f3-legal>a{justify-self:end}
@media(max-width:650px){body.home-brand-colours .f3-legal{display:flex;flex-direction:column;align-items:center;text-align:center}body.home-brand-colours .f3-legal>div{width:100%;justify-content:center;margin:0}}
/* Shared interaction rhythm for the new brand pages. */
body.refined-system.home-brand-colours .refined-proof-grid{border-top:1px solid #012850!important}
body.refined-system.home-brand-colours .refined-proof article{border:0!important;border-right:1px solid #012850!important}
body.refined-system.home-brand-colours .refined-proof article:last-child{border-right:0!important}
body.refined-system.home-brand-colours :is(.alt-header-cta,.alt-people-copy>a,.f3-cta,.f3-big-mail,.mega-contact-cta,.service-hero-foot>a,.floating-menu){transition:background-color .2s ease,color .2s ease,border-color .2s ease!important;transform:none!important;box-shadow:none}
body.refined-system.home-brand-colours .refined-people .alt-people-copy>a:is(:hover,:focus-visible),
body.refined-system.home-brand-colours .wpf-footer .f3-title .f3-big-mail:is(:hover,:focus-visible),
body.refined-system.home-brand-colours .mega-contact .mega-contact-cta:is(:hover,:focus-visible),
body.refined-system.home-brand-colours .floating-menu:is(:hover,:focus-visible){background:#012850!important;border-color:#012850!important;color:#fff!important;-webkit-text-fill-color:#fff!important}
body.refined-system.home-brand-colours .wpf-footer .f3-cta:is(:hover,:focus-visible){background:#0051fe!important;border-color:#0051fe!important;color:#fff!important;-webkit-text-fill-color:#fff!important}
body.refined-system.home-brand-colours :is(.alt-service-list>a,.service-link-grid>a,.cap-item,.evidence-card){transition:background-color .2s ease!important;transform:none!important}
body.refined-system.home-brand-colours .alt-service-list>a:is(:hover,:focus-visible){transform:none!important}
body.refined-system.home-brand-colours :is(.f3-nav a,.f3-contact>a:not(.f3-cta),.f3-legal a,.mega-directory a,.mega-bottom a,.service-breadcrumb a,.cap-item h3 a){text-decoration:none;text-underline-offset:.2em;text-decoration-thickness:1px}
body.refined-system.home-brand-colours :is(.f3-nav a,.f3-contact>a:not(.f3-cta),.f3-legal a,.mega-directory a,.mega-bottom a,.service-breadcrumb a,.cap-item h3 a):is(:hover,:focus-visible){text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:.2em}
body.refined-system.home-brand-colours :is(.alt-header-cta,.alt-people-copy>a,.f3-cta,.f3-big-mail,.mega-contact-cta):focus-visible{outline:2px solid currentColor;outline-offset:4px}
@media(max-width:800px){body.refined-system.home-brand-colours .refined-proof article{border-right:0!important;border-bottom:1px solid #012850!important}body.refined-system.home-brand-colours .refined-proof article:last-child{border-bottom:0!important}}
@media(prefers-reduced-motion:reduce){body.refined-system.home-brand-colours :is(.alt-header-cta,.alt-people-copy>a,.f3-cta,.f3-big-mail,.mega-contact-cta,.service-hero-foot>a,.floating-menu,.alt-service-list>a,.service-link-grid>a,.cap-item,.evidence-card){transition:none!important}}
/* Every text link draws its underline from left to right, like the top nav. */
body.refined-system.home-brand-colours :is(footer a,.alt-header-cta,.alt-people-copy>a,.mega-contact-cta,.service-hero-foot>a){text-decoration:none!important}
body.refined-system.home-brand-colours a .brand-link-label{background-image:linear-gradient(currentColor,currentColor);background-position:left bottom;background-repeat:no-repeat;background-size:0% 1px;padding-bottom:.15em;transition:background-size .25s ease;text-decoration:none!important;box-decoration-break:clone;-webkit-box-decoration-break:clone}
body.refined-system.home-brand-colours a:is(:hover,:focus-visible) .brand-link-label{background-size:100% 1px;text-decoration:none!important}
body.refined-system.home-brand-colours .f3-big-mail:is(:hover,:focus-visible) .hello-label{text-decoration:none!important}
@media(prefers-reduced-motion:reduce){body.refined-system.home-brand-colours a .brand-link-label{transition:none}}
body.refined-system.home-brand-colours a span.brand-link-label{font:inherit!important;letter-spacing:inherit!important;text-transform:inherit!important;color:inherit!important}
body.refined-system.home-brand-colours .alt-case-meta>b.brand-link-label{justify-self:end;width:max-content;max-width:100%}
body.refined-system.home-brand-colours .alt-header .alt-header-cta:is(:hover,:focus-visible){text-decoration:none!important}
/* Selected work uses the shared navy fill on interaction. */
body.refined-system.home-brand-colours .refined-hero a[href="#selected-work"]{transition:background-color .2s ease,color .2s ease,border-color .2s ease;transform:none!important;box-shadow:none}
body.refined-system.home-brand-colours .refined-hero a[href="#selected-work"]:is(:hover,:focus-visible,:active){background:#012850!important;border-color:#012850!important;color:#fff!important;-webkit-text-fill-color:#fff!important;transform:none!important;box-shadow:none}
@media(prefers-reduced-motion:reduce){body.refined-system.home-brand-colours .refined-hero a[href="#selected-work"]{transition:none}}
/* Say hello keeps its yellow capsule while the greeting waves and underlines. */
body.refined-system.home-brand-colours .wpf-footer .f3-title .f3-big-mail:is(:hover,:focus-visible,:active){background:#fdfa2d!important;border-color:#fdfa2d!important;color:#012850!important;-webkit-text-fill-color:#012850!important}

body.home-brand-colours .core-service-detail li a{color:inherit!important;font:inherit;background-image:linear-gradient(currentColor,currentColor);background-position:left bottom;background-repeat:no-repeat;background-size:0% 1px;padding-bottom:.15em;transition:background-size .25s ease}
body.home-brand-colours .core-service-detail li a:is(:hover,:focus-visible){background-size:100% 1px}
@media(prefers-reduced-motion:reduce){body.home-brand-colours .core-service-detail li a{transition:none}}
/* Animated underlines follow the label, never the remaining grid-column width. */
body.refined-system.home-brand-colours .core-service-detail li a{justify-self:start;align-self:center;width:fit-content;max-width:100%;text-decoration:none!important}
body.refined-system.home-brand-colours .cap-item h3 a{display:inline-block;justify-self:start;width:fit-content;max-width:100%}
body.refined-system.home-brand-colours :is(.service-link-grid>a strong,.case-related strong,.next-case strong,.sf-service h3,.ih-card-link,.sf-project-link,.sf-text-link,.wp-submit-label){width:fit-content;max-width:100%;justify-self:start}
body.refined-system.home-brand-colours a .brand-link-label{max-width:100%;width:fit-content;justify-self:start;align-self:center}

/* Preserve the pill's centring transform when shared button hover rules apply. */
body.refined-system.home-brand-colours .floating-menu,
body.refined-system.home-brand-colours .floating-menu:is(:hover,:focus-visible,:active){left:50%!important;right:auto!important;transform:translateX(-50%)!important}

/* Centre the pill by equal viewport insets, independent of button transforms. */
body #floating-menu.floating-menu,
body #floating-menu.floating-menu:is(:hover,:focus-visible,:active),
body #floating-close.floating-menu,
body #floating-close.floating-menu:is(:hover,:focus-visible,:active){left:0!important;right:0!important;margin-left:auto!important;margin-right:auto!important;transform:none!important;translate:none!important}
