/* Shared color tokens for all homepage sections. */
html[data-theme=light]{--tt-page:#f7f8fa;--tt-surface:#fff;--tt-soft:#f0f2f5;--tt-text:#171a20;--tt-subtle:#5f6976;--tt-border:rgba(31,41,55,.12);--tt-ink:#171a20;--tt-muted:#5f6976;--tt-line:rgba(31,41,55,.12);--tt-paper:#f7f8fa}
html[data-theme=dark]{--tt-page:#101318;--tt-surface:#1b2028;--tt-soft:#252b34;--tt-text:#f2f5f9;--tt-subtle:#a8b0bd;--tt-border:rgba(170,184,203,.16);--tt-ink:#f2f5f9;--tt-muted:#a8b0bd;--tt-line:rgba(170,184,203,.16);--tt-paper:#101318}
html[data-theme] body{background:var(--tt-page);color:var(--tt-text)}
.tt-header-inner>.tt-header-actions{display:flex;align-items:center;gap:12px;margin:0 0 0 auto!important;flex-shrink:0;position:relative;z-index:2}
.tt-header-actions>.tt-header-cta{margin:0!important;align-self:center;white-space:nowrap}
.tt-theme-toggle{display:grid;place-items:center;flex:0 0 42px;width:42px;height:42px;padding:0;border-radius:50%;border:1px solid var(--tt-border);background:var(--tt-surface);color:var(--tt-text);cursor:pointer;transition:background .18s,color .18s,border-color .18s}
.tt-theme-toggle svg{width:20px;height:20px}.tt-theme-toggle .tt-theme-sun{display:none}html[data-theme=dark] .tt-theme-toggle .tt-theme-sun{display:block}html[data-theme=dark] .tt-theme-toggle .tt-theme-moon{display:none}
.tt-theme-toggle:hover{border-color:#006dfa;color:#338eff}.tt-theme-toggle:focus-visible{outline:2px solid #006dfa;outline-offset:4px}
html[data-theme] .tt-section,html[data-theme] .tt-consult{background:var(--tt-page)}
html[data-theme] :is(.tt-proof-strip,.tt-service){background:var(--tt-surface);border-color:var(--tt-border)}
html[data-theme] :is(.tt-copy h1,.tt-section-heading h2,.tt-service h3,.tt-proof-stat strong,.tt-proof-copy strong){color:var(--tt-text)}
html[data-theme] :is(.tt-lede,.tt-proof-copy,.tt-proof-note,.tt-proof-stat span,.tt-section-heading>p,.tt-service p,.tt-eyebrow){color:var(--tt-subtle)}
html[data-theme] .tt-copy h1 span{color:#006dfa}
html[data-theme] .tt-header-inner>.wp-block-navigation.tt-nav a{color:var(--tt-subtle)}
html[data-theme] .tt-header-inner>.wp-block-navigation.tt-nav a:hover{color:#338eff}
html[data-theme] .tt-about-panel{background:var(--tt-surface);border:1px solid var(--tt-border);color:var(--tt-text)}
html[data-theme] .tt-about-panel h2{color:var(--tt-text)}
html[data-theme] :is(.tt-about-panel p,.tt-about-values span,.tt-about-panel .tt-eyebrow){color:var(--tt-subtle)}
html[data-theme=light] .tt-about-panel:after{background:radial-gradient(circle,rgba(0,109,250,.12),transparent 68%)}
html[data-theme=dark] :is(.tt-site-header,.tt-site-header:hover,.tt-site-header:focus-within){background:rgba(16,19,24,.88);border-color:var(--tt-border);box-shadow:inset 0 -1px rgba(137,176,233,.06)}
html[data-theme=dark] .tt-header-inner .wp-block-site-logo img,html[data-theme=dark] .tt-footer-brand .wp-block-site-logo img{filter:brightness(0) invert(1)}
html[data-theme=dark] .tt-hero{background:radial-gradient(ellipse at 77% 43%,rgba(0,109,250,.075),transparent 43%),var(--tt-page)}
html[data-theme=dark] .tt-hero:before{opacity:.45;background-image:linear-gradient(rgba(139,170,219,.09) 1px,transparent 1px),linear-gradient(90deg,rgba(139,170,219,.09) 1px,transparent 1px)}
html[data-theme=dark] :is(.tt-header-cta,.tt-button){border:1px solid var(--tt-border);background:#1b2a40}
html[data-theme=dark] .tt-button:hover{background:#006dfa}
html[data-theme=dark] .tt-button-secondary{color:var(--tt-text);border-color:var(--tt-border);background:rgba(255,255,255,.025)}
html[data-theme=dark] .tt-button-secondary:hover{background:var(--tt-soft)}
html[data-theme=dark] .tt-avatar{border-color:#0d1421;background:#25345c;color:#bacdff}
html[data-theme=dark] .tt-avatar:nth-child(2){background:#382e54;color:#ded0ff}html[data-theme=dark] .tt-avatar:nth-child(3){background:#203d3b;color:#b7e1d6}
html[data-theme=dark] .tt-service-icon,html[data-theme=dark] .tt-service:nth-child(2n) .tt-service-icon{background:#1c3153;color:#96bdff}
html[data-theme=dark] .tt-service:hover{border-color:#366199;box-shadow:0 18px 40px rgba(0,0,0,.15)}
/* Hero browser and floating cards keep the same visual structure in dark mode. */
html[data-theme=dark] .tt-browser{background:rgba(22,33,52,.9);border-color:rgba(159,187,234,.25);box-shadow:0 38px 90px rgba(0,0,0,.35),inset 0 1px rgba(255,255,255,.08)}
html[data-theme=dark] .tt-browser-bar{background:#182234;border-color:var(--tt-border)}
html[data-theme=dark] .tt-address{background:#0e1828;border-color:var(--tt-border)}
html[data-theme=dark] .tt-preview-nav{color:#a5b4ce}html[data-theme=dark] .tt-preview-logo{color:#e8eef8}
html[data-theme=dark] :is(.tt-preview-pill,.tt-preview-action){background:#407ee2;color:#fff}
html[data-theme=dark] .tt-preview-hero{background:linear-gradient(125deg,#253254,#2e2b48 65%,#1b3845)}
html[data-theme=dark] .tt-preview-hero strong{color:#f0f4fc}html[data-theme=dark] .tt-preview-hero p{color:#b9c5d9}html[data-theme=dark] .tt-preview-kicker{color:#a6bdff}
html[data-theme=dark] .tt-preview-card{background:#1c2a40;border-color:var(--tt-border)}html[data-theme=dark] .tt-preview-card b{background:#a4b8d9}html[data-theme=dark] .tt-preview-card span{background:#53657f}
html[data-theme=dark] .tt-float-card{background:rgba(29,42,63,.88);border-color:rgba(159,187,234,.24);box-shadow:0 18px 46px rgba(0,0,0,.2),inset 0 1px rgba(255,255,255,.05)}
html[data-theme=dark] .tt-float-label{color:#b5c2d7}html[data-theme=dark] .tt-float-card strong{color:#eef4ff}html[data-theme=dark] .tt-code-card strong{color:#aebaff}html[data-theme=dark] .tt-ai-icon{background:#343460;color:#c4c4ff}
html[data-theme=dark] .tt-orbit{border-color:rgba(130,156,225,.22)}html[data-theme=dark] .tt-orbit-two{border-color:rgba(130,156,225,.12)}
/* Footer typography, glass CTA, logo fade and fixed menu adapt together. */
html[data-theme] .tt-footer.alignfull{background:var(--tt-page);color:var(--tt-text)}
html[data-theme] :is(.tt-footer-links h3,.tt-footer-offices h3,.tt-footer-offices a,.tt-company-deck-link,.tt-rating>strong){color:var(--tt-text)}
html[data-theme] :is(.tt-footer-brand p,.tt-footer-links a,.tt-footer-offices p,.tt-footer-bottom>span,.tt-footer-bottom a,.tt-rating small){color:var(--tt-subtle)}
html[data-theme] :is(.tt-footer-main,.tt-company-deck,.tt-footer-bottom){border-color:var(--tt-border)}
html[data-theme] :is(.tt-social-links a,.tt-office-icon){border-color:var(--tt-border);color:var(--tt-text)}
html[data-theme] :is(.tt-social-links a:hover,.tt-footer-links a:hover,.tt-footer-bottom a:hover,.tt-footer-offices a:hover){color:#006dfa}
html[data-theme] .tt-social-links a:hover{color:#fff}
html[data-theme] .tt-footer-cta{border-color:var(--tt-border);background:linear-gradient(135deg,rgba(0,109,250,.1),var(--tt-surface))}
html[data-theme] .tt-footer-cta h2{color:var(--tt-text)}html[data-theme] .tt-footer-cta>span{color:var(--tt-subtle)}
html[data-theme] .tt-rating .tt-trustpilot{color:#00a97b}
html[data-theme=light] .tt-rating>strong span{color:#087f8c}
html[data-theme=light] .tt-rating small b{color:#a64f00}
html[data-theme=light] .tt-footer-wordmark img{filter:brightness(0);opacity:.17}
html[data-theme=light] .tt-footer.alignfull::after{background:linear-gradient(to top,rgba(247,248,250,.96),rgba(247,248,250,.45) 42%,transparent)}
html[data-theme=dark] .tt-footer.alignfull::after{background:linear-gradient(to top,rgba(16,19,24,.96),rgba(16,19,24,.45) 42%,transparent)}
html[data-theme=dark] .tt-footer-nav{background:#18263b;border:1px solid var(--tt-border)}html[data-theme=dark] .tt-footer-nav a{color:#edf3ff}html[data-theme=dark] .tt-footer-nav a:hover{background:#006dfa}
html[data-theme=light] .tt-footer-nav{background:#fff;border:1px solid var(--tt-border)}
@media(max-width:1050px){.tt-site-header .tt-header-inner>.wp-block-navigation.tt-nav{display:none}}
@media(max-width:600px){.tt-header-inner{gap:8px}.tt-header-inner .wp-block-site-logo img{width:135px}.tt-header-inner>.tt-header-actions{gap:8px}.tt-header-actions>.tt-header-cta{font-size:12px;padding:10px 12px;gap:6px}.tt-theme-toggle{width:40px;height:40px;flex-basis:40px}}
@media(prefers-reduced-motion:reduce){.tt-theme-toggle{transition:none}}
/* Keep themed homepage edges flush with the viewport. */
html[data-theme] body.home{margin:0}

/* WordPress repeats tt-nav on the inner list; keep it in normal flow. */
.tt-header-inner>.wp-block-navigation.tt-nav>.wp-block-navigation__container.tt-nav{
 position:static!important;left:auto!important;top:auto!important;
 transform:none!important;margin:0!important;
}
/* Homepage editorial text follows the process step title and copy colors. */
html[data-theme=light] .tt-home{--tt-home-title:#171a20;--tt-home-copy:#68727e}
html[data-theme=dark] .tt-home{--tt-home-title:#f2f5f9;--tt-home-copy:#a8b0bd}
html[data-theme] .tt-home :is(.tt-hero,.tt-brands,.tt-process,.tt-services-showcase,.tt-about,.tt-why,.tt-consult) :is(h1,h2,h3){color:var(--tt-home-title)}
html[data-theme] .tt-home :is(.tt-services-name,.tt-services-sublist li,.tt-proof-copy strong,.tt-consult-team-heading strong){color:var(--tt-home-title)}
html[data-theme] .tt-home :is(.tt-lede,.tt-proof-copy,.tt-process-kicker,.tt-process-card li,.tt-services-kicker,.tt-services-heading>p,.tt-services-count,.tt-services-detail-copy p,.tt-services-bottom>span,.tt-about-panel p,.tt-about-values span,.tt-about-panel .tt-eyebrow,.tt-why-heading>p,.tt-why-card p,.tt-why-end>span,.tt-consult-lede,.tt-consult-team-heading span,.tt-consult-form-heading p,.tt-consult .tt-inquiry-privacy){color:var(--tt-home-copy)}
/* Compact company review marks and align their scores. */
.tt-company-ratings{display:flex;justify-content:center;align-items:flex-start;flex-wrap:wrap;gap:24px clamp(28px,3.2vw,56px)}
.tt-company-ratings .tt-rating{flex:0 0 auto;min-width:0;text-align:center;white-space:nowrap}
.tt-company-ratings .tt-rating>strong{display:inline-block;height:36px;font-size:25px;font-weight:700;line-height:36px;vertical-align:top;letter-spacing:-.055em}
.tt-company-ratings .tt-clutch>strong{font-size:30px;font-weight:650;letter-spacing:-.075em}
.tt-company-ratings .tt-sortlist>strong{font-size:25px;font-weight:750}
.tt-company-ratings .tt-rating .tt-trustpilot{height:36px;margin-right:3px;font-size:27px!important;line-height:36px;vertical-align:top}
html[data-theme] .tt-company-ratings .tt-rating small{margin-top:5px;color:var(--tt-subtle);font-size:15px;font-weight:600;line-height:1.3}
html[data-theme] .tt-company-ratings .tt-rating small b{margin-left:5px;color:#d27324;font-size:16px;letter-spacing:0;white-space:nowrap}
html[data-theme] .tt-company-ratings .tt-rating:has(.tt-trustpilot) small b{color:#00a878}
html[data-theme] .tt-company-ratings .tt-rating small i{color:#9aa4b2}
@media(max-width:1000px){.tt-company-ratings{display:grid;grid-template-columns:repeat(3,max-content);justify-content:center;column-gap:clamp(24px,5vw,48px);row-gap:24px}}
@media(max-width:600px){.tt-company-ratings{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:10px;row-gap:22px}.tt-company-ratings .tt-rating:last-child{grid-column:1/-1}.tt-company-ratings .tt-rating>strong{font-size:clamp(19px,5.2vw,24px)}.tt-company-ratings .tt-clutch>strong{font-size:clamp(24px,6vw,29px)}html[data-theme] .tt-company-ratings .tt-rating small{font-size:14px}html[data-theme] .tt-company-ratings .tt-rating small b{font-size:14px}}
/* Office icons share one clear line style; Dhaka uses the Bangladesh silhouette. */
.tt-office-icon svg{display:block;width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.tt-office-icon-map svg{width:22px;height:26px;fill:currentColor;stroke:none}
/* Crisp brand icons with a restrained hover response. */
.tt-social-links{gap:9px}
html[data-theme] .tt-social-links a{display:grid;place-items:center;width:40px;height:40px;border:1px solid var(--tt-border);border-radius:50%;background:var(--tt-surface);color:var(--tt-text);transition:transform .28s ease,background .28s ease,border-color .28s ease,box-shadow .28s ease,color .28s ease}
.tt-social-links a svg{display:block;width:19px;height:19px;fill:currentColor;transition:transform .28s ease}
.tt-social-facebook{--tt-social-brand:#1877f2}.tt-social-twitter{--tt-social-brand:#1da1f2}.tt-social-linkedin{--tt-social-brand:#0a66c2}.tt-social-youtube{--tt-social-brand:#f03}
html[data-theme] .tt-social-links a:hover,html[data-theme] .tt-social-links a:focus-visible{transform:translateY(-4px);border-color:var(--tt-social-brand);background:var(--tt-social-brand);box-shadow:0 10px 22px color-mix(in srgb,var(--tt-social-brand) 25%,transparent);color:#fff}
.tt-social-links a:hover svg,.tt-social-links a:focus-visible svg{transform:scale(1.1)}
@media(prefers-reduced-motion:reduce){html[data-theme] .tt-social-links a,.tt-social-links a svg{transition:none}html[data-theme] .tt-social-links a:hover,html[data-theme] .tt-social-links a:focus-visible{transform:none}}