/* V14.4 — mobile-first portfolio polish. Overrides only; desktop unchanged. */
@media (max-width:760px) {
  html { scroll-padding-top:78px; }
  body.portfolioV11 { overflow-x:clip; }
  body.portfolioV11 .v138-header { min-height:70px!important; padding:9px 17px!important; }
  body.portfolioV11 .v138-header .v138-brand img { max-height:37px; }
  body.portfolioV11 .hero { padding-top:24px!important; padding-bottom:46px!important; }
  body.portfolioV11 .heroCopy { min-width:0; width:100%; }
  body.portfolioV11 .heroCopy .eyebrow { font-size:11px!important; line-height:1.55; letter-spacing:.13em!important; }
  body.portfolioV11 .heroCopy h1 { font-size:clamp(34px,9vw,49px)!important; line-height:1.13!important; overflow-wrap:normal; letter-spacing:-.045em; }
  body.portfolioV11 .heroCopy h1 span { display:block; font-size:clamp(16px,4.5vw,22px)!important; letter-spacing:normal; margin-bottom:9px; }
  body.portfolioV11 .heroCopy h2 { font-size:clamp(21px,6vw,29px)!important; line-height:1.2; margin-top:17px!important; }
  body.portfolioV11 .heroCopy p { font-size:clamp(15px,4.1vw,18px)!important; line-height:1.6; }
  body.portfolioV11 .heroCopy .actions { display:grid!important; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:9px!important; }
  body.portfolioV11 .heroCopy .actions a { display:flex; justify-content:center; align-items:center; text-align:center; padding:13px 8px!important; min-width:0; font-size:clamp(12px,3.4vw,15px)!important; white-space:normal; }
  body.portfolioV11 .heroMetricsV96 { display:grid!important; grid-template-columns:repeat(2,minmax(0,1fr))!important; gap:10px!important; margin-top:20px!important; }
  body.portfolioV11 .heroMetricsV96 article { min-width:0!important; min-height:118px!important; padding:15px 13px!important; display:flex!important; flex-direction:column!important; align-items:flex-start!important; justify-content:flex-start!important; gap:8px!important; }
  body.portfolioV11 .heroMetricsV96 article .metricIcon { width:25px!important; height:25px!important; flex:none!important; }
  body.portfolioV11 .heroMetricsV96 article>div { min-width:0; width:100%; display:flex!important; flex-direction:column!important; align-items:flex-start!important; gap:3px!important; }
  body.portfolioV11 .heroMetricsV96 article strong { display:block!important; font-size:clamp(23px,6.1vw,30px)!important; line-height:1.12!important; overflow-wrap:anywhere; }
  body.portfolioV11 .heroMetricsV96 article span:not(.metricIcon) { display:block!important; font-size:clamp(11px,3vw,13px)!important; line-height:1.4!important; overflow-wrap:break-word; }
  body.portfolioV11 .heroVisual { margin-top:24px!important; }
  body.portfolioV11 .homeSkills { min-width:0!important; }
  body.portfolioV11 .homeSkillsHead { display:block!important; }
  body.portfolioV11 .homeSkillsHead .skillsTitle { min-width:0!important; width:100%!important; }
  body.portfolioV11 .homeSkillsHead h3 { max-width:100%!important; font-size:clamp(29px,8vw,42px)!important; line-height:1.12!important; letter-spacing:-.045em!important; overflow-wrap:break-word!important; }
  body.portfolioV11 .homeSkillsHead h3 span { overflow-wrap:break-word!important; }
  body.portfolioV11 .homeSkillsHead .skillsStatement { margin-top:16px!important; }
  body.portfolioV11 .homeSkillsHead .skillsStatement p { font-size:clamp(15px,4.1vw,18px)!important; line-height:1.55!important; }
  body.portfolioV11 .expertiseShowcase { display:grid!important; grid-template-columns:minmax(0,1fr)!important; gap:12px!important; }
  body.portfolioV11 .expertiseShowcase article { min-width:0!important; width:100%!important; padding:18px!important; }
  body.portfolioV11 .expertiseShowcase .expertiseCopy { min-width:0!important; }
  body.portfolioV11 .expertiseShowcase .expertiseCopy b { font-size:clamp(18px,5vw,23px)!important; overflow-wrap:break-word; }
  body.portfolioV11 .expertiseShowcase .expertiseCopy p { font-size:14px!important; line-height:1.55; }
  body.portfolioV11 .expertiseShowcase img { max-width:100%; height:auto; }
  body.portfolioV11 .projectCardsV11 article, body.portfolioV11 .projectGrid article { min-width:0; }
  body.portfolioV11 .credlyGrid { display:grid!important; grid-template-columns:repeat(2,minmax(0,1fr))!important; gap:12px!important; justify-items:stretch!important; align-items:start; }
  body.portfolioV11 .credlyGrid > * { min-width:0!important; width:100%!important; max-width:100%!important; }
  body.portfolioV11 .credlyGrid iframe { display:block; max-width:100%!important; width:100%!important; }
}
@media (max-width:420px) {
  body.portfolioV11 .credlyGrid { grid-template-columns:minmax(0,1fr)!important; justify-items:center!important; }
  body.portfolioV11 .credlyGrid > * { max-width:250px!important; }
  body.portfolioV11 .heroMetricsV96 article { padding:12px 10px!important; }
  body.portfolioV11 .heroCopy .actions { grid-template-columns:1fr!important; }
}


