html, body { background: rgb(243, 243, 243); }
.ref-inner .background-gray { background: rgb(243, 243, 243); }
.ref-inner .background-white, .ref-inner .outer-wrap-white { background: rgb(255, 255, 255); }
.ref-inner .button:not(.button-outline) { background: rgb(239,75,83); color: rgb(17, 17, 17); }
.ref-inner .button-black { background: rgb(0, 0, 0); color: rgb(239,75,83) !important; }
.ref-inner .button:hover { background: rgb(239, 75, 83); color: rgb(255, 255, 255) !important; }
.ref-inner .button-outline { background: transparent; }
.ref-inner .rounded.background-green { background: rgb(239,75,83); color: rgb(17, 17, 17); }
.ref-highlight { background: rgb(248,205,208); border-radius: 40px; padding: 0px 0.2em; font-weight: inherit; }
.ref-inner .work-black-section { padding: 0px; background: rgb(243, 243, 243); border-radius: 0px; }
.ref-inner .work-black-section > .outer-wrap { background: rgb(0, 0, 0); }
.ref-inner .logo-ticker { background: rgb(255, 255, 255); }
.ref-inner .row-left-image img { object-fit: cover; object-position: center top; }
.ref-inner .image-slider img { width: 100%; aspect-ratio: 1.21 / 1; object-fit: cover; object-position: center top; }
.ref-inner .image-slider > .item { width: 100%; }
.ref-inner .tile-slider { display: flex; gap: 25px; overflow-x: auto; scroll-snap-type: x mandatory; scrollbar-width: none; }
.ref-inner .tile-slider > .item { flex: 0 0 47%; scroll-snap-align: start; }
.ref-inner .tile-slider .work-tile { width: 100%; min-height: 0px; }
.ref-inner .work-tile__term { color: rgb(255, 255, 255) !important; border-color: rgb(170, 170, 170) !important; }
.ref-inner .work-tile__inner { min-height: 330px; }
.ref-inner .tile-slider-controls { display: flex !important; }
.ref-inner .tile-slider-controls button { cursor: pointer; }
.ref-inner .work-tile__excerpt-wrap { overflow: hidden; }
.ref-inner .work-tile:focus-within .work-tile__excerpt-wrap { grid-template-rows: 1fr; opacity: 1; }
.ref-inner .text-slider > .item { display: none; }
.ref-inner .text-slider > .item:first-child { display: block; }
.ref-inner .text-slider-controls { display: flex; gap: 15px; align-items: center; }
.ref-inner .text-slider-controls button { border: 0px; background: rgb(239,75,83); color: rgb(0, 0, 0); border-radius: 50%; width: 26px; height: 26px; cursor: pointer; }
.ref-inner .text-slider-controls .counter { font-size: 15px; }
.ref-inner .footer-contact-details a { color: rgb(255, 255, 255); text-decoration: underline; }
.ref-inner .footer-logo img { width: 150px; height: auto; }
.ref-inner .footer ul.footer-nav li a::before { content: "→"; background: none; color: rgb(239,75,83); }
.ref-inner .footer .footer-links { width: 100%; }
.ref-inner .early-glow img { width: 100%; aspect-ratio: 1.8 / 1; object-fit: cover; object-position: center 25%; }
.ref-team-member img { width: 100%; height: 250px; object-fit: cover; object-position: center top; }
.ref-team-member h4 { font-size: 20px; margin: 18px 0px 5px; }
.ref-team-member p { font-size: 13px; }
.ref-form label { display: block; margin: 0px 0px 14px; }
.ref-form input:not([type="hidden"]), .ref-form textarea { width: 100%; display: block; background: rgb(243, 243, 243); border: 0px; border-radius: 6px; padding: 14px 17px; font-style: inherit; font-variant: inherit; font-weight: inherit; font-stretch: inherit; line-height: inherit; font-family: inherit; font-optical-sizing: inherit; font-size-adjust: inherit; font-kerning: inherit; font-feature-settings: inherit; font-variation-settings: inherit; font-language-override: inherit; font-size: 15px; color: rgb(17, 17, 17); }
.ref-form textarea { min-height: 130px; resize: vertical; }
.ref-form input::placeholder, .ref-form textarea::placeholder { color: rgb(68, 68, 68); opacity: 1; }
.ref-form .button { font-size: 13px; padding: 12px 23px; }
.ref-form h3 { margin-top: 0px; margin-bottom: 20px; }
.ref-form .form-status { font-size: 13px; margin: 15px 0px 0px; }
.ref-honeypot { position: absolute; left: -9999px; }
.screen-reader-text { position: absolute; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); }
.ref-inner .accordion-heading { cursor: pointer; }
.ref-inner .accordion-content.is-open { display: block !important; }
.ref-inner .tile-grid .grid-item[hidden] { display: none !important; }
.ref-inner .pagination button { border: 0px; cursor: pointer; background: transparent; font: inherit; color: rgb(17, 17, 17); }
.ref-inner .pagination button.current { text-decoration: underline; }
.ref-inner .pagination button:disabled { opacity: 0.3; cursor: default; }
.ref-inner .pagination__prev, .ref-inner .pagination__next { border-radius: 50%; width: 38px; height: 38px; background: rgb(0, 0, 0) !important; color: rgb(239,75,83) !important; }
.ref-inner .header-logo img { object-fit: contain; width: 165px; }
.ref-inner .hero-section-default .hero-intro .line-text { font-weight: 600; }
.ref-inner .hero-section-default .hero-intro .line-text-1 { font-size: clamp(48px, 5.7vw, 110px); }
.nav-wrap .nav li a::after { content: none !important; }
.ref-services-menu { position: relative; }
.ref-services-menu > a { padding-right: 35px !important; }
.ref-submenu-toggle { position: absolute; right: 8px; top: 50%; transform: translateY(-50%); border: 0px; border-radius: 50%; background: rgb(239,75,83); color: rgb(0, 0, 0); width: 23px; height: 23px; cursor: pointer; padding: 0px; }
.ref-service-list { position: absolute; top: calc(100% + 14px); left: 0px; min-width: 260px; list-style: none; background: rgb(255, 255, 255); border-radius: 20px; box-shadow: rgba(0, 0, 0, 0.133) 0px 12px 35px; display: none !important; padding: 12px !important; }
.ref-service-list.is-open { display: block !important; }
.nav-wrap .nav .ref-service-list li { display: block; width: 100%; }
.nav-wrap .nav .ref-service-list li a { padding: 12px 14px; font-size: 14px; border: 0px; text-align: left; background: transparent; border-radius: 12px; white-space: nowrap; }
.nav-wrap .nav .ref-service-list li a:hover { background: rgb(243, 243, 243); color: rgb(17, 17, 17); }
.nav-wrap .nav > li > a[aria-current="page"] { background: rgb(243, 243, 243); }
.nav-wrap .contact-nav-item > a { background: rgb(239,75,83) !important; color: rgb(17, 17, 17) !important; }
.nav-wrap { background: rgba(255, 255, 255, 0.93) !important; }
.ref-inner .nav-wrap .nav li a { color: rgb(35, 31, 32); }
.ref-inner .header .wrap { background: transparent; }
.ref-inner .footer .button { color: rgb(0, 0, 0); }
.ref-inner .footer .button:hover { color: rgb(255, 255, 255); }
.ref-inner .row-wrap .row .row-left-content .dot::before { background: rgb(248,205,208); }
.ref-inner .tile-grid { align-items: stretch; }
.ref-inner .tile-grid .grid-item .work-tile { height: 100%; }
.ref-inner .tile-grid .grid-item .work-tile__inner { height: 100%; }
@media (min-width: 1000px) {
  .nav-wrap, body.has-scrolled .nav-wrap { border-radius: 70px; position: fixed !important; top: 24px !important; bottom: auto !important; z-index: 10001 !important; overflow: visible !important; }
  .nav-wrap .nav { display: flex; align-items: center; }
  .ref-inner .header .wrap { max-width: 1380px; }
  .ref-inner .tile-slider > .item { flex-basis: 47%; }
  .row-wrap .row .row-content-wrap { display: grid; overflow: visible; }
  .row-wrap .row .row-content, .row-wrap .row .row-content-reveal { grid-area: 1 / 1; top: auto; left: auto; margin: 0px; min-width: 0px; position: relative !important; height: auto !important; overflow: visible !important; }
  .row-wrap .row .row-content-reveal { pointer-events: none; }
  .row-wrap .row:hover .row-content-reveal, .row-wrap .row:focus-within .row-content-reveal { opacity: 1; pointer-events: auto; }
  .row-wrap .row:hover .row-content, .row-wrap .row:focus-within .row-content { opacity: 0; }
  .row-wrap .row .row-left-content { padding-right: 300px !important; }
  .row-wrap .row .row-right { right: 0px; }
  .row-wrap .row .row-content-reveal .entry-content { font-size: clamp(18px, 1.65vw, 28px); line-height: 1.5; }
  .ref-inner .work-black-section .work-tile__inner { min-height: 350px; }
  .ref-inner .tile-slider-controls { position: absolute; top: 50%; right: -25px; transform: translateY(-50%); z-index: 10; margin: 0px; }
}
@media (min-width: 1540px) {
  .ref-inner .tile-slider > .item { flex-basis: 47%; }
  .row-wrap .row .row-left-content { padding-right: 400px !important; }
}
@media (max-width: 999px) {
  .ref-service-list { position: static; box-shadow: none; background: rgb(243, 243, 243); min-width: 0px; margin: 12px 0px !important; }
  .ref-submenu-toggle { top: 28px; right: 10px; transform: none; width: 30px; height: 30px; }
  .ref-inner .nav-wrap { background: rgb(255, 255, 255) !important; }
  .ref-inner .tile-slider > .item { flex-basis: 80%; }
  .ref-inner .ref-team-member { width: 50%; }
  .ref-inner .header-logo img { width: 100px; }
  .nav-wrap.active { z-index: 9999 !important; }
  .header { z-index: 10000 !important; }
}
@media (max-width: 767px) {
  .ref-inner .tile-slider > .item { flex-basis: 88%; }
  .ref-team-member img { height: 230px; }
  .ref-inner .work-tile__inner { min-height: 300px; }
  .ref-form { margin-top: 0px; }
  .ref-inner .hero-section-default .hero-intro .line-text-1 { font-size: 48px; }
  .ref-inner .footer-heading { font-size: 17vw !important; }
  .ref-inner .row-left-content { padding-right: 0px; }
  .ref-inner .tile-slider-controls { margin-bottom: 20px; }
  .ref-inner .ref-team-member h4 { font-size: 18px; }
}
.portfolio-fit .work-tile__bg{background-size:contain!important;background-repeat:no-repeat!important;background-position:center!important;background-color:#191919;transform:none!important}.portfolio-fit:hover .work-tile__bg{transform:none!important}.ref-submenu-toggle{z-index:3;display:grid;place-items:center;line-height:1}.footer-logo img{width:150px;height:auto}.footer-contact-details a{color:#fff}.footer ul.footer-nav li a:before{content:'→';background:none;color:#ef4b53}.footer .button{background:#ef4b53;color:#111}.ref-inner .page-section .image img{object-fit:cover}.ref-inner .page-section img[src*="generated-v5"]{width:100%;height:auto;aspect-ratio:1.35;object-fit:cover;border-radius:20px}
.nav-wrap .nav>li.ref-services-menu{position:relative!important}.ref-inner .header .wrap{max-width:none}@media(min-width:1000px){.nav-wrap{top:50px!important}body.has-scrolled .nav-wrap{top:24px!important}}
@media(max-width:999px){.ref-inner main>.hero-section:first-child{padding-top:112px}.ref-inner .header{position:fixed;top:0;left:0;width:100%;background:#f3f3f3}.ref-inner .header .wrap{padding-top:20px;padding-bottom:16px}}
@media(min-width:1000px){.row-wrap .row:focus-within .row-right{transform:translateX(-280px)}.row-wrap .row .row-left-content{padding-right:440px!important}.row-wrap .row .row-content-reveal .entry-content{max-width:100%}.row-wrap .row:focus-within .row-left-image{transform:translateX(0);opacity:1}.row-wrap .row:focus-within .row-left-content{transform:translateX(280px)}}
.ref-inner .button.button-black{background:#000!important;color:#ef4b53!important}.ref-inner .button.button-black:hover{background:#ef4b53!important;color:#111!important}.ref-inner .button:not(.button-black):not(.button-outline){color:#111!important}
.footer ul.footer-nav li a:before{content:none!important}
/* v6 — white control labels, photographic mega navigation and rolling labels. */
body .button:not(.button-outline),body.ref-inner .button:not(.button-outline),body .button.button-black,body.ref-inner .button.button-black,body .button:hover,body.ref-inner .button:hover,body .nav-wrap .contact-nav-item>a,body .rounded.background-green,body.ref-inner .rounded.background-green,body .text-slider-controls button,body.ref-inner .text-slider-controls button,body.ref-inner .pagination__prev,body.ref-inner .pagination__next{color:#fff!important}
body .button:not(.button-circle):not(.button-outline){min-height:50px;padding:15px 30px;font-size:15px;line-height:20px;min-width:166px}
body .ref-form .button{font-size:14px;min-height:50px;padding:15px 28px}.button:after{filter:brightness(0) invert(1)}.rounded.background-green p{color:#fff!important}.nav-icon svg *{fill:#fff}.slider-controls svg path,.accordion-arrow path{fill:#fff!important}.text-slider-controls button{font-size:18px}.ref-inner .early-glow img{object-position:center}.ref-inner main>section:nth-child(2) img[src*="generated-v5"]{width:100%;aspect-ratio:1.7;object-fit:cover}
.nav-wrap .nav>li.ref-services-menu{position:static!important;display:flex;align-items:center}.nav-wrap .nav>li.ref-services-menu>a{padding-right:38px!important}.nav-wrap .ref-submenu-toggle{position:relative!important;top:auto!important;right:auto!important;transform:none!important;margin-left:-34px;margin-right:10px;width:24px;height:24px;flex:0 0 24px;background:#ef4b53;color:#fff;display:grid;place-items:center}.ref-submenu-toggle svg{transition:transform .3s}.ref-submenu-toggle[aria-expanded=true] svg{transform:rotate(45deg)}
.nav-wrap .bmu-mega{position:absolute;top:calc(100% + 16px);right:0;left:auto;width:min(1120px,calc(100vw - 100px));padding:28px!important;border-radius:25px;background:#fff;box-shadow:0 24px 70px #0002;max-height:calc(100vh - 150px);overflow:auto}.nav-wrap .bmu-mega.is-open{display:block!important;animation:mega-in .25s ease both}.mega-heading{display:flex;justify-content:space-between;align-items:center;gap:25px;margin-bottom:24px}.mega-heading small{font-size:10px;letter-spacing:.14em;color:#777}.mega-heading h2{font-size:25px;font-weight:500;line-height:1.3;margin:8px 0 0}.nav-wrap .nav .mega-heading .mega-all{font-size:13px!important;padding:10px 0!important;background:none!important;color:#111!important;white-space:nowrap;min-height:0;border-radius:0}.mega-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.nav-wrap .nav .bmu-mega a.mega-card{position:relative;display:block;padding:0!important;min-height:170px;height:190px;overflow:hidden;border-radius:15px;text-align:left;background:#191919;color:#fff!important;isolation:isolate}.mega-card img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .65s cubic-bezier(.2,.65,.3,1)}.mega-card:before{content:'';position:absolute;inset:0;z-index:1;background:linear-gradient(transparent 5%,#000c)}.mega-card-copy{position:absolute;bottom:22px;left:20px;right:36px;z-index:2;display:block}.mega-card strong{font-size:17px;font-weight:600;display:block;line-height:1.3}.mega-card small{display:block;font-size:11px;line-height:1.4;margin-top:7px;color:#fff;opacity:.85}.mega-card-arrow{position:absolute;right:18px;bottom:24px;color:#fff;z-index:2;font-size:20px;transition:transform .3s}.mega-card:hover img,.mega-card:focus-visible img{transform:scale(1.06)}.mega-card:hover .mega-card-arrow{transform:translate(3px,-3px)}.mega-card:focus-visible{outline:3px solid #ef4b53;outline-offset:3px}
.bmu-roll{display:inline-grid;position:relative;overflow:hidden;vertical-align:middle;line-height:1.4}.bmu-roll>span{grid-area:1/1;display:block;transition:transform .45s cubic-bezier(.25,.8,.25,1);white-space:nowrap}.bmu-roll>.bmu-roll-copy{transform:translateY(125%)}.bmu-motion:hover .bmu-roll>span:first-child,.bmu-motion:focus-visible .bmu-roll>span:first-child{transform:translateY(-125%)}.bmu-motion:hover .bmu-roll>.bmu-roll-copy,.bmu-motion:focus-visible .bmu-roll>.bmu-roll-copy{transform:translateY(0)}.bmu-motion{transition:background .3s,box-shadow .3s}.bmu-motion:focus-visible{outline:2px solid #ef4b53;outline-offset:4px}.bmu-motion.button:after{display:none!important}
@keyframes mega-in{from{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}
@media(max-width:999px){.nav-wrap .nav>li.ref-services-menu{display:block}.nav-wrap .ref-submenu-toggle{position:absolute!important;right:12px!important;top:18px!important;margin:0;width:32px;height:32px}.nav-wrap .nav>li.ref-services-menu{position:relative!important}.nav-wrap .bmu-mega{position:static;width:100%;max-height:none;padding:16px!important;box-shadow:none;margin:12px 0!important;background:#f3f3f3}.mega-heading{display:block;margin-bottom:16px}.mega-heading h2{font-size:20px}.nav-wrap .nav .mega-heading .mega-all{display:inline-block;margin-top:6px;font-size:12px!important}.mega-grid{grid-template-columns:repeat(2,1fr);gap:10px}.nav-wrap .nav .bmu-mega a.mega-card{height:155px;min-height:155px}.mega-card-copy{left:12px;bottom:14px;right:22px}.mega-card strong{font-size:14px}.mega-card small{font-size:10px}.mega-card-arrow{right:10px;bottom:12px;font-size:16px}body .header-right .button:not(.button-circle){min-width:100px;min-height:42px;padding:11px 20px;font-size:13px}.nav-wrap.active{height:100svh;max-height:100svh;overflow:auto}}
@media(prefers-reduced-motion:reduce){.bmu-roll>span,.mega-card img,.ref-submenu-toggle svg{transition:none}.bmu-mega.is-open{animation:none!important}}
body.ref-inner .button:not(.button-black):not(.button-outline),body.ref-inner .button:not(.button-black):not(.button-outline):hover,body .header-right a.button{color:#fff!important}
