/* APIS Lab v6.71 — mobile rhythm and spacing audit.
   Final override: removes double top offsets after breadcrumbs, restores the
   business-solution rows that lost their layout, and normalises compact mobile rhythm. */

/* --------------------------------------------------------------------------
   1. "What we solve" rows — the v6.63 markup changed from expert6-group to
      expert6-row, but only text rules were added. Restore the actual component.
   -------------------------------------------------------------------------- */
.expert6-list{
  padding:14px 0 96px!important;
}
.expert6-row{
  display:grid;
  grid-template-columns:112px minmax(320px,.86fr) minmax(0,1fr);
  gap:36px;
  align-items:start;
  padding:38px 0 40px;
  border-bottom:1px solid var(--line);
}
.expert6-row:first-child{border-top:1px solid var(--line)}
.expert6-row>span{
  display:block;
  padding-top:7px;
  color:#777a80;
  font-size:10px;
  line-height:1.35;
  font-weight:800;
  letter-spacing:.12em;
  text-transform:uppercase;
}
.expert6-row>h2{
  margin:0;
  max-width:720px;
  font-size:clamp(34px,3.25vw,50px);
  line-height:1.01;
  letter-spacing:-.044em;
  font-weight:730;
  text-wrap:balance;
}
.expert6-row>div{min-width:0;padding-top:3px}
.expert6-row>div>p{
  margin:0 0 20px!important;
  max-width:620px;
  color:#5e6268!important;
  font-size:15px!important;
  line-height:1.62!important;
}
.expert6-row>div>a{
  display:inline-flex;
  align-items:center;
  margin:0 18px 10px 0!important;
  padding-bottom:3px;
  border-bottom:1px solid rgba(17,19,24,.24);
  font-size:13px;
  line-height:1.35;
  font-weight:720;
}

@media(max-width:980px){
  .expert6-row{
    grid-template-columns:84px minmax(0,1fr);
    grid-template-areas:"tag title" ". copy";
    gap:14px 22px;
    padding:34px 0 36px;
  }
  .expert6-row>span{grid-area:tag}
  .expert6-row>h2{grid-area:title}
  .expert6-row>div{grid-area:copy;padding-top:4px}
}

/* --------------------------------------------------------------------------
   2. Mobile breadcrumb -> hero rhythm.
   Breadcrumbs already include the fixed-header offset, therefore the first
   section must not add another 90–150px of top padding. Generic selector makes
   this safe for every internal route, including future pages.
   -------------------------------------------------------------------------- */