/* V14.6 — Mobile project detail: full-screen readable sheet.
   Desktop modal remains unchanged. */
@media (max-width: 760px) {
  body.modalOpen { overflow: hidden !important; }
  #modal.modal.open {
    position: fixed !important;
    inset: 0 !important;
    display: flex !important;
    align-items: stretch !important;
    justify-content: center !important;
    padding: 0 !important;
    z-index: 10000 !important;
  }
  #modal .shade { display: none !important; }
  #modal > article.projectDetailModal {
    position: relative !important;
    display: block !important;
    width: 100% !important;
    max-width: none !important;
    height: 100% !important;
    height: 100dvh !important;
    max-height: 100dvh !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow-x: hidden !important;
    overflow-y: auto !important;
    overscroll-behavior: contain;
    -webkit-overflow-scrolling: touch;
    border-radius: 0 !important;
    background: #fff !important;
    box-shadow: none !important;
  }
  #modal .projectClose,
  #modal > article.projectDetailModal > button.projectClose {
    position: fixed !important;
    top: max(12px, env(safe-area-inset-top)) !important;
    right: max(14px, env(safe-area-inset-right)) !important;
    z-index: 10010 !important;
    width: 44px !important;
    height: 44px !important;
    display: grid !important;
    place-items: center !important;
    padding: 0 !important;
    border: 1px solid #ced9ea !important;
    border-radius: 14px !important;
    background: #0c2445 !important;
    color: #fff !important;
    font-size: 29px !important;
    line-height: 1 !important;
    box-shadow: 0 4px 16px rgba(6,22,44,.22) !important;
  }
  #modal .projectHero {
    min-height: 0 !important;
    height: auto !important;
    background-image: none !important;
    background-color: #f1f6ff !important;
    border-bottom: 1px solid #dce6f2;
  }
  #modal .projectHeroOverlay { display: none !important; }
  #modal .projectHeroText {
    width: 100% !important;
    max-width: none !important;
    padding: calc(max(12px, env(safe-area-inset-top)) + 8px) 20px 24px !important;
    color: #10233e;
  }
  #modal .projectBack {
    display: inline-flex !important;
    align-items: center;
    max-width: calc(100% - 64px);
    min-height: 40px;
    margin: 0 0 16px !important;
    font-size: 13px !important;
    text-align: left;
  }
  #modal .projectHeroText > small {
    display: block;
    font-size: 11px !important;
    line-height: 1.4;
    letter-spacing: .03em;
    margin-bottom: 12px !important;
  }
  #modal .projectIdentity {
    display: flex !important;
    align-items: flex-start !important;
    flex-direction: column !important;
    gap: 10px !important;
    margin: 0 0 14px !important;
  }
  #modal .projectIdentity img {
    width: auto !important;
    max-width: min(200px, 75%) !important;
    max-height: 56px !important;
    object-fit: contain;
  }
  #modal .projectIdentity .chips { display: flex; flex-wrap: wrap; gap: 6px; }
  #modal .projectHeroText h2,
  #modal #mTitle {
    width: 100% !important;
    max-width: none !important;
    font-size: clamp(25px, 7vw, 34px) !important;
    line-height: 1.14 !important;
    letter-spacing: -.025em;
    overflow-wrap: anywhere;
    margin: 10px 0 12px !important;
  }
  #modal .projectHeroText p,
  #modal #mSummary {
    width: 100% !important;
    max-width: none !important;
    font-size: 14px !important;
    line-height: 1.6 !important;
    margin: 0 !important;
  }
  #modal .projectInfoGrid {
    display: block !important;
    grid-template-columns: none !important;
    border-top: 0 !important;
  }
  #modal .projectInfoGrid section {
    min-height: 0 !important;
    padding: 22px 20px !important;
    border-right: 0 !important;
    border-bottom: 1px solid #e2e9f2 !important;
  }
  #modal .projectInfoGrid h3 {
    font-size: 18px !important;
    line-height: 1.3;
    margin: 0 0 12px !important;
    color: #10233e;
  }
  #modal .projectInfoGrid p,
  #modal .projectInfoGrid li {
    font-size: 14px !important;
    line-height: 1.65 !important;
    color: #435770 !important;
  }
  #modal .projectInfoGrid ul { padding-left: 21px !important; }
  #modal .projectInfoGrid li + li { margin-top: 8px; }
  #modal .projectInfoGrid section:last-child {
    padding-bottom: calc(28px + env(safe-area-inset-bottom)) !important;
  }
}


