/* Shared typography and controls, including all generated inner pages. */
h1,h2,h3,h4,h5,h6,button,.btn,.button,.wm-link,.quiet-link,.wf-cta a,.navigation>a,.nav>a,.wf-controls a{text-transform:capitalize}
.text-link,.whatsapp-link,.mega-panel a{text-transform:capitalize}.footer-in-view .back-top,.footer-in-view .whatsapp-link{opacity:0;visibility:hidden;pointer-events:none}
.wm-landmark img{width:100%;height:100%;object-fit:contain;object-position:left center}:root:not([data-theme=light]) .wm-landmark img{filter:invert(1)}
.btn,.button,.wm-link,.quiet-link,.wf-cta a{transition:transform .25s ease,box-shadow .25s ease,background .25s ease,border-color .25s ease}
.btn:hover,.button:hover,.wm-link:hover,.wf-cta a:hover{transform:translateY(-3px);box-shadow:0 8px 28px #21a9f229}
.btn>span,.button>span,.wm-link>span,.quiet-link>span{display:inline-block;transition:transform .25s ease}
.btn:hover>span,.button:hover>span,.wm-link:hover>span,.quiet-link:hover>span{transform:translate(3px,-3px)}
button:focus-visible,a:focus-visible,summary:focus-visible{outline:2px solid #21A9F2;outline-offset:5px}
.hero-full-copy>*{position:relative}.hero-full-copy h1{width:fit-content;margin-inline:auto}.hero-full-copy .hero-actions,.hero-full-copy .hero-caption,.hero-full-copy .eyebrow{width:fit-content;margin-inline:auto}
.wm-services:before,.wm-seo:before{content:'';position:absolute;width:650px;height:650px;right:-320px;top:0;pointer-events:none;border-radius:50%;background:radial-gradient(circle,#21a9f214,transparent 68%)}
.wm-seo{position:relative;overflow:hidden}.wm-seo>.container{position:relative}
.wm-seo-stack [role=tabpanel]{border:2px solid transparent;background:linear-gradient(var(--card),var(--card)) padding-box,linear-gradient(125deg,#8de1ff,#21a9f2 38%,#676eff 68%,#8de1ff) border-box;animation:wm-card-arrive .55s cubic-bezier(.16,1,.3,1) both;transform-origin:50% 90%}
.wm-seo-stack:before,.wm-seo-stack:after{border:1px solid transparent;background:linear-gradient(var(--card),var(--card)) padding-box,linear-gradient(120deg,#8de1ff,#676eff,#21a9f2) border-box;transition:transform .4s ease}
.wm-seo-stack:hover:before{transform:translateY(3px) rotate(-1deg)}.wm-seo-stack:hover:after{transform:translateY(6px) rotate(1.5deg)}
.wm-seo-tabs button:hover{transform:translateY(-5px) scale(1.08);border-color:#21a9f2;box-shadow:0 8px 22px #21a9f222}.wm-seo-tabs button[aria-selected=true]{background:linear-gradient(135deg,#8de1ff,#21a9f2)}
@keyframes wm-card-arrive{from{opacity:0;transform:translateY(18px) rotate(2deg) scale(.96)}to{opacity:1;transform:none}}
.wm-award-grid{gap:16px}.wm-award-grid figure{position:relative;overflow:hidden;border:1px solid var(--border)!important;border-radius:18px;background:var(--card);transition:border-color .35s,box-shadow .35s;isolation:isolate}
.wm-award-grid figure:before{content:'';position:absolute;inset:0;background:linear-gradient(115deg,transparent 30%,#8de1ff22 48%,transparent 65%);transform:translateX(-120%);transition:transform .7s;pointer-events:none;z-index:1}
.wm-award-grid figure:after{content:'';position:absolute;bottom:0;height:2px;left:50%;width:0;background:linear-gradient(90deg,#0377b8,#8de1ff,#21a9f2);transition:left .35s,width .35s}
.wm-award-grid figure:hover{transform:none;background:var(--card);border-color:#21a9f280!important;box-shadow:inset 0 0 35px #21a9f210}
.wm-award-grid figure:hover:before{transform:translateX(120%)}.wm-award-grid figure:hover:after{left:0;width:100%}.wm-award-grid figure:hover img{transform:none;filter:drop-shadow(0 5px 10px #21a9f233)}
/* Six visible logo slots per row on desktop. All fourteen platforms remain in rotation. */
.wm-platform-window{container-type:inline-size;mask-image:none}.wm-logo-row{--logo-gap:16px;--logo-width:calc((100cqw - 5 * var(--logo-gap))/6);padding:8px 0}.wm-logo-group{gap:var(--logo-gap);padding-right:var(--logo-gap)}
.wm-logo-group>span{flex:0 0 var(--logo-width);width:var(--logo-width);height:88px;padding:16px;border-radius:12px}.wm-logo-group img{width:100%;height:50px}.wm-logo-track{animation-duration:42s}
.motion-paused .wm-logo-row{overflow-x:auto}.motion-paused .wm-logo-track{width:max-content}.motion-paused .wm-logo-group{width:auto;flex-wrap:nowrap;gap:var(--logo-gap);padding-right:var(--logo-gap)}.motion-paused .wm-logo-group>span{width:var(--logo-width)}
.wm-why{background:var(--section)}.wm-why-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:60px;margin-bottom:48px}.wm-why-heading h2{margin-bottom:0}.wm-why-heading>p{max-width:355px;margin-bottom:4px}
.wm-blueprint{display:grid;grid-template-columns:.95fr 1.3fr;border:1px solid var(--strong);border-radius:28px;overflow:hidden;background:var(--ink)}
.wm-why-tabs{display:flex;flex-direction:column;justify-content:center;padding:36px;border-right:1px solid var(--border)}.wm-why-tabs button{display:flex;align-items:center;text-align:left;gap:20px;min-height:100px;padding:23px 10px;color:var(--sage);background:none;border:0;border-bottom:1px solid var(--border);font-size:18px;line-height:1.4;cursor:pointer;transition:color .25s,background .25s,padding .25s}.wm-why-tabs button:last-child{border-bottom:0}.wm-why-tabs button>span{font-size:12px;color:var(--sage)}.wm-why-tabs button>b{margin-left:auto;font-weight:400;color:var(--blue);opacity:0;transition:opacity .25s,transform .25s}.wm-why-tabs button[aria-selected=true],.wm-why-tabs button:hover{color:var(--paper);background:linear-gradient(90deg,#21a9f210,transparent);padding-left:20px}.wm-why-tabs button[aria-selected=true]>b{opacity:1;transform:rotate(0deg)}
.wm-why-panels{position:relative;padding:38px 48px 42px;background:radial-gradient(ellipse at 80% 10%,#21a9f21a,transparent 60%),linear-gradient(#21a9f208 1px,transparent 1px),linear-gradient(90deg,#21a9f208 1px,transparent 1px);background-size:auto,36px 36px,36px 36px}
.wm-why-panels [role=tabpanel]{animation:wm-card-arrive .5s ease both}.wm-why-panels h3{font-size:28px;margin:12px 0}.wm-why-panels p{max-width:530px}.wm-why-panels .wm-link{margin-top:22px;font-size:13px}.wm-why-formula{font-size:11px!important;letter-spacing:.1em;color:var(--blue)!important;text-transform:uppercase}
.wm-why-diagram{height:200px;position:relative;display:grid;place-items:center;margin-bottom:25px}.wm-orbit{position:absolute;border:1px solid #21a9f24d;border-radius:50%;width:170px;height:170px}.wm-orbit-two{width:250px;height:125px;transform:rotate(-28deg);border-color:#8de1ff66}.wm-orbit-three{width:250px;height:125px;transform:rotate(28deg)}.wm-why-core{width:100px;height:100px;filter:drop-shadow(0 0 25px #21a9f24d)}.wm-blueprint-number{position:absolute;right:0;top:-10px;font-size:76px;font-weight:700;color:var(--paper);opacity:.08;line-height:1}.wm-orbit-dot{position:absolute;width:9px;height:9px;background:#8de1ff;border-radius:50%;box-shadow:0 0 20px #21a9f2;transform:translate(111px,-42px)}
:root[data-theme=light] .wm-services,:root[data-theme=light] .wm-testimonials,:root[data-theme=light] .wm-industries,:root[data-theme=light] .wm-platforms,:root[data-theme=light] .wm-insights{background:#fff}
:root[data-theme=light] .wm-stats,:root[data-theme=light] .wm-seo,:root[data-theme=light] .wm-why,:root[data-theme=light] .wm-faq{background:#edf6fb}
:root[data-theme=light] .wm-awards,:root[data-theme=light] .wm-about,:root[data-theme=light] .wm-enquiry{background:#eff4f1}
:root[data-theme=light] .wm-seo-stack,:root[data-theme=light] .wm-award-grid,:root[data-theme=light] .wm-review-rail,:root[data-theme=light] .wm-service-orbit{--card:#fff}
:root[data-theme=light] .wm-blueprint{background:#fff}:root[data-theme=light] .wm-why-formula{color:#0377b8!important}
@media(max-width:1000px){.wm-why-tabs{padding:22px}.wm-why-tabs button{font-size:16px;gap:13px}.wm-why-panels{padding:30px}.wm-logo-row{--logo-gap:12px}}
@media(max-width:850px){.wm-logo-row{--logo-width:calc((100cqw - 2 * var(--logo-gap))/3)}.wm-why-heading{gap:30px;align-items:flex-start}.wm-why-heading>p{max-width:280px}.wm-why-tabs button{font-size:15px}.wm-why-panels h3{font-size:24px}}
@media(max-width:600px){.wm-why-heading{display:block;margin-bottom:30px}.wm-why-heading>p{margin-top:22px;max-width:none}.wm-blueprint{grid-template-columns:1fr;border-radius:20px}.wm-why-tabs{display:grid;grid-template-columns:1fr 1fr;padding:12px;border-right:0;border-bottom:1px solid var(--border);gap:8px}.wm-why-tabs button,.wm-why-tabs button[aria-selected=true],.wm-why-tabs button:hover{min-height:78px;padding:12px;gap:9px;border:1px solid var(--border)!important;border-radius:10px;font-size:14px}.wm-why-tabs button>b{display:none}.wm-why-tabs button[aria-selected=true]{border-color:#21a9f2!important}.wm-why-panels{padding:26px}.wm-why-diagram{height:165px}.wm-orbit{width:145px;height:145px}.wm-orbit-two,.wm-orbit-three{width:210px;height:105px}.wm-why-core{width:80px;height:80px}.wm-orbit-dot{transform:translate(92px,-37px)}.wm-blueprint-number{font-size:60px}.wm-why-panels .wm-link{font-size:12px;gap:12px}.wm-why-formula{font-size:10px!important}.wm-logo-row{--logo-gap:12px;--logo-width:calc((100cqw - var(--logo-gap))/2)}.wm-logo-group>span{height:78px}.wm-logo-group img{height:45px}}
@media(max-width:560px){.wm-services .wm-heading{margin-bottom:26px}.wm-services .wm-heading>p{font-size:15px;line-height:1.7}.wm-service-orbit{gap:10px}.wm-service:nth-of-type(n){min-height:0;padding:16px 18px;gap:14px;align-items:center}.wm-service .wm-kicker{display:none}.wm-service h3{font-size:17px;margin:0 18px 5px 0}.wm-service p{font-size:15px;line-height:1.55}.wm-service-icon{font-size:26px;flex:0 0 28px}.wm-service-arrow{top:18px;right:12px}.wm-services .wm-centered{margin-top:25px}.wm-award-grid{gap:10px}.wm-award-grid figure{padding:20px 10px}.wm-award-grid img{width:110px;height:95px}.wm-award-grid figcaption{font-size:13px}}
@media(prefers-reduced-motion:reduce){.wm-logo-track{animation:none}.wm-logo-row{overflow-x:auto}.wm-logo-group[aria-hidden=true]{display:none}.wm-seo-stack [role=tabpanel],.wm-why-panels [role=tabpanel]{animation:none}*,*:before,*:after{transition-duration:.01ms!important}}
.motion-paused .wm-seo-stack [role=tabpanel],.motion-paused .wm-why-panels [role=tabpanel]{animation:none}.motion-paused *, .motion-paused *:before,.motion-paused *:after{transition-duration:.01ms!important}
