/* Shared, scoped corrections from the full-site desktop/mobile audit. */
:root{--ui-motion:220ms;--ui-ease:cubic-bezier(.22,1,.36,1)}
.primary,.btn,.sd-button,.touch,.filter,.sd-tech-tabs button{transition:background-color var(--ui-motion) ease,color var(--ui-motion) ease,box-shadow var(--ui-motion) ease,transform var(--ui-motion) var(--ui-ease)!important}
.portfolio .portfolioItem{transition:transform 420ms var(--ui-ease),opacity 300ms ease!important}
.portfolio .portfolioVisual{position:relative}
.portfolio .concept-label{position:absolute;bottom:12px;left:12px;padding:6px 10px;border-radius:6px;background:#fff;color:#59446a;font-size:11px;line-height:1.4;box-shadow:0 2px 8px #21172714}
@media(min-width:901px){.portfolio .portfolioItem:not(.active){grid-template-columns:1fr!important}.portfolio .portfolioItem:not(.active) .portfolioText{display:none}.portfolio .portfolioItem:not(.active) .portfolioVisual{opacity:.65}.portfolio .portfolioItem:not(.active) .concept-label{display:none}}
@media(max-width:900px){.page-reference-home .portfolio .portfolioText{padding:20px!important}.portfolio .portTags span:nth-child(n+3){display:none}.page-reference-home .portfolio .portfolioText h3{font-size:22px!important;margin-bottom:12px!important}.page-reference-home .portfolio .portfolioVisual{height:210px!important}.portfolio .portfolioText p{margin-bottom:16px;line-height:1.65}}
@media(prefers-reduced-motion:reduce){.primary,.btn,.sd-button,.touch,.filter,.sd-tech-tabs button,.portfolio .portfolioItem{transition:none!important}}
/* Mobile carousel uses normal flow: centered desktop transforms must not clip it. */
@media(max-width:900px){
 .page-reference-home .portfolio .portfolioStage{width:100%!important;max-width:100%!important;left:auto!important;margin-inline:0!important;height:auto!important;min-height:0!important;padding-bottom:70px!important;overflow:visible!important}
 .page-reference-home .portfolio .portfolioItem:not(.active){display:none!important}
 .page-reference-home .portfolio .portfolioItem.active,.page-reference-home .portfolio .portfolioItem.active:hover{position:relative!important;inset:auto!important;width:100%!important;height:auto!important;min-height:0!important;transform:none!important;grid-template-columns:minmax(0,1fr)!important;grid-template-rows:auto auto!important;gap:0!important;overflow:hidden!important}
 .page-reference-home .portfolio .portfolioVisual{height:210px!important;min-height:0!important;padding:0!important;border-radius:0!important}
 .page-reference-home .portfolio .portfolioVisual img{display:block;width:100%!important;height:100%!important;min-height:0!important;object-fit:cover;border-radius:0!important}
 .page-reference-home .portfolio .portfolioText{min-width:0;padding:20px!important}
 .page-reference-home .portfolio .portfolioText h3{font-size:22px!important;line-height:1.3!important}
 .page-reference-home .portfolio .portTags{display:flex;flex-wrap:wrap;gap:8px}
 .page-reference-home .portfolio .portArrow{top:auto!important;bottom:8px!important;transform:none!important;width:46px!important;height:46px!important}
 .page-reference-home .portfolio .portArrow.left{left:calc(50% - 55px)!important}
 .page-reference-home .portfolio .portArrow.right{right:calc(50% - 55px)!important}
 .page-reference-home .portfolio .portDots{margin:8px 0 24px!important;gap:2px!important}
 .page-reference-home .portfolio .portDot{width:32px!important;height:32px!important;min-height:32px!important}
 .page-reference-home .portfolio .portDot:after{inset:12px!important}
}
.global-footer .gf-bottom{color:#66576f!important}
.global-footer .gf-bottom .gf-legal{display:inline-flex;gap:16px;justify-content:center}.global-footer .gf-bottom .gf-legal a{color:inherit;text-decoration:none}.global-footer .gf-bottom .gf-legal a:hover{text-decoration:underline;text-underline-offset:4px;color:#64278f}@media(max-width:650px){.global-footer .gf-bottom .gf-legal{width:100%;order:3;margin-top:8px}}
.journey-note small,.application-progress>div>span,#careerForm legend>span,.confirmation-help{color:#685373!important}
.journey-note small{font-size:12px!important}
.page-contact .btn[href^="https://wa.me/"]{background:#087c42!important;color:#fff!important}
@media(max-width:600px){.site-float-contact .sfc-call{background:#086aca!important;color:#fff!important}.site-float-contact .sfc-tip{color:#fff!important}}
.sd-tech-panel .sd-tool-example{display:block;font-size:12px;line-height:1.5;color:#716079;margin-top:-10px}
.sd-tech-panel article{min-height:185px;justify-content:flex-start}
.sd-overview-hero.sd-centered-hero{position:relative;isolation:isolate;min-height:490px;padding:64px 0 72px!important;text-align:center;background:#f8f5fa}
.sd-centered-hero .sd-hero-backdrop{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;opacity:.10;z-index:-1;pointer-events:none}
.sd-centered-hero .sd-wrap{position:relative;max-width:1180px}
.sd-centered-hero .sd-breadcrumb{justify-content:center;margin:0 0 32px;font-size:13px}
.sd-centered-hero .sd-breadcrumb [aria-current]{color:#61278f;font-weight:600}
.sd-overview-hero.sd-centered-hero h1{font-size:clamp(38px,4.6vw,72px)!important;line-height:1.12!important;text-transform:uppercase;margin:0 auto 30px;max-width:1180px;color:#17121d}
.sd-centered-hero h1 span{color:#61278f}
.sd-overview-hero.sd-centered-hero .sd-intro{max-width:950px;margin:0 auto 32px;font-size:clamp(18px,1.8vw,28px);line-height:1.55;color:#302936}
.sd-centered-hero .sd-actions{justify-content:center}
.site-float-contact .sfc-wa{background:#16bf62!important;box-shadow:0 5px 15px #12392022!important;border:0!important}
.site-float-contact .sfc-wa img{width:26px!important;height:26px!important;object-fit:contain!important;filter:none!important;transform:none!important}
.site-float-contact .sfc-call svg{width:24px!important;height:24px!important}
.site-float-contact .sfc-btn{border-radius:50%;animation:none!important}
.global-footer .gf-icon:has(img){background:#087c42!important}
.global-footer .gf-icon img{display:block;width:21px;height:21px;object-fit:contain}
@media(max-width:650px){.sd-overview-hero.sd-centered-hero{min-height:0;padding:42px 0 48px!important}.sd-centered-hero .sd-breadcrumb{font-size:11px;gap:8px;margin-bottom:26px}.sd-overview-hero.sd-centered-hero h1{font-size:clamp(29px,8vw,46px)!important;margin-bottom:24px}.sd-overview-hero.sd-centered-hero .sd-intro{font-size:17px;line-height:1.65;margin-bottom:28px}}
html{scroll-padding-top:100px}
body .nav .navlinks a{color:#211727;text-decoration:none}
body .nav .navlinks a::after{content:""!important;position:absolute!important;left:0!important;right:0!important;bottom:19px!important;width:100%!important;height:3px!important;background:#64278f!important;border-radius:3px!important;transform:scaleX(0)!important;transform-origin:left;transition:transform .18s ease;opacity:1!important}
body .nav .navlinks a:hover::after,body .nav .navlinks a[aria-current="page"]::after{transform:scaleX(1)!important}
body .nav .navlinks a[aria-current="page"]{color:#64278f!important}
body .nav a:focus-visible,body .nav button:focus-visible{outline:3px solid #9153b2;outline-offset:4px}
.global-footer .gf-links a.gf-contact-link{display:flex!important;align-items:flex-start!important;gap:12px!important;width:100%!important}
.global-footer .gf-links a.gf-contact-link .gf-icon{display:grid!important;flex:0 0 36px!important}
.global-footer .gf-links a.gf-contact-link>span:last-child{padding-top:6px!important;min-width:0;overflow-wrap:anywhere}
.global-footer .gf-main{grid-template-columns:minmax(210px,1.2fr) minmax(120px,.7fr) minmax(170px,.9fr) minmax(235px,1.2fr);gap:32px}
.global-footer .gf-social{min-width:44px;min-height:44px}
img{max-width:100%}
input,select,textarea{max-width:100%}
main section{scroll-margin-top:100px}
.sd-photo-art{aspect-ratio:3/2!important}
.sd-use-photo,.sd-photo-card-image{height:auto!important;aspect-ratio:3/2}
.sd-photo-art>img,.sd-use-photo img{object-fit:cover}
.sd-photo-label{bottom:12px;left:12px;font-size:12px;padding:8px 12px}
.sd-india .sd-photo-cards article .sd-local-index{display:flex;align-items:center;min-height:0;padding:24px 24px 0;color:#713095;font-size:13px;font-weight:700}
.sd-overview-hero{background:linear-gradient(120deg,#fbf9fc,#f1e7f7)}
.page-contact .channel b{overflow-wrap:anywhere}
.page-contact .map-card iframe{display:block}
@media(max-width:1100px){.global-footer .gf-main{grid-template-columns:1fr 1fr}.global-footer .gf-brand{grid-column:auto}.global-footer .gf-main>div:last-child{grid-column:auto}}
@media(max-width:950px){
 body .nav:not(.open) .navlinks{visibility:hidden!important;opacity:0!important;pointer-events:none!important;transition:none!important}
 body .nav.open .navlinks{visibility:visible!important;opacity:1!important;pointer-events:auto!important;transition:none!important;background:#fff!important}
 html{scroll-padding-top:88px}
 .nav .touch{margin-right:60px!important}
 body .nav .navlinks a{padding:14px 10px!important;min-height:48px;display:flex;align-items:center}
 body .nav .navlinks a::after{display:none!important}
 body .nav .navlinks a[aria-current="page"]{border-left:3px solid #64278f!important;background:#f4edf8!important;border-radius:8px;padding-left:14px!important}
 .nav.open .navlinks{max-height:calc(100dvh - 94px);overflow:auto}
 .nav .menu:before{display:none!important;content:none!important}
 .nav .menu span{display:block!important;width:20px;height:2px;background:currentColor;border-radius:2px;transition:transform .2s,opacity .2s}
 .nav.open .menu span:nth-child(1){transform:translateY(7px) rotate(45deg)}
 .nav.open .menu span:nth-child(2){opacity:0}
 .nav.open .menu span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}
 .global-footer .gf-main{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:28px 20px!important}
 .global-footer .gf-main>*{min-width:0}
 .global-footer .gf-links{grid-template-columns:minmax(0,1fr)!important;min-width:0!important}
 .global-footer .gf-links a{width:100%!important;min-width:0!important;white-space:normal!important;overflow-wrap:break-word;line-height:1.55!important}
 .global-footer .gf-brand,.global-footer .gf-main>div:last-child{grid-column:1/-1!important}
 .global-footer .gf-links a{min-height:38px;display:flex!important;align-items:center;font-size:14px!important}
 .global-footer .gf-links{gap:4px!important}
 .global-footer .gf-links a.gf-contact-link{min-height:44px;margin-bottom:10px!important}
 .global-footer .gf-links a.gf-contact-link>span:last-child{font-size:14px!important}
 .global-footer .gf-brand p{font-size:14px!important}
 .sd-service-row{gap:28px!important}
 main p{overflow-wrap:break-word}
 input:not([type=checkbox]):not([type=radio]),select,textarea,[role=combobox]{font-size:16px!important;min-height:48px}
 .career-hero .hero-description,.pathway-grid p,.application-intro>p:not(.eyebrow){font-size:15px!important;line-height:1.7}
 .steps strong,.steps p{font-size:12px!important;line-height:1.6}
 .submission-note,.consent,.upload-area p{font-size:13px!important;line-height:1.7}
 .career-field small{font-size:12px!important}
 .career-field label{font-size:13px!important}
 .page-services .service{min-height:0!important;padding-block:40px!important}
 .page-services .service-grid{gap:28px!important}
 .page-services .service-visual{height:auto!important;aspect-ratio:3/2}
 .page-about .vision-copy .display{font-size:clamp(32px,7vw,46px)!important;line-height:1.15!important}
 .page-contact .map-card>div:first-child{padding:24px!important}
}
@media(max-width:600px){
 .page-blog .filters,.page-portfolio .filters{position:relative!important;top:auto!important;display:flex!important;flex-wrap:wrap!important;overflow:visible!important;border-radius:16px!important;width:100%!important;gap:6px!important}
 .page-blog .filter,.page-portfolio .filter{font-size:13px!important;min-height:44px!important;padding:10px 14px!important}
 .page-services .tabs{flex-wrap:wrap!important;overflow:visible!important;gap:6px!important}
 body{padding-bottom:0!important}
 .site-float-contact{position:fixed!important;left:auto!important;right:14px!important;bottom:calc(20px + env(safe-area-inset-bottom))!important;display:flex!important;flex-direction:column!important;width:48px!important;gap:10px!important;padding:0!important;background:transparent!important;border:0!important;box-shadow:none!important}
 .site-float-contact .sfc-btn{width:48px!important;height:48px!important;border-radius:50%!important;box-shadow:0 4px 14px #25163426!important;transform:none!important}
 .site-float-contact .sfc-wa{background:#087c42!important;color:#fff!important}
 .site-float-contact .sfc-wa img{width:26px!important;height:26px!important}
 .site-float-contact .sfc-tip{display:none!important}
 .site-float-contact .sfc-tip:after{display:none!important}
 body.editing-form .site-float-contact,body:has(.nav.open) .site-float-contact{visibility:hidden!important;pointer-events:none!important}
 .global-footer .gf-bottom{padding-bottom:24px!important;font-size:12px}
 .global-footer .gf-main{padding-top:32px!important}
 .global-footer .gf-title{margin-bottom:10px!important}
 .global-footer .gf-cta-copy strong{font-size:25px}
 .sd-breadcrumb,.page-breadcrumb{flex-wrap:wrap;gap:8px}
 .sd-hero h1{font-size:clamp(30px,8.4vw,38px)!important;overflow-wrap:normal!important;line-height:1.16!important}
 .sd-section,.sd-tech,.sd-industries{padding-block:48px!important}
 .sd-cta{padding:28px 22px!important;margin-block:24px!important}
 .sd-actions{align-items:stretch}
 .sd-actions a{flex:1 1 180px;justify-content:center}
 .sd-feature-grid article,.sd-industry-grid article{padding:24px!important}
 .page-reference-home .resultBox,.page-about .proofgrid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
 .page-reference-home .result strong{font-size:32px!important}
 .page-reference-home .result span,.page-about .proofitem span{font-size:12px!important}
 .page-about .proofitem b{font-size:30px!important}
 .page-reference-home .sectionTitle{text-align:center!important}
 .page-reference-home .sectionTitle h2{font-size:32px!important}
 .page-reference-home .form-row,.page-reference-home .formRow{grid-template-columns:1fr!important}
 .steps{grid-template-columns:1fr!important;gap:16px!important}
 .steps li{flex-direction:row!important}
 .career-wrap{width:calc(100% - 32px)!important}
 .career-hero h1{font-size:38px!important}
}
@media(prefers-reduced-motion:reduce){body .nav .navlinks a::after,.nav .menu span{transition:none!important}}