/* V14.7 — Recent engagements: richer cards, legacy entries untouched. */
.clientGrid .otherCardRecent {
  align-items: flex-start;
  min-height: 118px;
  padding: 16px;
  border: 1px solid #b8caff;
  border-left: 4px solid #6b62ef;
  background: linear-gradient(115deg,#fff 0%,#f3f6ff 100%);
  box-shadow: 0 8px 26px rgba(36,61,112,.07);
}
.clientGrid .otherCardRecent .otherClientLogo {
  width: 72px;
  height: 68px;
  flex: 0 0 72px;
  background: #fff;
  border: 1px solid #e2e8f2;
}
.clientGrid .otherCardRecent .otherClientLogo img {
  width: 90%;
  height: 90%;
  object-fit: contain;
}
.clientGrid .otherCardRecent .otherCardBody > small {
  font-size: 10px;
  letter-spacing: .035em;
  line-height: 1.5;
}
.clientGrid .otherCardRecent .otherCardBody > b {
  font-size: 18px;
  line-height: 1.3;
  margin: 4px 0 8px;
}
.clientGrid .otherCardRecent .chips { display:flex; flex-wrap:wrap; gap:5px; }
.clientGrid .otherCardRecent .chips span { font-size: 10px; line-height: 1.3; }
.clientGrid .otherCardRecent .otherCardHint { font-size: 12px; margin-top: 12px; }
.clientGrid .otherCard.hasDetail:focus-visible {
  outline: 3px solid #6659ee;
  outline-offset: 3px;
}
@media(max-width:760px) {
  .clientGrid .otherCardRecent { padding: 14px 12px; gap: 12px; }
  .clientGrid .otherCardRecent .otherClientLogo { width: 62px; height: 62px; flex-basis: 62px; }
  .clientGrid .otherCardRecent .otherCardBody > b { font-size: 17px; }
  .clientGrid .otherCardRecent .chips span { font-size: 9px; }
}

#modal .projectInfoGrid section[hidden] { display: none !important; }


/* V14.8 — compact mobile architecture map; desktop unaffected */
@media(max-width:760px){
 body.portfolioV11 .heroVisual.nextGenConsole{
   width:100%!important;max-width:100%!important;
   margin:24px 0 0!important; border-radius:18px!important;
   overflow:hidden!important;
 }
 body.portfolioV11 .heroCommandTop{padding:12px 14px!important;gap:8px!important;}
 body.portfolioV11 .heroCommandTop b{font-size:10px!important;letter-spacing:.07em!important;}
 body.portfolioV11 .heroCommandTop em{font-size:9px!important;white-space:nowrap;}
 body.portfolioV11 .nextGenLayout{display:flex!important;flex-direction:column!important;gap:12px!important;padding:12px!important;}
 body.portfolioV11 .nextGenMap{width:100%!important;min-width:0!important;padding:0!important;}
 body.portfolioV11 .nextGenClouds{padding:4px 0 10px!important;margin:0!important;}
 body.portfolioV11 .nextGenCloudLogos{gap:10px!important;margin-top:9px!important;}
 body.portfolioV11 .nextGenCloudLogos>div{min-height:38px!important;padding:7px!important;}
 body.portfolioV11 .nextGenCloudLogos img{max-height:23px!important;}
 body.portfolioV11 .nextGenSpine{height:12px!important;min-height:0!important;margin:0 auto!important;}
 body.portfolioV11 .nextGenNetwork{display:flex!important;flex-direction:column!important;align-items:stretch!important;gap:10px!important;}
 body.portfolioV11 .nextGenNodes{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:6px!important;width:100%!important;}
 body.portfolioV11 .nextGenNodes>small{grid-column:1/-1!important;margin:0 0 3px!important;}
 body.portfolioV11 .nextGenNodes>div{min-width:0!important;min-height:54px!important;padding:8px 4px!important;gap:4px!important;border-radius:10px!important;}
 body.portfolioV11 .nextGenNodes>div svg{width:17px!important;height:17px!important;}
 body.portfolioV11 .nextGenNodes>div span{font-size:10px!important;line-height:1.2!important;overflow-wrap:anywhere;}
 body.portfolioV11 .nextGenCoreWrap{width:100%!important;min-height:100px!important;height:auto!important;margin:0!important;padding:0!important;display:grid!important;place-items:center!important;}
 body.portfolioV11 .nextGenOrbit{display:none!important;}
 body.portfolioV11 .nextGenCore{position:relative!important;inset:auto!important;transform:none!important;width:min(100%,210px)!important;min-height:100px!important;height:auto!important;padding:13px 10px!important;border-radius:16px!important;}
 body.portfolioV11 .nextGenShield{width:27px!important;height:27px!important;margin:0 auto 5px!important;}
 body.portfolioV11 .nextGenCore strong{font-size:15px!important;line-height:1.05!important;}
 body.portfolioV11 .nextGenCore small{font-size:8px!important;}
 body.portfolioV11 .nextGenCapabilities{margin:0!important;padding:0!important;}
 body.portfolioV11 .nextGenCapGrid{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:5px!important;margin-top:7px!important;}
 body.portfolioV11 .nextGenCapGrid>div{min-height:56px!important;padding:8px 2px!important;gap:5px!important;border-radius:9px!important;}
 body.portfolioV11 .nextGenCapGrid svg{width:17px!important;height:17px!important;}
 body.portfolioV11 .nextGenCapGrid b{font-size:10px!important;}
 body.portfolioV11 .nextGenOps{width:100%!important;min-width:0!important;margin:0!important;border-radius:12px!important;}
 body.portfolioV11 .nextGenOpsTop{padding:11px!important;}
 body.portfolioV11 .nextGenOpsGraph{margin:10px!important;padding:10px!important;min-height:0!important;}
 body.portfolioV11 .nextGenOpsGraph svg{height:48px!important;max-height:48px!important;}
 body.portfolioV11 .nextGenOpsLog{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:7px!important;padding:10px!important;}
 body.portfolioV11 .nextGenOpsLog span{font-size:10px!important;line-height:1.3!important;}
 body.portfolioV11 .nextGenOpsBottom{padding:9px 11px!important;}
}


/* V14.9 — dedicated mobile architecture, not a scaled desktop map */
.mobileArchitecture { display:none; }
@media(max-width:760px){
 #home .heroVisual.nextGenConsole { display:none!important; }
 #home .mobileArchitecture {
   display:block!important; box-sizing:border-box; min-width:0;
   margin:24px 0 0; padding:22px 18px;
   border:1px solid #41639a; border-radius:20px;
   background:linear-gradient(150deg,#102b50,#071a33 75%);
   color:#f5f8ff; box-shadow:0 12px 35px rgba(0,0,0,.18);
 }
 #home .mobileArchitectureHead { display:flex;align-items:center;gap:8px; }
 #home .mobileArchitectureHead small { color:#aebfff;letter-spacing:.11em;font-size:10px;font-weight:800;line-height:1.4; }
 #home .mobileArchitectureDot {width:9px;height:9px;flex:none;border-radius:50%;background:#36d7b2;box-shadow:0 0 10px #36d7b288;}
 #home .mobileArchitecture h2 {color:#fff;font-size:clamp(23px,6.5vw,29px);line-height:1.18;letter-spacing:-.03em;margin:15px 0 9px;}
 #home .mobileArchitecture>p {font-size:14px;line-height:1.55;color:#c4d5ed;margin:0 0 20px;}
 #home .mobileArchitectureSteps {display:grid;gap:10px;}
 #home .mobileArchitectureSteps article {display:flex;align-items:flex-start;gap:13px;min-width:0;padding:15px 13px;border:1px solid #335680;border-radius:13px;background:#102a48;}
 #home .mobileArchitectureNumber {display:grid;place-items:center;width:34px;height:34px;flex:0 0 34px;border:1px solid #6e7eea;border-radius:10px;background:#1e2e69;color:#c8d0ff;font-weight:800;font-size:12px;}
 #home .mobileArchitectureSteps article>div {min-width:0;flex:1;}
 #home .mobileArchitectureSteps h3 {color:#fff;font-size:16px;line-height:1.3;margin:0 0 5px;font-weight:750;}
 #home .mobileArchitectureSteps p {color:#b9cde4;font-size:13px;line-height:1.5;margin:0;}
 #home .mobileArchitectureClouds {display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-top:13px;}
 #home .mobileArchitectureClouds img {box-sizing:content-box;display:block;width:42px;height:22px;object-fit:contain;padding:6px 9px;border:1px solid #42638b;border-radius:8px;background:#173a60;}
}


/* V15 — final mobile composition: readable infographic + refined experience stats */
@media(max-width:760px){
 #home .mobileArchitectureV15 {
  display:block!important; width:100%!important; min-width:0!important;
  padding:16px!important; margin:22px 0 0!important;
  border:1px solid #456fb2!important;border-radius:19px!important;
  background:radial-gradient(ellipse at 50% 25%,#173b70,#07182f 80%)!important;
  box-shadow:0 18px 40px rgba(0,0,0,.2)!important;
 }
 #home .mobileArchitectureV15 .mobileArchitectureHead {display:flex;align-items:center;gap:7px;min-width:0;margin-bottom:17px;}
 #home .mobileArchitectureV15 .mobileArchitectureHead small {font-size:9px!important;letter-spacing:.07em!important;white-space:normal;flex:1;}
 #home .mobileArchitectureV15 .mobileArchitectureLive {color:#42e3b2;font:800 8px ui-monospace,monospace;white-space:nowrap;}
 #home .mobileArchLabel {display:block;color:#91add3;font:800 9px/1.4 ui-monospace,monospace;letter-spacing:.09em;margin-bottom:9px;}
 #home .mobileArchCloud,#home .mobileArchSources,#home .mobileArchTargets,#home .mobileArchCapabilities {min-width:0;}
 #home .mobileArchProviders {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;}
 #home .mobileArchProviders span {display:grid;place-items:center;min-height:52px;background:#102e53;border:1px solid #3a6598;border-radius:11px;}
 #home .mobileArchProviders img {width:66%;height:31px;object-fit:contain;}
 #home .mobileArchConnector {height:24px;display:grid;place-items:center;}
 #home .mobileArchConnector:before {content:"";width:2px;height:100%;background:linear-gradient(#478be0,#8e79ff);}
 #home .mobileArchConnector i {position:absolute;width:7px;height:7px;border-radius:50%;background:#9d8aff;box-shadow:0 0 9px #9d8aff;}
 #home .mobileArchTriple {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;}
 #home .mobileArchTriple span {display:grid;place-items:center;text-align:center;min-width:0;min-height:52px;padding:8px 4px;border:1px solid #41699c;border-radius:10px;background:#112f52;color:#e4efff;font-size:11px;line-height:1.3;font-weight:700;overflow-wrap:anywhere;}
 #home .mobileArchCore {display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;width:min(100%,228px);min-height:130px;margin:0 auto;border:1px solid #a08cff;border-radius:18px;background:linear-gradient(150deg,#293d85,#171d52);box-shadow:0 0 35px #7358f528;color:#fff;}
 #home .mobileArchCore svg {width:36px;height:36px;color:#d4c8ff;}
 #home .mobileArchCore strong {font-size:17px;line-height:1.1;text-align:center;letter-spacing:.02em;}
 #home .mobileArchCore small {color:#c7caff;font:800 9px ui-monospace,monospace;letter-spacing:.08em;}
 #home .mobileArchCapabilities {margin-top:20px;}
 #home .mobileArchCapabilities>div {display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:5px;}
 #home .mobileArchCapabilities>div span {display:grid;place-items:center;min-width:0;min-height:46px;padding:7px 2px;background:#122e52;border:1px solid #41699c;border-radius:9px;color:#dbeaff;font-size:10px;font-weight:750;line-height:1.2;text-align:center;overflow-wrap:anywhere;}
 #home .mobileArchFeed {margin-top:15px;overflow:hidden;border:1px solid #345c8c;border-radius:12px;background:#061d36;}
 #home .mobileArchFeedHead {display:flex;align-items:center;justify-content:space-between;gap:6px;padding:12px 10px;border-bottom:1px solid #294968;}
 #home .mobileArchFeedHead span {font:800 10px ui-monospace,monospace;color:#f1f7ff;white-space:nowrap;}
 #home .mobileArchFeedHead i,#home .mobileArchFeedFoot i {display:inline-block;width:7px;height:7px;margin-right:4px;border-radius:50%;background:#35ddb0;box-shadow:0 0 8px #35ddb099;}
 #home .mobileArchFeedHead small {font:700 8px ui-monospace,monospace;color:#8ea9c9;text-align:right;}
 #home .mobileArchFeed svg {display:block;width:calc(100% - 20px);height:76px;margin:10px auto 0;padding:8px;border:1px solid #2e537e;border-radius:9px;background:#0b2946;box-sizing:border-box;}
 #home .mobileArchFeedFoot {display:flex;justify-content:space-between;gap:8px;padding:11px 10px;color:#afc7e4;font:800 9px ui-monospace,monospace;}
 #home .mobileArchFeedFoot span:last-child {color:#43e0b0;}
 /* 2x2 statistics: readable value, clear label, icons that remain visible */
 #home .heroMetricsV96 {display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px!important;margin:18px 0 0!important;border:0!important;background:none!important;box-shadow:none!important;overflow:visible!important;}
 #home .heroMetricsV96 article {box-sizing:border-box;display:flex!important;flex-direction:column!important;align-items:flex-start!important;justify-content:flex-start!important;min-width:0!important;min-height:128px!important;gap:9px!important;padding:16px 14px!important;border:1px solid #385782!important;border-radius:15px!important;background:linear-gradient(145deg,#102c4c,#081c35)!important;box-shadow:0 8px 20px #0002!important;}
 #home .heroMetricsV96 .metricIcon {display:grid!important;place-items:center!important;width:28px!important;height:28px!important;min-width:28px!important;min-height:28px!important;margin:0!important;color:#9d8aff!important;}
 #home .heroMetricsV96 .metricIcon svg {display:block!important;width:25px!important;height:25px!important;fill:none!important;stroke:currentColor!important;stroke-width:1.8!important;stroke-linecap:round;stroke-linejoin:round;filter:none!important;}
 #home .heroMetricsV96 article>div {display:flex!important;flex-direction:column!important;align-items:flex-start!important;gap:5px!important;width:100%;min-width:0;}
 #home .heroMetricsV96 article strong,#home .heroMetricsV96 article:last-child strong {display:block!important;font-size:clamp(26px,7vw,32px)!important;line-height:1.06!important;letter-spacing:-.04em!important;padding:0!important;margin:0!important;color:#fff!important;white-space:normal!important;overflow-wrap:normal!important;}
 #home .heroMetricsV96 article span:not(.metricIcon) {display:block!important;font-size:12px!important;line-height:1.35!important;color:#c1d0e5!important;font-weight:600!important;margin:0!important;white-space:normal!important;}
 #home .heroMetricsV96 article:last-child strong {font-size:28px!important;}
 /* prevent clipped section headings */
 #home .homeSkillsV82 .homeSkillsHead h3 {font-size:clamp(27px,7vw,36px)!important;line-height:1.16!important;overflow-wrap:normal!important;}
 #home .homeSkillsV82 {margin-top:20px!important;}
}


/* V15 — experience timeline: prevent orphan marker and align date */
@media(max-width:760px){
 .portfolioV11 #experience {scroll-margin-top:80px;}
 .portfolioV11 #experience .careerFull .careerItem {display:flex!important;flex-direction:column!important;gap:12px!important;padding:18px 16px 22px 22px!important;position:relative!important;}
 .portfolioV11 #experience .careerFull .careerItem:before {display:block!important;content:""!important;position:absolute!important;left:8px!important;top:18px!important;bottom:14px!important;width:2px!important;height:auto!important;background:linear-gradient(#857bff,#b9c4df)!important;opacity:1!important;}
 .portfolioV11 #experience .careerFull .careerItem:after {display:none!important;content:none!important;}
 .portfolioV11 #experience .careerFull .careerItem time {display:block!important;align-self:flex-start!important;width:auto!important;margin:0!important;padding:5px 10px!important;border:1px solid #d6dfff!important;border-radius:999px!important;background:#eff2ff!important;color:#394b88!important;font-size:12px!important;font-weight:750!important;line-height:1.35!important;text-align:left!important;}
 .portfolioV11 #experience .careerFull .careerItem>div {min-width:0!important;padding:0!important;}
 .portfolioV11 #experience .careerFull .careerItem .careerIdentity {min-width:0!important;}
}


/* V15.1 — compact Experience and Credentials; fix timeline bleeding through cards */
@media(max-width:760px){
 /* Remove inherited desktop timeline decoration from within the career card. */
 body.portfolioV11 #experience .careerFull .careerItem::before,
 body.portfolioV11 #experience .careerFull .careerItem::after,
 body.portfolioV11 #experience .careerItem.current::before,
 body.portfolioV11 #experience .careerItem.current::after {content:none!important;display:none!important;background:none!important;}
 body.portfolioV11 #experience .careerFull .careerItem {display:block!important;padding:15px 13px!important;margin-bottom:12px!important;gap:0!important;}
 body.portfolioV11 #experience .careerFull .careerItem time {
  display:table!important;position:static!important;top:auto!important;left:auto!important;
  width:max-content!important;max-width:100%!important;margin:0 auto 14px!important;
  padding:6px 12px!important;line-height:1.3!important;text-align:center!important;
  border-radius:999px!important;border:1px solid #d6ddff!important;
  background:#eff2ff!important;color:#384e91!important;font-size:12px!important;
 }
 body.portfolioV11 #experience .careerFull .careerItem>div {padding:0!important;margin:0!important;min-width:0!important;}
 body.portfolioV11 #experience .careerIdentity {display:flex!important;flex-direction:column!important;gap:9px!important;}
 body.portfolioV11 #experience .careerIdentity .experienceLogo {max-height:43px!important;max-width:150px!important;object-fit:contain;}
 body.portfolioV11 #experience .careerFull .careerItem h3 {font-size:21px!important;line-height:1.22!important;}
 body.portfolioV11 #experience .careerFull .careerItem b {font-size:13px!important;line-height:1.4!important;}
 body.portfolioV11 #experience .careerFull .careerItem p {font-size:13px!important;line-height:1.55!important;margin:10px 0!important;}
 body.portfolioV11 #experience .vendorTrack {margin-top:14px!important;max-width:100%!important;min-width:0!important;}
 body.portfolioV11 #experience .vendorTrackHead {padding:14px!important;gap:9px!important;}
 body.portfolioV11 #experience .vendorTrackHead h4 {font-size:18px!important;}
 body.portfolioV11 #experience .vendorTrackHead p {font-size:12px!important;}
 body.portfolioV11 #experience .engagementTimelineWide article {
  display:grid!important;grid-template-columns:42px minmax(0,1fr) 12px!important;
  align-items:center!important;gap:8px!important;min-height:56px!important;
  padding:10px 8px!important;
 }
 body.portfolioV11 #experience .engagementTimelineWide article time {grid-column:1!important;margin:0!important;padding:4px 5px!important;font-size:11px!important;min-width:0!important;text-align:center!important;}
 body.portfolioV11 #experience .engagementTimelineWide article .timelineLogo {grid-column:2!important;grid-row:1!important;justify-self:start!important;max-width:105px!important;margin:0!important;}
 body.portfolioV11 #experience .engagementTimelineWide article .timelineClient {grid-column:2!important;grid-row:2!important;font-size:12px!important;}
 body.portfolioV11 #experience .engagementTimelineWide article .timelineActivity {grid-column:2!important;grid-row:3!important;min-width:0!important;}
 body.portfolioV11 #experience .engagementTimelineWide article .timelineActivity span {font-size:12px!important;line-height:1.35!important;}
 body.portfolioV11 #experience .engagementTimelineWide article .timelineActivity .chips {display:none!important;}
 body.portfolioV11 #experience .engagementTimelineWide article em {grid-column:3!important;grid-row:1/4!important;align-self:center!important;}
 /* Legacy client cards are deliberately compact; detailed new work opens an overlay. */
 body.portfolioV11 #experience .otherGrid {gap:9px!important;}
 body.portfolioV11 #experience .otherCard {min-height:76px!important;padding:10px 12px!important;gap:11px!important;}
 body.portfolioV11 #experience .otherCard .otherClientLogo,
 body.portfolioV11 #experience .otherCard .otherMonogram {width:52px!important;height:52px!important;flex-basis:52px!important;}
 body.portfolioV11 #experience .otherCardBody b {font-size:14px!important;}
 body.portfolioV11 #experience .otherCardBody small {font-size:10px!important;}
 body.portfolioV11 #experience .otherCard .chips span {font-size:9px!important;}
 /* Credential filters + badge list should not consume several screens before first badge. */
 body.portfolioV11 #certifications .certFilterPanel {padding:14px!important;margin-bottom:14px!important;}
 body.portfolioV11 #certifications .certFilter {padding:8px 11px!important;font-size:12px!important;}
 body.portfolioV11 #certifications .credlyGrid {gap:12px!important;}
 body.portfolioV11 #certifications .credlyFullCard {margin:0 auto!important;padding:8px!important;max-width:230px!important;}
 body.portfolioV11 #certifications .credlyFullCard[hidden] {display:none!important;}
 body.portfolioV11 #certifications .certExpand {display:block;width:min(100%,300px);margin:16px auto 8px;padding:13px 16px;border:1px solid #8c83ff;border-radius:12px;background:#242b6d;color:#fff;font-size:13px;font-weight:750;cursor:pointer;}
 body.portfolioV11 #certifications .certExpand[hidden] {display:none!important;}
 /* Detail overlays open on top of the current page, not as navigation to another page. */
 #modal.modal.open {z-index:99999!important;}
 #modal > article.projectDetailModal {scroll-padding-top:12px;}
}

/* V15.2 — Mobile layout refinements */
@media (max-width: 767px) {
  body.portfolioV11 #home .mobileArchitecture,
  body.portfolioV11 #home .mobileArchitectureV15 {
    display: none !important;
  }
  body.portfolioV11 #certifications .credlyGrid,
  body.portfolioV11 .credlyGrid {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 10px !important;
    justify-items: stretch !important;
  }
  body.portfolioV11 #certifications .credlyGrid > *,
  body.portfolioV11 .credlyGrid > * {
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
  }
  body.portfolioV11 #certifications .credlyFullCard {
    max-width: 100% !important;
    min-width: 0 !important;
    box-sizing: border-box !important;
  }
  body.portfolioV11 #certifications .credlyGrid iframe {
    width: 100% !important;
    max-width: 100% !important;
  }
}
