/* Homepage refresh: software services and real work at eye level. */
.ui-refresh .header { height:96px; }
.ui-refresh .header nav { gap:25px; }
.ui-refresh .hero { padding-top:34px; }
.hero-layout { display:grid;grid-template-columns:1fr 1.04fr;gap:54px;align-items:center; }
.hero-message { padding:12px 0 24px; }
.hero-message .eyebrow { font-size:11px;letter-spacing:.12em;margin-bottom:26px; }
.ui-refresh .hero h1 { font-size:clamp(55px,5.25vw,76px);line-height:1.035;letter-spacing:-.055em; }
.hero-description { font-size:16px;line-height:1.8;color:#596273;max-width:445px;margin:26px 0 27px; }
.hero-actions { display:flex;align-items:center;gap:25px;flex-wrap:wrap; }
.hero-actions .pill { font-size:13px;padding:17px 24px; }
.hero-actions>a { font-size:13px;font-weight:550;display:inline-flex;gap:16px;align-items:center; }
.hero-actions>a:hover { color:var(--blue); }
.ui-refresh .showcase { position:relative;border:1px solid #e2e7f1;border-radius:22px;background:#edf2ff;box-shadow:0 20px 55px -35px #2f498859;min-width:0; }
.ui-refresh .showcase-toolbar { padding:17px 22px;background:#f6f8fe;font-size:10px; }
.ui-refresh .showcase-stage { display:flex;flex-direction:column;min-height:0;height:auto;background:transparent; }
.ui-refresh .showcase-art { order:0;height:305px;min-height:305px;padding:38px 26px 0;overflow:hidden; }
.ui-refresh .art-grid { background:none;border:1px solid #d8e1f2;border-radius:50%;width:430px;height:430px;inset:25px auto auto 65px;mask-image:none; }
.ui-refresh .art-grid::after { content:'';position:absolute;inset:35px;border:1px solid #d8e1f2;border-radius:50%; }
.ui-refresh .screen-wrap { max-width:none;align-self:flex-start;transform:perspective(1100px) rotateY(-6deg) rotateZ(-4deg) translateY(14px);border-radius:10px;box-shadow:0 18px 38px #29447d24; }
.ui-refresh .screen-top { padding:11px 13px; }
.ui-refresh .screen-wrap>img { aspect-ratio:1.65;object-fit:cover;object-position:top; }
.ui-refresh .showcase-art:hover .screen-wrap { transform:perspective(1100px) rotateY(-2deg) rotateZ(-2deg) translateY(8px); }
.ui-refresh .art-stamp { top:19px;right:20px;border:1px solid #e3e9f6;padding:10px 13px;font-size:8px;transform:rotate(5deg); }
.ui-refresh .showcase-story { order:1;padding:22px 27px 25px;display:grid;grid-template-columns:1fr auto;gap:11px 18px;align-items:center;background:linear-gradient(0deg,#f5f7fd,#f5f7fdcc); }
.ui-refresh .showcase-story .caps { grid-column:1/-1;font-size:9px;letter-spacing:.09em;color:#626e86; }
.ui-refresh .showcase-story h2 { margin:0;font-size:29px;letter-spacing:-1px;line-height:1.14; }
.ui-refresh .showcase-story>p { display:none; }
.ui-refresh .showcase-story .circle-link { margin:0;align-self:center; }
.ui-refresh .circle-link>span:first-child { position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%); }
.ui-refresh .round-arrow { width:40px;height:40px;font-size:24px; }
.ui-refresh .showcase-tabs { background:white; }
.ui-refresh .showcase-tabs button { padding:16px 12px;gap:9px;font-size:11px;min-height:75px;line-height:1.45; }
.ui-refresh .showcase-tabs small { font-size:9px; }
.ui-refresh .showcase-tabs .tab-arrow { display:none; }
.ui-refresh .showcase-tabs .tab-number { font-size:10px; }
.ui-refresh .showcase-stage[data-project-tone=ralomi] .screen-wrap { width:190px;transform:rotate(5deg) translateY(-8px);border:6px solid white;border-radius:20px; }
.ui-refresh .showcase-stage[data-project-tone=ralomi] .screen-wrap>img { aspect-ratio:auto; }
.ui-refresh .showcase-stage[data-project-tone=ralomi] .showcase-art { height:305px; }
.ui-refresh .hero-bottom { margin-top:30px;padding:24px 0;border-top:1px solid var(--line);font-size:11px; }
.hero-bottom .location-note { display:flex;gap:8px;align-items:center; }
.location-note::before { content:'';height:6px;width:6px;border-radius:50%;background:var(--blue); }
.capability-rail { display:grid;grid-template-columns:repeat(4,1fr);border-block:1px solid var(--line);margin-top:4px; }
.capability-rail>a { padding:21px 20px;border-right:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:13px; }
.capability-rail>a:first-child { padding-left:0; }.capability-rail>a:last-child { border-right:0;color:#23624e; }
.capability-rail small { font-size:10px;color:#6d7686;display:block;font-weight:400;margin-top:2px; }
.capability-rail>a:hover { color:var(--blue); }
.ui-refresh .intro-section { padding-top:82px;padding-bottom:82px; }
.ui-refresh .intro-layout { gap:70px; }
.ui-refresh .intro-layout h2 { font-size:53px; }
.ui-refresh .section-intro { font-size:25px; }
.ui-refresh .intro-right>p:not(.section-intro) { font-size:15px; }
.ui-refresh .expertise-list summary { font-size:15px; }.ui-refresh .expertise-list details>div { font-size:14px; }
.ui-refresh .work-section { background:#f6f7fa; }
.ui-refresh .work-meta h3 { font-size:21px; }.ui-refresh .work-meta p { font-size:13px; }
.ui-refresh .partnership { padding-top:82px; }
.ui-refresh .live-dot { animation:none; }
@media(min-width:1500px){.hero-layout{gap:70px}.ui-refresh .showcase-art{height:340px}.ui-refresh .showcase-stage[data-project-tone=ralomi] .showcase-art{height:340px}}
@media(max-width:1100px) and (min-width:761px){
  .ui-refresh .header nav{gap:17px;font-size:12px}.ui-refresh .header .pill{padding:13px 17px;gap:10px}
  .ui-refresh .header .brand-lockup{width:195px}.hero-layout{gap:28px}.ui-refresh .hero h1{font-size:57px}.hero-description{font-size:15px}
  .ui-refresh .showcase-art{height:280px;min-height:280px;padding-inline:18px}.ui-refresh .showcase-story{padding:20px}.ui-refresh .showcase-story h2{font-size:25px}
  .ui-refresh .showcase-tabs button{padding:13px 8px;font-size:10px}.ui-refresh .showcase-tabs small{font-size:9px}
  .ui-refresh .hero h1{font-size:52px}.hero-actions{gap:18px}.hero-actions .pill{padding:14px 17px;font-size:12px}.ui-refresh .intro-layout h2{font-size:43px}
}
@media(max-width:760px){
  .ui-refresh .header{height:84px;position:relative}.ui-refresh .hero{padding-top:20px}.hero-layout{grid-template-columns:1fr;gap:24px}
  .hero-message{padding:0}.hero-message .eyebrow{font-size:10px;letter-spacing:.06em;margin-bottom:19px}
  .ui-refresh .hero h1{font-size:clamp(47px,9vw,67px);line-height:1.03;letter-spacing:-.052em}.hero-description{font-size:15px;margin:22px 0;max-width:480px}
  .hero-actions{gap:22px}.hero-actions .pill{padding:14px 19px;font-size:12px}.hero-actions>a{font-size:12px}
  .ui-refresh .showcase{margin-top:6px;border-radius:17px}.ui-refresh .showcase-art{height:275px;min-height:275px;padding:25px 22px 0}
  .ui-refresh .showcase-story{padding:18px 22px 22px}.ui-refresh .showcase-story h2{font-size:27px}.ui-refresh .showcase-tabs button{min-height:72px;padding:12px 9px;font-size:10px;gap:7px}
  .ui-refresh .showcase-tabs small{font-size:9px}.ui-refresh .showcase-toolbar{padding:13px 17px;font-size:9px}.ui-refresh .showcase-counter{font-size:9px}
  .ui-refresh .hero-bottom{margin-top:24px;gap:16px;align-items:flex-start;font-size:10px;flex-direction:column;padding:20px 0}
  .capability-rail{grid-template-columns:1fr 1fr}.capability-rail>a{font-size:12px;padding:16px 10px;border-bottom:1px solid var(--line)}
  .capability-rail>a:first-child{padding-left:10px}.capability-rail>a:nth-child(2){border-right:0}.capability-rail>a:nth-child(n+3){border-bottom:0}.capability-rail small{font-size:9px}
  .ui-refresh .intro-section{padding-block:54px}.ui-refresh .intro-layout{gap:25px}.ui-refresh .intro-layout h2{font-size:40px}.ui-refresh .section-intro{font-size:23px}.ui-refresh .partnership{padding-top:54px}
}
@media(max-width:370px){.ui-refresh .hero h1{font-size:43px}.hero-actions{gap:16px}.hero-actions .pill{padding-inline:15px}.ui-refresh .showcase-art{height:235px;min-height:235px}.ui-refresh .showcase-story h2{font-size:24px}.ui-refresh .showcase-tabs button{padding:10px 6px;font-size:9px}.ui-refresh .showcase-tabs .tab-number{display:none}}
@media(prefers-reduced-motion:no-preference){.hero-message{animation:hero-enter .6s both}.hero-layout>.showcase{animation:hero-enter .7s .1s both}@keyframes hero-enter{from{opacity:0;transform:translateY(13px)}to{opacity:1;transform:none}}}

/* More colour and depth, with the approved light foundation. */
.expressive-brand .skip:not(:focus) { clip-path:inset(50%); }
.expressive-brand .header .brand-animated,.expressive-brand .footer-top .brand-animated { width:224px; }
.expressive-brand .hero { position:relative;isolation:isolate;padding-top:43px; }
.expressive-brand .hero::before { content:'';position:absolute;inset:0 0 80px 36%;z-index:-1;pointer-events:none;background:radial-gradient(ellipse at 64% 35%,#dfe9ff9c,transparent 65%); }
.expressive-brand .hero-message .eyebrow { display:inline-flex;padding:8px 13px 8px 10px;border:1px solid #dce5ff;border-radius:40px;background:#f3f6ff;color:#3153a6;font-size:10px;letter-spacing:.07em; }
.expressive-brand .hero-message .tiny-mark { color:#2855ff;font-size:21px; }
.expressive-brand .hero h1 { letter-spacing:-.05em;font-weight:550; }
.expressive-brand .hero h1>span { color:#2754ed; }
.expressive-brand .hero-description { color:#48566b; }
.expressive-brand .hero-actions .pill { box-shadow:0 7px 20px #2855ff2e;background:linear-gradient(125deg,#2855ff,#2444da); }
.expressive-brand .hero-actions .pill:hover { box-shadow:0 10px 24px #2855ff42; }
.expressive-brand .hero-actions>a { border-bottom:1px solid #c4cfea;padding-block:8px; }
.expressive-brand .showcase { border-color:#d8e0f4;background:#152044;box-shadow:0 25px 60px -26px #294b9366; }
.expressive-brand .showcase-toolbar { background:#172343;color:#d4dff6;border-color:#32436b; }
.expressive-brand .showcase-toolbar .live-dot { background:#b9e994;box-shadow:0 0 0 4px #b9e99412; }
.expressive-brand .showcase-toolbar .motion-control { color:#e1e9fb;border-color:#526185;background:#28365a; }
.expressive-brand .showcase-counter { color:#adc0e3; }
.expressive-brand .showcase-stage { background:#182750; }
.expressive-brand .showcase-art { background:radial-gradient(ellipse at 70% 35%,#526cec 0,#304baf 37%,#162956 90%);height:315px;min-height:315px;padding-top:44px; }
.expressive-brand .showcase-stage[data-project-tone] .showcase-art { height:315px;min-height:315px; }
.expressive-brand .art-grid,.expressive-brand .art-grid::after { border-color:#bfd1ff;opacity:.25; }
.expressive-brand .brand-track { stroke:#a5c5ff;opacity:.4; }.expressive-brand .brand-trail { stroke:#a9e5ff;filter:drop-shadow(0 0 4px #8aceff); }
.expressive-brand .showcase-story { background:#182750;padding-top:22px;padding-bottom:25px; }
.expressive-brand .showcase-story .caps { color:#b8caf0; }
.expressive-brand .showcase-story h2 { color:#fff;font-size:30px; }
.expressive-brand .showcase-story .round-arrow { background:#d4efaf;color:#173826;width:44px;height:44px; }
.expressive-brand .screen-wrap { box-shadow:0 20px 35px #091c6a55;border-color:#f1f5ff; }
.expressive-brand .art-stamp { border:0;box-shadow:0 7px 28px #15286150; }
.expressive-brand .showcase-tabs button[aria-selected=true] { background:#eef3ff; }.expressive-brand .showcase-tabs button[aria-selected=true]:before { height:4px; }
.expressive-brand .hero-bottom { margin-top:34px;border-top:0;color:#53637b;padding-top:16px;padding-bottom:19px; }
.expressive-brand .capability-rail { gap:10px;border:0;margin-top:0; }
.expressive-brand .capability-rail>a { border:1px solid #dfe7f6;border-radius:13px;padding:20px 16px;min-width:0;background:#f4f7fe;font-size:13px;transition:background .2s,transform .2s,border-color .2s; }
.expressive-brand .capability-rail>a:first-child { padding-left:17px;background:#2855ee;border-color:#2855ee;color:white; }
.expressive-brand .capability-rail>a:first-child small { color:#d5e0ff; }.expressive-brand .capability-rail>a:nth-child(3) { background:#edf4fd; }
.expressive-brand .capability-rail>a:last-child { background:#f0f7e9;border-color:#dce9cd; }
.expressive-brand .capability-rail>a>span:last-child { width:28px;height:28px;display:grid;place-items:center;background:#ffffff85;border-radius:50%;flex:none;color:#2855ff; }
.expressive-brand .capability-rail>a:first-child>span:last-child { background:#ffffff22;color:#fff; }.expressive-brand .capability-rail>a:last-child>span:last-child { color:#326a42; }
.expressive-brand .capability-rail>a:hover { transform:translateY(-3px);border-color:#8aa3ec; }
.expressive-brand .intro-layout h2>span,.expressive-brand .section-head h2>span,.expressive-brand .partner-statement h2>span,.expressive-brand .presence-heading h2>span { color:#3459ba; }
.expressive-brand .expertise-list { border:1px solid #dfe6f5;border-radius:16px;padding-inline:20px;overflow:hidden;background:#fafbff; }
.expressive-brand .expertise-list details:last-child { border-bottom:0; }.expressive-brand .expertise-list summary { padding-block:20px; }.expressive-brand .expertise-list details[open] { background:linear-gradient(90deg,#f2f5ff,transparent); }
.expressive-brand .work-section { background:linear-gradient(160deg,#f1f5ff,#f9faff 65%,#eef3fc); }
.expressive-brand .work-visual { border-radius:16px;border:1px solid #dce4f2; }.expressive-brand .work-meta p { color:#56657b; }
.expressive-brand .principle-icon { background:#e8eeff;color:#2855ff;border:1px solid #d7e2fe; }
.expressive-brand .process { gap:13px; }.expressive-brand .process article,.expressive-brand .process article:first-child { padding:22px 20px 25px;border:1px solid #dfe5f3;border-radius:14px;background:#f8faff; }
.expressive-brand .process article>span { display:inline-block;border-radius:30px;padding:5px 9px;background:#e8efff; }.expressive-brand .process p { color:#58687e;font-size:12px; }
.expressive-brand .process article:last-child { background:#edf6e8;border-color:#dfe8d8; }.expressive-brand .process article:last-child>span { background:#dceecd;color:#3a6644; }
.expressive-brand .final-cta { background:radial-gradient(ellipse at 90% 30%,#5777ff,transparent 50%),linear-gradient(120deg,#2344dd,#2855ff);box-shadow:0 22px 55px -32px #1737a385; }
.expressive-brand .header nav>a { position:relative; }.expressive-brand .header nav>a::after { content:'';position:absolute;bottom:5px;left:0;right:0;height:2px;background:currentColor;transform:scaleX(0);transform-origin:left;transition:transform .2s; }.expressive-brand .header nav>a:hover::after { transform:scaleX(1); }
.expressive-brand .pill>span,.expressive-brand .hero-actions>a>span { transition:transform .2s; }.expressive-brand .pill:hover>span,.expressive-brand .hero-actions>a:hover>span { transform:translate(2px,-2px); }
@media(min-width:1500px){.expressive-brand .showcase-stage[data-project-tone] .showcase-art{height:340px;min-height:340px}}
@media(max-width:1100px) and (min-width:761px){.expressive-brand .header .brand-animated{width:195px}.expressive-brand .showcase-stage[data-project-tone] .showcase-art{height:280px;min-height:280px}.expressive-brand .showcase-story h2{font-size:25px}.expressive-brand .capability-rail>a{padding:17px 12px;font-size:12px}.expressive-brand .capability-rail small{font-size:9px}.expressive-brand .process{gap:8px}.expressive-brand .process article{padding:18px 13px}}
@media(max-width:760px){
  .expressive-brand .header .brand-animated{width:195px}.expressive-brand .footer-top .brand-animated{width:210px}.expressive-brand .hero{padding-top:20px}.expressive-brand .hero::before{inset:38% 0 10%}
  .expressive-brand .hero-message .eyebrow{font-size:9px;padding:7px 10px;letter-spacing:.035em}.expressive-brand .hero-message .tiny-mark{font-size:19px}
  .expressive-brand .showcase-stage[data-project-tone] .showcase-art{height:275px;min-height:275px;padding-top:36px}.expressive-brand .showcase-story h2{font-size:27px}.expressive-brand .hero-bottom{margin-top:24px}
  .expressive-brand .capability-rail{gap:9px}.expressive-brand .capability-rail>a,.expressive-brand .capability-rail>a:first-child{padding:15px 11px;gap:6px;font-size:11px;border-radius:12px}.expressive-brand .capability-rail small{font-size:9px;line-height:1.5}.expressive-brand .capability-rail>a>span:last-child{width:23px;height:23px}
  .expressive-brand .expertise-list{padding-inline:15px}.expressive-brand .process{gap:12px}.expressive-brand .process article,.expressive-brand .process article:first-child{padding:20px}.expressive-brand .process h3{margin-top:16px}
}
@media(max-width:420px){.expressive-brand .header .brand-animated{width:180px}}
@media(max-width:370px){.expressive-brand .hero-message .eyebrow{font-size:8px;gap:7px}.expressive-brand .showcase-stage[data-project-tone] .showcase-art{height:235px;min-height:235px}.expressive-brand .showcase-story h2{font-size:24px}.expressive-brand .capability-rail>a>span:last-child{display:none}}
@media(prefers-reduced-motion:reduce){.expressive-brand .capability-rail>a:hover{transform:none}}
