/* R4-B Customer Development detail. Shared website and design-system foundations remain unchanged. */
@layer cd-legacy, cd-foundation, cd-detail;
@import url("website-v2.css?v=2.1.0") layer(cd-legacy);
@import url("phase-a-content.css?v=2.1.0") layer(cd-legacy);
@import url("main.css?v=2.1.0") layer(cd-legacy);
@import url("aigosea-design-system-v1.css?v=2.1.0") layer(cd-foundation);

@layer cd-detail {
  #main-content.customer-development {
    --cd-ink: #172b22;
    --cd-muted: #53665c;
    --cd-line: #d9e4dc;
    --cd-green: #17633f;
    color: var(--cd-ink);
    background: #fff;
    font-family: var(--aigosea-ds-font-family);
  }
  #main-content.customer-development *, #main-content.customer-development *::before, #main-content.customer-development *::after { box-sizing: border-box; }
  #main-content.customer-development :is(h1,h2,h3,p,figure,ol,ul,dl,dt,dd) { margin: 0; }
  #main-content.customer-development :is(.cd-hero-grid,.cd-context-grid,.cd-progression-grid,.cd-final-grid,.cd-research-grid,.cd-workspace-body) > * { min-inline-size: 0; }
  #main-content.customer-development :is(h1,h2,h3,p) { text-align: start; }
  #main-content.customer-development :is(h1,h2,h3) { color: var(--cd-ink); font-weight: 600; letter-spacing: 0; }
  #main-content.customer-development h1 { font-size: var(--aigosea-ds-inner-title-size); line-height: var(--aigosea-ds-inner-title-leading); }
  #main-content.customer-development h2 { font-size: 27px; line-height: 1.36; }
  #main-content.customer-development h3 { font-size: 22px; line-height: 1.38; }
  #main-content.customer-development .cd-screen { scroll-margin-block-start: 88px; }
  #main-content.customer-development .cd-section { padding-block: clamp(60px, 6.5vw, 92px); border-top: 1px solid #edf1ed; }
  #main-content.customer-development .cd-hero { padding-block: clamp(62px, 7vw, 100px); background: #f8faf8; }
  #main-content.customer-development .cd-tint { background: #f8faf8; }
  #main-content.customer-development .cd-hero-grid { display: grid; grid-template-columns: minmax(0,.83fr) minmax(0,1.17fr); gap: clamp(28px,4vw,64px); align-items: center; }
  body.locale-en #main-content.customer-development .cd-hero-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  #main-content.customer-development .cd-intro { display: grid; gap: 20px; align-content: center; }
  #main-content.customer-development .cd-eyebrow { color: var(--cd-green); font-size: clamp(16px, 1.2vw, 17px); font-weight: 600; line-height: 1.4; letter-spacing: 0; }
  #main-content.customer-development .cd-lead { max-inline-size: 56ch; color: #40534a; font-size: 17px; line-height: 1.75; }
  #main-content.customer-development .cd-actions { display: flex; flex-wrap: wrap; gap: 12px; align-items: center; }
  #main-content.customer-development .cd-scope { max-inline-size: 70ch; color: var(--cd-muted); font-size: 13px; line-height: 1.65; }
  #main-content.customer-development .cd-section-head { display: grid; gap: 13px; max-inline-size: 760px; margin-block-end: 28px; }
  body.locale-en #main-content.customer-development .cd-section-head { max-inline-size: 900px; }
  #main-content.customer-development .cd-section-head > p:not(.cd-eyebrow):not(.cd-scope) { color: #40534a; font-size: 16px; line-height: 1.7; }
  #main-content.customer-development .cd-surface { overflow: hidden; border: 1px solid var(--cd-line); border-radius: 10px; background: #fff; box-shadow: 0 12px 30px rgb(24 56 37 / 5%); }
  #main-content.customer-development :is(.cd-surface,.cd-workspace) figcaption { padding: 13px 22px; border-top: 1px solid #e8eee9; color: var(--cd-muted); font-size: 12px; line-height: 1.6; }
  #main-content.customer-development .cd-panel-head, #main-content.customer-development .cd-workspace-top { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 8px 18px; padding: 15px 22px; border-bottom: 1px solid #e8eee9; }
  #main-content.customer-development .cd-panel-head strong { display: block; font-size: 16px; font-weight: 600; }
  #main-content.customer-development .cd-demo { display: inline-flex; align-items: center; padding: 4px 9px; border: 1px solid #bcd6c5; border-radius: 20px; color: var(--cd-green); background: #f2f8f3; font-size: 12px; font-weight: 600; white-space: nowrap; }
  #main-content.customer-development .cd-ui-label { display: block; color: var(--cd-muted); font-size: 13px; line-height: 1.5; }
  #main-content.customer-development .cd-workspace { overflow: hidden; border: 1px solid #cfded2; border-radius: 12px; background: #fff; box-shadow: 0 22px 42px rgb(24 56 37 / 7%); }
  #main-content.customer-development .cd-workspace-top strong { color: var(--cd-green); font-size: 15px; }
  #main-content.customer-development .cd-workspace-top strong span { margin-inline-start: 8px; color: var(--cd-ink); font-size: 13px; font-weight: 500; }
  #main-content.customer-development .cd-workspace-body { display: grid; grid-template-columns: minmax(140px,.28fr) minmax(0,.72fr); }
  #main-content.customer-development .cd-workspace-rail { display: grid; align-content: start; gap: 8px; padding: 22px 16px; border-inline-end: 1px solid #e8eee9; background: #f7faf7; }
  #main-content.customer-development .cd-workspace-rail span { color: var(--cd-muted); font-size: 12px; }
  #main-content.customer-development .cd-workspace-rail strong { margin-block-end: 10px; font-size: 14px; line-height: 1.45; }
  #main-content.customer-development .cd-workspace-flow { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 1px; background: #e8eee9; }
  #main-content.customer-development .cd-workspace-flow > div { display: grid; align-content: start; gap: 5px; min-inline-size: 0; padding: 20px; background: #fff; }
  #main-content.customer-development .cd-workspace-flow span { color: var(--cd-green); font-size: 12px; font-weight: 600; }
  #main-content.customer-development .cd-workspace-flow strong { font-size: 15px; line-height: 1.4; }
  #main-content.customer-development .cd-workspace-flow small { color: var(--cd-muted); font-size: 12px; line-height: 1.5; }
  #main-content.customer-development .cd-workspace-flow .cd-workspace-gate { background: #f3f8f4; }
  #main-content.customer-development .cd-research-grid { display: grid; grid-template-columns: minmax(0,.8fr) minmax(0,1.2fr) minmax(0,.9fr); }
  #main-content.customer-development .cd-research-grid > div { display: grid; align-content: start; gap: 13px; padding: 25px; border-inline-end: 1px solid #e8eee9; }
  #main-content.customer-development .cd-research-grid > div:last-child { border-inline-end: 0; }
  #main-content.customer-development .cd-research-grid strong { font-size: 16px; line-height: 1.45; }
  #main-content.customer-development .cd-research-grid p { color: var(--cd-muted); font-size: 14px; line-height: 1.6; }
  #main-content.customer-development .cd-status { justify-self: start; padding: 5px 9px; border: 1px solid var(--cd-line); border-radius: 5px; color: var(--cd-green); font-size: 12px; }
  #main-content.customer-development .cd-company-row { display: grid; grid-template-columns: minmax(0,1fr) auto; gap: 2px 12px; padding-block: 10px; border-bottom: 1px solid #e8eee9; }
  #main-content.customer-development .cd-company-row strong { grid-column: 1; font-size: 14px; }
  #main-content.customer-development .cd-company-row span { grid-column: 1; color: var(--cd-muted); font-size: 12px; }
  #main-content.customer-development .cd-company-row em { grid-column: 2; grid-row: 1 / 3; align-self: center; color: var(--cd-green); font-size: 12px; font-style: normal; }
  #main-content.customer-development .cd-people-list { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); }
  #main-content.customer-development .cd-person { min-inline-size: 0; padding: 24px; }
  #main-content.customer-development .cd-person + .cd-person { border-inline-start: 1px solid #e8eee9; }
  #main-content.customer-development .cd-person-identity { display: grid; gap: 5px; padding-block-end: 18px; border-bottom: 1px solid #e8eee9; }
  #main-content.customer-development .cd-person-identity strong { font-size: 18px; }
  #main-content.customer-development .cd-person-identity span { color: var(--cd-muted); font-size: 13px; }
  #main-content.customer-development .cd-person dl { display: grid; }
  #main-content.customer-development .cd-person dl > div { display: grid; grid-template-columns: minmax(0,1fr) minmax(0,1fr); gap: 10px; padding-block: 10px; border-bottom: 1px solid #eef2ee; font-size: 13px; }
  #main-content.customer-development .cd-person dt { color: var(--cd-muted); }
  #main-content.customer-development .cd-person dd { justify-self: end; color: var(--cd-ink); font-weight: 600; text-align: end; }
  #main-content.customer-development .cd-context-grid { display: grid; grid-template-columns: minmax(0,.8fr) minmax(0,1.2fr); gap: clamp(28px,5vw,76px); align-items: center; }
  #main-content.customer-development .cd-context-grid .cd-section-head { margin-block-end: 0; }
  #main-content.customer-development .cd-context-sources { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); border-bottom: 1px solid #e8eee9; }
  #main-content.customer-development .cd-context-group + .cd-context-group { border-inline-start: 1px solid #e8eee9; }
  #main-content.customer-development .cd-context-group-head { display: grid; gap: 4px; padding: 17px 20px; background: #f8faf8; border-bottom: 1px solid #e8eee9; }
  #main-content.customer-development .cd-context-group-head strong { font-size: 15px; }
  #main-content.customer-development .cd-context-group-head small { color: var(--cd-muted); font-size: 12px; }
  #main-content.customer-development .cd-context-list { display: grid; }
  #main-content.customer-development .cd-context-list > div { display: grid; grid-template-columns: minmax(0,1fr) auto; gap: 3px 10px; align-items: center; padding: 13px 20px; border-bottom: 1px solid #e8eee9; }
  #main-content.customer-development .cd-context-list > div:last-child { border-bottom: 0; }
  #main-content.customer-development .cd-context-list span { color: var(--cd-muted); font-size: 13px; }
  #main-content.customer-development .cd-context-list strong { grid-column: 1; grid-row: 2; font-size: 14px; line-height: 1.4; }
  #main-content.customer-development .cd-context-list em { grid-column: 2; grid-row: 1 / 3; max-inline-size: 92px; color: var(--cd-green); font-size: 12px; font-style: normal; text-align: end; }
  #main-content.customer-development .cd-context-bridge { display: grid; gap: 5px; margin: 12px 16px 0; padding: 18px 20px; border: 1px solid #cddfd1; border-inline-start: 3px solid var(--cd-green); border-radius: 6px; background: #f3f8f4; }
  #main-content.customer-development .cd-context-bridge span { color: var(--cd-green); font-size: 12px; font-weight: 600; }
  #main-content.customer-development .cd-context-bridge strong { font-size: 15px; }
  #main-content.customer-development .cd-context-bridge small { color: var(--cd-muted); font-size: 12px; line-height: 1.5; }
  #main-content.customer-development .cd-evidence-gap { display: grid; gap: 5px; margin: 12px 22px 18px; padding: 14px 16px; border-inline-start: 2px solid #9bbb9f; background: #f8faf8; }
  #main-content.customer-development .cd-evidence-gap span { color: var(--cd-green); font-size: 12px; font-weight: 600; }
  #main-content.customer-development .cd-evidence-gap strong { font-size: 14px; }
  #main-content.customer-development .cd-evidence-gap small { color: var(--cd-muted); font-size: 12px; line-height: 1.5; }
  #main-content.customer-development .cd-assistant-inputs, #main-content.customer-development .cd-assistant-work { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); }
  #main-content.customer-development :is(.cd-assistant-inputs,.cd-assistant-work) > div { display: grid; align-content: start; gap: 6px; min-inline-size: 0; padding: 20px 22px; border-bottom: 1px solid #e8eee9; }
  #main-content.customer-development :is(.cd-assistant-inputs,.cd-assistant-work) > div + div { border-inline-start: 1px solid #e8eee9; }
  #main-content.customer-development .cd-assistant-work { grid-template-columns: minmax(0,1.1fr) minmax(0,.9fr); border-block: 2px solid #cddfd1; background: #f2f8f3; }
  #main-content.customer-development .cd-assistant-work > div:first-child { border-inline-start: 3px solid var(--cd-green); }
  #main-content.customer-development .cd-assistant-work > div:last-child { background: #f8fbf8; }
  #main-content.customer-development :is(.cd-assistant-inputs,.cd-assistant-work) span { color: var(--cd-green); font-size: 12px; font-weight: 600; }
  #main-content.customer-development :is(.cd-assistant-inputs,.cd-assistant-work) strong { font-size: 15px; line-height: 1.45; }
  #main-content.customer-development :is(.cd-assistant-inputs,.cd-assistant-work) small { color: var(--cd-muted); font-size: 12px; line-height: 1.5; }
  #main-content.customer-development .cd-risk { padding: 18px 22px 22px; background: #fff; }
  #main-content.customer-development .cd-risk-head { display: flex; flex-wrap: wrap; justify-content: space-between; gap: 4px 12px; margin-block-end: 12px; }
  #main-content.customer-development .cd-risk-head span { color: var(--cd-green); font-size: 13px; font-weight: 600; }
  #main-content.customer-development .cd-risk-head small { color: var(--cd-muted); font-size: 12px; }
  #main-content.customer-development .cd-risk-grid { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 1px; border: 1px solid #e3ebe5; background: #e3ebe5; }
  #main-content.customer-development .cd-risk-grid > div { display: grid; align-content: start; gap: 5px; min-inline-size: 0; padding: 13px; background: #fff; }
  #main-content.customer-development .cd-risk-grid > div:nth-child(2), #main-content.customer-development .cd-risk-grid > div:nth-child(3) { background: #f7faf7; }
  #main-content.customer-development .cd-risk-grid strong { font-size: 13px; }
  #main-content.customer-development .cd-risk-grid span { color: var(--cd-muted); font-size: 12px; line-height: 1.5; }
  #main-content.customer-development .cd-progression-grid { display: grid; grid-template-columns: minmax(0,.8fr) minmax(0,1.2fr); gap: clamp(28px,5vw,76px); align-items: center; }
  #main-content.customer-development .cd-progression-grid .cd-section-head { margin-block-end: 0; }
  #main-content.customer-development .cd-progression ol { display: grid; gap: 0; padding: 0; list-style: none; }
  #main-content.customer-development .cd-progression li { display: grid; grid-template-columns: minmax(0,.6fr) minmax(0,1fr); gap: 4px 14px; padding: 16px 22px; border-bottom: 1px solid #e8eee9; }
  #main-content.customer-development .cd-progression li span { grid-row: 1 / 3; color: var(--cd-green); font-size: 14px; font-weight: 600; line-height: 1.5; }
  #main-content.customer-development .cd-progression li strong { font-size: 14px; }
  #main-content.customer-development .cd-progression li small { color: var(--cd-muted); font-size: 12px; }
  #main-content.customer-development .cd-stop-rail { display: grid; gap: 5px; margin: 18px 22px; padding: 15px 17px; border: 1px solid #ccdccf; border-radius: 6px; background: #f3f8f4; }
  #main-content.customer-development .cd-stop-rail span { color: var(--cd-green); font-size: 12px; font-weight: 600; }
  #main-content.customer-development .cd-stop-rail strong { font-size: 14px; }
  #main-content.customer-development .cd-stop-rail small { color: var(--cd-muted); font-size: 12px; }
  #main-content.customer-development .cd-final { background: #f8faf8; }
  #main-content.customer-development .cd-final-grid { display: grid; grid-template-columns: minmax(0,1fr) minmax(0,.8fr); gap: clamp(30px,6vw,90px); align-items: center; }
  body.locale-en #main-content.customer-development .cd-final-grid { grid-template-columns: minmax(0,1.3fr) minmax(0,.7fr); }
  #main-content.customer-development .cd-final-grid > div:first-child { display: grid; gap: 16px; }
  #main-content.customer-development .cd-final-grid > div:first-child > p:not(.cd-eyebrow):not(.cd-scope) { color: #40534a; font-size: 16px; line-height: 1.7; }
  #main-content.customer-development .cd-preparation { padding: 4px 0 4px 24px; border-inline-start: 2px solid #a9c9b0; }
  #main-content.customer-development .cd-preparation ul { display: grid; gap: 9px; margin-block: 15px; padding-inline-start: 20px; color: #40534a; font-size: 15px; }
  #main-content.customer-development .cd-preparation p { color: var(--cd-muted); font-size: 13px; line-height: 1.6; }
  #main-content.customer-development a:focus-visible { outline: 3px solid var(--cd-green); outline-offset: 4px; border-radius: 4px; }
  @media (max-width: 1100px) {
    #main-content.customer-development .cd-hero-grid { grid-template-columns: minmax(0,1fr); }
    body.locale-en #main-content.customer-development .cd-hero-grid { grid-template-columns: minmax(0,1fr); }
    body.locale-en #main-content.customer-development .cd-final-grid { grid-template-columns: minmax(0,1fr) minmax(0,.8fr); }
    #main-content.customer-development .cd-hero-workspace { max-inline-size: 900px; }
    #main-content.customer-development .cd-research-grid { grid-template-columns: minmax(0,1fr) minmax(0,1.25fr); }
    #main-content.customer-development .cd-research-judgment { grid-column: 1 / -1; border-top: 1px solid #e8eee9; }
    #main-content.customer-development .cd-research-grid > div:nth-child(2) { border-inline-end: 0; }
  }
  @media (min-width: 768px) and (max-width: 900px) {
    body.locale-en #main-content.customer-development .cd-context-list > div { grid-template-columns: minmax(0,1fr); }
    body.locale-en #main-content.customer-development .cd-context-list em { grid-column: 1; grid-row: auto; justify-self: start; max-inline-size: none; text-align: start; }
  }
  @media (max-width: 767px) {
    #main-content.customer-development h2 { font-size: 24px; }
    #main-content.customer-development h3 { font-size: 20px; }
    #main-content.customer-development .cd-section { padding-block: 58px; }
    #main-content.customer-development .cd-hero { padding-block: 60px; }
    #main-content.customer-development :is(.cd-context-grid,.cd-progression-grid,.cd-final-grid) { grid-template-columns: minmax(0,1fr); }
    body.locale-en #main-content.customer-development .cd-final-grid { grid-template-columns: minmax(0,1fr); }
    #main-content.customer-development :is(.cd-context-grid,.cd-progression-grid) .cd-section-head { margin-block-end: 0; }
    #main-content.customer-development .cd-people-list { grid-template-columns: minmax(0,1fr); }
    #main-content.customer-development .cd-person + .cd-person { border-inline-start: 0; border-top: 1px solid #e8eee9; }
    #main-content.customer-development .cd-risk-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  }
  @media (max-width: 520px) {
    #main-content.customer-development .cd-workspace-body, #main-content.customer-development .cd-research-grid { grid-template-columns: minmax(0,1fr); }
    #main-content.customer-development .cd-workspace-rail { grid-template-columns: minmax(0,1fr) minmax(0,1.5fr); border-inline-end: 0; border-bottom: 1px solid #e8eee9; }
    #main-content.customer-development .cd-workspace-rail strong { margin: 0; }
    #main-content.customer-development .cd-workspace-flow { grid-template-columns: minmax(0,1fr); }
    #main-content.customer-development .cd-research-grid > div { border-inline-end: 0; border-bottom: 1px solid #e8eee9; }
    #main-content.customer-development .cd-research-judgment { grid-column: auto; border-top: 0; }
    #main-content.customer-development .cd-context-sources, #main-content.customer-development .cd-assistant-inputs, #main-content.customer-development .cd-assistant-work { grid-template-columns: minmax(0,1fr); }
    #main-content.customer-development .cd-context-group + .cd-context-group, #main-content.customer-development :is(.cd-assistant-inputs,.cd-assistant-work) > div + div { border-inline-start: 0; border-top: 1px solid #e8eee9; }
    #main-content.customer-development .cd-progression li { grid-template-columns: minmax(0,1fr); }
    #main-content.customer-development .cd-progression li span { grid-row: auto; }
    #main-content.customer-development .cd-actions a { max-inline-size: 100%; }
  }
  @media (prefers-reduced-motion: reduce) {
    #main-content.customer-development *, #main-content.customer-development *::before, #main-content.customer-development *::after { animation-duration: .01ms !important; transition-duration: .01ms !important; }
  }
}
