:root{--orange:#d15710;--black:#171717;--paper:#fff;--muted:#626262;--line:#d8d8d8}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:105px}body{margin:0;background:var(--paper);color:var(--black);font-family:Aptos,Arial,sans-serif;font-size:16px;line-height:1.5}button,input,textarea{font:inherit}a{color:inherit;text-decoration:none}button{cursor:pointer}button,a,input,textarea,summary{ -webkit-tap-highlight-color:transparent}button:focus-visible,a:focus-visible,summary:focus-visible,input:focus-visible,textarea:focus-visible{outline:3px solid var(--orange);outline-offset:5px}button{border:0}h1,h2,h3,p{margin:0}h1,h2,h3{line-height:1.05;letter-spacing:-.045em}p{line-height:1.55}header{height:96px;padding:0 5%;display:flex;align-items:center;justify-content:space-between;background:#fff;border-bottom:1px solid var(--line);position:sticky;top:0;z-index:10}.logo{display:block;position:relative;width:208px;height:42px;overflow:hidden;flex-shrink:0}.logo img{position:absolute;width:218px;max-width:none;height:auto;left:-5px;top:-33px}nav{display:flex;gap:30px}nav a{font-size:14px}nav a:hover{color:var(--orange)}.header-call{background:var(--black);color:#fff;padding:14px 20px;font-size:14px}.menu{display:none}.skip{position:fixed;top:-60px;left:12px;background:var(--orange);color:white;padding:12px;z-index:100}.skip:focus{top:10px}section{padding:110px 5%}.eyebrow{font-size:12px;letter-spacing:.12em;font-weight:700}.hero{padding-top:52px;padding-bottom:0}.hero-top{display:flex;justify-content:space-between;align-items:center}.edition{font-size:12px;color:var(--muted)}h1{font-size:clamp(58px,7.8vw,125px);font-weight:600;line-height:1.02;margin:50px 0 44px;max-width:1200px}h1 span{color:var(--orange)}.hero-bottom{display:grid;grid-template-columns:1fr 1fr;gap:7%;margin-bottom:54px}.hero-bottom>p{font-size:23px;line-height:1.3;letter-spacing:-.02em}.hero-bottom>div>p{max-width:560px;color:var(--muted)}.actions{display:flex;flex-wrap:wrap;align-items:center;gap:26px;margin-top:28px}.primary{background:var(--orange);color:#fff;padding:18px 25px;transition:background .2s}.primary:hover{background:#ac4208}.text-button{background:transparent;padding:0;color:inherit;text-decoration:underline;text-underline-offset:6px;font-weight:500}.text-button:hover{color:var(--orange)}.secondary{background:transparent;border:1px solid currentColor;padding:17px 25px}.practice-strip{border-top:1px solid var(--line);display:grid;grid-template-columns:repeat(4,1fr);padding:26px 0;gap:20px;font-size:15px}.practice-strip a:hover{color:var(--orange)}.experience{background:var(--black);color:#fff;padding-top:55px;padding-bottom:50px}.experience>.eyebrow{color:#a4a4a4}.client-list{display:flex;justify-content:space-between;flex-wrap:wrap;gap:28px;margin:30px 0 50px}.client-list span{font-size:clamp(18px,2vw,28px);font-weight:600;letter-spacing:-.035em}.metrics{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid #4b4b4b;padding-top:32px;gap:24px}.metrics strong{font-size:46px;display:block;letter-spacing:-.04em;font-weight:500}.metrics span{font-size:13px;color:#b0b0b0}.section-intro{margin-bottom:55px}.section-intro h2{font-size:clamp(42px,5vw,76px);font-weight:500;margin:24px 0;max-width:1000px}.section-intro>p{color:var(--muted);max-width:610px}.solutions{display:grid;grid-template-columns:1fr 1.12fr;gap:7%}.solutions .section-intro h2{font-size:clamp(42px,4vw,62px)}.solution-list details{border-top:1px solid var(--line)}.solution-list details:last-child{border-bottom:1px solid var(--line)}summary{list-style:none;display:flex;align-items:center;gap:20px;padding:30px 0;cursor:pointer}summary::-webkit-details-marker{display:none}.index{color:var(--orange);font-size:13px;align-self:flex-start;margin-top:8px}summary h3{font-size:clamp(26px,2.5vw,37px);font-weight:500}.detail-sign{font-size:28px;margin-left:auto;font-weight:300}details[open] .detail-sign{transform:rotate(45deg)}.solution-body{padding:0 0 28px 36px;color:var(--muted);max-width:680px}.solution-body ul{padding-left:18px;margin:22px 0;font-size:15px}.solution-body li{padding-bottom:7px}.technology{font-size:13px;color:var(--black);margin-bottom:20px}.work{background:#f3f3f3}.filters{display:flex;flex-wrap:wrap;gap:25px;border-bottom:1px solid #ccc;padding-bottom:18px;margin-bottom:35px}.filters button{background:transparent;padding:8px 0;font-size:14px;color:var(--muted)}.filters button.active{color:var(--black);box-shadow:0 2px 0 var(--orange);font-weight:700}.projects{display:grid;grid-template-columns:repeat(2,1fr);gap:34px}.project{background:#fff;border:1px solid #ddd;text-align:left;padding:0;color:var(--black);width:100%;display:flex;flex-direction:column}.project-cover{padding:30px;min-height:220px;background:var(--black);color:#fff;display:flex;flex-direction:column;justify-content:space-between;overflow:hidden}.project:nth-child(3n+2) .project-cover{background:var(--orange)}.project-cover .eyebrow{color:#e5e5e5;font-size:12px;letter-spacing:.07em}.project-cover h3{font-size:clamp(30px,3vw,49px);max-width:540px;font-weight:500;transition:transform .25s}.project:hover .project-cover h3{transform:translateY(-5px)}.project-info{padding:25px 30px 28px;display:flex;flex-direction:column;gap:14px;flex:1}.project-info strong{font-size:22px;letter-spacing:-.02em}.project-info>p{font-size:16px;color:var(--muted)}.project-meta{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;font-size:12px}.project-meta span:first-child{color:var(--orange);font-weight:700}.project-meta span:last-child{color:var(--muted)}.project-scope{font-size:13px;margin-top:auto}.portfolio-note{font-size:13px;color:var(--muted);margin-top:30px}.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:40px}.steps article{border-top:1px solid var(--black);padding-top:25px}.steps span{color:var(--orange);font-size:15px}.steps h3{font-size:27px;font-weight:500;margin:28px 0 20px;letter-spacing:-.03em}.steps p{color:var(--muted);font-size:16px}.company{background:var(--black);color:white;display:grid;grid-template-columns:1fr 2fr;gap:35px}.company>.eyebrow{color:#b1b1b1}.company h2{font-size:clamp(44px,5.5vw,82px);font-weight:500;margin-bottom:36px}.company p{max-width:750px;font-size:19px;color:#c3c3c3;margin-bottom:22px}.contact-section{background:var(--orange);color:#fff}.contact-section h2{font-size:clamp(60px,9vw,135px);font-weight:500;margin:35px 0 45px}.contact-section .primary{background:var(--black)}.contact-section .primary:hover{background:#333}.contact-section .actions{margin-top:0}.email-link{display:inline-block;font-size:17px;border-bottom:1px solid #ffffff88;margin-top:45px}footer{background:var(--black);color:#ccc;display:flex;align-items:center;justify-content:space-between;padding:35px 5%;gap:25px;font-size:13px}.companion-trigger{position:fixed;bottom:24px;right:24px;background:var(--black);color:#fff;box-shadow:0 4px 24px #0003;border:1px solid #666;z-index:15;border-radius:32px;display:flex;align-items:center;gap:12px;padding:12px 18px;font-size:14px}.orb{display:block;width:20px;height:20px;border-radius:50%;background:radial-gradient(circle at 30% 25%,#ffcfa8,var(--orange) 55%,#772607)}.companion{position:fixed;right:24px;bottom:85px;width:min(380px,calc(100vw - 32px));padding:30px;background:#fff;border:1px solid #bbb;box-shadow:0 8px 40px #0002;z-index:16}.companion h3{font-size:27px;font-weight:500;margin:20px 0 15px;line-height:1.15}.companion p{font-size:14px;color:var(--muted);margin-bottom:16px}.companion>button:not(.close-companion){display:block;background:#f3f3f3;padding:12px;text-align:left;width:100%;margin:8px 0;font-size:14px}.companion>button:hover{background:#e8e8e8}.companion .explore-self{background:transparent!important;text-decoration:underline}.close-companion,.dialog-close{position:absolute;top:12px;right:15px;background:transparent;font-size:27px;color:var(--muted);padding:4px 8px}dialog{width:min(660px,calc(100vw - 32px));max-height:90dvh;overflow:auto;padding:42px;border:0;box-shadow:0 10px 70px #0005;color:var(--black)}dialog::backdrop{background:#0009}dialog h2{font-size:40px;font-weight:500;margin:20px 0 24px}dialog p{color:var(--muted);margin-bottom:20px}dialog h3{font-size:24px;margin:28px 0 16px}dialog ul{padding-left:20px;color:var(--muted)}dialog li{margin:10px 0}form{display:grid;gap:18px;margin-top:28px}form label{display:grid;gap:7px;font-size:14px;font-weight:600}input,textarea{width:100%;border:1px solid #bbb;border-radius:0;background:white;padding:12px;font-size:16px;color:var(--black)}textarea{resize:vertical}form .form-note,.email-fallback{font-size:13px;font-weight:400}form .primary{justify-self:start}.email-fallback a{text-decoration:underline}.email-fallback button{font-size:13px}[hidden]{display:none!important}@media(min-width:1600px){header,section,footer{padding-left:max(5%,calc((100vw - 1450px)/2));padding-right:max(5%,calc((100vw - 1450px)/2))}}@media(max-width:1000px){nav{gap:16px}.header-call{display:none}.solutions{grid-template-columns:1fr;gap:10px}.steps{grid-template-columns:repeat(2,1fr);gap:35px}.company{grid-template-columns:1fr}.company h2 br{display:none}.client-list{justify-content:flex-start;gap:25px 40px}}@media(max-width:640px){header{height:78px}.logo{width:172px;height:36px}.logo img{width:180px;top:-27px;left:-4px}.menu{display:block;background:transparent;border:1px solid var(--line);padding:9px 14px;font-size:14px}nav{display:none;position:absolute;top:78px;left:0;right:0;padding:24px 5%;background:#fff;border-bottom:1px solid var(--line);flex-direction:column;gap:22px}nav.open{display:flex}section{padding:70px 5%}.hero{padding-top:35px;padding-bottom:0}.hero .edition{display:none}.hero h1{font-size:clamp(44px,10vw,65px);margin:38px 0}.hero-bottom{grid-template-columns:1fr;gap:25px;margin-bottom:35px}.hero-bottom>p{font-size:21px}.actions{gap:22px}.primary,.secondary{padding:16px 20px;font-size:15px}.practice-strip{grid-template-columns:repeat(2,1fr);font-size:13px;padding:24px 0}.metrics{grid-template-columns:repeat(2,1fr);gap:25px}.metrics strong{font-size:38px}.experience{padding-top:35px;padding-bottom:40px}.client-list{margin-bottom:30px;gap:18px 25px}.client-list span{font-size:21px}.section-intro h2{font-size:42px}.section-intro{margin-bottom:32px}.projects{grid-template-columns:1fr;gap:24px}.project-cover{min-height:205px;padding:25px}.project-cover h3{font-size:37px}.project-info{padding:22px 25px}.filters{gap:14px}.filters button{font-size:13px}.steps{grid-template-columns:1fr;gap:30px}.steps h3{margin:18px 0 12px}.company h2{font-size:45px}.company p{font-size:17px}.contact-section h2{font-size:64px}.contact-section .actions{align-items:flex-start;flex-direction:column}footer{align-items:flex-start;flex-direction:column;padding-bottom:105px}.companion-trigger{bottom:16px;right:16px;font-size:13px}.companion{right:16px;bottom:75px}dialog{padding:32px 24px}dialog h2{font-size:32px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important;animation:none!important}}
/* Editorial rhythm inspired by the supplied visual reference. */
:root{--paper:#f7f7f5;--line:#deded9}body{background:var(--paper)}header{height:84px;background:#f7f7f5eF;backdrop-filter:blur(14px);border-bottom:0}button.primary,.secondary,.header-call{border-radius:7px}.hero{position:relative;text-align:center;padding-top:75px;overflow:hidden;background:linear-gradient(125deg,transparent 18%,#e4e4df77 26%,#ffffffaa 29%,transparent 38%,transparent 61%,#dfdfda66 68%,#ffffffaa 72%,transparent 79%)}.hero h1{font-size:clamp(52px,6.5vw,94px);max-width:950px;margin:28px auto 25px;line-height:1.08;font-weight:500}.hero h1 span{color:#81817b}.inline-icon{width:.84em;height:.84em;vertical-align:middle;object-fit:contain;transform:rotate(-7deg)}.hero-description{max-width:610px;margin:auto;color:var(--muted);font-size:18px}.hero .actions{justify-content:center;margin-top:30px}.practice-strip{border:0;display:flex;justify-content:center;flex-wrap:wrap;gap:24px;padding:32px 0 38px;font-size:12px;color:#555}.practice-strip a{display:flex;align-items:center;gap:8px}.practice-strip img{width:31px;height:31px;object-fit:contain}.showcase{max-width:1220px;margin:0 auto 55px;background:#1d1d1c;color:#fff;border-radius:22px;padding:30px;text-align:left;box-shadow:0 20px 50px #29291c12}.showcase-heading{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:22px}.showcase-heading .eyebrow{font-size:10px;color:#b8b8b0}.showcase-heading a{font-size:12px}.showcase-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:13px}.showcase-grid a{background:#eeeae2;border-radius:12px;min-height:240px;padding:22px;color:#242422;display:flex;flex-direction:column;transition:transform .2s}.showcase-grid a:nth-child(2){background:#f2cfb7}.showcase-grid a:nth-child(3){background:#e4e7de}.showcase-grid a:nth-child(4){background:#dddfe4}.showcase-grid a:hover{transform:translateY(-5px)}.showcase-grid img{width:85px;height:85px;object-fit:contain;margin:0 0 25px auto}.showcase-grid span{font-size:10px;text-transform:uppercase;letter-spacing:.08em;margin-bottom:8px}.showcase-grid strong{font-size:24px;font-weight:500;letter-spacing:-.04em;line-height:1.1;margin-bottom:8px}.showcase-grid small{font-size:11px;color:#62625d}.experience{background:transparent;color:var(--black);max-width:1300px;margin:auto;padding-top:25px;padding-bottom:65px;text-align:center}.experience>.eyebrow{color:#777}.client-list{margin:25px 0 45px;justify-content:center;gap:35px 50px}.client-list span{font-size:23px;color:#555}.metrics{border-color:var(--line);text-align:left;padding-top:30px}.metrics strong{font-size:44px}.metrics span{color:#777}.solutions{border-top:1px solid var(--line);padding-top:95px;padding-bottom:95px;align-items:start}.section-intro h2{font-size:clamp(40px,4.5vw,64px)}.solution-icon{width:46px;height:46px;object-fit:contain;flex-shrink:0}summary h3{font-size:27px}.solution-body{padding-left:66px}.work{background:#eeefea;padding-top:85px;padding-bottom:85px}.work>.section-intro{text-align:center}.work .section-intro p{margin:auto}.projects{max-width:1190px;margin:auto;gap:30px}.project{border:0;background:transparent;border-radius:14px;overflow:hidden}.project-cover{position:relative;min-height:280px;background:#e1ded3;color:#252522;border-radius:14px;padding:28px}.project:nth-child(3n+2) .project-cover{background:#edd5c2}.project:nth-child(3n+3) .project-cover{background:#d9e0d7}.project:nth-child(4n) .project-cover{background:#d8dce4}.project-cover .eyebrow{color:#5a5953;font-size:11px}.project-cover img{position:absolute;width:105px;height:105px;right:30px;top:38px;object-fit:contain}.project-cover h3{font-size:36px;max-width:75%;padding-top:115px;line-height:1.1}.project-arrow{position:absolute;right:30px;bottom:30px;font-size:27px}.project-info{padding:23px 4px 10px;gap:10px}.project-info strong{font-size:19px}.project-info p{font-size:15px}.project-meta{font-size:10px}.project-scope{color:#777;font-size:12px}.work-bottom{max-width:1190px;margin:32px auto 0;display:flex;justify-content:space-between;align-items:center;gap:20px}.work-bottom p{font-size:13px;color:#777}.work-bottom .secondary{font-size:14px;padding:12px 20px}.approach{text-align:center;padding-top:100px;padding-bottom:100px}.steps{gap:20px;max-width:1200px;margin:auto;text-align:left}.steps article{background:#fff;border:1px solid #e4e4dd;box-shadow:0 8px 26px #22220907;border-radius:12px;padding:28px;transform:rotate(-1.5deg)}.steps article:nth-child(2n){transform:rotate(1.5deg)}.steps span{font-size:45px;font-weight:300;color:#c4c4bc}.steps h3{font-size:24px;margin:25px 0 16px}.steps p{font-size:14px}.company{background:#e9e9e3;color:#222;grid-template-columns:1fr 2fr;border-radius:0}.company>.eyebrow{color:#73736c}.company h2{font-size:clamp(40px,4.5vw,64px)}.company p{font-size:18px;color:#676760}.faq{display:grid;grid-template-columns:1fr 1.2fr;gap:8%;padding-top:100px;padding-bottom:100px}.faq details{border-bottom:1px solid var(--line)}.faq summary{font-size:17px;font-weight:500;letter-spacing:-.02em;justify-content:space-between;padding:24px 0}.faq summary span{font-size:25px;color:#888}.faq details p{font-size:15px;color:#666;padding-bottom:24px;max-width:650px}.contact-section{text-align:center;background:#1e1e1d;color:#fff;position:relative;background-image:linear-gradient(125deg,transparent 20%,#ffffff05 29%,transparent 37%,transparent 65%,#ffffff08 75%,transparent 85%)}.contact-section h2{font-size:clamp(48px,7vw,100px);margin:25px 0 35px}.contact-section .actions{justify-content:center}.contact-section .primary{background:var(--orange)}.contact-section .email-link{font-size:14px;margin-top:30px}footer{border-top:1px solid #ffffff17;background:#1e1e1d}.companion{border-radius:14px}.companion button:not(.close-companion){border-radius:6px}.companion-trigger{box-shadow:0 8px 30px #0002}#guide-result{border-top:1px solid #ddd;margin-top:18px;padding-top:15px}#guide-result button{display:block;width:100%;text-align:left;padding:10px;background:#f3e3d7;margin-top:8px;border-radius:5px;font-size:14px}.portfolio-head{text-align:center;padding-top:65px;padding-bottom:70px}.portfolio-head h1{font-size:clamp(48px,6vw,90px);margin:25px auto;max-width:950px}.portfolio-head p{max-width:650px;margin:auto;color:#666}.filters{max-width:1190px;margin-left:auto;margin-right:auto}
@media(max-width:1000px){.showcase-grid{grid-template-columns:repeat(2,1fr)}.showcase-grid a{min-height:220px}.hero h1{font-size:70px}.faq{grid-template-columns:1fr;gap:0}.solution-body{max-width:none}.steps article{padding:25px}.company{grid-template-columns:1fr}.company h2 br{display:block}}
@media(max-width:640px){header{height:78px}.hero{padding-top:45px}.hero>.eyebrow{font-size:9px}.hero h1{font-size:clamp(40px,10.5vw,60px);margin:25px auto;line-height:1.1}.hero-description{font-size:16px}.hero .actions{gap:18px}.practice-strip{gap:14px 20px;max-width:380px;margin:auto;font-size:11px;padding:30px 0}.practice-strip img{width:24px;height:24px}.showcase{padding:16px;border-radius:15px;margin-bottom:25px}.showcase-heading{align-items:flex-start;flex-direction:column;gap:8px}.showcase-heading .eyebrow{font-size:8px}.showcase-heading a{font-size:11px}.showcase-grid{gap:10px}.showcase-grid a{padding:16px;min-height:200px}.showcase-grid img{width:55px;height:55px;margin-bottom:20px}.showcase-grid span{font-size:8px}.showcase-grid strong{font-size:20px}.showcase-grid small{font-size:10px}.experience{padding-top:20px;padding-bottom:50px}.client-list{gap:16px 26px;margin-bottom:30px}.client-list span{font-size:18px}.metrics strong{font-size:36px}.metrics span{font-size:11px}.solutions,.work,.approach,.faq{padding-top:60px;padding-bottom:60px}.solution-icon{width:38px;height:38px}summary{gap:13px}summary h3{font-size:23px}.solution-body{padding-left:0}.project-cover{min-height:245px;padding:25px}.project-cover img{width:90px;height:90px;right:25px;top:30px}.project-cover h3{font-size:32px;padding-top:100px;max-width:80%}.work-bottom{align-items:flex-start;flex-direction:column}.steps{gap:22px}.steps article{transform:none!important}.company p{font-size:16px}.company h2{font-size:40px}.faq summary{font-size:16px}.contact-section .actions{align-items:center}.contact-section h2{font-size:58px}footer{padding-bottom:100px}.portfolio-head{padding-top:45px;padding-bottom:45px}.portfolio-head h1{font-size:45px}.portfolio-head p{font-size:15px}}

.industry-list{max-width:850px;margin:20px auto 36px;font-size:20px;line-height:1.7;color:#555}.selected-clients>.eyebrow{color:#888;font-size:11px}.selected-clients .client-list{margin:20px 0 40px}.selected-clients .client-list span{font-size:19px}.project-info>p{font-size:16px}@media(max-width:640px){.industry-list{font-size:17px;margin-bottom:30px}.selected-clients .client-list span{font-size:17px}}
/* Shared service, editorial, guide and enquiry surfaces. */
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.service-links{display:flex;gap:20px;flex-wrap:wrap;align-items:center;font-size:14px}.service-links>a:last-child{color:#666}.site-footer{display:block;padding:65px 5% 110px}.footer-top{display:grid;grid-template-columns:1.3fr 1fr .8fr 1.2fr;gap:45px}.footer-brand>p{font-size:15px;line-height:1.6;margin-top:25px;max-width:285px;color:#aaa}.footer-group{display:flex;flex-direction:column;align-items:flex-start;gap:12px;min-width:0}.footer-group h2{font-size:16px;letter-spacing:0;font-weight:600;color:#fff;margin-bottom:8px}.footer-group a,.footer-group button{font-size:14px;color:#bbb;line-height:1.5;text-align:left;overflow-wrap:anywhere}.footer-group button{background:none;padding:0}.footer-group a:hover,.footer-group button:hover{color:#fff;text-decoration:underline;text-underline-offset:4px}.footer-bottom{border-top:1px solid #ffffff20;display:flex;justify-content:space-between;gap:25px;margin-top:50px;padding-top:25px;font-size:13px}.footer-bottom span{color:#999}.footer-bottom a{text-decoration:underline;text-underline-offset:4px}.insights-section{background:#f7f7f5;padding-top:85px;padding-bottom:85px}.insight-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.insight-card{background:#fff;border:1px solid #e4e4df;border-radius:14px;overflow:hidden;display:flex;flex-direction:column;transition:transform .2s}.insight-card:hover{transform:translateY(-4px)}.insight-art{height:175px;background:#ecece7;padding:22px;display:flex;align-items:flex-end;justify-content:space-between;gap:16px}.insight-card:nth-child(2) .insight-art{background:#f0e0d5}.insight-card:nth-child(3) .insight-art{background:#e5e7e4}.insight-art img{width:100px;height:100px;object-fit:contain}.insight-art span{font-size:13px;color:#575750}.insight-copy{padding:25px;flex:1;display:flex;flex-direction:column;gap:15px}.insight-copy .eyebrow{font-size:12px;color:#9c410c}.insight-copy h3{font-size:26px;line-height:1.15;font-weight:500}.insight-copy p{font-size:16px;color:#666}.read-link{font-size:14px;text-decoration:underline;text-underline-offset:5px;margin-top:auto;padding-top:10px}.all-insights{display:inline-block;margin-top:30px}.service-hero{display:grid;grid-template-columns:1fr 260px;align-items:center;gap:70px;padding-top:60px;padding-bottom:75px;background:linear-gradient(125deg,transparent 40%,#e3e3dc88 55%,transparent 70%)}.breadcrumb{display:block;color:#777;font-size:14px;margin-bottom:35px;text-decoration:underline;text-underline-offset:5px}.service-hero .eyebrow{display:block;color:var(--orange)}.service-hero h1{font-size:clamp(43px,5.4vw,78px);max-width:920px;line-height:1.08;margin:24px 0}.service-hero p{font-size:19px;max-width:660px;color:#666}.service-hero>img{width:100%;max-height:280px;object-fit:contain}.service-scope{padding-top:75px;padding-bottom:80px;background:#fff}.capability-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:40px}.capability-grid article{border-top:1px solid #ddd;padding-top:25px}.capability-grid h3{font-size:26px;font-weight:500;line-height:1.15;margin-bottom:20px}.capability-grid p{font-size:16px;color:#666}.service-foundation{display:grid;grid-template-columns:1.1fr 1fr;gap:10%;padding-top:75px;padding-bottom:75px}.service-foundation h2{font-size:43px;font-weight:500;margin:25px 0}.service-foundation h3{font-size:30px;font-weight:500;line-height:1.2;margin:25px 0 20px}.service-foundation p{font-size:17px;color:#666;margin-bottom:24px}.tech-chips{display:flex;flex-wrap:wrap;gap:10px}.tech-chips span{font-size:14px;background:#fff;border:1px solid #ddd;border-radius:5px;padding:10px 14px}.article-page{max-width:990px;margin:auto;padding:65px 40px 95px}.article-page>.eyebrow{color:var(--orange)}.article-page h1{font-size:clamp(40px,5vw,68px);line-height:1.08;margin:24px 0}.article-lead{font-size:21px;color:#666;margin-bottom:25px}.article-body{max-width:750px;margin:40px 0}.article-body section{padding:28px 0}.article-body h2{font-size:29px;line-height:1.15;font-weight:500;margin-bottom:18px}.article-body p{font-size:18px;color:#606059;margin-bottom:18px}.article-body a{text-decoration:underline;text-underline-offset:4px}.article-cta{background:#eeeee8;border-radius:15px;padding:30px}.article-cta h2{font-size:32px;font-weight:500;margin-bottom:16px}.article-cta p{margin-bottom:25px;color:#666}.article-cta .text-button{display:inline-block;margin:20px}.notice-date{font-size:14px;color:#777}.companion{max-height:calc(100dvh - 115px);overflow:auto;width:min(420px,calc(100vw - 32px));padding:30px}.companion h2{font-size:27px;font-weight:500;line-height:1.15;letter-spacing:-.03em;margin:15px 0 20px}.guide-progress{font-size:13px!important;margin-top:16px;margin-bottom:0!important;color:#666}.companion .eyebrow{font-size:11px}#guide-content>button{display:block;width:100%;text-align:left;background:#f1f1ed;border:1px solid #e1e1da;border-radius:7px;padding:13px 15px;font-size:15px;margin:9px 0;color:#222}#guide-content>button:hover{background:#eaeae3}#guide-content>.guide-primary{background:var(--orange);color:#fff;border-color:var(--orange)}.guide-controls{display:flex;gap:16px;flex-wrap:wrap;margin-top:20px;padding-top:16px;border-top:1px solid #ddd}.guide-controls button{background:none;font-size:13px;padding:3px 0;text-decoration:underline;text-underline-offset:4px}.guide-evidence{border:1px solid #e1e1da;background:#f6f6f2;border-radius:8px;padding:18px;margin-bottom:18px}.guide-evidence h3{font-size:23px;font-weight:500;line-height:1.15;margin:15px 0}.guide-evidence p{margin-bottom:0!important;font-size:15px!important}.guide-service{display:block;text-decoration:underline;text-underline-offset:4px;font-size:15px;margin:18px 0}#guide-content>p{font-size:15px}.companion .explore-self{margin-left:auto}.companion-trigger{min-height:48px}.form-progress{list-style:none;padding:0;display:flex;justify-content:space-between;gap:12px;border-bottom:1px solid #ddd;margin:25px 0 15px;font-size:13px;color:#777}.form-progress li{padding:10px 0}.form-progress .current{color:#a64008;box-shadow:0 2px 0 var(--orange);font-weight:600}fieldset{border:0;padding:0;margin:0;min-width:0;display:grid;gap:18px}legend{font-size:18px;font-weight:600;margin-bottom:22px;line-height:1.3;letter-spacing:-.025em}form label{font-size:15px;gap:9px}form label>span{color:#777;font-weight:400;font-size:13px}select{font:inherit;width:100%;padding:13px 12px;border:1px solid #bbb;border-radius:6px;background:#fff;color:#222}select:focus-visible{outline:3px solid var(--orange);outline-offset:3px}input,textarea{border-radius:6px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:18px}#timing-label{display:grid;gap:18px}.field-help{font-size:13px!important;color:#666;margin:0!important}.field-help a{text-decoration:underline;text-underline-offset:3px}.form-navigation{display:flex;justify-content:space-between;gap:18px;margin-top:10px}.form-navigation .primary{margin-left:auto}#form-error{font-size:14px;color:#9c2808;background:#fff2eb;padding:12px;border-radius:6px;margin:0}#enquiry-review{display:grid;grid-template-columns:120px 1fr;gap:15px 20px;margin:0;line-height:1.5;font-size:15px}#enquiry-review dt{color:#666}#enquiry-review dd{margin:0;overflow-wrap:anywhere;white-space:pre-wrap}#enquiry-ready{padding:8px 0}#enquiry-ready h3{font-size:28px;font-weight:500;line-height:1.15;margin:10px 0 20px}#enquiry-ready p{font-size:16px}#enquiry-ready .text-button{display:inline-block;margin:14px}#copy-status{font-size:14px!important;margin-top:15px}dialog{border-radius:14px;padding:40px;width:min(710px,calc(100vw - 32px))}dialog h2{line-height:1.15;font-size:34px;margin:18px 0}dialog .eyebrow{font-size:11px}.form-note{font-size:14px!important}.project-meta{font-size:13px}.project-cover .eyebrow{font-size:13px}.practice-strip{font-size:14px}.showcase-grid span,.showcase-grid small{font-size:12px}.showcase-heading .eyebrow,.showcase-heading a{font-size:12px}.metrics span{font-size:13px}.selected-clients>.eyebrow{font-size:12px}.footer-group button{min-height:32px}
@media(max-width:1000px){.footer-top{grid-template-columns:repeat(2,1fr);gap:40px}.service-hero{grid-template-columns:1fr 170px;gap:30px}.service-hero h1{font-size:56px}.capability-grid{gap:24px}.service-foundation{gap:6%}.insight-grid{grid-template-columns:1fr 1fr}.insight-grid .insight-card:last-child{grid-column:1 / -1;display:grid;grid-template-columns:.8fr 1fr}.insight-grid .insight-card:last-child .insight-art{height:auto}.insight-copy h3{font-size:24px}}
@media(max-width:640px){.site-footer{padding-top:45px}.footer-top{gap:35px 25px}.footer-brand{grid-column:1 / -1}.footer-group:last-child{grid-column:1 / -1}.footer-bottom{flex-direction:column;gap:20px}.service-hero{grid-template-columns:1fr;padding-top:35px;padding-bottom:50px;gap:30px}.service-hero h1{font-size:43px}.service-hero p{font-size:17px}.service-hero>img{width:120px;height:120px;margin:auto}.capability-grid{grid-template-columns:1fr;gap:30px}.service-scope,.service-foundation{padding-top:55px;padding-bottom:55px}.service-foundation{grid-template-columns:1fr;gap:40px}.service-foundation h2{font-size:38px}.service-foundation h3{font-size:28px}.insights-section{padding-top:55px;padding-bottom:55px}.insight-grid{grid-template-columns:1fr}.insight-grid .insight-card:last-child{grid-column:auto;display:flex}.insight-grid .insight-card:last-child .insight-art{height:175px}.insight-copy h3{font-size:26px}.article-page{padding:40px 5% 65px}.article-page h1{font-size:42px}.article-lead{font-size:19px}.article-body{margin-top:25px}.article-body p{font-size:17px}.article-body h2{font-size:27px}.article-cta{padding:24px}.article-cta .text-button{margin:20px 0 0;display:block}.form-row{grid-template-columns:1fr}dialog{padding:30px 24px}dialog h2{font-size:29px}.form-progress{font-size:12px;gap:8px}#enquiry-review{grid-template-columns:1fr;gap:5px}#enquiry-review dd{margin-bottom:12px}.companion{padding:25px;bottom:80px}.practice-strip{font-size:12px}.showcase-grid strong{font-size:20px}.showcase-grid span,.showcase-grid small{font-size:12px}.metrics span{font-size:13px}.project-cover .eyebrow{font-size:13px}.project-meta{font-size:12px}.showcase-grid a{min-height:235px}.footer-group h2{font-size:16px}.footer-group a,.footer-group button{font-size:14px}.form-progress li{line-height:1.4}.service-hero .breadcrumb{margin-bottom:25px}}
/* A warmer, expressive layer on the existing page flow. */
.hero h1 span{color:var(--orange)}.hero-description{max-width:470px;font-size:20px}.inline-icon{animation:gentle-turn 7s ease-in-out infinite}.showcase-grid a{position:relative;overflow:hidden}.showcase-grid a:after{content:'↗';position:absolute;right:18px;top:18px;font-size:23px}.showcase-grid a img{transition:transform .4s ease}.showcase-grid a:hover img,.showcase-grid a:focus-visible img{transform:rotate(-12deg) scale(1.08)}.showcase-grid a small{display:none}.showcase-grid a:nth-child(even){border-radius:44px 12px 12px 12px}.practice-strip img{transition:transform .25s}.practice-strip a:hover img{transform:rotate(12deg)}
.industry-experience{padding:30px 0 65px}.industry-heading h2{font-size:clamp(38px,5vw,72px);font-weight:500;margin:20px 0}.industry-heading p{color:#c3c3c3;max-width:460px}.industry-buttons{display:flex;flex-wrap:wrap;gap:12px;margin:30px 0}.industry-buttons button{color:#eee;background:transparent;border:1px solid #666;border-radius:30px;padding:12px 20px;min-height:48px;transition:background .2s,transform .2s}.industry-buttons button[aria-pressed=true]{background:#f3cfb5;color:#171717;border-color:#f3cfb5}.industry-buttons button:hover{transform:translateY(-3px)}.industry-story{display:grid;grid-template-columns:1fr 1.3fr;gap:7%;align-items:center;background:#252523;border:1px solid #494943;border-radius:24px;padding:35px;min-height:350px}.industry-visual{position:relative;color:#f3cfb5;text-align:center;background:radial-gradient(ellipse at center,#d1571024,transparent 68%);border-radius:50%}.industry-visual svg{width:min(100%,300px);height:240px;overflow:visible}.industry-visual svg>circle{transform-origin:150px 120px;animation:orbit-breathe 9s ease-in-out infinite}.industry-visual span{display:block;color:#bfbfb5;font-size:13px;margin-top:10px}.industry-copy h3{font-size:clamp(30px,3.5vw,49px);font-weight:500;margin:18px 0}.industry-copy p{color:#d0d0c7;max-width:400px}.industry-copy ul{padding:0;list-style:none;display:flex;flex-wrap:wrap;gap:9px;margin:22px 0}.industry-copy li{border:1px solid #55564e;border-radius:8px;padding:8px 12px;font-size:13px}.industry-copy .text-button{display:inline-block;min-height:44px;padding:10px 0;color:#f3cfb5}.selected-clients{padding-top:35px;border-top:1px solid #555}.solution-body ul{display:none}.solution-body{padding-left:0}.solution-body p{font-size:21px;color:var(--black);margin-bottom:20px}.solution-icon{transition:transform .35s}summary:hover .solution-icon{transform:rotate(-8deg) scale(1.08)}summary .detail-sign{transition:transform .3s}.technology{line-height:1.6}.hero .showcase{margin-top:12px}.work .projects[data-featured=true] .project-scope{display:none}.project{border-radius:20px;overflow:hidden;transition:transform .3s,box-shadow .3s}.project:hover{transform:translateY(-6px);box-shadow:0 16px 40px #17171712}.project-cover{position:relative}.project-cover:after{content:'↗';position:absolute;right:25px;top:25px;font-size:24px}.project-cover img{transition:transform .5s}.project:hover .project-cover img{transform:rotate(8deg)}.steps article{position:relative;padding:26px;background:#eeeae2;border:0;border-radius:20px}.steps article:nth-child(2){background:#f3cfb5}.steps article:nth-child(3){background:#e4e7de}.steps article:nth-child(4){background:#dddfe4}.steps article>span{font-size:42px;font-weight:500}.insights-section .insight-copy>p{display:none}.insight-card{transition:transform .25s}.insight-card:hover{transform:translateY(-5px)}.contact-section{position:relative;overflow:hidden}.contact-section:after{content:'✳';position:absolute;right:5%;top:70px;font-size:clamp(90px,20vw,240px);line-height:1;opacity:.22;pointer-events:none;animation:gentle-turn 15s ease-in-out infinite}.contact-section h2,.contact-section .actions{position:relative;z-index:1}.site-footer{padding-top:70px;overflow:hidden}.footer-top{gap:45px}.footer-group a,.footer-group button{min-height:44px;display:flex;align-items:center}.footer-signoff{border-top:1px solid #50504b;margin-top:55px;padding-top:28px;width:100%}.footer-signoff>span{font-size:16px;color:#bdbdb5}.footer-signoff>div{font-size:clamp(42px,12.5vw,190px);line-height:1.2;letter-spacing:-.065em;font-weight:600;color:#f7f7f5;white-space:nowrap;padding:18px 0 35px}.footer-dot{color:var(--orange);font-size:.24em;vertical-align:middle;margin-left:.4em}.site-footer .footer-bottom{padding-bottom:25px}.companion{border-radius:22px;max-height:calc(100dvh - 120px);overflow:auto}.guide-progress{border-bottom:3px solid #f3cfb5;padding-bottom:12px}.guide-controls button{min-height:44px}.guide-evidence{border-radius:14px}.companion-trigger:hover .orb{transform:scale(1.15)}.orb{transition:transform .25s}.motion-ready .reveal{opacity:0;transform:translateY(22px);transition:opacity .65s ease,transform .65s ease}.motion-ready .reveal.is-visible{opacity:1;transform:none}.guide-arrival{animation:guide-arrival .25s ease-out}@keyframes gentle-turn{0%,100%{transform:rotate(-7deg)}50%{transform:rotate(9deg)}}@keyframes orbit-breathe{0%,100%{transform:scale(.93)}50%{transform:scale(1.04)}}@keyframes guide-arrival{from{opacity:.4;transform:translateY(8px)}to{opacity:1;transform:none}}
@media(min-width:641px){.work .projects[data-featured=true] .project:nth-child(even){margin-top:50px}.work .projects[data-featured=true]{align-items:start}}
@media(max-width:1000px){header nav{gap:14px;font-size:13px}.industry-story{gap:30px}.footer-signoff>div{font-size:12vw}}
@media(max-width:640px){.hero-description{font-size:18px;max-width:330px}.industry-experience{padding-top:20px;padding-bottom:40px}.industry-heading h2{font-size:39px}.industry-buttons{gap:9px}.industry-buttons button{padding:10px 14px;font-size:13px}.industry-story{grid-template-columns:1fr;padding:24px;gap:24px}.industry-visual svg{height:165px;width:210px}.industry-copy h3{font-size:33px}.industry-copy ul{gap:8px}.industry-copy li{font-size:13px}.showcase-grid a{padding:18px}.showcase-grid a:after{right:14px;top:12px}.showcase-grid a img{width:65px;height:65px}.contact-section h2{font-size:clamp(46px,12vw,64px)}.contact-section:after{top:45px;right:-20px;font-size:150px}.site-footer{padding-top:45px;padding-bottom:95px}.footer-top{gap:30px}.footer-signoff{margin-top:35px}.footer-signoff>div{font-size:12vw;padding-bottom:20px}.companion-trigger{font-size:12px;min-height:44px}.motion-ready .reveal{transform:translateY(12px)}}
@media(prefers-reduced-motion:reduce){.motion-ready .reveal{opacity:1;transform:none}.inline-icon,.industry-visual svg>circle,.contact-section:after{animation:none}.project:hover,.insight-card:hover,.industry-buttons button:hover{transform:none}}
.theme-control{display:flex;align-items:center;margin-left:12px}.theme-control select{font:inherit;font-size:13px;min-height:44px;border:1px solid var(--line);border-radius:24px;padding:8px 28px 8px 12px;background:var(--paper);color:var(--black);max-width:110px}.theme-control select:focus-visible{outline:3px solid var(--orange);outline-offset:3px}.arrival-context{font-size:13px!important;color:var(--orange)!important;border:1px solid var(--orange);border-radius:20px;padding:8px 14px;display:inline-block;margin-bottom:22px!important}.landing-spotlight{outline:2px solid var(--orange);outline-offset:-3px;box-shadow:inset 0 0 70px #d157101a;transition:box-shadow .8s ease}.service-hero:focus{outline:2px solid var(--orange);outline-offset:-3px}.service-hero:focus:not(.landing-spotlight){outline:none}
html[data-theme=dark]{--paper:#171917;--black:#f5f3ee;--muted:#bbbeb6;--line:#484b44;color-scheme:dark}html[data-theme=dark] header{background:#171917ef}html[data-theme=dark] .hero{background:radial-gradient(ellipse at 50% 15%,#d1571014,transparent 65%)}html[data-theme=dark] .hero h1 span{color:#f59c62}html[data-theme=dark] .primary{background:#d15710;color:#fff}html[data-theme=dark] .header-call{background:#eeeae2;color:#191919}html[data-theme=dark] .experience,html[data-theme=dark] .company,html[data-theme=dark] .site-footer,html[data-theme=dark] .showcase,html[data-theme=dark] .project-cover{background:#101210;color:#f5f3ee}html[data-theme=dark] .work,html[data-theme=dark] .service-foundation,html[data-theme=dark] .insight-art,html[data-theme=dark] .article-cta{background:#20231f}html[data-theme=dark] .project,html[data-theme=dark] .insight-card,html[data-theme=dark] dialog,html[data-theme=dark] .companion{background:#282c26;color:#f5f3ee;border-color:#4b5046}html[data-theme=dark] .steps article{color:#191919}html[data-theme=dark] .steps p{color:#494b43}html[data-theme=dark] .showcase-grid a{color:#191919}html[data-theme=dark] input,html[data-theme=dark] textarea,html[data-theme=dark] form select{background:#181b17;color:#f5f3ee;border-color:#687060}html[data-theme=dark] nav.open{background:#171917}html[data-theme=dark] .companion-trigger{background:#f3cfb5;color:#191919}html[data-theme=dark] #guide-content>button{background:#353a30;color:#f5f3ee;border-color:#565e4d}html[data-theme=dark] .guide-evidence{background:#20231f}html[data-theme=dark] .guide-primary,html[data-theme=dark] .contact-section .primary{background:#171917!important;color:#fff!important}html[data-theme=dark] .contact-section{background:#b6460b;color:#fff}html[data-theme=dark] .tech-chips span{background:#32372d;color:#eee}html[data-theme=dark] .filters button.active{color:#fff}html[data-theme=dark] .project:nth-child(3n+2) .project-cover{background:#aa440e}html[data-theme=dark] .field-help{color:#bec2b6}html[data-theme=dark] .form-progress li.current{background:#353a30;color:#f5f3ee}
@media(max-width:640px){.theme-control{margin-left:auto;margin-right:10px}.theme-control select{font-size:12px;max-width:92px;padding-left:9px}.logo{width:145px;height:32px}.logo img{width:152px;top:-23px}.arrival-context{font-size:12px!important}.landing-spotlight{box-shadow:inset 0 0 35px #d157101a}}
@media(prefers-reduced-motion:reduce){.landing-spotlight{transition:none;box-shadow:none}}
/* Intentional surfaces in both themes; rich arrival light and a tactile mood switch. */
:root{--surface:#fff;--soft-surface:#eeefea;--text-secondary:#5e625a;--accent-readable:#b74507;--on-deep:#f7f5ef;--deep:#171917}
html[data-theme=dark]{--surface:#262a25;--soft-surface:#20231f;--text-secondary:#c0c5b9;--accent-readable:#ffa269;--deep:#101210}
.industry-heading p{color:var(--muted);margin:0 auto}.industry-buttons{justify-content:center}.industry-buttons button{background:var(--surface);color:var(--black);border-color:var(--line)}.industry-buttons button[aria-pressed=true]{background:var(--orange);border-color:var(--orange);color:#fff}.industry-story{color:#f7f5ef;text-align:left}.industry-copy h3{color:#f7f5ef}.industry-copy .eyebrow{color:#f5b185}.industry-visual svg{color:#f5b185}.industry-heading>.eyebrow{color:var(--accent-readable)}
html[data-theme=dark] .experience{background:transparent}html[data-theme=dark] .selected-clients .client-list span,html[data-theme=dark] .metrics span,html[data-theme=dark] .selected-clients>.eyebrow{color:var(--text-secondary)}
html[data-theme=dark] .practice-strip,html[data-theme=dark] .service-links>a:last-child,html[data-theme=dark] .work-bottom p,html[data-theme=dark] .project-scope,html[data-theme=dark] .faq details p,html[data-theme=dark] .portfolio-head p,html[data-theme=dark] .service-hero p,html[data-theme=dark] .breadcrumb,html[data-theme=dark] .capability-grid p,html[data-theme=dark] .service-foundation p,html[data-theme=dark] .article-lead,html[data-theme=dark] .article-body p,html[data-theme=dark] .article-cta p,html[data-theme=dark] .notice-date,html[data-theme=dark] .insight-copy p,html[data-theme=dark] dialog p,html[data-theme=dark] dialog ul,html[data-theme=dark] .companion p,html[data-theme=dark] #enquiry-review dt{color:var(--text-secondary)}
html[data-theme=dark] .insights-section,html[data-theme=dark] .service-scope{background:var(--paper)}html[data-theme=dark] .service-hero{background:radial-gradient(ellipse at 85% 50%,#d1571020,transparent 65%)}html[data-theme=dark] .service-hero .eyebrow,html[data-theme=dark] .article-page>.eyebrow,html[data-theme=dark] .insight-copy .eyebrow,html[data-theme=dark] .project-meta span:first-child{color:var(--accent-readable)}
html[data-theme=dark] .project-cover{background:#30372d;color:#f7f5ef}html[data-theme=dark] .project:nth-child(3n+2) .project-cover{background:#59341f}html[data-theme=dark] .project:nth-child(3n+3) .project-cover{background:#2b3d30}html[data-theme=dark] .project:nth-child(4n) .project-cover{background:#2c3649}html[data-theme=dark] .project-cover .eyebrow{color:#e0e3da}html[data-theme=dark] .project-info{padding:23px 16px}html[data-theme=dark] .project-meta span:last-child{color:var(--text-secondary)}html[data-theme=dark] .insight-art,html[data-theme=dark] .insight-card:nth-child(2) .insight-art,html[data-theme=dark] .insight-card:nth-child(3) .insight-art{background:#30372d}html[data-theme=dark] .insight-art span{color:#e0e3da}html[data-theme=dark] .company>.eyebrow,html[data-theme=dark] .company p{color:#c0c5b9}html[data-theme=dark] .steps span{color:#76523a}html[data-theme=dark] .guide-controls button{color:#f7f5ef}html[data-theme=dark] .form-progress,html[data-theme=dark] form label>span{color:var(--text-secondary)}html[data-theme=dark] .arrival-context{color:var(--accent-readable)!important;border-color:var(--accent-readable)}
.theme-control{display:flex;gap:7px;align-items:center;flex-shrink:0}.theme-rocker{position:relative;width:78px;height:44px;border-radius:26px;border:2px solid #c9c7bf;background:linear-gradient(140deg,#cccac2,#f8f7f2);box-shadow:inset 2px 3px 6px #0003,0 2px 3px #0001;padding:0;display:flex;align-items:center;justify-content:space-around;color:#565851}.theme-rocker>span:not(.rocker-thumb){position:relative;z-index:1;font-size:18px;line-height:1;pointer-events:none}.rocker-thumb{position:absolute;left:3px;top:3px;width:34px;height:34px;border-radius:50%;background:linear-gradient(135deg,#fff,#dad8d0);box-shadow:1px 2px 5px #0004,inset 0 1px 1px #fff9;transition:transform .3s cubic-bezier(.2,.8,.2,1);pointer-events:none}.theme-rocker[aria-checked=true] .rocker-thumb{transform:translateX(34px)}.theme-rocker:active{transform:scale(.96)}.theme-system{min-height:44px;background:transparent;color:var(--muted);font-size:11px;text-decoration:underline;text-underline-offset:4px;padding:7px 2px}.theme-system[aria-pressed=true]{color:var(--accent-readable);font-weight:700}.footer-mood{display:flex;flex-direction:column;align-items:center;gap:15px;padding-top:40px}.footer-mood>.theme-control{margin:0}.footer-mood>.theme-control .theme-rocker{width:108px;height:56px;border-radius:30px}.footer-mood .rocker-thumb{width:44px;height:44px;top:4px;left:4px}.footer-mood .theme-rocker[aria-checked=true] .rocker-thumb{transform:translateX(52px)}.footer-mood .theme-system{color:#c6c8bf}.footer-mood .theme-system[aria-pressed=true]{color:#f5b185}
html[data-theme=dark] .theme-rocker,.footer-mood .theme-rocker{background:linear-gradient(145deg,#141614,#383c36);border-color:#373b34;color:#e5e7df;box-shadow:inset 2px 3px 7px #0009,0 1px 1px #fff2}html[data-theme=dark] .rocker-thumb,.footer-mood .rocker-thumb{background:linear-gradient(135deg,#565b51,#2f332d);box-shadow:1px 2px 6px #0008,inset 0 1px 1px #fff3}
::view-transition-old(root),::view-transition-new(root){animation:none;mix-blend-mode:normal}::view-transition-old(root){z-index:1}::view-transition-new(root){z-index:2}
.landing-spotlight{position:relative;outline:none!important;box-shadow:none!important;isolation:isolate}.landing-spotlight:before{content:'';position:absolute;inset:0;z-index:-1;pointer-events:none;border-radius:20px;background:radial-gradient(ellipse at 0% 45%,#ff9d4c55,transparent 55%),radial-gradient(ellipse at 100% 45%,#d1571044,transparent 55%);animation:arrival-aura 3.2s ease both}.arrival-edge-glow{position:fixed;inset:0;z-index:45;pointer-events:none;--glow-y:40vh;background:radial-gradient(ellipse 110px 330px at 0 var(--glow-y),#ffae57b8 0%,#ef742975 25%,#d1571029 58%,transparent 90%),radial-gradient(ellipse 110px 330px at 100% var(--glow-y),#ffae57b8 0%,#ef742975 25%,#d1571029 58%,transparent 90%);animation:arrival-aura 3.2s ease both}html[data-theme=dark] .arrival-edge-glow{filter:saturate(1.15)}@keyframes arrival-aura{0%{opacity:0}18%,55%{opacity:1}100%{opacity:0}}
@media(max-width:1000px){header .theme-control{margin-left:auto;margin-right:18px}header nav{margin-left:auto;margin-right:18px}}
@media(max-width:640px){header{gap:6px}.theme-control{gap:5px}header .theme-control{margin-right:5px;margin-left:auto}.theme-rocker{width:72px}.rocker-thumb{width:30px;height:30px;top:5px;left:4px}.theme-rocker[aria-checked=true] .rocker-thumb{transform:translateX(30px)}header .theme-system{font-size:10px}.menu{padding:9px 10px}.arrival-edge-glow{background:radial-gradient(ellipse 65px 250px at 0 var(--glow-y),#ffad5bbb 0%,#ef742977 24%,#d157102b 58%,transparent 92%),radial-gradient(ellipse 65px 250px at 100% var(--glow-y),#ffad5bbb 0%,#ef742977 24%,#d157102b 58%,transparent 92%)}header nav{margin:0}.footer-mood{padding-top:30px}}
@media(max-width:370px){header .logo{width:125px}.logo img{width:132px;top:-20px}header .theme-control{margin-right:0}.menu{padding:9px 7px}}
@media(prefers-reduced-motion:reduce){.arrival-edge-glow{animation:none;opacity:.65}.landing-spotlight:before{animation:none;opacity:.45}.theme-rocker:active{transform:none}.rocker-thumb{transition:none}}
/* One brand signature, a unified icon vocabulary, and softer edges. */
.contact-section:after,.project-cover:after,.showcase-grid a:after{content:none;display:none}.project-arrow{display:none}.footer-brand>.eyebrow{color:#f5b185;font-size:11px}.footer-brand>p{margin-top:18px}.footer-signoff>.footer-wordmark{display:block;position:relative;width:min(100%,1100px);height:clamp(84px,18vw,230px);overflow:hidden;margin:25px 0 10px}.footer-wordmark img{position:absolute;left:-2.3%;width:104.6%;max-width:none;height:auto;top:-83%;}.site-footer .footer-top{align-items:start}.footer-group{gap:7px}.footer-mood{padding-top:35px}.footer-signoff{margin-top:38px}.footer-bottom{margin-top:25px}.primary,.secondary,.header-call{border-radius:18px}.showcase-grid a,.showcase-grid a:nth-child(even){border-radius:24px}.project,.project-cover,.insight-card,.article-cta,.industry-story,.steps article{border-radius:24px}.industry-copy li,.tech-chips span{border-radius:14px}.companion,dialog{border-radius:28px}.contact-section{border-radius:38px 38px 0 0}.landing-spotlight:before{border-radius:36px}.arrival-edge-glow{border-radius:28px;overflow:hidden}.solution-list details{border-radius:16px}.industry-visual{border-radius:50%}
@media(max-width:640px){.site-footer .footer-top{grid-template-columns:1fr 1fr;gap:25px 18px}.footer-brand{grid-column:1 / -1}.footer-brand>p{max-width:100%;font-size:14px}.footer-group:last-child{grid-column:1 / -1}.footer-signoff>.footer-wordmark{height:20vw;margin-top:20px}.footer-wordmark img{top:-75%}.footer-signoff{margin-top:28px;padding-top:22px}.footer-signoff>span{font-size:14px}.footer-mood{padding-top:30px}.contact-section{border-radius:28px 28px 0 0}.arrival-edge-glow{border-radius:24px}.landing-spotlight:before{border-radius:28px}.industry-story,.project,.project-cover,.insight-card,.steps article,.showcase-grid a,.showcase-grid a:nth-child(even){border-radius:22px}dialog,.companion{border-radius:26px}}
.ui-icon{display:block;width:20px;height:20px;flex-shrink:0}.rocker-sun,.rocker-moon{display:flex;align-items:center;justify-content:center}.rocker-sun .ui-icon,.rocker-moon .ui-icon{width:17px;height:17px}.dialog-close,.close-companion{width:44px;height:44px;display:grid;place-items:center;padding:0;min-height:44px}.dialog-close .ui-icon,.close-companion .ui-icon{width:22px;height:22px}.detail-sign,.faq-sign{display:grid;place-items:center;width:28px;height:28px;flex-shrink:0}.faq-sign{transition:transform .25s}.faq details[open] .faq-sign{transform:rotate(45deg)}.practice-strip img,.solution-icon,.insight-art img,.project-cover img,.showcase-grid img{object-fit:contain;flex-shrink:0}.project-cover img{right:28px;top:30px}.insight-art img{align-self:center}.footer-mood .rocker-sun .ui-icon,.footer-mood .rocker-moon .ui-icon{width:20px;height:20px}
/* Shared spacing rhythm: readable card gutters and consistent section edges. */
:root{--card-space:clamp(22px,2.4vw,32px);--content-gap:20px;--page-gutter:clamp(20px,5vw,80px)}
.showcase{padding:var(--card-space)}.showcase-grid{gap:16px}.showcase-grid a{padding:24px;gap:6px}.showcase-heading{margin-bottom:24px}.project-cover{padding:var(--card-space)}.project-info,html[data-theme=dark] .project-info{padding:24px var(--card-space) 28px;gap:14px}.project-cover img{right:var(--card-space);top:var(--card-space)}.project-info>p{margin:0;line-height:1.6}.project-meta{line-height:1.5}.project-scope{line-height:1.6}.insight-copy{padding:var(--card-space);gap:18px}.insight-art{padding:var(--card-space)}.steps article{padding:var(--card-space)}.steps h3{margin:22px 0 16px;line-height:1.2}.industry-story{padding:var(--card-space);gap:36px}.industry-copy h3{line-height:1.15;margin:18px 0}.industry-copy li{padding:10px 14px;line-height:1.5}.industry-copy ul{margin:24px 0;gap:10px}.service-links{gap:18px 24px}.solution-body{padding-top:4px;padding-bottom:32px}.solution-body p{margin-bottom:22px}.technology{margin-bottom:22px}.company p{line-height:1.65}.footer-top{gap:40px}.footer-group h2{margin-bottom:12px;line-height:1.3}.footer-group{gap:8px}.footer-brand>p{line-height:1.7}.footer-bottom{gap:24px}.footer-bottom p{line-height:1.7}.companion{padding:30px}.companion h2{padding-right:18px}.guide-controls{padding-top:20px;margin-top:24px;gap:18px}.guide-controls button{padding:6px 0}.guide-evidence{padding:24px}dialog{padding:40px}.dialog-close,.close-companion{top:10px;right:10px}dialog h2{padding-right:20px}.form-navigation{margin-top:16px}.article-cta{padding:var(--card-space)}
@media(max-width:640px){:root{--card-space:24px}section{padding-left:20px;padding-right:20px}header{padding-left:16px;padding-right:16px}.site-footer{padding-left:24px;padding-right:24px}.showcase{padding:18px}.showcase-grid{gap:12px}.showcase-grid a{padding:18px;gap:6px}.showcase-grid strong{line-height:1.2}.showcase-grid span{line-height:1.5}.showcase-heading{margin-bottom:18px}.project-cover{padding:24px}.project-info,html[data-theme=dark] .project-info{padding:24px}.industry-story{padding:24px;gap:26px}.section-intro{margin-bottom:36px}.section-intro h2{line-height:1.13;margin:22px 0}.steps article{padding:26px}.footer-top{gap:30px 22px}.companion{padding:28px 24px}.companion h2{margin:18px 0 22px}.guide-controls{gap:16px}.guide-evidence{padding:20px}dialog{padding:38px 24px 28px}.form-navigation{gap:14px}.contact-section .actions{gap:18px}.article-page{padding-left:24px;padding-right:24px}.capability-grid article{padding-top:24px}.service-foundation{gap:36px}.tech-chips{gap:12px}.service-hero .actions{gap:22px}.service-hero{scroll-margin-top:78px}}

/* Mobile feedback: consistent controls, separated services and readable labels. */
:root{--control-radius:10px;--panel-radius:14px;color-scheme:light}
button{color:inherit;-webkit-appearance:none;appearance:none}
.primary,.secondary,.header-call,.menu,.industry-buttons button,.filters button,
input,textarea,form select,.form-progress li,.tech-chips span{border-radius:var(--control-radius)}
.menu{color:var(--black)}
.contact-section .secondary,.contact-section .text-button{color:inherit}
.footer-group button{color:inherit}
.showcase,.showcase-grid a,.showcase-grid a:nth-child(even),.project,.project-cover,
.insight-card,.article-cta,.industry-story,.steps article,dialog{border-radius:var(--panel-radius)}
.contact-section{border-radius:var(--panel-radius) var(--panel-radius) 0 0}
.solution-list{display:grid;gap:16px;min-width:0}
.solution-list details,.solution-list details:last-child{border:1px solid var(--line);border-radius:var(--panel-radius);overflow:hidden}
.solution-list summary{display:grid;grid-template-columns:46px minmax(0,1fr) 28px;gap:18px;padding:24px;min-height:104px}
.solution-list summary h3{font-size:clamp(1.625rem,2.4vw,2rem);line-height:1.2;letter-spacing:-.035em;overflow-wrap:break-word}
.solution-list .detail-sign{margin:0}
.solution-list .solution-body{padding:0 24px 28px 88px;max-width:none}
.solution-body>p{font-size:1.125rem;line-height:1.5;color:var(--black);margin-bottom:16px}
.solution-body .technology{font-size:.875rem;line-height:1.65;color:var(--muted);margin-bottom:22px}
.service-links{margin-top:0}
.service-links .text-button{font-size:1rem;line-height:1.5}
.practice-strip{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));max-width:1000px;margin:auto;gap:24px;padding:32px 0}
.practice-strip a{font-size:1rem;line-height:1.35;justify-content:center;text-align:left;min-width:0}
.practice-strip img{width:36px;height:36px}
@media(max-width:640px){
 .practice-strip{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px 16px;max-width:none}
 .practice-strip a{font-size:1rem;justify-content:flex-start;gap:10px}
 .practice-strip img{width:32px;height:32px}
 .solution-list{gap:16px}
 .solution-list summary{grid-template-columns:36px minmax(0,1fr) 24px;gap:14px;padding:22px 18px;min-height:100px}
 .solution-list summary h3{font-size:1.625rem;line-height:1.2}
 .solution-list .solution-icon{width:36px;height:36px}
 .solution-list .detail-sign{width:24px;height:24px}
 .solution-list .solution-body{padding:0 20px 24px}
}

/* The guide mascot is an optional companion, outside the page narrative. */
.mascot-trigger,html[data-theme=dark] .mascot-trigger{background:transparent;color:var(--black);border:0;box-shadow:none;border-radius:10px;padding:0;gap:5px;display:flex;flex-direction:column;align-items:center;right:max(20px,env(safe-area-inset-right));bottom:max(12px,env(safe-area-inset-bottom));width:156px;min-height:44px;transition:transform .2s}
.mascot-trigger:hover{transform:translateY(-3px)}
.mascot-seated{display:block;object-fit:contain;width:132px;height:132px;filter:drop-shadow(0 3px 5px #0002);pointer-events:none}
.mascot-prompt{display:block;font-size:14px;line-height:1.3;padding:9px 12px;border-radius:10px;background:var(--paper);color:var(--black);border:1px solid var(--line);box-shadow:0 3px 14px #0001;text-align:center;width:156px}
html[data-theme=dark] .mascot-prompt{background:#282c26;color:#f5f3ee;border-color:#63685f}
.mascot-entering .mascot-seated,.mascot-entering .mascot-prompt{opacity:0}
.mascot-entrance{position:fixed;left:50%;top:50%;z-index:20;pointer-events:none;transform:translate(-50%,-50%)}
.mascot-entrance img{width:100%;height:100%;object-fit:contain;display:block}
.companion{bottom:190px;max-height:calc(100dvh - 215px);overscroll-behavior:contain;border-radius:14px}
.arrival-context{display:flex;align-items:center;gap:12px;line-height:1.4}
.destination-mark{width:52px;height:52px;flex:0 0 52px;color:var(--orange)}
.destination-mark svg{display:block;width:100%;height:100%}
body:has(dialog[open]) .mascot-trigger{visibility:hidden}
@media(max-width:640px){
 .mascot-trigger{width:128px;right:max(10px,env(safe-area-inset-right));bottom:max(8px,env(safe-area-inset-bottom))}
 .mascot-seated{width:96px;height:96px}
 .mascot-prompt{width:128px;font-size:14px;padding:8px 9px}
 .companion{right:12px;bottom:158px;width:calc(100vw - 24px);max-height:calc(100dvh - 180px);padding:26px 22px}
 .destination-mark{width:42px;height:42px;flex-basis:42px}
}
@media(max-height:500px){.mascot-seated{width:70px;height:70px}.companion{bottom:12px;right:180px;width:min(380px,calc(100vw - 200px));max-height:calc(100dvh - 24px)}}
@media(prefers-reduced-motion:reduce){.mascot-entrance{display:none}.mascot-trigger:hover{transform:none}}
/* Compact services, balanced controls, and a purposeful corner guide. */
header .theme-rocker{width:80px;height:44px;display:grid;grid-template-columns:1fr 1fr;padding:3px;gap:0}
header .rocker-sun,header .rocker-moon{width:34px;height:34px}
header .rocker-thumb{width:34px;height:34px;top:3px;left:3px}
header .theme-rocker[aria-checked=true] .rocker-thumb{transform:translateX(36px)}
.practice-strip{display:flex;align-items:center;justify-content:center;gap:28px}
.practice-row{display:contents}
.practice-strip a{white-space:nowrap;font-size:1rem;gap:10px}
.practice-strip img{width:30px;height:30px}
.footer-mood{padding:24px 0 0}
.dialog-close,.close-companion{color:#d15710;border:2px solid #d15710;border-radius:50%;background:var(--paper);z-index:3}
.dialog-close .ui-icon,.close-companion .ui-icon{stroke-width:3}
.mascot-trigger,html[data-theme=dark] .mascot-trigger{flex-direction:row;gap:8px;width:auto;max-width:calc(100vw - 32px);min-height:58px;padding:0 16px 0 4px;border-radius:40px;background:#171916;color:#fff;border:1px solid #686c63;box-shadow:0 5px 18px #0003;bottom:max(16px,env(safe-area-inset-bottom));z-index:40}
html[data-theme=dark] .mascot-trigger{background:#fff;color:#171916;border-color:#eee}
.mascot-trigger .mascot-seated{width:72px;height:72px;margin-top:-14px}
.mascot-prompt,html[data-theme=dark] .mascot-prompt{padding:0;background:none;color:inherit;border:0;box-shadow:none;width:auto;font-size:14px;white-space:nowrap}
.mascot-invitation{position:absolute;right:0;bottom:calc(100% + 12px);padding:12px 16px;max-width:260px;border-radius:12px;background:inherit;color:inherit;box-shadow:0 4px 18px #0002;opacity:0;visibility:hidden;transition:opacity .2s;font-size:14px;pointer-events:none}
.mascot-invitation.visible{opacity:1;visibility:visible}
.mascot-overlay{position:fixed;inset:0;background:#0009;z-index:70}
.mascot-skip{position:absolute;right:max(20px,env(safe-area-inset-right));top:max(20px,env(safe-area-inset-top));background:#171916;color:#fff;padding:12px 18px;border:1px solid #d15710;border-radius:12px;font-size:14px}
.mascot-entrance{z-index:71}
.companion{z-index:65;bottom:100px;max-height:calc(100dvh - 120px);width:min(420px,calc(100vw - 40px))}
.guide-mascot{display:block;object-fit:contain;margin:0 auto 12px;width:112px;height:112px}
.guide-recommendation{font-size:1rem;line-height:1.6;margin-bottom:20px}
.guide-open{overflow:hidden}
.guide-open:before{content:'';position:fixed;inset:0;background:#0008;z-index:60}
@media(max-width:640px){
 .practice-strip{display:flex;flex-direction:column;gap:18px;padding:28px 0}
 .practice-row{display:flex;justify-content:center;gap:18px;width:100%;flex-wrap:wrap}
 .practice-strip a{font-size:.875rem;gap:8px;flex:0 0 auto}
 .practice-strip img{width:24px;height:24px}
 .mascot-trigger,html[data-theme=dark] .mascot-trigger{right:max(12px,env(safe-area-inset-right));bottom:max(12px,env(safe-area-inset-bottom));padding-right:14px;min-height:52px}
 .mascot-trigger .mascot-seated{width:60px;height:60px;margin-top:-8px}
 #contact-dialog,.companion{position:fixed;inset:0;margin:0;width:100%;max-width:none;height:100dvh;max-height:100dvh;border:0;border-radius:0;overflow-y:auto;padding:calc(env(safe-area-inset-top) + 64px) 24px calc(env(safe-area-inset-bottom) + 28px);overscroll-behavior:contain}
 #contact-dialog .dialog-close,.close-companion{position:absolute;top:calc(env(safe-area-inset-top) + 12px);right:16px}
 .companion .guide-mascot{width:112px;height:112px;margin:0 auto 20px}
 .companion h2{padding-right:0}
}
@media(prefers-reduced-motion:reduce){.mascot-invitation{transition:none}}

select:focus-visible{outline:3px solid var(--orange);outline-offset:3px}
body:has(#contact-dialog[open]){overflow:hidden}
/* Review batch: balanced desktop navigation and compact, clear actions. */
.header-actions{display:flex;align-items:center;gap:16px;justify-content:flex-end;flex-shrink:0}
@media(min-width:1101px){header{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);gap:24px;padding-left:3%;padding-right:3%}header nav{justify-self:center;margin:0;gap:22px}header .header-actions{justify-self:end}header .theme-control{margin:0}header .header-call{font-size:14px;padding:13px 16px}.logo{width:180px}}
@media(min-width:1001px) and (max-width:1100px){header{gap:14px;padding:0 3%}.logo{width:165px}header nav{gap:14px;margin:0}header .header-call{padding:12px;font-size:13px}.header-actions{gap:10px}}
@media(max-width:1000px){header .header-actions{margin-left:auto;gap:12px}header .header-actions .theme-control{margin:0}}
#approach .section-intro{text-align:center}#approach .section-intro h2{margin-left:auto;margin-right:auto}
.selected-clients .client-list span{font-size:clamp(25px,2.6vw,36px)}
.industry-visual{border-radius:20px;background:transparent}.industry-visual svg{width:150px;height:150px;max-width:65%;margin:auto;color:#f5a168}
#project-dialog{padding:64px 36px 32px}#project-detail{display:flex;flex-direction:column;gap:16px}
#project-detail h2,#project-detail p,#project-detail ul{margin:0}#project-detail ul{padding-left:20px}#project-detail .text-button{display:inline-block;align-self:flex-start;line-height:1.5;min-height:44px;padding:10px 0}
#project-dialog>.primary{display:inline-flex;align-items:center;justify-content:center;min-height:44px;height:auto;padding:12px 18px;line-height:1.4;margin-top:24px;max-width:100%;white-space:normal;text-align:center}
.social-links{display:flex;align-items:center;gap:12px;margin-top:8px}.social-links a{display:grid;place-items:center;width:44px;height:44px;border:1px solid #777;border-radius:10px;color:inherit}.social-links svg{width:23px;height:23px}.social-links a:hover{color:#f5a168;border-color:#f5a168}
.guide-callout{display:block;width:100%;margin-top:24px;padding:14px 18px;background:#d15710;color:white;border:1px solid #d15710;border-radius:10px;text-align:left;font-size:14px;line-height:1.5}.guide-callout strong{display:block;font-size:16px}.guide-callout:hover{background:#ac4208}
.guide-mascot{width:104px;height:150px}.mascot-trigger .mascot-seated{object-fit:contain;width:55px;height:80px;margin-top:-20px}
.welcome-open{overflow:hidden}.mascot-overlay{display:grid;place-items:center;background:#0009;cursor:pointer;padding:24px}
.sb-dev-welcome{display:flex;align-items:center;gap:24px;max-width:640px;background:#fff;color:#171717;border-radius:18px;padding:32px;box-shadow:0 10px 45px #0003;cursor:pointer}
.sb-dev-welcome>img{width:105px;height:168px;object-fit:contain;flex-shrink:0}.sb-dev-welcome h2{font-size:clamp(26px,3vw,38px);line-height:1.15;font-weight:500;margin:12px 0}.sb-dev-welcome p{font-size:18px}.sb-dev-welcome .eyebrow{color:#a94106;font-size:12px}.welcome-continue{margin-top:18px;background:none;padding:8px 0;color:#626262;font-size:14px;text-decoration:underline;text-underline-offset:4px;min-height:44px}
html[data-theme=dark] .sb-dev-welcome{background:#171717;color:#fff}html[data-theme=dark] .sb-dev-welcome .eyebrow{color:#f5a168}html[data-theme=dark] .welcome-continue{color:#c6c6c6}
@media(max-width:640px){.header-actions{gap:8px}#approach .steps{gap:12px}#approach .steps article{padding:18px 20px}#approach .steps span{font-size:24px}#approach .steps h3{font-size:21px;margin:10px 0 8px}#approach .steps p{font-size:14px;line-height:1.5}#project-dialog{padding:64px 24px 24px}.industry-visual svg{width:120px;height:120px}.selected-clients .client-list{gap:20px 24px}.selected-clients .client-list span{font-size:25px}.sb-dev-welcome{gap:16px;padding:24px;flex-direction:column;text-align:center}.sb-dev-welcome>img{width:80px;height:125px}.sb-dev-welcome h2{font-size:28px}.sb-dev-welcome p{font-size:16px}.mascot-trigger .mascot-seated{width:44px;height:66px;margin-top:-14px}}
.industry-visual svg>*{animation:none;transform:none}
[hidden]{display:none!important}
@media(min-width:1101px){header .logo{height:36px}header .logo img{width:189px;left:-4px;top:-29px}}
@media(min-width:1001px) and (max-width:1100px){header .logo{height:34px}header .logo img{width:173px;left:-4px;top:-26px}}
/* A free-standing sbDev delivers the welcome as speech on every homepage load. */
.mascot-overlay{background:rgba(0,0,0,.98);backdrop-filter:blur(12px)}
.sb-dev-welcome,html[data-theme=dark] .sb-dev-welcome{position:relative;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:22px;width:min(680px,100%);max-width:none;padding:0;background:transparent;color:white;box-shadow:none;border:0;border-radius:0;text-align:center}
.sb-dev-welcome>img{display:block;width:190px;height:285px;object-fit:contain;flex-shrink:0;order:2}
.welcome-speech{position:relative;order:1;max-width:460px;padding:22px 28px;border-radius:20px;background:#fff;color:#171717;box-shadow:0 5px 25px #0005}
.welcome-speech:after{content:'';position:absolute;left:calc(50% - 12px);bottom:-11px;width:24px;height:24px;background:#fff;transform:rotate(45deg);border-radius:0 0 4px 0}
.sb-dev-welcome .welcome-speech .eyebrow{color:#a94106;text-transform:none;letter-spacing:0;font-size:14px}
.sb-dev-welcome .welcome-speech h2{font-size:30px;line-height:1.15;margin:10px 0}
.sb-dev-welcome .welcome-speech p{font-size:18px;line-height:1.4}
.sb-dev-welcome .welcome-continue,html[data-theme=dark] .sb-dev-welcome .welcome-continue{color:#626262;margin-top:12px;font-size:14px}
@media(max-width:640px){.sb-dev-welcome{gap:20px}.sb-dev-welcome>img{width:150px;height:225px}.welcome-speech{max-width:330px;padding:20px 22px}.sb-dev-welcome .welcome-speech h2{font-size:25px}.sb-dev-welcome .welcome-speech p{font-size:16px}}
@media(max-height:600px){.sb-dev-welcome{gap:16px}.sb-dev-welcome>img{width:100px;height:150px}.welcome-speech{padding:14px 20px}.sb-dev-welcome .welcome-speech h2{font-size:24px}.sb-dev-welcome .welcome-speech p{font-size:16px}.sb-dev-welcome .welcome-continue{margin-top:4px}}
/* Explicit discovery colours override the guide's generic direct-child buttons. */
html[data-theme] #companion>#guide-discovery{background:#d15710;color:#fff;border-color:#d15710;margin-top:24px;padding:14px 18px;border-radius:10px}
html[data-theme] #companion>#guide-discovery:hover{background:#ac4208;color:#fff;border-color:#ac4208}
html[data-theme] #companion>#guide-discovery strong{color:#fff}
/* Form hierarchy and fully themed dropdown options. */
#contact-dialog .form-progress{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;padding:0;margin:24px 0 30px;list-style:none}
#contact-dialog .form-progress li{font-size:14px;line-height:1.3;padding:12px 10px;text-align:center;min-width:0}
#contact-form fieldset{padding:0;margin:0;border:0;min-width:0}#contact-form legend{font-size:20px;font-weight:600;margin-bottom:22px}
#contact-form label>.field-label{color:#a94106;font-size:15px;font-weight:600;line-height:1.4;margin-bottom:8px;display:block}
html[data-theme=dark] #contact-form label>.field-label{color:#f5a168}
#contact-form .required-mark{color:inherit;font-weight:700}
#contact-form input,#contact-form textarea,#contact-form .select-trigger{font-size:16px;line-height:1.5;font-weight:400}
.custom-select{position:relative;width:100%;margin-bottom:4px}.select-trigger{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;min-height:48px;padding:12px 14px;border:1px solid var(--line);border-radius:10px;background:var(--paper);color:var(--black);text-align:left}.select-chevron{flex-shrink:0;color:var(--orange);font-size:22px}
.select-popup{margin-top:8px;border:1px solid var(--line);border-radius:12px;padding:8px;background:var(--paper);color:var(--black);box-shadow:0 6px 18px #0002}
.select-options{max-height:220px;overflow-y:auto;overscroll-behavior:contain;border-radius:8px}
#contact-form .select-option{display:block;width:100%;text-align:left;background:transparent;color:var(--black);border:0;padding:12px;border-radius:8px;font-size:15px;line-height:1.4;min-height:44px}
#contact-form .select-option:hover,#contact-form .select-option:focus-visible{background:#d157101a;outline:2px solid var(--orange);outline-offset:-2px}
#contact-form .select-option[aria-selected=true]{background:#d15710;color:#fff}
#contact-form .select-search{width:100%;margin:0 0 8px;padding:10px 12px;border-radius:8px}.select-empty{padding:12px}
@media(max-width:640px){#contact-dialog .form-progress{gap:6px;margin:20px 0 24px}#contact-dialog .form-progress li{padding:10px 6px;font-size:14px}#contact-form legend{font-size:19px}}
.mascot-overlay .sb-dev-welcome>.welcome-continue{order:3;display:block;width:auto;min-height:44px;padding:8px 12px;margin:0;background:transparent;border:0;border-radius:0;box-shadow:none;color:#ccc;font-size:14px;font-weight:400;text-decoration:none;line-height:1.4}
.mascot-overlay .welcome-speech,.mascot-overlay .welcome-figure{cursor:pointer}
.mascot-overlay .welcome-speech:focus-visible,.mascot-overlay .welcome-figure:focus-visible{outline:2px solid #f5a168;outline-offset:6px}

/* Shared compact controls and consistent section alignment. */
#contact-form input:not([type=hidden]),#contact-form .select-trigger{min-height:44px;height:44px;padding:9px 12px;line-height:24px}
#contact-form .select-option{min-height:44px;padding:10px 12px}
#contact-form .form-navigation button,#contact-form #copy-enquiry{min-height:44px;padding:10px 20px;line-height:24px;width:auto;flex:0 0 auto}
.primary,.secondary,.header-call{min-height:44px;padding:10px 20px;line-height:24px}
.metrics{align-items:center}.metrics>div{display:flex;align-items:center;justify-content:center;gap:14px;min-width:0}.metrics strong{flex:none;line-height:1.1}.metrics span{max-width:150px;text-align:left;font-size:14px}
#work>.section-intro,#approach>.section-intro{text-align:left}#work>.section-intro h2,#work>.section-intro p,#approach>.section-intro h2{margin-left:0;margin-right:0}
.service-hero~.work>.section-intro{text-align:center}.service-hero~.work>.section-intro h2{margin-left:auto;margin-right:auto}.service-hero~.work>.section-intro>.eyebrow{display:block;color:var(--orange)}html[data-theme=dark] .service-hero~.work>.section-intro>.eyebrow{color:#f5a168}
@media(max-width:640px){.metrics{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px 14px}.metrics>div{gap:10px}.metrics strong{font-size:30px}.metrics span{font-size:12px;max-width:105px}}

#contact-form .select-options{max-height:280px;scroll-padding:8px}

/* A compact AI example beside the established industry portfolio. */
.ai-example{display:grid;grid-template-columns:1fr 1.3fr;gap:32px;margin-top:32px;padding:28px;background:var(--surface);border:1px solid var(--line);border-left:4px solid var(--orange);border-radius:var(--panel-radius)}
.ai-example .eyebrow{color:var(--accent-readable);display:block;line-height:1.5;margin-bottom:14px}
.ai-example h3{font-size:32px;font-weight:500;line-height:1.15}
.ai-example p{font-size:16px;color:var(--text-secondary);line-height:1.6}
.ai-example .ai-scope{font-size:14px;margin:12px 0 20px}
.ai-example .text-button{font-size:16px;min-height:44px}
@media(max-width:700px){.ai-example{grid-template-columns:1fr;gap:20px;padding:24px}.ai-example h3{font-size:28px}}

/* AI learning path and topic discovery */
.learning-path{display:grid;grid-template-columns:1fr 1fr;gap:48px;padding-top:48px;padding-bottom:48px;border-block:1px solid var(--line);background:var(--surface,var(--paper))}.learning-path h2{font-size:clamp(28px,3.4vw,48px);margin:18px 0;line-height:1.14}.learning-path p{color:var(--muted);max-width:560px}.learning-path ol{list-style:none;padding:0;margin:0;display:grid;gap:10px}.learning-path li{display:flex;align-items:center;gap:20px;border-bottom:1px solid var(--line);padding:20px 0}.learning-path li span{color:var(--orange);font-weight:700}.learning-path a{font-size:20px;line-height:1.4}.learning-path a:hover{color:var(--orange)}.insight-filters{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:16px}.insight-filters button{padding:12px 18px;border:1px solid var(--line);border-radius:24px;background:var(--paper);color:var(--black);min-height:44px}.insight-filters button[aria-pressed=true]{background:var(--black);color:var(--paper);border-color:var(--black)}.insight-grid>[hidden]{display:none!important}.article-meta{color:var(--muted);font-size:14px;margin:20px 0}.article-contents{display:flex;flex-direction:column;gap:14px;padding:24px;border:1px solid var(--line);border-radius:16px;margin:32px 0}.article-contents a{font-size:16px;text-decoration:underline;text-underline-offset:4px;line-height:1.5}.article-body p+p{margin-top:16px}.article-body section{scroll-margin-top:120px}.article-sources ul{padding-left:20px}.article-sources li{margin:14px 0}.article-sources a{text-decoration:underline;text-underline-offset:4px;overflow-wrap:anywhere}.related-reading{padding-top:64px;padding-bottom:64px}.related-reading>h2{font-size:32px;margin-bottom:28px}.article-page .related-reading{padding-left:0;padding-right:0}.article-page .related-reading .insight-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.related-reading .insight-art{min-height:140px}.related-reading .insight-copy h3{font-size:26px}.service-reading>.text-button,.home-reading>.text-button{display:inline-block;margin-top:28px}.home-reading .insight-grid{grid-template-columns:repeat(2,minmax(0,1fr))}html[data-theme=dark] .article-contents{background:var(--paper)}
@media(max-width:760px){.learning-path{grid-template-columns:1fr;gap:20px}.article-page .related-reading .insight-grid,.home-reading .insight-grid{grid-template-columns:1fr}.article-contents{padding:20px}.learning-path a{font-size:18px}.insight-filters button{padding:10px 14px}}

/* Connect learning, illustrative services and a focused enquiry. */
.insight-featured{display:grid;grid-template-columns:1.2fr 1fr;gap:48px;padding-top:48px;padding-bottom:48px;border-bottom:1px solid var(--line)}
.insight-featured h2{font-size:clamp(28px,3.2vw,46px);line-height:1.15;margin:18px 0}.insight-featured p{max-width:560px;color:var(--text-secondary);margin-bottom:24px}
.insight-featured ol{list-style:none;padding:0;display:grid;align-content:center;gap:20px}.insight-featured li{display:flex;gap:20px;font-size:18px;line-height:1.5}.insight-featured li span{color:var(--accent-readable);font-weight:600}
.service-usecases,.service-delivery{padding-top:64px;padding-bottom:64px;border-top:1px solid var(--line)}
.service-usecases .section-intro>p{max-width:650px;color:var(--text-secondary);margin-top:20px}
.usecase-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin-top:32px}.usecase-card{display:flex;flex-direction:column;padding:28px;border:1px solid var(--line);border-radius:var(--panel-radius);background:var(--surface)}
.usecase-card h3{font-size:26px;line-height:1.25;margin-bottom:18px}.usecase-card p{font-size:16px;line-height:1.6;color:var(--text-secondary);margin-bottom:24px;flex:1}.usecase-card .text-button{display:block;text-align:left;font-size:15px;line-height:1.5;min-height:44px;padding:10px 0;white-space:normal}
.service-delivery>h2{font-size:clamp(28px,3.4vw,44px);margin:18px 0 32px;line-height:1.15}.delivery-route{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:20px;list-style:none;padding:0;margin:0}.delivery-route li{border-top:2px solid var(--orange);padding:20px 0;display:flex;flex-direction:column;gap:12px}.delivery-route strong{font-size:20px}.delivery-route span,.delivery-note{font-size:15px;color:var(--text-secondary);line-height:1.6}.delivery-note{margin:16px 0}
.delivery-output{font-size:14px!important;border-top:1px solid var(--line);padding-top:16px;margin-top:20px}.delivery-output strong{color:var(--accent-readable);font-weight:500}
.reading-pause{margin:32px 0;padding:24px;border:1px solid var(--line);border-left:4px solid var(--orange);border-radius:var(--panel-radius);background:var(--surface)}.reading-pause p{font-size:20px;margin:12px 0}.reading-pause .text-button{font-size:16px;display:inline-block;min-height:44px;padding:10px 0}
.guide-recommendation{margin-top:24px;border-top:1px solid var(--line);padding-top:20px}.guide-recommendation p{font-size:16px;line-height:1.6}.guide-recommendation .text-button{display:inline-block;font-size:16px;line-height:1.5;min-height:44px;margin-top:12px}
@media(max-width:1000px){.delivery-route{grid-template-columns:repeat(3,minmax(0,1fr))}.usecase-grid{grid-template-columns:1fr}.usecase-card{padding:24px}}
@media(max-width:700px){.insight-featured{grid-template-columns:1fr;gap:24px}.delivery-route{grid-template-columns:1fr}.delivery-route li{gap:8px;padding:16px 0}.service-usecases,.service-delivery{padding-top:40px;padding-bottom:40px}}
.article-flow{margin:32px 0;border:1px solid var(--line);border-radius:var(--panel-radius);padding:24px;background:var(--surface)}.article-flow figcaption{font-size:22px;margin-bottom:20px}.article-flow ol{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));list-style:none;padding:0;gap:20px}.article-flow li{border-top:2px solid var(--orange);padding-top:16px;display:flex;flex-direction:column;gap:10px}.article-flow strong{font-size:18px;line-height:1.4}.article-flow p{font-size:15px;line-height:1.6;color:var(--text-secondary)}.article-flow .flow-note{margin-top:24px;font-size:14px}@media(max-width:600px){.article-flow ol{grid-template-columns:1fr}.article-flow{padding:20px}}
