/* VISUAL-LOCAL-20261014.1
 * Content-led refinements after the approved homepage/workspace samples.
 * This layer is not loaded on the homepage. No shell, content or API changes.
 * Selectors name existing components; print keeps its dedicated stylesheet.
 */
@media screen {
  /* Business details: a shared reading surface instead of three floating boxes. */
  body .ztc-product-detail .pd-val3 {
    gap: 0; padding: 10px; border: 1px solid #e1e6ea; border-radius: 24px;
    background: #f6f7f8;
  }
  body .ztc-product-detail .pd-val3 .pd-val {
    border: 0; border-right: 1px solid #dfe5e9; border-radius: 0;
    background: transparent; box-shadow: none; padding: 26px;
  }
  body .ztc-product-detail .pd-val:last-child { border-right: 0; }
  body .ztc-product-detail .pd-val::before,
  body .ztc-product-detail .pd-case::before { display: none; }
  body .ztc-product-detail .pd-val h3 { font-size: 20px; }
  body .ztc-product-detail .pd-sec-lead,
  body .ztc-product-detail .pd-tabpane p { font-size: 16px; line-height: 1.9; }
  body .ztc-product-detail .pd-framework {
    padding: clamp(16px, 3vw, 32px); border-radius: 24px;
    border-color: #e1e6ea; box-shadow: 0 6px 24px rgba(25, 45, 62, .04);
  }
  body .ztc-product-detail .pd-tabpane img { box-shadow: 0 6px 24px rgba(25,45,62,.06); }
  body .ztc-product-detail .pd-case { border-radius: 20px; }
  body .ztc-product-detail .pd-case:hover { box-shadow: 0 6px 20px rgba(25,45,62,.07); }
  body .ztc-product-detail .pd-case h3 { font-size: 16px; }
  body .ztc-product-detail .pd-hero::before,
  body .ztc-product-detail .pd-cta::before { opacity: .3; }

  /* Product collections: keep architecture and real images, soften their frames. */
  body .pc-page .pc-signature { border-radius: 24px; box-shadow: none; }
  body .pc-page .pc-signature::before { border-radius: 16px; }
  body .pc-page .pc-hero-grid { opacity: .06; }
  body .pc-page .pc-product-card { border-radius: 20px; }
  body .pc-page .pc-product-card:hover,
  body .pc-page .pc-stage-map article:hover,
  body .pc-page .pc-pathway-grid a:hover { transform: none; box-shadow: none; }
  body .pc-page .pc-pathway-grid a { min-height: 0; border-radius: 18px; }
  body .ph-product-card, body .ph-line-card, body .ph-support-card { border-radius: 20px; }
  body .ph-product-card:hover, body .ph-line-card:hover,
  body .ph-line-product-card:hover { transform: none; box-shadow: 0 6px 22px rgba(25,45,62,.06); }

  /* Consulting: keep all nine domains; quieter service directories and evidence. */
  body .ztc-chub-page .dom-grid { gap: 24px; }
  body .ztc-chub-page .dom-card {
    border: 1px solid #e0e6eb; border-radius: 20px; box-shadow: none;
    padding: 28px; background: #fff;
  }
  body .ztc-chub-page .dom-card::before { display: none; }
  body .ztc-chub-page .dom-card:hover { transform: none; box-shadow: 0 6px 22px rgba(25,45,62,.05); }
  body .ztc-chub-page .dom-ico { background: #f2f5f7; color: var(--ztc-action); border-radius: 12px; }
  body .ztc-chub-page .dom-slogan { font-size: 14px; font-weight: 500; color: #526274; }
  body .ztc-chub-page .dom-subs a { font-size: 14px; }
  body .ztc-chub-page .dom-subs a::before { display: none; }
  body .ztc-chub-page .why-grid { gap: 0 36px; }
  body .ztc-chub-page .wcard {
    padding: 28px 0; border: 0; border-top: 1px solid #d8e1e7;
    border-radius: 0; background: transparent; box-shadow: none;
  }
  body .ztc-chub-page .wcard .ic { background: transparent; color: var(--ztc-action); width: 32px; height: 32px; }
  body .ztc-chub-page .wcard p { font-size: 16px; line-height: 1.9; }
  body .ztc-chub-page .ins-card { border-radius: 20px; box-shadow: none; }
  body .ztc-chub-page .ins-card:hover { box-shadow: 0 6px 22px rgba(25,45,62,.05); }
  body :is(.ztc-fssc-page,.ztc-treasury-page,.ztc-tax-page,.ztc-fdigital-page,
    .ztc-decision-page,.ztc-penetrate-page,.ztc-budget-page,.ztc-overseas-page,.ztc-fcap-page) .wcard {
    border-radius: 20px; box-shadow: none;
  }
  body :is(.ztc-fssc-page,.ztc-treasury-page,.ztc-tax-page,.ztc-fdigital-page,
    .ztc-decision-page,.ztc-penetrate-page,.ztc-budget-page,.ztc-overseas-page,.ztc-fcap-page) .wcard:hover {
    box-shadow: none; transform: none;
  }
  body .ztc-business-research .br-feature { border-radius: 20px; background: #f4f6f7; }

  /* Publication libraries: compact series navigation, covers remain uncropped. */
  body .pl-series-grid { gap: 0; padding: 8px; border: 1px solid #dde4e9; border-radius: 22px; background: #f6f7f8; }
  body .pl-series-grid a { min-height: 134px; padding: 20px; border: 0; border-right: 1px solid #dde4e9; background: transparent; }
  body .pl-series-grid a:last-child { border-right: 0; }
  body .pl-series-grid a:hover { transform: none; background: #fff; border-color: #dde4e9; border-radius: 14px; }
  body .pl-series-grid strong { margin: 14px 0; font-size: 16px; }
  body .pl-series-grid i { min-height: 20px; }
  body .pl-spotlight-card { border-radius: 20px; background: #fff; }
  body .pl-spotlight-card:hover { transform: none; box-shadow: 0 6px 22px rgba(25,45,62,.05); }
  body .pl-spotlight-visual { background: #f3f5f7; }
  body .pl-spotlight-visual > span { display: none; }
  body .pl-spotlight-copy small, body .pl-spotlight-copy strong { font-size: 12px; color: var(--ztc-action); }
  body .pl-report-card { min-height: 0; padding: 14px; border-radius: 20px; }
  body .pl-report-card:has(.pl-report-primary):hover { transform: none; box-shadow: 0 6px 22px rgba(25,45,62,.06); }
  body .pl-report-card .pl-report-cover { height: 230px; border-radius: 12px; background: #f4f6f7; }
  body .pl-report-card small, body .pl-report-card p, body .pl-report-card strong { font-size: 12px; line-height: 1.7; }
  body .pl-report-card > div:last-child { padding: 18px 8px 8px; }
  body .pl-book-cover { border-radius: 16px; }
  body .ie-feature-art, body .ie-report-art { border-radius: 22px; }
  body .ie-feature-art::before { border-radius: 14px; }

  /* Topic arguments read as arguments, not tall numbered placeholders. */
  body .isx-proposition-grid, body .tx-proposition-grid { margin-top: 40px; gap: 0 28px; border: 0; }
  body .isx-proposition-grid article, body .tx-proposition-grid article {
    min-height: 0; padding: 26px 0; border: 0; border-top: 1px solid #d6e1e8;
    background: transparent; box-shadow: none;
  }
  body .isx-proposition-grid article:first-child { border-left: 0; }
  body .tx-proposition-grid article:hover { transform: none; box-shadow: none; border-color: #d6e1e8; }
  body .isx-proposition-grid h3, body .tx-proposition-grid h3 { margin: 20px 0 12px; font-size: 20px; line-height: 1.5; }
  body .isx-pathway-grid a, body .tx-pathway-grid a { min-height: 0; padding: 28px; border-radius: 20px; }
  body .isx-pathway-grid a::before { display: none; }
  body .isx-pathway-grid strong, body .tx-pathway-grid strong { margin-top: 22px; font-size: 24px; line-height: 1.4; }
  body .isx-pathway-grid a:hover, body .tx-pathway-grid a:hover { transform: none; background: #fff; color: var(--ztc-text); box-shadow: 0 6px 22px rgba(25,45,62,.05); }
  body .isx-pathway-grid a:hover strong { color: var(--ztc-action); }
  body .isx-pathway-grid a:hover span { color: var(--ztc-text-muted); }
  body .isx-pathway-grid a:hover small, body .isx-pathway-grid a:hover i { color: var(--ztc-action); }

  /* Research evidence: preserve figures and sequence, reduce ornamental frames. */
  body .publication-evidence { background-image: none; }
  body .publication-evidence-grid { gap: 16px; }
  body .publication-evidence-card {
    border: 1px solid #dfe6eb; border-radius: 20px; box-shadow: none;
    background: #fff; min-height: 0;
  }
  body .publication-evidence-card::after { display: none; }
  body .publication-signature--maturity .publication-evidence-card::before { display: none; }
  body .publication-framework { background: #0c3b59; }
  body .publication-framework .publication-section-head--light > span,
  body .publication-framework-note { color: #d3e0e8; }
  body .publication-framework-card li { color: #e2eaf0; font-size: 14px; line-height: 1.75; }
  body .publication-framework-card small { color: #a9d9ed; }
  body .publication-framework-grid { gap: 16px; border: 0; background: transparent; }
  body .publication-framework-card {
    min-height: 0; border-radius: 18px; background: rgba(255,255,255,.045);
    border-color: rgba(255,255,255,.18);
  }
  body .publication-framework-card:hover { transform: none; background: rgba(255,255,255,.07); }
  body .publication-framework-no { margin-bottom: 22px; }

  /* Contextual reading is a calm supporting layer. Five groups stay intact. */
  body .ztc-related-groups, body.has-refined-reading .ztc-related-groups { gap: 12px; }
  body .ztc-related-group, body.has-refined-reading .ztc-related-group {
    border: 1px solid #e3e8ec; border-radius: 16px; background: #f7f8f9;
    padding: 22px 18px 10px;
  }
  body .ztc-related-group > p { font-size: 12px; }
  body .ztc-related-rail { border: 1px solid #e3e8ec; border-radius: 18px; background: #f7f8f9; }
  body .ztc-related-rail small, body .ztc-related-rail li a > span { font-size: 12px; }
  body .cs2-result-link:hover { transform: none; box-shadow: 0 6px 22px rgba(25,45,62,.06); }
  body .cs2-result-proof { flex-direction: column; gap: 6px; padding: 13px 0 0; background: transparent; border-radius: 0; border-top: 1px solid #e2e8ec; }
  body .cs2-result-proof strong { white-space: nowrap; }
  body .cs2-result-tags em { background: #f3f5f6; border-radius: 5px; }

  /* Resource hub: put the task before the decorative constellation. */
  body .res-hero { min-height: 0; padding: 146px 0 58px; }
  body .res-hero-layout { grid-template-columns: 1fr; }
  body .res-hero h1 { max-width: 960px; font-size: var(--ztc-banner-h1-standard); line-height: 1.22; }
  body .res-hero-lead { max-width: 850px; margin-bottom: 26px; }
  body .res-hero-grid, body .res-hero-glow, body .res-constellation { display: none; }
  body .res-guide-section, body .res-map-section { padding: 64px 0; }
  body .res-guide { border-radius: 24px; box-shadow: 0 8px 32px rgba(25,45,62,.06); }
  body .res-card-grid { grid-template-columns: 1fr 1fr; gap: 0 44px; }
  body .res-card {
    min-height: 0; padding: 28px 0; border: 0; border-top: 1px solid #d9e2e8;
    border-radius: 0; background: transparent; box-shadow: none;
  }
  body .res-card::before { display: none; }
  body .res-card:hover { transform: none; box-shadow: none; border-color: #d9e2e8; }
  body .res-card-top { justify-content: flex-start; margin-bottom: 18px; }
  body .res-card-top > small { font-weight: 500; text-align: left; }
  body .res-card > p { max-width: 36em; margin-bottom: 16px; }
  body .res-card-links { margin-bottom: 16px; }
  body .res-card-links a { display: inline-flex; align-items: center; min-height: 44px; font-size: 14px; }
  body .res-card-primary { align-self: flex-start; min-height: 44px; }

  /* Video discovery: shorten the introduction and make actual media the focus. */
  body .videos-hero { min-height: 0; }
  body .videos-hero-inner { padding: 148px 0 56px; gap: 60px; }
  body .videos-hero::before, body .videos-hero::after { display: none; }
  body .videos-hero-map { padding: 16px 0 0; border: 0; border-radius: 0; background: none; }
  body .videos-section { padding: 72px 0; }
  body .videos-feature-card { box-shadow: 0 6px 24px rgba(25,45,62,.05); }
  body .videos-library-card:hover { transform: none; box-shadow: 0 6px 22px rgba(25,45,62,.06); }
  body .videos-card-copy h3, body .videos-card-copy p { min-height: 0; }
  body .videos-latest { background: #f4f6f8; color: var(--videos-ink); padding: 52px 0; }
  body .videos-latest h2 { color: var(--videos-ink); font-size: var(--ztc-fs-h2); }
  body .videos-latest .videos-eyebrow { color: var(--ztc-action); }
  body .videos-latest-layout { gap: 48px; }
  body .videos-latest-heading > p:last-child, body .videos-latest-empty p { color: #526274; }
  body .videos-latest-empty { min-height: 0; padding: 24px; border: 1px solid #dfe6eb; background: #fff; }
  body .videos-latest-empty > span { display: none; }
  body .videos-latest-empty strong { color: var(--videos-ink); font-size: 20px; }
  body .videos-latest-empty small { color: var(--ztc-action); font-size: 12px; }

  /* Recruitment: distinct information, job directory and chronological steps. */
  body .careers-audience { gap: 0; padding: 10px; border: 1px solid #dfe6eb; border-radius: 22px; background: #f5f7f8; }
  body .careers-audience-card { border: 0; border-right: 1px solid #dfe6eb; border-radius: 0; background: transparent; }
  body .careers-audience-card:last-child { border-right: 0; }
  body .careers-jobgroups { grid-template-columns: 1fr 1fr; gap: 24px; }
  body .careers-jobgroup { padding: 28px; border-radius: 20px; }
  body .careers-jobgroup--more { grid-column: 1/-1; flex-direction: row; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 20px; background: #f1f5f7; color: var(--cr-ink); border: 1px solid #dfe6eb; }
  body .careers-jobgroup--more p { color: #526274; }
  body .careers-audience-label { color: var(--ztc-action); }
  body .careers-jobgroup--more .careers-button { margin: 0; color: var(--ztc-action); border-color: #b5c9d8; background: #fff; }
  body .careers-jobgroup-list a { font-size: 16px; }
  body .careers-process { gap: 0; }
  body .careers-process li { align-items: flex-start; text-align: left; padding: 0 20px 0 0; border: 0; border-radius: 0; background: none; }
  body .careers-process li:not(:last-child)::after { top: 20px; left: 48px; right: 8px; width: auto; z-index: 0; }
  body .careers-process-no { position: relative; z-index: 1; background: #edf3f7; color: var(--ztc-action); border: 1px solid #cbdbe7; }
  body .careers-jobpage-main .careers-job-col li,
  body .careers-job-para, body .careers-jobpage-main .careers-job-para, body .about-advantage p { font-size: 16px; line-height: 1.9; }

  /* The current course stays intact; supporting topics become lighter reading. */
  body .lp-pillar-grid { gap: 0 28px; border: 0; }
  body .lp-pillar-grid article { min-height: 0; padding: 24px 0; border: 0; border-top: 1px solid var(--lp-line); }
  body .lp-pillar-grid article:first-child { border-left: 0; }
  body .lp-pillar-grid article > span { margin-top: 18px; background: transparent; width: 32px; height: 32px; }
  body .lp-topic-grid { gap: 0 32px; }
  body .lp-topic-grid a { min-height: 0; padding: 26px 28px 28px 0; border: 0; border-top: 1px solid var(--lp-line); }
  body .lp-topic-grid a:hover { transform: none; box-shadow: none; border-color: var(--lp-line); }
  body .lp-topic-grid strong { margin-top: 18px; }
  body .lp-topic-grid svg { right: 0; top: 28px; bottom: auto; }
}

@media screen and (max-width: 991px) {
  body .ztc-product-detail .pd-val3 .pd-val { border-right: 0; border-bottom: 1px solid #dfe5e9; padding: 24px; }
  body .ztc-product-detail .pd-val3 .pd-val:last-child { border-bottom: 0; }
  body .pl-series-grid { grid-template-columns: 1fr 1fr; }
  body .pl-series-grid a { min-height: 0; border-right: 0; border-bottom: 1px solid #dde4e9; }
  body .pl-series-grid a:last-child { border-bottom: 0; }
  body .videos-hero-inner { grid-template-columns: 1fr; gap: 30px; }
  body .videos-hero-map ol { grid-template-columns: repeat(3,1fr); gap: 24px; }
  body .videos-hero-map-label { margin-bottom: 10px; }
}
@media screen and (max-width: 767px) {
  body .ztc-product-detail .pd-framework { padding: 12px; border-radius: 18px; }
  body .ztc-chub-page .dom-card { padding: 24px; }
  body .ztc-chub-page .why-grid { grid-template-columns: 1fr; }
  body .pl-series-grid { grid-template-columns: 1fr; }
  body .pl-series-grid a { display: grid; grid-template-columns: 24px 1fr 20px; align-items: center; gap: 16px; padding: 16px; }
  body .pl-series-grid strong { margin: 0; }
  body .pl-series-grid i { margin: 0; }
  body .pl-report-card { display: grid; grid-template-columns: 100px minmax(0,1fr); gap: 14px; padding: 14px; }
  body .pl-report-card .pl-report-cover { height: 150px; }
  body .pl-report-card > div:last-child { padding: 4px 0; }
  body .pl-report-card h3 { font-size: 16px; }
  body .pl-spotlight-copy p { font-size: 12px; }
  body .isx-proposition-grid, body .tx-proposition-grid { grid-template-columns: 1fr; margin-top: 24px; }
  body .isx-pathway-grid a, body .tx-pathway-grid a { padding: 24px; }
  body .publication-framework-card:nth-child(n) { min-height: 0; }
  body .publication-framework-card h3 { min-height: 0; margin-bottom: 18px; }
  body .ztc-related-groups, body.has-refined-reading .ztc-related-groups { gap: 10px; }
  body.has-refined-reading .ztc-related-group { padding: 0 18px; }
  body .res-hero { padding: 120px 0 42px; }
  body .res-hero h1 { font-size: var(--ztc-banner-h1-standard); }
  body .res-hero-actions { gap: 8px; }
  body .res-hero-actions .res-btn { width: auto; flex: 1 1 140px; padding-inline: 16px; }
  body .res-card-grid { grid-template-columns: 1fr; }
  body .res-guide-section, body .res-map-section { padding: 44px 0; }
  body .videos-hero-inner { padding: 120px 0 42px; }
  body .videos-hero-map ol { grid-template-columns: 1fr; gap: 0; }
  body .videos-hero-map li { grid-template-rows: auto; padding-block: 12px; }
  body .videos-hero-map small { grid-column: 2; }
  body .videos-section { padding: 48px 0; }
  body .careers-audience { grid-template-columns: 1fr; }
  body .careers-audience-card { padding: 20px; border-right: 0; border-bottom: 1px solid #dfe6eb; }
  body .careers-audience-card:last-child { border-bottom: 0; }
  body .careers-jobgroups { grid-template-columns: 1fr; }
  body .careers-jobgroup { padding: 24px; }
  body .careers-process { grid-template-columns: 1fr; }
  body .careers-process li { flex-direction: row; align-items: center; padding: 0 0 30px; gap: 20px; }
  body .careers-process li:not(:last-child)::after { left: 20px; top: 40px; bottom: 0; width: 1px; height: auto; }
  body .careers-process li:last-child { padding-bottom: 0; }
  body .lp-pillar-grid, body .lp-topic-grid { grid-template-columns: 1fr; margin-top: 32px; }
}

/* Match the existing recruitment single-column breakpoint. */
@media screen and (max-width: 860px) {
  body .careers-audience { grid-template-columns: 1fr; }
  body .careers-audience-card { padding: 20px; border-right: 0; border-bottom: 1px solid #dfe6eb; }
  body .careers-audience-card:last-child { border-bottom: 0; }
  body .careers-process { grid-template-columns: 1fr; }
  body .careers-process li { flex-direction: row; align-items: center; padding: 0 0 30px; gap: 20px; }
  body .careers-process li:not(:last-child)::after { display: block; left: 20px; right: auto; top: 40px; bottom: 0; width: 1px; height: auto; }
  body .careers-process li:last-child { padding-bottom: 0; }
}