@media(max-width:760px){
  html body main>.v645-crumb-band + section{
    padding-top:38px!important;
  }

  html body main>.v645-crumb-band + :is(
    .expert6-hero,.work-hero,.page-hero,.system-page-hero,.strategy-hero,
    .service-hero,.tool-hero,.tools-hub-hero,.tool-v624-hero,.lab-v624-hero,
    .article-v624-hero,.scenario-v624-hero,.intl-hero,.intel-hero,
    .case6-hero,.case-detail-hero
  ){
    padding-top:38px!important;
  }

  /* Landing heroes: consistent internal spacing without a blank first screen. */
  .expert6-hero,.work-hero,.system-page-hero{
    padding-bottom:56px!important;
  }
  .v664-section-hero{
    gap:28px!important;
    align-items:start!important;
  }
  .v664-hero-copy>.v6-label{margin:0!important}
  .v664-hero-copy>.v6-label+h1{
    margin-top:22px!important;
    margin-bottom:0!important;
  }
  .v664-hero-copy>h1+p{
    margin-top:24px!important;
    margin-bottom:0!important;
  }

  /* The solution list should read as five deliberate blocks, not one text stream. */
  .expert6-list{padding:8px 0 64px!important}
  .expert6-row{
    display:block;
    padding:34px 0 36px;
    border-bottom:1px solid var(--line);
  }
  .expert6-row:first-child{border-top:1px solid var(--line)}
  .expert6-row>span{
    padding:0;
    margin:0 0 13px;
    font-size:10px;
    line-height:1.35;
  }
  body.expertise6-page .expert6-row>h2{
    margin:0!important;
    max-width:100%!important;
    font-size:clamp(32px,9.2vw,40px)!important;
    line-height:1.04!important;
    letter-spacing:-.038em!important;
    text-wrap:pretty;
  }
  .expert6-row>div{padding:0;margin-top:18px}
  .expert6-row>div>p{
    margin:0 0 17px!important;
    font-size:15px!important;
    line-height:1.58!important;
  }
  .expert6-row>div>a{
    margin:0 14px 9px 0!important;
    font-size:13px;
    line-height:1.4;
  }

  /* Common heading groups: avoid both collapsed and exaggerated gaps. */
  :where(.section6-head,.v624-section-head,.v5-head,.labx-head,.international6-head,.intel-block-head,.case6-two){
    margin-bottom:34px!important;
  }
  :where(.section6-head,.v624-section-head,.v5-head,.labx-head,.international6-head,.intel-block-head,.case6-two)>div:first-child{
    gap:20px!important;
  }
  :where(.section6-head,.v624-section-head,.v5-head,.labx-head,.international6-head,.intel-block-head,.case6-two)>p,
  :where(.section6-head,.v624-section-head,.v5-head,.labx-head,.international6-head,.intel-block-head,.case6-two)>a.text-link{
    margin-top:0!important;
  }

  /* Direct label/title/copy sequences: one predictable rhythm. */
  :where(section,article,div)>:where(.v6-label,.v5-kicker)+:is(h1,h2,h3){
    margin-top:20px!important;
  }
  :where(.decision6-intro,.home-intl-bridge-head)>.v6-label{
    margin-bottom:20px!important;
  }
  :where(.decision6-intro,.home-intl-bridge-head)>p{
    margin-top:22px!important;
  }

  /* Sections introduced by the positioning rebuild: keep premium breathing room,
     but not a full empty mobile screen between content blocks. */
  .apis-positioning,.apis-challenges,.business-first,.solutions6,.decision6,
  .international6,.work-scenarios,.home-intl-bridge-v625,
  body.v664-approach-page .apis-process-section{
    padding-top:60px!important;
    padding-bottom:64px!important;
  }

  body.v664-approach-page .apis-process-head{margin-bottom:26px!important}
  body.v664-approach-page .apis-process-flow{gap:30px!important}

  /* Work landing: clear separation between image, copy and metrics. */
  body.v6-work-page .work-index6{padding-top:10px!important;padding-bottom:64px!important}
  body.v6-work-page .work-index-row{padding-top:30px!important;padding-bottom:34px!important}
  body.v6-work-page .work-index-info{padding-top:18px!important}
  body.v6-work-page .work-index-info>span{margin-bottom:0!important}
  body.v6-work-page .work-index-info h2{margin:18px 0 18px!important}
  body.v6-work-page .work-index-info>p{margin:0 0 22px!important;line-height:1.58!important}
  body.v6-work-page .metric-line{margin-top:6px!important;padding-top:18px!important}

  /* Related-navigation blocks should not merge into the preceding section. */
  main>.v624-soft.v625-related{padding-top:52px!important;padding-bottom:56px!important}
  .context-next{gap:14px!important}

  /* Fixed action dock: reserve room at the end of the document. */
  body{padding-bottom:88px}
  .modal{padding-bottom:104px!important}
}

@media(max-width:420px){
  html body main>.v645-crumb-band + section{padding-top:34px!important}
  .expert6-row{padding:30px 0 32px}
  body.expertise6-page .expert6-row>h2{font-size:clamp(30px,9vw,36px)!important}
  .expert6-row>div{margin-top:16px}
  .apis-positioning,.apis-challenges,.business-first,.solutions6,.decision6,
  .international6,.work-scenarios,.home-intl-bridge-v625,
  body.v664-approach-page .apis-process-section{
    padding-top:56px!important;
    padding-bottom:58px!important;
  }
}
