/* White surfaces, a business-led CTA and directional section transitions. */
:root{--refine-purple:#7050ac;--refine-ink:#242734;--refine-muted:#626775}

/* Keep the physical product and layout intact; unify the virtual browser palette. */
.preview-pane{background:#f0eff4}
.browser-window{border-color:#dcdde5;box-shadow:0 5px 13px #2423340b}
.browser-chrome{background:#eeedf2;color:#74717e;border-bottom-color:#e2e1e8}
.browser-tab,.browser-history,.browser-menu{color:#77727f}
.browser-tab svg,.product-brand-mark,.product-nav-links .nav-active,.product-category{color:var(--refine-purple)}
.browser-url{background:#f6f6f8;border-color:#eeeef2;color:#696575}
.browser-url>svg,.url-path{color:#9993a3}
.product-page{color:#30323c;background:#fff}
.product-utility{background:#292533;color:#e2dce9}
.product-brand>strong{color:#252630}
.product-brand>strong>span{color:#65616f}
.product-brand small,.product-nav-links{color:#77717f}
.product-subheader{background:#fafafb;border-color:#eeeef1}
.product-subheader>span,.product-subheader>strong{color:#7b7682}
.product-subheader i{color:#b8b4bf}
.product-hero,.product-nav,.gallery-stage{background:#fff}
.product-nav,.gallery-stage,.gallery-thumb,.product-features,.product-tabs{border-color:#e8e7ed}
.gallery-thumb.is-current{border-color:var(--refine-purple);box-shadow:0 0 0 1px var(--refine-purple)}
.gallery-thumb span,.gallery-counter{color:#898390}
.gallery-arrow:hover{background:#f0edf5;color:var(--refine-purple)}
.product-title,.product-dialog .product-title{color:#252630}
.product-intro,.product-overview>p{color:#66646e}
.product-features li:before{border-color:#8c73b2}
.product-features li strong{color:#38343f}
.product-features li>span,.product-secondary-action{color:#797380}
.product-selection-note{color:#908a96}
.product-enquiry,.nav-quote,.product-bottom-button,.section-enquiry{background:var(--refine-purple);border-color:var(--refine-purple);color:#fff;box-shadow:0 3px 8px #7050ac1a}
.product-page.refined .product-enquiry,.product-page.refined .product-bottom-button,.product-page.refined .section-enquiry{background:#634197;color:#fff;border-color:#634197;box-shadow:0 0 0 .22em #7050ac10,0 .35em .75em #7050ac20}
.product-tabs button{color:#817987}
.product-tabs button.is-active{color:var(--refine-purple);border-bottom-color:var(--refine-purple)}
.product-parameters thead th{background:#f5f4f7;color:#625c6c}
.product-parameters tbody tr:nth-child(even)>*{background:#fbfafc}
.product-bottom{background:#f8f8fa;border-top-color:#e8e7ed}
.product-bottom strong{color:#34303c}
.product-bottom p{color:#847c8d}

/* A curved reading path between the accepted scenes. */
.method-section{padding-top:12px}
.flow-connector{width:89%;max-width:1280px;height:146px;margin:0 auto 24px;pointer-events:none;position:relative}
.flow-connector>svg{width:100%;height:100%;display:block;overflow:visible;fill:none;color:#a58bbb}
.flow-dash{stroke:currentColor;stroke-width:1.35;stroke-dasharray:3 10;stroke-linecap:round;animation:reading-flow 5s linear infinite;animation-play-state:paused;vector-effect:non-scaling-stroke}
.flow-origin{stroke:#b5a2c5;stroke-width:1.2;fill:var(--paper);vector-effect:non-scaling-stroke}
.flow-tip{stroke:#8b6ba6;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round;vector-effect:non-scaling-stroke}
.flow-connector[data-flow-running="true"] .flow-dash{animation-play-state:running}
@keyframes reading-flow{to{stroke-dashoffset:-52}}
.ease-section{padding-top:0}
.flow-connector--return{width:100%;height:132px;margin-top:-15px;margin-bottom:24px}
.method-service-line a[href="#learn-together"]{color:#654587}
.method-service-line a[href="#learn-together"]>span{background:#765397;border-color:#765397;color:#fff}
.method-service-line a[href="#done-for-you"]{color:#9a91a2}
.method-service-line a[href="#done-for-you"]>span{color:#aba1b3;border-color:#ddd6e4;background:transparent}
.method-service-line a[href="#done-for-you"]:hover,.method-service-line a[href="#done-for-you"]:focus-visible{color:#755689}
.method-service-line a[href="#done-for-you"]:hover>span,.method-service-line a[href="#done-for-you"]:focus-visible>span{color:#755689;background:#f1edf5;border-color:#c9b9d7}

/* The lower page is neutral white, with purple reserved for deliberate accents. */
.homepage-lower{background:#fff;display:flow-root;padding-top:1px}
.homepage-lower .cap-kicker{color:#88858f}
.homepage-lower .cap-kicker>span{color:#9e88bb}
.homepage-lower .finale-heading h2,.homepage-lower .faq-intro h2,.experience-copy h2{color:var(--refine-ink)}
.homepage-lower .finale-heading h2>span,.homepage-lower .faq-intro h2>span,.experience-copy h2>span{color:var(--refine-purple)}
.finale-heading>p,.finale-heading>p strong{color:var(--refine-muted)}
.service-story,.service-build .service-story-body{background:#fff;border-color:#e3e5eb;box-shadow:0 16px 34px -30px #22273724}
.service-story h3{color:#292b37}
.service-story-number{color:#857791}
.service-story-number i{color:#96909f}
.service-main-copy{color:#5c616e}
.service-fit{color:#84838d;font-size:12px}
.service-path{color:#61556f;border-color:#e8e8ee;font-size:12px}
.service-path span{color:#a997bb}
.service-more{border-color:#e8e8ee}
.service-more summary{color:#777080;font-size:12px}
.service-more>p{color:#686571;font-size:12px}
.service-contact{background:#f6f4fa;color:#71528c;border-color:#dfd7ea}
.service-contact:hover{background:#ede7f6;color:#5f3e80}
.service-build .service-contact{background:#7050ac;border-color:#7050ac}
.service-build .service-contact:hover{background:#624194}
.partnership-afterword,.partnership-afterword strong{color:#85808e}
.partnership-afterword>span{background:#dfdce6}
.experience-section{background:#fff;padding-top:88px;padding-bottom:85px}
.experience-section:before{display:none}
.experience-inner{border-top:1px solid #e9e9ef;padding-top:99px}
.experience-photo{background:#fff;border-color:#e2e3e9;box-shadow:0 24px 36px -31px #20243340}
.experience-years,.experience-ai-note{background:#fff;border-color:#ded9e7;box-shadow:0 16px 35px -30px #45305e50}
.experience-years>strong,.experience-years>div,.experience-ai-note span{color:#77579c}
.experience-years small,.experience-ai-note p{color:#88808f}
.experience-intro,.experience-chapters p{color:#74717e}
.experience-chapters p{font-size:12px}
.experience-chapters h3{color:#51455f}
.experience-chapters>div>span{color:#a999b9}
.experience-principle{color:#9891a0;border-color:#e6e2eb}
.experience-principle strong{color:#6f5b81}
.experience-signature>small{color:#928897;border-color:#e0dbe5}
.faq-intro>p:not(.cap-kicker),.faq-answer p{color:#73707b}
.faq-item h3{color:#5f566d}
.faq-item[open] h3{color:#64468a}
.faq-list{border-top:0}
.faq-item{border-color:#e7e5eb}
.faq-margin-note>span{color:#e0d8eb;text-shadow:none}
.faq-margin-note>p{color:#a494b5}
.faq-plus{color:#aa99bc}
.faq-index{color:#afa3bc}

/* Business context is the CTA artwork: a real request, source brief and page draft. */
.capability-cta{min-height:393px;background:#f8f9fc;border-color:#e6e8ef;border-radius:8px;padding:60px 55px;margin-bottom:112px}
.capability-cta:after{background:linear-gradient(90deg,#f8f9fc 0%,#f8f9fcfa 39%,#f8f9fcbb 49%,#f8f9fc00 64%);z-index:0;pointer-events:none}
.mid-cta-content{z-index:2;max-width:51%}
.capability-cta .cta-kicker{color:#93909e;letter-spacing:2px}
.capability-cta h2{font-size:clamp(33px,3vw,44px);color:#292a38;line-height:1.4}
.capability-cta h2>br{display:block}
.capability-cta h2>span{color:var(--refine-purple)}
.capability-cta-button{background:#7050ac;border-color:#7050ac;box-shadow:0 6px 17px -10px #7050ac66}
.mid-cta-workspace{position:absolute;width:600px;height:345px;right:-14px;top:26px;z-index:0;pointer-events:none;user-select:none}
.cta-scene-grid{position:absolute;inset:-45px -20px;background-image:radial-gradient(#b9bdcc55 .7px,transparent .7px);background-size:19px 19px;mask-image:linear-gradient(90deg,transparent,#000 35%,#000 80%,transparent)}
.cta-source{position:absolute;width:186px;top:54px;left:5px;transform:rotate(-7deg);border:1px solid #daddE8;background:#fff;padding:19px 17px 17px;border-radius:5px;box-shadow:0 18px 25px -22px #28264355;color:#6d627d}
.cta-source-top{display:flex;align-items:center;gap:8px;font-size:10px}
.cta-source-top>svg{width:15px;height:15px;stroke-width:1.4}
.cta-source h3{font:500 16px/1.5 var(--sans);margin:16px 0 12px;color:#403947}
.cta-source>p{font-size:8px;color:#92909c;line-height:1.8}
.cta-source dl{margin:15px 0 0;font:8px/1.8 var(--sans);border-top:1px solid #eeeaf2;padding-top:9px}
.cta-source dl>div{display:flex;justify-content:space-between;gap:8px}
.cta-source dt{color:#a29bac}.cta-source dd{margin:0;color:#807887}
.cta-task-window{position:absolute;right:21px;top:0;width:365px;min-height:317px;border:1px solid #dcdde8;border-radius:8px;background:#fff;box-shadow:0 22px 45px -27px #4e46654d;transform:rotate(3deg);overflow:hidden}
.cta-task-bar{height:36px;display:flex;align-items:center;gap:7px;padding:0 13px;border-bottom:1px solid #eeeeF3;font:8px/1.5 var(--sans);color:#80738e;background:#fcfcfe}
.cta-task-bar>svg{width:13px;height:13px;color:#7b5aab;stroke-width:1.4}
.cta-task-bar>span:last-child{margin-left:auto;color:#a39baD;font-size:7px}
.cta-task-prompt{display:flex;gap:9px;margin:17px 16px 14px;font-size:10px;line-height:1.8;color:#574B68}
.cta-task-prompt>span{width:21px;height:21px;flex-shrink:0;display:grid;place-items:center;background:#ede8f6;border-radius:50%;color:#8b74a3;font:9px/1 Arial,sans-serif;margin-top:3px}
.cta-task-prompt>p{margin:0}
.cta-page-draft{border:1px solid #e6e5ed;border-radius:4px;margin:0 16px;background:#fff}
.cta-draft-nav{display:flex;align-items:center;justify-content:space-between;padding:8px 10px;border-bottom:1px solid #eeedf2;color:#767182;font:5px/1.4 Arial,sans-serif;letter-spacing:.4px}
.cta-draft-nav b{font-weight:600;color:#494355;font-size:6px}
.cta-draft-product{display:grid;grid-template-columns:44% 1fr;gap:14px;padding:12px;align-items:center}
.cta-sensor{width:100%;height:104px;display:block;background:#f8f9fb;border-radius:3px}
.cta-draft-product h3{font:600 13px/1.28 Arial,sans-serif;color:#36313f;margin:0 0 7px}
.cta-draft-product p{font:6px/1.6 Arial,sans-serif;color:#98909f;margin:0 0 8px}
.cta-draft-lines{display:grid;gap:5px;margin:9px 0}
.cta-draft-lines i{height:2px;background:#e7e4ed;width:91%}
.cta-draft-lines i:nth-child(2){width:76%}
.cta-draft-product strong{font:5px/1.4 Arial,sans-serif;color:#fff;background:#7857a8;display:inline-block;padding:5px 10px;border-radius:2px}
.cta-draft-caption{padding:9px 16px 12px;font:8px/1.6 var(--sans);color:#9585a5;display:flex;align-items:center;gap:7px}
.cta-draft-caption>svg{width:12px;height:12px;stroke-width:1.6}
.cta-scene-label{position:absolute;bottom:1px;right:42px;color:#a0a2ad;font:7px/1.5 var(--sans);letter-spacing:.7px}

/* White final contact, followed by a deliberately independent technology footer. */
.final-contact-section{background:#fff;padding:77px 0 93px;border-top:1px solid #edeef2}
.final-contact-inner h2{color:#262937}
.final-contact-inner h2>span{color:#777187}
.final-contact-kicker{color:#9692a2}
.final-contact-inner>div>p{color:#8b8794}
.final-contact-action>button{background:#262436;border-color:#262436;color:#fff;box-shadow:0 14px 26px -20px #24213888}
.final-contact-action>button:hover{background:#383047}
.final-contact-action>button>svg,.final-contact-action>button>i{color:#c4acdF}
.final-contact-action>button small{color:#aaa0bc}
.final-contact-action>p{color:#96909f!important}
.final-contact-line,.final-contact-wordmark{display:none}
.site-footer.sample-footer{position:relative;isolation:isolate;overflow:hidden;width:100%;max-width:none;padding:64px max(5.5%,calc((100% - 1280px)/2)) 0;margin:0;background:#10121c;color:#c1c6d4}
.site-footer:before{content:"";position:absolute;z-index:-1;inset:0;background-image:linear-gradient(#8491b40b 1px,transparent 1px),linear-gradient(90deg,#8491b40b 1px,transparent 1px);background-size:48px 48px;mask-image:linear-gradient(90deg,#000,transparent 70%)}
.footer-tech-band{position:relative;display:flex;align-items:center;justify-content:space-between;gap:45px;padding-bottom:47px;margin-bottom:46px;border-bottom:1px solid #ffffff15}
.footer-tech-band>div:first-child>span{font:8px/1.5 Arial,sans-serif;letter-spacing:2.4px;color:#8d96b1}
.footer-tech-band p{font:400 30px/1.5 var(--sans);letter-spacing:-.8px;color:#e6e7ee;margin-top:13px}
.footer-tech-band p>span{color:#8d93ac}
.footer-network{width:305px;height:76px;position:relative;display:flex;align-items:center;justify-content:space-between;gap:32px}
.footer-network:before{content:"";height:1px;background:linear-gradient(90deg,#5b698350,#af9ad4,#91b6c7);position:absolute;left:19px;right:20px;top:25px;z-index:-1}
.footer-network>span{display:grid;justify-items:center;gap:9px;font:7px/1.4 Arial,sans-serif;letter-spacing:1.3px;color:#8e96ae}
.footer-network i{display:grid;place-items:center;width:47px;height:47px;font-style:normal;border:1px solid #79809f4a;background:#141724;border-radius:12px;box-shadow:0 0 0 5px #10121c}
.footer-network svg{width:20px;height:20px;stroke-width:1.2;color:#aaa6c9}
.footer-network>span:last-child i{border-color:#7892aa77;background:#1b2131}
.footer-network>span:last-child svg{color:#b7d2d9}
.footer-main{grid-template-columns:1.2fr 1.3fr .8fr .65fr;gap:44px;padding-bottom:45px}
.footer-identity>a{color:#f3f4f8;font-size:26px}
.footer-identity>a>span{color:#a5a5bb}
.footer-identity>p{color:#858cA1;font-size:11px}
.footer-column h2{color:#b9bfd1;font-size:12px}
.site-footer .footer-column a,.site-footer .footer-column button{color:#8f96ac;font-size:11px;transition:color .2s}
.site-footer .footer-column a:hover,.site-footer .footer-column button:hover{color:#e0d6f3}
.footer-bottom{border-color:#ffffff16;color:#767e93;min-height:66px;font-size:10px}
.footer-bottom>span,.footer-bottom>p{font-size:9px}
.site-footer .footer-bottom>a{color:#676e83}
.footer-large-mark{font:600 clamp(52px,11.6vw,174px)/1.05 Arial,sans-serif;letter-spacing:-.065em;white-space:nowrap;color:#9ca8c0;opacity:.12;margin:5px 0 -10px;pointer-events:none;user-select:none}
.site-footer a:focus-visible,.site-footer button:focus-visible{outline:2px solid #b9add8;outline-offset:5px}

@media(max-width:1150px){
 .capability-cta{padding:50px 39px;min-height:355px}
 .mid-cta-workspace{transform:scale(.88);transform-origin:right center;right:-38px;top:2px}
 .capability-cta h2{font-size:36px}
 .mid-cta-content{max-width:53%}
 .footer-main{gap:30px}
 .experience-inner{padding-top:80px}
 .experience-section{padding-top:52px;padding-bottom:48px}
 .footer-tech-band p{font-size:26px}
}
@media(max-width:900px) and (min-width:601px){
 .capability-cta{padding:43px 30px;min-height:310px}
 .capability-cta h2{font-size:30px}
 .capability-cta-button{padding-inline:17px;font-size:10px;gap:17px}
 .mid-cta-workspace{transform:scale(.68);right:-6px;top:-20px}
 .mid-cta-content{max-width:57%}
 .capability-cta:after{background:linear-gradient(90deg,#f8f9fc,#f8f9fc 30%,#f8f9fcc0 48%,transparent 68%)}
 .experience-inner{gap:45px;padding-top:70px}
 .experience-chapters p{font-size:11px}
 .footer-main{grid-template-columns:1fr 1.2fr;gap:32px}
 .footer-tech-band{gap:25px}
 .footer-tech-band p{font-size:22px}
 .footer-network{width:235px;gap:20px}
 .service-fit{font-size:10px}
 .service-path{font-size:10px}
 .service-more summary,.service-more>p{font-size:11px}
}
@media(max-width:760px){
 .flow-connector{height:99px;width:calc(100% - 40px);margin-bottom:25px}
 .method-section{padding-top:7px}
 .flow-connector--return{width:100%;height:92px;margin-top:-7px;margin-bottom:23px}
 .flow-dash{stroke-width:1.1;stroke-dasharray:2 7}
 .flow-origin{r:3.6px}
 .flow-tip{stroke-width:1.3}
 .ease-section{padding-top:0}
}
@media(max-width:700px){
 .capability-cta{margin-top:31px;margin-bottom:65px;padding:33px 25px 0;min-height:538px}
 .capability-cta h2{font-size:31px;margin-block:18px 22px}
 .mid-cta-content{max-width:none}
 .capability-cta:after{inset:0 0 auto;height:290px;background:linear-gradient(#f8f9fc 0%,#f8f9fc 82%,transparent);z-index:0}
 .mid-cta-workspace{width:430px;top:auto;bottom:20px;right:50%;margin-right:-205px;height:290px;transform:scale(.81);transform-origin:center bottom}
 .cta-source{width:154px;left:2px;top:47px;padding:14px 12px}
 .cta-source h3{font-size:13px}
 .cta-source-top{font-size:8px}
 .cta-source>p{font-size:7px}
 .cta-source dl{font-size:7px}
 .cta-task-window{right:0;width:292px;min-height:268px}
 .cta-task-bar{height:30px;font-size:7px}
 .cta-task-bar>span:last-child{font-size:6px}
 .cta-task-prompt{font-size:8px;margin:13px 12px 11px;gap:7px}
 .cta-task-prompt>span{width:18px;height:18px;font-size:8px}
 .cta-page-draft{margin-inline:12px}
 .cta-draft-product{gap:9px;padding:10px}
 .cta-sensor{height:87px}
 .cta-draft-product h3{font-size:11px}
 .cta-draft-product p{font-size:5px}
 .cta-draft-caption{padding:8px 12px 11px;font-size:7px}
 .cta-scene-label{right:10px;bottom:-5px;font-size:7px}
}
@media(max-width:600px){
 .service-fit{font-size:11px}
 .service-path{font-size:11px}
 .service-more summary,.service-more>p{font-size:12px}
 .experience-section{padding-top:0;padding-bottom:0}
 .experience-inner{padding-top:59px}
 .experience-chapters p{font-size:12px}
 .experience-intro{font-size:13px}
 .experience-ai-note p{font-size:10px}
 .faq-answer p{font-size:12px}
 .faq-intro>p:not(.cap-kicker){font-size:13px}
 .final-contact-section{padding:53px 0 59px}
 .site-footer.sample-footer{width:100%;max-width:none;padding:35px 20px 0}
 .footer-tech-band{display:block;padding-bottom:31px;margin-bottom:32px}
 .footer-tech-band>div:first-child>span{font-size:6px;letter-spacing:2px}
 .footer-tech-band p{font-size:23px;line-height:1.5;margin-top:15px}
 .footer-tech-band p>span{display:block}
 .footer-network{width:245px;height:68px;margin-top:28px}
 .footer-network i{width:39px;height:39px;border-radius:10px}
 .footer-network:before{top:22px}
 .footer-network svg{width:18px;height:18px}
 .footer-network>span{font-size:6px}
 .footer-main{grid-template-columns:1fr 1fr;gap:28px 21px;padding-bottom:29px}
 .footer-identity>a{font-size:25px}
 .footer-identity>p{font-size:11px}
 .footer-column h2{font-size:12px}
 .site-footer .footer-column a,.site-footer .footer-column button{font-size:11px;min-height:28px}
 .footer-bottom{gap:12px 13px;min-height:0;padding:21px 0}
 .footer-bottom>span,.footer-bottom>p{font-size:8px}
 .site-footer .footer-bottom>a{font-size:7px}
 .footer-large-mark{font-size:clamp(47px,11.6vw,70px);margin-bottom:-3px}
}
@media(max-width:370px){
 .flow-connector{width:calc(100% - 32px);height:83px}
 .flow-connector--return{width:100%;height:83px}
 .capability-cta{padding-inline:20px;min-height:504px}
 .capability-cta h2{font-size:28px}
 .mid-cta-workspace{transform:scale(.69);bottom:21px;margin-right:-207px}
 .service-fit{font-size:10px}
 .service-path{font-size:10px}
 .service-more summary,.service-more>p{font-size:11px}
 .experience-chapters p{font-size:11px}
 .site-footer.sample-footer{padding-inline:16px}
 .footer-tech-band p{font-size:21px}
 .footer-large-mark{font-size:45px}
}
@media(prefers-reduced-motion:reduce){
 .flow-dash{animation:none}
 .site-footer .footer-column a,.site-footer .footer-column button{transition:none}
}
