.service-card{border-top:4px solid var(--accent,#0864df);overflow:hidden;display:flex;flex-direction:column}.service-card:nth-child(4n+2){--accent:#7c36b3}.service-card:nth-child(4n+3){--accent:#058876}.service-card:nth-child(4n+4){--accent:#c55e0b}.service-card h3 a{color:inherit;text-decoration:none}.service-image-link{display:block;overflow:hidden;border-radius:12px}.service-card .service-art{width:100%;height:auto;aspect-ratio:3/2;object-fit:cover;display:block;margin:0;transition:transform .3s}.service-image-link:hover img{transform:scale(1.035)}.service-card .service-number{margin-top:22px;color:var(--accent)}.card-capabilities{display:grid;gap:8px;margin:12px 0 22px;font-size:.82rem;color:#3e556b}.service-card .service-enquiry{margin-top:auto;color:var(--accent)}.feedback-section{display:grid;grid-template-columns:1fr 1fr;gap:60px;background:#edf6fb}.feedback-section h2{margin:20px 0}.feedback-section p{line-height:1.8}.feedback-note{background:white;border-left:3px solid #058876;padding:24px;margin-top:30px}.rating-field{border:0;padding:0;margin:0 0 20px;min-width:0}.rating-field legend{margin-bottom:12px;font-size:.85rem}.rating-options{display:flex;gap:8px;flex-wrap:wrap}.rating-options label{position:relative;display:block;margin:0;cursor:pointer}.rating-options input{position:absolute;opacity:0;width:1px;height:1px}.rating-options span{display:block;padding:12px;border:1px solid #c5d7e3;border-radius:8px;color:#35516b}.rating-options input:checked+span{background:#083b68;color:white;border-color:#083b68}.rating-options input:focus-visible+span{outline:3px solid #089ab8;outline-offset:3px}.contact-form .consent-label{display:flex;align-items:flex-start;gap:12px;font-size:.78rem;line-height:1.6}.contact-form .consent-label input{width:20px;height:20px;flex-shrink:0;margin:3px 0}.breadcrumbs{display:flex;gap:12px;flex-wrap:wrap;margin-bottom:32px;font-size:.82rem}.detail-hero{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:48px;background:linear-gradient(120deg,#fff,#eaf7f8)}.detail-hero h1{font-family:var(--display);font-size:clamp(2.3rem,4.4vw,4.6rem);line-height:1.08;letter-spacing:-.045em;margin:24px 0}.detail-hero p{font-size:1.1rem;line-height:1.8;margin-bottom:28px}.detail-hero figure{margin:0;min-width:0}.detail-hero img{width:100%;height:auto;border-radius:20px}.detail-hero figcaption{font-size:.68rem;color:#536a7d;margin-top:10px}.detail-options h2{max-width:900px}.detail-options>.scope-note{max-width:820px;margin:24px 0 36px;line-height:1.8}.option-grid{list-style:none;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.option-grid li{background:#f2f7fb;padding:28px;border:1px solid #dfebf3;border-radius:14px;border-top:3px solid #0864df}.option-grid strong,.option-grid span{display:block}.option-grid strong{font-size:1.1rem;margin-bottom:12px}.option-grid span{color:#52677d;line-height:1.8}.project-planning{display:grid;grid-template-columns:1fr 1fr;gap:60px;background:#082d4b;color:white}.project-planning h2{margin:20px 0 28px}.project-planning h3{margin:24px 0 12px}.project-planning p,.planning-card span{line-height:1.8;color:#d4e7f4}.planning-card{border:1px solid #52748d;padding:28px;border-radius:16px}.planning-card ol{padding-left:22px}.planning-card li{padding:12px 0 12px 8px}.planning-card strong,.planning-card span{display:block}.detail-faq{max-width:1100px;margin:auto}.detail-faq h2{margin:20px 0 32px}.detail-faq details{padding:22px 0;border-bottom:1px solid #d5e2ed}.detail-faq summary{cursor:pointer;font-weight:700;line-height:1.5}.detail-faq details p{margin-top:18px;line-height:1.8;color:#52677d}.related-services{background:#f3f7fb}.related-services h2{margin:20px 0 30px}.related-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.related-grid a{display:flex;justify-content:space-between;gap:20px;padding:22px;background:white;border:1px solid #dce7ef;border-radius:10px;text-decoration:none;color:#092948;font-weight:600}.related-grid a:hover{border-color:#0864df;color:#0864df}.detail-cta{text-align:center}.detail-cta p{margin:24px 0;line-height:1.7}.detail-back{display:block;margin-top:24px}.service-page main{overflow-wrap:anywhere}@media(min-width:1200px){.services .service-list{grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}.services .service-card{padding:18px}.services .service-card h3{font-size:1.1rem}.services .service-card>p{font-size:.83rem}.services .service-enquiry{font-size:.78rem}.services .card-capabilities{font-size:.75rem}.nav{gap:22px}}@media(max-width:800px){.feedback-section,.detail-hero,.project-planning{grid-template-columns:1fr;gap:32px}.detail-hero figure{max-width:650px}.option-grid,.related-grid{grid-template-columns:1fr}.feedback-note{margin-top:20px}.detail-hero h1{font-size:clamp(2.2rem,8vw,3.6rem)}.option-grid li{padding:22px}.rating-options{gap:5px}.rating-options span{padding:10px}.feedback-section .contact-form{padding:20px}}
.service-list{align-items:stretch}.service-card{height:100%}
.leader-card .leader-bio{font-size:.9rem;line-height:1.8;color:#52677d;margin:20px 0}.leader-details{border-top:1px solid #dce7ef;margin-top:24px;padding-top:18px}.leader-details summary{font-size:.84rem;font-weight:700;line-height:1.6;cursor:pointer;display:flex;justify-content:space-between;gap:10px;min-height:44px}.leader-details[open] summary{margin-bottom:20px}.leader-details[open] summary span{transform:rotate(45deg)}.leader-details h4{font-size:.88rem;color:#0864df;margin:24px 0 10px}.leader-details p,.leader-details li{font-size:.83rem;line-height:1.8;color:#52677d;overflow-wrap:anywhere}.leader-details ul{padding-left:18px}.leader-details li{margin-bottom:12px}.leader-details .project-context{font-size:.75rem;font-style:italic}.leader-card .leader-discipline{line-height:1.7}.leadership-grid{align-items:start}@media(max-width:800px){.leadership-grid{grid-template-columns:1fr}.leader-card{padding:26px}}
.hero-studio-refined{aspect-ratio:720/700;background:#082e4c;border:1px solid #0f4e6a;box-shadow:0 28px 60px -30px #084b6380;overflow:hidden}.hero-studio-refined>img{display:block;width:100%;height:auto}.hero-studio-refined{transition:transform .35s,box-shadow .35s}@media(hover:hover) and (prefers-reduced-motion:no-preference){.hero-studio-refined:hover{transform:translateY(-4px);box-shadow:0 34px 70px -30px #084b6390}}@media(max-width:800px){.hero-studio-refined{aspect-ratio:720/700}}
.brand-ribbon>a{font:800 clamp(1.15rem,2.3vw,2.3rem)/1.2 var(--display);letter-spacing:-.04em;display:flex;gap:clamp(20px,6vw,100px);align-items:center;min-height:44px;text-decoration:none;border-radius:8px}.brand-ribbon>a>span{font-size:1.25rem;opacity:.55}.brand-ribbon>a:hover{text-decoration:underline;text-underline-offset:6px}.brand-ribbon>a:focus-visible{outline:3px solid #089ab8;outline-offset:6px}@media(max-width:800px){.brand-ribbon>a{gap:12px}}@media(max-width:560px){.brand-ribbon>a{justify-content:space-between;font-size:1.2rem}}
.hero{position:relative;isolation:isolate;background:linear-gradient(125deg,#fff 20%,#f2faff 65%,#effbf6)}.hero:before{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;background:radial-gradient(ellipse at 85% 20%,#b8dfff66,transparent 45%),radial-gradient(ellipse at 20% 85%,#a1efcf40,transparent 40%);opacity:.65}.hero h1 em{background:linear-gradient(100deg,#0864df 10%,#087fbb 50%,#078672 85%);background-clip:text;-webkit-background-clip:text;color:transparent;background-size:200% 100%}.motion-toggle{display:inline-flex;gap:10px;align-items:center;min-height:44px;margin-top:15px;border:1px solid #d5e5ed;border-radius:22px;padding:9px 15px;background:#ffffffb3;color:#52677d;font:500 .72rem var(--display);cursor:pointer}.motion-toggle:hover{border-color:#0864df;color:#0864df}.hero-spark{position:absolute;pointer-events:none;line-height:1;color:#a7f7db;text-shadow:0 0 20px #8debdc55}.spark-one{left:47%;top:81%;font-size:30px}.spark-two{right:6%;top:32%;font-size:25px;color:#ffd792}.spark-three{left:3%;top:48%;font-size:30px}.hero-studio-refined{position:relative}.hero-studio-refined:hover{transform:none}
@media(prefers-reduced-motion:no-preference){.hero-studio-refined{animation:goar-float 7s ease-in-out infinite}.hero:before{animation:goar-glow 9s ease-in-out infinite alternate}.hero h1 em{animation:goar-colour 10s ease-in-out infinite alternate}.hero-spark{animation:goar-spark 5s ease-in-out infinite}.spark-two{animation-delay:-2s}.spark-three{animation-delay:-3s}.hero-copy>.eyebrow,.hero-copy>h1,.hero-copy>.hero-description,.hero-copy>.hero-actions{animation:goar-enter .8s ease-out both}.hero-copy>h1{animation-delay:.08s}.hero-copy>.hero-description{animation-delay:.16s}.hero-copy>.hero-actions{animation-delay:.24s}.brand-ribbon>a>span{transition:transform .2s}.brand-ribbon>a:hover>span{transform:translate(3px,-3px)}}
@keyframes goar-float{0%,100%{transform:translateY(0)}50%{transform:translateY(-9px)}}@keyframes goar-glow{from{opacity:.35}to{opacity:1}}@keyframes goar-colour{from{background-position:0% 50%}to{background-position:100% 50%}}@keyframes goar-spark{0%,100%{transform:translateY(0) rotate(0);opacity:.45}50%{transform:translateY(-7px) rotate(20deg);opacity:1}}@keyframes goar-enter{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}
.motion-paused .hero-studio-refined,.motion-paused .hero:before,.motion-paused .hero h1 em,.motion-paused .hero-spark{animation-play-state:paused}.motion-paused .hero-copy>*{animation:none!important}@media(prefers-reduced-motion:reduce){.motion-toggle{display:none}.hero-studio-refined,.hero:before,.hero h1 em,.hero-spark,.hero-copy>*{animation:none!important}.hero-studio-refined:hover{transform:none}}
footer .social-links{grid-column:1/-1;display:flex;flex-wrap:wrap;align-items:center;gap:12px;min-width:0;padding-top:24px;border-top:1px solid #ffffff24}footer .social-links>span{flex-basis:100%;display:block;margin:0 0 6px;color:#9fb9ce;font-size:.8rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase}footer .social-links>a{display:inline-flex;align-items:center;justify-content:center;min-height:46px;padding:11px 20px;border:1px solid #ffffff30;border-radius:10px;background:#ffffff08;color:#eef7ff;text-decoration:none;white-space:nowrap;font-size:.95rem;font-weight:600;line-height:1.4;transition:background .2s,border-color .2s}footer .social-links>a:hover{background:#ffffff16;border-color:#70d7ca;color:#a2f0dd}footer .social-links>a:focus-visible{outline:3px solid #73e0c7;outline-offset:4px}@media(max-width:560px){footer .social-links{gap:10px}footer .social-links>a{padding:11px 15px;font-size:.9rem}}
footer .footer-contact{grid-column:1/-1;display:flex;flex-wrap:wrap;align-items:center;gap:12px;min-width:0}footer .footer-contact>span{flex-basis:100%;color:#9fb9ce;font-size:.8rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;margin-bottom:6px}footer .footer-contact>a{display:inline-flex;align-items:center;min-height:46px;padding:11px 18px;border:1px solid #ffffff30;border-radius:10px;background:#ffffff08;color:#eef7ff;text-decoration:none;font-size:.95rem;line-height:1.5;overflow-wrap:anywhere;max-width:100%}footer .footer-contact>a:first-of-type{background:#146344;border-color:#308c67}footer .footer-contact>a:hover{border-color:#73e0c7;color:#a2f0dd}footer .footer-contact>a:focus-visible{outline:3px solid #73e0c7;outline-offset:4px}@media(max-width:560px){footer .footer-contact>a{font-size:.85rem;padding:11px 13px}}
footer .social-links>a,footer .footer-contact>a{gap:10px}.footer-icon{width:20px;height:20px;flex:0 0 20px;display:block}footer .footer-contact>a>span{min-width:0;overflow-wrap:anywhere}
.service-specifics{background:#f4fafb}.service-specifics>.scope-note{max-width:850px;line-height:1.8;margin:24px 0 32px}.service-specifics .option-grid li{background:#fff;border-top-color:#058876}.service-handover{margin-top:32px;padding:clamp(20px,4vw,40px);background:#fff;border:1px solid #d7e8ed;border-radius:16px;overflow-wrap:anywhere}.service-handover h3{margin:0 0 12px}.service-handover h3:not(:first-child){margin-top:28px}.service-handover p{line-height:1.8;color:#52677d;margin:0}.service-specifics h2{max-width:950px}
.app-concept-list{display:grid;gap:18px;margin-top:30px}.app-concept{background:white;border:1px solid #d2e4ec;border-radius:16px;overflow:hidden;min-width:0}.app-concept summary{cursor:pointer;padding:24px;color:#082d4b;font-size:1.2rem;font-weight:700;line-height:1.5}.app-concept summary small{display:block;font-size:.9rem;font-weight:400;margin:8px 0 0;color:#52677d}.app-concept summary:focus-visible{outline:3px solid #0864df;outline-offset:-4px}.app-concept[open] summary{background:#e6f4f5;border-bottom:1px solid #d2e4ec}.app-concept-body{padding:clamp(20px,4vw,38px);overflow-wrap:anywhere}.app-concept-body p,.app-concept-body li{line-height:1.8;color:#405a70}.app-concept-body h3{margin:12px 0;font-size:1.6rem}.app-concept-body h4{margin:26px 0 10px;font-size:1.12rem}.app-concept-body ul{padding-left:22px}.app-concept-body .concept-label{font-size:.82rem;color:#086b60}.concept-columns{display:grid;grid-template-columns:1fr 1fr;gap:30px}.concept-journey{padding:18px;background:#f0f6fc;border-left:3px solid #0864df;border-radius:6px}.concept-enquiry{display:inline-flex;padding:14px 20px;background:#086b60;color:white;border-radius:8px;text-decoration:none;min-height:44px;align-items:center;margin-top:20px}.concept-enquiry:focus-visible{outline:3px solid #0864df;outline-offset:4px}@media(max-width:700px){.concept-columns{grid-template-columns:1fr;gap:0}.app-concept summary{padding:20px;font-size:1.05rem}}
.app-category-link{display:block;padding:24px;text-decoration:none;color:#082d4b;border-left:4px solid #058876}.app-category-link>span{font-weight:700;font-size:1.2rem}.app-category-link small,.app-category-link strong{display:block;margin-top:12px;line-height:1.6}.app-category-link small{color:#52677d;font-size:.9rem}.app-category-link strong{color:#086b60;font-size:1rem}.app-category-link:hover{background:#e6f4f5}.app-category-link:focus-visible{outline:3px solid #0864df;outline-offset:3px}.retail-app-intro{background:linear-gradient(120deg,#fff,#eaf7f8)}.retail-app-intro h1{font-size:clamp(2.3rem,5vw,4.6rem);line-height:1.12;max-width:900px;margin:24px 0}.retail-app-intro>p{max-width:850px;line-height:1.8}.retail-app-intro .scope-note{color:#52677d;font-size:1rem}
.app-screen-previews{background:#eaf2f8}.app-screen-previews>p{max-width:850px;line-height:1.8;color:#405a70;margin:22px 0 36px}.app-screen-grid{display:grid;grid-template-columns:repeat(2,minmax(0,390px));justify-content:center;gap:48px}.app-screen-grid figure{margin:0;min-width:0}.app-screen-grid img{display:block;width:100%;height:auto;filter:drop-shadow(0 16px 20px #082d4b22)}.app-screen-grid figcaption{text-align:center;line-height:1.6;font-size:.9rem;color:#405a70;margin-top:20px}.app-screen-grid a{display:block;border-radius:40px}.app-screen-grid a:focus-visible{outline:3px solid #0864df;outline-offset:6px}@media(max-width:650px){.app-screen-grid{grid-template-columns:minmax(0,340px);gap:36px}}
.premium-shopping-preview{margin:32px auto 0;max-width:1200px}.premium-shopping-preview img{display:block;width:100%;height:auto;border-radius:20px;box-shadow:0 15px 40px #082d4b18}.premium-shopping-preview figcaption{margin-top:16px;font-size:.9rem;line-height:1.7;color:#405a70}.premium-shopping-preview a{display:block}.premium-shopping-preview a:focus-visible{outline:3px solid #0864df;outline-offset:6px}
.option-grid li.subservice-option{padding:0;overflow:hidden}.subservice-option>a{display:block;padding:28px;height:100%;color:inherit;text-decoration:none}.subservice-option>a:hover{background:#e5f4f0}.subservice-option>a:focus-visible{outline:3px solid #0864df;outline-offset:-4px}.subservice-option .subservice-open{color:#086b60;font-weight:700;margin-top:22px;font-size:.95rem}
