/* v13.8: responsive shared shell and mobile-first improvements */
.v138-header,.v138-footer{box-sizing:border-box;font-family:Inter,system-ui,-apple-system,sans-serif}
.v138-header *,.v138-footer *{box-sizing:border-box}
.v138-header{position:relative;z-index:1800;display:flex;align-items:center;gap:24px;justify-content:space-between;min-height:70px;padding:12px clamp(18px,4vw,58px);background:#081a31;border-bottom:1px solid #33445e;color:#fff}
.v138-brand{display:flex;align-items:center;gap:10px;text-decoration:none;flex-shrink:0;color:#fff}.v138-brand img{width:45px;height:35px;object-fit:contain}.v138-brand span{display:grid;gap:3px}.v138-brand strong{font-size:11px;letter-spacing:.13em}.v138-brand small{font-size:8px;letter-spacing:.14em;color:#b6adff}
.v138-header nav{display:flex;align-items:center;gap:clamp(10px,2vw,30px)}.v138-header nav a{color:#d4deee;text-decoration:none;font-size:12px;font-weight:700;white-space:nowrap}.v138-header nav a:hover,.v138-header nav a:focus-visible{color:#a99aff}
.v138-menu-button{display:none;border:1px solid #516583;background:#172d4b;border-radius:10px;padding:11px;cursor:pointer}.v138-menu-button span{display:block;background:#fff;width:21px;height:2px;margin:4px 0;border-radius:2px}
.v138-footer{background:#081a31;color:#9fb0ca;padding:27px clamp(20px,4vw,60px);display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap;align-items:center;font-size:12px}.v138-footer div{display:flex;gap:18px;flex-wrap:wrap}.v138-footer a{color:#d2ddf1;text-decoration:none}.v138-footer a:hover{text-decoration:underline}
body.homePage>.v138-header{display:none}body.homePage>.v138-footer{margin-left:var(--sidebar-width,0px)}
@media(max-width:760px){
 html,body{max-width:100%;overflow-x:clip}img,video,iframe,svg{max-width:100%}body{overflow-wrap:break-word}
 .v138-header{min-height:65px;padding:10px 17px;flex-wrap:wrap}.v138-menu-button{display:block;margin-left:auto}.v138-header nav{display:none;width:100%;order:3;flex-direction:column;align-items:stretch;gap:0;padding:9px 0 4px}.v138-header.v138-open nav{display:flex}.v138-header nav a{padding:13px 9px;border-bottom:1px solid #273c58;font-size:14px}
 .v138-footer{margin-left:0!important;flex-direction:column;align-items:flex-start;gap:15px;padding:27px 20px 85px}.v138-footer div{gap:12px 20px}
 .d31Main,.dp29Main,.dpMain,.labMain,.storyMain,main{max-width:100%}.d31Page .d31Main{width:calc(100% - 32px)!important;padding-bottom:38px!important}.d31Hero,.d31Commvault,.d31Mindset,.d31SectionHeading,.d31PerspectiveVisual,.d31DiscGrid,.d31Role,.d31Outro,.dp29Hero,.dp29Thesis,.dp29SectionIntro,.dp29DomainGrid,.dp29Commvault,.dp29MindsetGrid,.dp29PerspectiveColumns,.dp29Closing{grid-template-columns:minmax(0,1fr)!important}.d31Hero,.d31Mindset,.d31Commvault,.d31Outro,.dp29Hero,.dp29Thesis{gap:25px!important}.d31Hero{padding:35px 0 45px!important}.d31Hero h1{font-size:clamp(38px,11vw,64px)!important}.d31HeroCanvas{padding:14px!important}.d31Commvault,.d31Outro,.d31PerspectiveVisual{padding:22px!important}.d31MindsetIntro{position:static!important}.d31RoleCenter{display:none!important}.d31SectionHeading h2{font-size:clamp(30px,9vw,45px)!important}.d31Ecosystem,.d31Commvault,.d31Mindset,.d31Perspectives{margin-bottom:52px!important}.d31Topline{flex-wrap:wrap}
 .v138-header~* .unifiedHeader{display:none!important}.storyNav,.unifiedHeader{display:none!important}
 .infraExplorer,.infraStage,.recoveryBridge,.labCanvas,.labConsole,.labShell{max-width:100%!important;min-width:0!important}.infraExplorer *,.infraStage *,.recoveryBridge *{min-width:0}.infraExplorer svg{max-width:100%}
 .portfolioFloatingLang{bottom:14px!important;right:14px!important}
}
@media(max-width:420px){.v138-brand strong{font-size:9px}.v138-brand small{font-size:7px}.v138-brand img{width:35px}.d31Hero h1{font-size:38px!important}}

/* v13.9 — fixed consistent navigation, responsive refinements */
.v138-header{position:sticky!important;top:0;z-index:9998!important;backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);background:rgba(8,26,49,.96)!important}
html{scroll-padding-top:0}section[id],article[id]{scroll-margin-top:0}
@media(max-width:760px){html{scroll-padding-top:70px}section[id],article[id]{scroll-margin-top:70px}}
@media(max-width:760px){
 html,body{width:100%;max-width:100%;overflow-x:clip}
 .v138-header{position:sticky!important;top:0!important;min-height:60px!important}
 .v138-header nav{max-height:calc(100dvh - 80px);overflow-y:auto}
 .storyHero,.storyBody,.storyChapters,.storyChapter,.storyOutside,.storyPassions,.passionsGallery,.storyQuote{max-width:100%;min-width:0}
 .storyHero{display:grid!important;grid-template-columns:minmax(0,1fr)!important;padding:34px 18px!important;gap:18px!important}
 .storyHeroText h1,.storyHero h1{font-size:clamp(34px,9vw,54px)!important;line-height:1.07!important;overflow-wrap:normal;word-break:normal}
 .storyHeroText p{font-size:15px!important;line-height:1.65!important}
 .storyHeroArt{max-height:280px;overflow:hidden}.storyHeroArt img{max-height:250px;object-fit:contain}
 .storyBody,.storyOutside,.storyPassions,.storyQuote{padding-left:18px!important;padding-right:18px!important}
 .storyChapter{display:flex!important;flex-direction:column!important;gap:14px!important}
 .chapterIllustration{max-height:210px;overflow:hidden}.chapterIllustration img{max-height:200px;object-fit:contain}
 .storyOutside,.passionsGallery{display:grid!important;grid-template-columns:minmax(0,1fr)!important}
 .storyChips,.chapterTags{flex-wrap:wrap!important}.storyChips span,.chapterTags span{max-width:100%}
 .homeSkills,.homeSkillsHead,.expertiseShowcase{max-width:100%;min-width:0}
 .homeSkillsHead{display:flex!important;flex-direction:column!important;gap:14px!important}
 .expertiseShowcase{display:grid!important;grid-template-columns:minmax(0,1fr)!important;gap:12px!important}
 .expertiseShowcase article{grid-column:auto!important;min-width:0!important}
 .brandShelf{display:flex!important;flex-wrap:wrap!important}
 .hero h1,.sectionHead h2,.skillsTitle h3{font-size:clamp(29px,8.5vw,44px)!important;line-height:1.1!important}
 .infraExplorer,.infraStage,.recoveryBridge{overflow-x:auto;max-width:100%!important}
 .v138-footer{padding-bottom:96px!important}
}
@media(max-width:390px){.storyHeroText h1{font-size:33px!important}.v138-brand small{display:none}}

/* v14.0 — prevent horizontal overflow and preserve card content */
html,body{max-width:100%;overflow-x:clip}main,.mainContent,.content,.pageContent,.sectionInner{min-width:0;max-width:100%}
#featuredGrid,.featuredClientsGrid,.otherGrid,.otherClientsGrid,.catalogGrid,.projectsGrid{min-width:0;max-width:100%}
@media(max-width:1250px){.featuredClientsGrid,.otherClientsGrid,.catalogGrid,.projectsGrid{grid-template-columns:repeat(2,minmax(0,1fr))!important}.featuredClientCard,.otherCard{min-width:0!important}}
@media(max-width:760px){.featuredClientsGrid,.otherClientsGrid,.catalogGrid,.projectsGrid{grid-template-columns:minmax(0,1fr)!important}.featuredClientCard,.otherCard{width:100%;min-width:0!important}.featuredClientContent{overflow-wrap:break-word}.homeSkillsHead h3{font-size:clamp(27px,8vw,42px)!important}}

/* v14.1: desktop sidebar navigation must align section starts at the viewport top */
@media(min-width:761px){html{scroll-padding-top:0!important}body.homePage section[id],body.homePage article[id]{scroll-margin-top:0!important}}
.referenceNotice{margin:20px clamp(18px,4vw,72px) 44px;padding:20px 24px;border:1px solid #cfd9e8;border-radius:16px;background:#f0f4fb;color:#243b59;font:14px/1.6 Inter,system-ui,sans-serif}
.referenceNotice span{display:block;font-weight:800;color:#23365b;margin-bottom:6px}.referenceNotice p{margin:0 0 10px;max-width:900px}.referenceNotice a{color:#4e46c9;font-weight:750;text-decoration:underline;text-underline-offset:3px}
@media(max-width:760px){.referenceNotice{margin:20px 16px 32px;padding:18px}}
