:root {
    --market-ink: #102d42;
    --market-heading: #153a53;
    --market-copy: #607786;
    --market-blue: #0066cc;
    --market-sky: #3399ff;
    --market-soft: #eef6ff;
    --market-surface: #f6f9fb;
    --market-line: #dbe6ed;
    --market-white: #fff;
    --market-shadow: 0 24px 64px rgba(16, 48, 70, .12);
}

.market-shell { width: min(calc(100% - 48px), 1180px); margin-inline: auto; }
.market-eyebrow {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    margin: 0 0 16px;
    color: var(--market-blue);
    font-family: 'IBM Plex Sans', sans-serif;
    font-size: .68rem;
    font-weight: 700;
    letter-spacing: .15em;
    line-height: 1.3;
    text-transform: uppercase;
}
.market-eyebrow::before { width: 24px; height: 1px; content: ''; background: currentColor; }

.market-button {
    min-height: 46px;
    padding: 0 20px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    border: 1px solid transparent;
    border-radius: 8px;
    font-size: .84rem;
    font-weight: 700;
    line-height: 1;
    text-decoration: none;
    transition: color .2s ease, background .2s ease, border-color .2s ease, box-shadow .2s ease, transform .2s ease;
}
.market-button:hover { transform: translateY(-2px); }
.market-button--light { color: var(--market-blue); background: #fff; box-shadow: 0 13px 34px rgba(0,0,0,.18); }
.market-button--light:hover { color: #004f9e; background: #f5f9fc; }
.market-button--glass { color: #fff; background: rgba(255,255,255,.08); border-color: rgba(255,255,255,.42); backdrop-filter: blur(8px); }
.market-button--glass:hover { color: #fff; background: rgba(255,255,255,.17); border-color: rgba(255,255,255,.72); }

/* Full-width programme switcher, kept completely below the hero image. */
.market-category-nav {
    position: relative;
    z-index: 6;
    width: 100%;
    margin: 0;
    background: #fff;
    border-bottom: 1px solid var(--market-line);
    box-shadow: 0 10px 28px rgba(16,48,70,.06);
}
.market-category-nav__inner {
    width: min(calc(100% - 48px),1180px);
    min-height: 82px;
    margin-inline: auto;
    padding: 0;
    display: grid;
    grid-template-columns: 142px minmax(0, 1fr);
    align-items: stretch;
    overflow: hidden;
    background: #fff;
    border: 0;
    border-radius: 0;
    box-shadow: none;
}
.market-category-nav__overview {
    padding: 0 21px;
    display: flex;
    justify-content: center;
    flex-direction: column;
    color: #486477;
    background: #f7fafc;
    border-right: 1px solid var(--market-line);
    text-decoration: none;
}
.market-category-nav__overview span { color: var(--market-heading); font-size: .76rem; font-weight: 700; }
.market-category-nav__overview small { margin-top: 4px; color: #8293a0; font-size: .63rem; }
.market-category-nav__overview:hover,
.market-category-nav__overview.is-current { background: var(--market-soft); }
.market-category-nav__overview.is-current span { color: var(--market-blue); }
.market-category-nav__links { min-width: 0; display: grid; grid-template-columns: repeat(6, minmax(0, 1fr)); }
.market-category-nav__links a {
    position: relative;
    min-width: 0;
    padding: 13px 9px;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 9px;
    color: #3f596b;
    border-right: 1px solid #e8eef2;
    text-decoration: none !important;
    transition: color .2s ease, background .2s ease;
}
.market-category-nav__links a:last-child { border-right: 0; }
.market-category-nav__links a::after { position: absolute; right: 17px; bottom: 0; left: 17px; height: 3px; content: ''; background: var(--market-blue); transform: scaleX(0); transition: transform .2s ease; }
.market-category-nav__links a > i { flex: 0 0 auto; color: #7b98aa; font-size: .84rem; transition: color .2s ease, transform .2s ease; }
.market-category-nav__links a > span { min-width: 0; display: flex; flex-direction: column; }
.market-category-nav__links strong { color: inherit; font-size: .69rem; line-height: 1.35; white-space: nowrap; }
.market-category-nav__links small { margin-top: 3px; overflow: hidden; color: #91a1ac; font-size: .57rem; line-height: 1.3; text-overflow: ellipsis; white-space: nowrap; }
.market-category-nav__links a:hover,
.market-category-nav__links a.is-current { color: var(--market-blue); background: #f7fbff; }
.market-category-nav__links a:hover > i,
.market-category-nav__links a.is-current > i { color: var(--market-blue); transform: translateY(-1px); }
.market-category-nav__links a:hover::after,
.market-category-nav__links a.is-current::after { transform: scaleX(1); }

/* Market-access hub: a route catalogue rather than another testing grid. */
body.service-hub-page--certification main > .service-hub-hero { margin-bottom: 0 !important; }
body.service-hub-page--certification .hub-intro { padding-top: clamp(70px, 7vw, 94px); }
body.service-hub-page--certification .hub-service-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 22px; }
body.service-hub-page--certification .hub-service-card { min-height: 270px; display: grid; grid-template-columns: minmax(190px, .42fr) minmax(0, .58fr); border-radius: 8px; }
body.service-hub-page--certification .hub-service-card__media { height: 100%; aspect-ratio: auto; }
body.service-hub-page--certification .hub-service-card__media::after { background: linear-gradient(90deg, transparent 55%, rgba(9,29,43,.18)); }
body.service-hub-page--certification .hub-service-card__body { min-height: 270px; padding: 28px 27px; }
body.service-hub-page--certification .hub-service-card__code { margin-bottom: 22px; }
body.service-hub-page--certification .hub-service-card h3 { font-size: 1.08rem; }
body.service-hub-page--certification .hub-service-card__footer { align-items: flex-end; }

/* Detail heroes use the existing page photography with a restrained neutral veil. */
body.certification-detail-page main { color: var(--market-copy); background: #fff !important; }
body.certification-detail-page main > .hero-banner {
    position: relative;
    min-height: clamp(520px, 58svh, 620px) !important;
    overflow: hidden;
    margin-bottom: 0 !important;
    padding-bottom: 98px !important;
    background-position: center 32% !important;
}
body.certification-detail-page main > .hero-banner::before {
    position: absolute;
    inset: 0;
    z-index: 1;
    content: '';
    pointer-events: none;
    background:
        linear-gradient(180deg, rgba(5,14,22,.56) 0%, rgba(5,14,22,.10) 35%, rgba(5,14,22,.08) 58%, rgba(5,14,22,.34) 100%),
        linear-gradient(90deg, rgba(5,17,27,.93) 0%, rgba(6,23,36,.78) 39%, rgba(7,27,41,.36) 68%, rgba(7,27,41,.06) 100%) !important;
}
body.certification-detail-page main > .hero-banner::after { position: absolute; right: 0; bottom: 0; left: 0; z-index: 1; height: 92px; content: ''; pointer-events: none; background: linear-gradient(180deg, transparent, rgba(4,15,24,.28)); }
body.certification-detail-page main .hero-container { position: relative; z-index: 2; max-width: 760px !important; }

/* Certification image heroes: preserve semantic headings without showing copy over the artwork. */
body.service-hub-page--certification main > .service-hub-hero .hero-container,
body.certification-detail-page main > .hero-banner .hero-container {
    position: absolute !important;
    width: 1px !important;
    height: 1px !important;
    overflow: hidden !important;
    padding: 0 !important;
    margin: -1px !important;
    clip: rect(0 0 0 0) !important;
    clip-path: inset(50%) !important;
    white-space: nowrap !important;
}

body.service-hub-page--certification main > .service-hub-hero::before {
    background: linear-gradient(180deg, rgba(5, 14, 22, .16), rgba(5, 14, 22, .06)) !important;
}

body.service-hub-page--certification main > .service-hub-hero::after {
    background: linear-gradient(180deg, transparent, rgba(4, 15, 24, .08)) !important;
}

body.certification-detail-page main > .hero-banner::before {
    background: linear-gradient(180deg, rgba(5, 14, 22, .17), rgba(5, 14, 22, .05) 48%, rgba(5, 14, 22, .10)) !important;
}

body.certification-detail-page main > .hero-banner::after {
    background: linear-gradient(180deg, transparent, rgba(4, 15, 24, .09)) !important;
}
.market-hero__eyebrow { display: inline-flex; align-items: center; gap: 10px; margin-bottom: 17px; color: #9ed2ff; font-size: .7rem; font-weight: 700; letter-spacing: .15em; text-transform: uppercase; }
.market-hero__eyebrow::before { width: 26px; height: 1px; content: ''; background: currentColor; }
body.certification-detail-page main .hero-banner .hero-heading { max-width: 740px; margin-bottom: 18px !important; font-size: clamp(2.05rem, 3.15vw, 2.95rem) !important; line-height: 1.08 !important; }
body.certification-detail-page main .hero-banner .hero-text { max-width: 690px !important; margin-bottom: 21px !important; color: rgba(255,255,255,.82) !important; font-size: clamp(.93rem, 1.25vw, 1.03rem) !important; }
.market-hero__tags { display: flex; flex-wrap: wrap; gap: 8px; margin-bottom: 26px; }
.market-hero__tags span { padding: 7px 10px; color: rgba(255,255,255,.88); background: rgba(255,255,255,.08); border: 1px solid rgba(255,255,255,.22); border-radius: 4px; backdrop-filter: blur(7px); font-size: .68rem; font-weight: 600; }
.market-hero__actions { display: flex; flex-wrap: wrap; gap: 11px; }

/* The memorable element: a real route diagram for each programme. */
.market-route-brief { padding: clamp(72px, 7vw, 96px) 0 clamp(76px, 8vw, 102px); background: #fff; }
.market-route-brief__grid { display: grid; grid-template-columns: minmax(300px, .78fr) minmax(520px, 1.22fr); gap: clamp(64px, 9vw, 122px); align-items: center; }
.market-route-brief__copy h2 { margin: 0 0 18px; color: var(--market-heading); font-family: 'Manrope', sans-serif; font-size: clamp(1.68rem, 2.35vw, 2.12rem); font-weight: 650; letter-spacing: -.035em; line-height: 1.17; }
.market-route-brief__copy p { margin: 0; font-size: .9rem; line-height: 1.76; }
.market-path { position: relative; display: grid; grid-template-columns: 1fr 34px 1fr 34px 1fr; align-items: center; }
.market-path article { min-height: 170px; padding: 23px 20px; display: flex; justify-content: flex-end; flex-direction: column; background: #f8fbfd; border: 1px solid #d4e2ea; }
.market-path article small { margin-bottom: auto; color: #7e929f; font-size: .57rem; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; }
.market-path article strong { margin-bottom: 8px; color: var(--market-blue); font-family: 'Manrope', sans-serif; font-size: 1.35rem; }
.market-path article span { color: #4f6879; font-size: .65rem; line-height: 1.45; }
.market-path > i { color: #7ba5bf; text-align: center; font-size: .65rem; }
.market-path--saber article:first-child { background: #f5faff; }
.market-path--saber article:nth-of-type(2) { background: #f8fbfd; }
.market-path--saber article:last-child { background: #fbfcfd; }
.market-gmark { position: relative; min-height: 330px; display: grid; grid-template-columns: 1fr 1fr; gap: 13px; align-content: end; }
.market-gmark::before { position: absolute; top: 50%; left: 50%; width: 310px; height: 310px; content: ''; border: 1px solid #d3e2eb; border-radius: 50%; transform: translate(-50%,-50%); }
.market-gmark__core { position: absolute; top: 42%; left: 50%; z-index: 2; width: 136px; height: 136px; display: grid; place-content: center; color: #fff; background: linear-gradient(145deg,#0a456e,#0066cc); border: 10px solid #fff; border-radius: 50%; box-shadow: 0 18px 38px rgba(0,102,204,.2); transform: translate(-50%,-50%); text-align: center; }
.market-gmark__core span { font-size: 2rem; font-weight: 750; line-height: 1; }
.market-gmark__core strong { font-size: .61rem; letter-spacing: .18em; }
.market-gmark article { position: relative; z-index: 3; min-height: 105px; padding: 18px; background: #fff; border: 1px solid #d6e3eb; box-shadow: 0 12px 28px rgba(19,59,83,.07); }
.market-gmark article small,
.market-gmark article strong,
.market-gmark article span { display: block; }
.market-gmark article small { margin-bottom: 7px; color: var(--market-blue); font-size: .57rem; font-weight: 700; text-transform: uppercase; }
.market-gmark article strong { color: var(--market-ink); font-size: .76rem; }
.market-gmark article span { margin-top: 5px; color: #7b8f9c; font-size: .61rem; }
.market-readiness { display: grid; grid-template-columns: repeat(3, 1fr); border: 1px solid #d4e2ea; }
.market-readiness article { min-height: 200px; padding: 24px 20px; display: flex; flex-direction: column; background: #fff; border-right: 1px solid #d4e2ea; }
.market-readiness article:last-of-type { border-right: 0; }
.market-readiness article i { margin-bottom: auto; color: var(--market-blue); font-size: 1.1rem; }
.market-readiness article span { margin-bottom: 6px; color: #7c909e; font-size: .58rem; font-weight: 700; letter-spacing: .1em; text-transform: uppercase; }
.market-readiness article strong { color: var(--market-ink); font-size: .76rem; line-height: 1.4; }
.market-readiness > b { grid-column: 1 / -1; padding: 13px 17px; display: grid; grid-template-columns: 75px 1fr; align-items: center; gap: 15px; color: #fff; background: #0b3a5c; }
.market-readiness > b span { font-size: .57rem; letter-spacing: .11em; text-transform: uppercase; }
.market-readiness > b em { height: 5px; overflow: hidden; background: rgba(255,255,255,.18); }
.market-readiness > b em::after { display: block; width: 82%; height: 100%; content: ''; background: #5eb8f3; }
.market-dossier { position: relative; padding: 54px 34px 28px; background: #f8fbfd; border: 1px solid #cfdee7; box-shadow: 0 18px 42px rgba(18,54,78,.08); }
.market-dossier::before { position: absolute; top: 19px; right: 20px; left: 20px; height: 1px; content: ''; background: #d6e2e9; }
.market-dossier__tab { position: absolute; top: -1px; left: 22px; padding: 9px 14px; color: #fff; background: #146da9; font-size: .58rem; font-weight: 700; letter-spacing: .12em; }
.market-dossier ol { display: grid; grid-template-columns: repeat(3,1fr); gap: 12px; margin: 0; padding: 0; list-style: none; }
.market-dossier li { min-height: 150px; padding: 18px; display: flex; flex-direction: column; background: #fff; border: 1px solid #d8e4eb; }
.market-dossier li > b { margin-bottom: auto; color: var(--market-blue); font-size: .62rem; }
.market-dossier li span,
.market-dossier li strong,
.market-dossier li small { display: block; }
.market-dossier li strong { color: var(--market-ink); font-size: .76rem; }
.market-dossier li small { margin-top: 5px; color: #8295a1; font-size: .6rem; }
.market-network { position: relative; min-height: 330px; }
.market-network::before,
.market-network::after { position: absolute; top: 50%; left: 50%; content: ''; border: 1px solid #d4e3ec; border-radius: 50%; transform: translate(-50%,-50%); }
.market-network::before { width: 310px; height: 310px; }
.market-network::after { width: 215px; height: 215px; border-style: dashed; }
.market-network > div { position: absolute; top: 50%; left: 50%; z-index: 2; width: 144px; height: 144px; display: flex; align-items: center; justify-content: center; flex-direction: column; color: #fff; background: linear-gradient(145deg,#0b456d,#0066cc); border: 9px solid #fff; border-radius: 50%; box-shadow: 0 18px 38px rgba(0,102,204,.2); transform: translate(-50%,-50%); text-align: center; }
.market-network > div i { margin-bottom: 8px; }.market-network > div strong { font-size: .78rem; }.market-network > div small { margin-top: 4px; color: rgba(255,255,255,.7); font-size: .53rem; }
.market-network > span { position: absolute; z-index: 3; min-width: 92px; padding: 10px 14px; color: #33576e; background: #fff; border: 1px solid #d5e2ea; box-shadow: 0 10px 24px rgba(19,59,83,.07); text-align: center; font-size: .65rem; font-weight: 700; }
.market-network > span:nth-of-type(1) { top: 3px; left: 50%; transform: translateX(-50%); }
.market-network > span:nth-of-type(2) { top: 50%; right: 5px; transform: translateY(-50%); }
.market-network > span:nth-of-type(3) { bottom: 3px; left: 50%; transform: translateX(-50%); }
.market-network > span:nth-of-type(4) { top: 50%; left: 5px; transform: translateY(-50%); }

/* Original certification content, reorganised without removing information. */
body.certification-detail-page main > :is(.saber-container,.gcc-container,.qm-container,.iecee-container,.sfda-container,.cb-container) {
    width: min(calc(100% - 48px),1180px) !important;
    max-width: none !important;
    margin: 0 auto !important;
    padding: 0 0 96px !important;
}
body.certification-detail-page main :is(.saber-header,.gcc-header,.qm-header,.iecee-header,.sfda-header,.cb-header) {
    margin: 0 !important;
    padding: 58px 0 42px !important;
    text-align: left !important;
    border-bottom: 1px solid var(--market-line) !important;
}
body.certification-detail-page main :is(.saber-header,.gcc-header,.qm-header,.iecee-header,.sfda-header,.cb-header) h2 { margin: 0 0 10px !important; font-size: clamp(1.5rem,2vw,1.8rem) !important; }
body.certification-detail-page main :is(.saber-header,.gcc-header,.qm-header,.iecee-header,.sfda-header,.cb-header) .subtitle { max-width: 780px; margin: 0 !important; }
body.certification-detail-page main :is(.saber-section,.gcc-section,.qm-section,.iecee-section,.sfda-section,.cb-section,.saber-process-section,.regulation-section) {
    margin: 0 !important;
    padding: clamp(44px,4.8vw,58px) 0 !important;
    background: #fff !important;
    border: 0 !important;
    border-top: 1px solid var(--market-line) !important;
    border-radius: 0 !important;
    box-shadow: none !important;
}
body.certification-detail-page main :is(.saber-section,.gcc-section,.qm-section,.iecee-section,.sfda-section,.cb-section,.saber-process-section,.regulation-section) > h2,
body.certification-detail-page main .process-header h2 { max-width: 740px; margin: 0 0 20px !important; color: var(--market-heading) !important; font-size: clamp(1.5rem,2.1vw,1.82rem) !important; }
body.certification-detail-page main :is(.saber-section,.gcc-section,.qm-section,.iecee-section,.sfda-section,.cb-section,.saber-process-section,.regulation-section) > p { max-width: 920px; margin-bottom: 22px !important; }
body.certification-detail-page main :is(p,li,td,th) { font-size: .82rem !important; line-height: 1.68 !important; }
body.certification-detail-page main h3 { font-size: .98rem !important; }
body.certification-detail-page main :is(.saber-highlight,.gcc-highlight,.qm-highlight,.iecee-highlight,.sfda-highlight,.cb-highlight,.note-box) {
    margin: 24px 0 !important;
    padding: 24px 27px !important;
    color: var(--market-copy) !important;
    background: #f6f9fb !important;
    border: 1px solid var(--market-line) !important;
    border-radius: 5px !important;
    box-shadow: none !important;
}
body.certification-detail-page main :is(.saber-highlight,.gcc-highlight,.qm-highlight,.iecee-highlight,.sfda-highlight,.cb-highlight,.note-box) h3 { margin: 0 0 12px !important; }
body.certification-detail-page main :is(.saber-list,.gcc-list,.qm-list,.iecee-list,.sfda-list,.cb-list) { margin-top: 12px !important; }
body.certification-detail-page main :is(.saber-list,.gcc-list,.qm-list,.iecee-list,.sfda-list,.cb-list) li { margin-bottom: 7px !important; }
body.certification-detail-page main .regulations-row { gap: 16px !important; }
body.certification-detail-page main .regulations-column { padding: 22px !important; background: #f8fafc !important; border: 1px solid var(--market-line) !important; border-radius: 5px !important; box-shadow: none !important; }
body.certification-detail-page main .regulations-column h3 { color: #7b8f9c !important; font-size: .62rem !important; letter-spacing: .11em !important; text-transform: uppercase; }
body.certification-detail-page main :is(.mandatory-products,.gcts-components) { display: grid !important; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 16px !important; }
body.certification-detail-page main :is(.product-category,.gcts-component) { padding: 22px !important; background: #f8fafc !important; border: 1px solid var(--market-line) !important; border-radius: 5px !important; box-shadow: none !important; }

body.certification-detail-page main :is(.process-steps-container,.sfda-process,.cb-process) { display: grid !important; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 16px !important; }
body.certification-detail-page main :is(.process-step,.sfda-process-step,.cb-process-step) { min-width: 0; padding: 24px !important; background: #f8fafc !important; border: 1px solid var(--market-line) !important; border-radius: 5px !important; box-shadow: none !important; }
body.certification-detail-page main :is(.process-step,.sfda-process-step,.cb-process-step):last-child:nth-child(odd) { grid-column: 1 / -1; }
body.certification-detail-page main :is(.step-number-container,.sfda-process-number,.cb-process-number) { width: 38px !important; height: 38px !important; display: grid !important; place-items: center !important; color: #fff !important; background: var(--market-blue) !important; border-radius: 50% !important; box-shadow: none !important; font-size: .73rem !important; }
body.certification-detail-page main :is(.step-documents,.step-note) { margin-top: 16px !important; padding: 16px !important; background: #fff !important; border: 1px solid var(--market-line) !important; border-radius: 4px !important; }
body.certification-detail-page main .step-note { display: flex; gap: 9px; align-items: flex-start; }

body.certification-detail-page main :is(.product-tabs,.regulation-filter) { display: flex !important; flex-wrap: wrap; gap: 8px !important; margin: 24px 0 !important; }
body.certification-detail-page main :is(.product-tab,.filter-btn) { min-height: 40px !important; padding: 8px 14px !important; color: #4f6879 !important; background: #fff !important; border: 1px solid var(--market-line) !important; border-radius: 6px !important; font-size: .72rem !important; }
body.certification-detail-page main :is(.product-tab,.filter-btn):hover,
body.certification-detail-page main :is(.product-tab,.filter-btn).active { color: #fff !important; background: var(--market-blue) !important; border-color: var(--market-blue) !important; }
body.certification-detail-page main .file-link { display: inline-flex !important; min-height: 40px; align-items: center; gap: 6px; color: var(--market-blue) !important; }
body.certification-detail-page main .file-link:hover { color: var(--market-blue-dark) !important; }
body.certification-detail-page main :is(.saber-table,.gcc-table,.qm-table,.iecee-table,.sfda-table,.cb-table,.regulation-table) { width: 100% !important; color: var(--market-copy) !important; background: #fff !important; border: 1px solid var(--market-line) !important; border-collapse: collapse !important; border-radius: 0 !important; box-shadow: none !important; }
body.certification-detail-page main :is(.saber-table,.gcc-table,.qm-table,.iecee-table,.sfda-table,.cb-table,.regulation-table) th { color: var(--market-ink) !important; background: #edf4f8 !important; font-weight: 650 !important; }
body.certification-detail-page main :is(.saber-table,.gcc-table,.qm-table,.iecee-table,.sfda-table,.cb-table,.regulation-table) :is(th,td) { padding: 13px 15px !important; border-color: var(--market-line) !important; }
body.certification-detail-page main :is(.saber-table,.gcc-table,.qm-table,.iecee-table,.sfda-table,.cb-table,.regulation-table) tbody tr:nth-child(even) { background: #f9fbfc !important; }
body.certification-detail-page main .regulation-table-container { overflow-x: auto; border: 1px solid var(--market-line); }
body.certification-detail-page main .regulation-table-container .regulation-table { min-width: 660px; border: 0 !important; }

/* Compact certificate previews; click opens an accessible lightbox. */
body.certification-detail-page main .certificate-sample {
    display: grid !important;
    grid-template-columns: repeat(auto-fit,minmax(190px,240px)) !important;
    justify-content: start !important;
    align-items: start !important;
    gap: 18px !important;
    margin: 25px 0 !important;
    padding: 24px !important;
    text-align: left !important;
    background: #f7fafc !important;
    border: 1px solid var(--market-line) !important;
    border-radius: 6px !important;
    box-shadow: none !important;
}
body.certification-detail-page:not(.certification-detail-page--gcc) main .certificate-sample { width: min(100%,380px) !important; }
body.certification-detail-page--gcc main .certificate-sample { width: min(100%,820px) !important; }
body.certification-detail-page main .certificate-sample > :is(h3,p) { grid-column: 1 / -1; margin: 0 !important; }
body.certification-detail-page main .certificate-sample img.market-certificate-thumb,
body.certification-detail-page main .certificate-sample img {
    width: 220px !important;
    max-width: 100% !important;
    height: 260px !important;
    margin: 0 !important;
    padding: 10px;
    object-fit: contain !important;
    background: #fff !important;
    border: 1px solid #d5e0e7 !important;
    border-radius: 4px !important;
    box-shadow: 0 8px 22px rgba(18,54,78,.08) !important;
    cursor: zoom-in;
    transition: border-color .2s ease, box-shadow .2s ease, transform .2s ease;
}
body.certification-detail-page main .certificate-sample img:hover,
body.certification-detail-page main .certificate-sample img:focus-visible { border-color: var(--market-blue) !important; box-shadow: 0 14px 30px rgba(18,54,78,.14) !important; transform: translateY(-3px); }
body.certification-detail-page main :is(.iecee-certificate,.qm-mark,.gcts-mark) { margin: 25px 0 !important; padding: 24px !important; background: #f7fafc !important; border: 1px solid var(--market-line) !important; border-radius: 6px !important; box-shadow: none !important; }
body.certification-detail-page main .iecee-certificate img.market-certificate-thumb { width: 220px !important; height: 260px !important; padding: 10px; object-fit: contain !important; background: #fff; border: 1px solid #d5e0e7; cursor: zoom-in; }
body.certification-detail-page main .qm-mark img { max-width: 150px !important; }

/* Keep related certificate specimens on one compact row instead of stretching the page. */
body.certification-detail-page--saber main .saber-section:has(> .certificate-sample),
body.certification-detail-page--iecee main .iecee-section:has(> .iecee-certificate),
body.certification-detail-page--qm main .qm-section:has(> .qm-mark) {
    display: grid !important;
    grid-template-columns: repeat(2,minmax(0,1fr));
    gap: 18px 22px;
    align-items: stretch;
}
body.certification-detail-page--saber main .saber-section:has(> .certificate-sample) > h2,
body.certification-detail-page--saber main .saber-section:has(> .certificate-sample) > .saber-highlight,
body.certification-detail-page--iecee main .iecee-section:has(> .iecee-certificate) > h2,
body.certification-detail-page--iecee main .iecee-section:has(> .iecee-certificate) > .iecee-highlight,
body.certification-detail-page--qm main .qm-section:has(> .qm-mark) > h2,
body.certification-detail-page--qm main .qm-section:has(> .qm-mark) > .qm-highlight { grid-column: 1 / -1; }
body.certification-detail-page--saber main .saber-section:has(> .certificate-sample) > .certificate-sample,
body.certification-detail-page--iecee main .iecee-section:has(> .iecee-certificate) > :is(.certificate-sample,.iecee-certificate),
body.certification-detail-page--qm main .qm-section:has(> .qm-mark) > :is(.certificate-sample,.qm-mark) {
    width: 100% !important;
    height: 100%;
    margin: 0 !important;
}

/* SABER: remove the old gold/green visual language completely. */
body.certification-detail-page--saber main .saber-process-section { border-top-color: var(--market-line) !important; }
body.certification-detail-page--saber main .process-header h2::after,
body.certification-detail-page--saber main .saber-section h2::after { background: var(--market-blue) !important; }
body.certification-detail-page--saber main .process-steps-container::before { background: linear-gradient(180deg,var(--market-blue),var(--market-sky)) !important; }
body.certification-detail-page--saber main .process-step::before { border-right-color: var(--market-blue) !important; }
body.certification-detail-page--saber main :is(.saber-list,.document-list) li::before,
body.certification-detail-page--saber main .step-note i { color: var(--market-blue) !important; background-color: var(--market-blue) !important; }
body.certification-detail-page--saber main .step-note i { background-color: transparent !important; }
body.certification-detail-page--saber main .step-content { border-left-color: var(--market-blue) !important; }

.market-lightbox { position: fixed; inset: 0; z-index: 3000; display: grid; place-items: center; padding: 28px; background: rgba(5,18,28,.86); backdrop-filter: blur(10px); opacity: 0; visibility: hidden; transition: opacity .2s ease, visibility .2s ease; }
.market-lightbox.is-open { opacity: 1; visibility: visible; }
.market-lightbox__dialog { position: relative; max-width: min(100%,1050px); max-height: calc(100vh - 56px); padding: 18px; display: flex; align-items: center; justify-content: center; flex-direction: column; background: #fff; border-radius: 8px; box-shadow: 0 28px 80px rgba(0,0,0,.35); }
.market-lightbox__image { max-width: 100%; max-height: calc(100vh - 130px); display: block; object-fit: contain; }
.market-lightbox__caption { margin: 11px 42px 0; color: #4b6474; font-size: .76rem; text-align: center; }
.market-lightbox__close { position: absolute; top: 10px; right: 10px; z-index: 1; width: 38px; height: 38px; display: grid; place-items: center; color: #fff; background: #0d3858; border: 0; border-radius: 50%; cursor: pointer; }
.market-lightbox__close:hover { background: var(--market-blue); }
body.market-lightbox-open { overflow: hidden; }

body.certification-detail-page main :is(.saber-contact,.gcc-contact,.qm-contact,.iecee-contact,.sfda-contact,.cb-contact) { margin-top: 0 !important; padding: 40px !important; color: var(--market-copy) !important; background: #f1f7fc !important; border: 1px solid #d6e7f2 !important; border-radius: 7px !important; box-shadow: none !important; text-align: left !important; }
body.certification-detail-page main :is(.saber-contact,.gcc-contact,.qm-contact,.iecee-contact,.sfda-contact,.cb-contact) h2 { color: var(--market-heading) !important; }

@media (max-width: 1080px) {
    .market-category-nav__inner { grid-template-columns: 120px minmax(0,1fr); }
    .market-category-nav__links a > i { display: none; }
    .market-route-brief__grid { grid-template-columns: 1fr; gap: 52px; }
    .market-route-brief__copy { max-width: 720px; }
}

@media (max-width: 820px) {
    .market-shell { width: min(calc(100% - 34px),1180px); }
    .market-category-nav { width: 100%; }
    .market-category-nav__inner { width: 100%; min-height: 74px; padding: 0; grid-template-columns: 1fr; }
    .market-category-nav__overview { display: none; }
    .market-category-nav__links { overflow-x: auto; display: flex; scroll-snap-type: x proximity; scrollbar-width: none; }
    .market-category-nav__links::-webkit-scrollbar { display: none; }
    .market-category-nav__links a { flex: 0 0 132px; min-height: 74px; scroll-snap-align: center; }
    .market-category-nav__links a > i { display: block; }
    body.service-hub-page--certification .hub-service-grid { grid-template-columns: 1fr; }
    body.service-hub-page--certification .hub-service-card { grid-template-columns: minmax(170px,.38fr) minmax(0,.62fr); }
    body.certification-detail-page main :is(.process-steps-container,.sfda-process,.cb-process) { grid-template-columns: 1fr !important; }
    body.certification-detail-page main :is(.process-step,.sfda-process-step,.cb-process-step):last-child:nth-child(odd) { grid-column: auto; }
}

@media (max-width: 600px) {
    .market-shell { width: min(calc(100% - 32px),1180px); }
    body.certification-detail-page main > .hero-banner { min-height: 570px !important; padding-bottom: 92px !important; background-position: 56% center !important; }
    body.certification-detail-page main .hero-banner .hero-heading { font-size: clamp(1.82rem,8.2vw,2.35rem) !important; }
    .market-hero__actions { align-items: stretch; flex-direction: column; }
    .market-hero__actions .market-button { width: 100%; }
    .market-category-nav { margin-top: 0; }
    .market-category-nav__inner { min-height: 70px; border-radius: 0; }
    .market-category-nav__links a { flex-basis: 120px; min-height: 70px; }
    .market-category-nav__links small { display: none; }
    .market-route-brief { padding-top: 58px; }
    .market-path { grid-template-columns: 1fr; gap: 8px; }
    .market-path > i { transform: rotate(90deg); }
    .market-path article { min-height: 126px; }
    .market-gmark { min-height: 520px; grid-template-columns: 1fr; align-content: end; }
    .market-gmark::before { top: 33%; width: 230px; height: 230px; }
    .market-gmark__core { top: 33%; width: 122px; height: 122px; }
    .market-readiness { grid-template-columns: 1fr; }
    .market-readiness article { min-height: 130px; border-right: 0; border-bottom: 1px solid var(--market-line); }
    .market-dossier ol { grid-template-columns: 1fr; }
    .market-dossier li { min-height: 112px; }
    .market-network { transform: scale(.9); margin-inline: -20px; }
    body.service-hub-page--certification .hub-service-card { display: flex; }
    body.service-hub-page--certification .hub-service-card__media { height: auto; aspect-ratio: 16 / 9; }
    body.service-hub-page--certification .hub-service-card__body { min-height: 220px; }
    body.certification-detail-page main > :is(.saber-container,.gcc-container,.qm-container,.iecee-container,.sfda-container,.cb-container) { width: min(calc(100% - 32px),1180px) !important; padding-bottom: 68px !important; }
    body.certification-detail-page main :is(.saber-header,.gcc-header,.qm-header,.iecee-header,.sfda-header,.cb-header) { padding: 44px 0 32px !important; }
    body.certification-detail-page main :is(.saber-section,.gcc-section,.qm-section,.iecee-section,.sfda-section,.cb-section,.saber-process-section,.regulation-section) { padding: 34px 0 !important; }
    body.certification-detail-page main :is(.saber-highlight,.gcc-highlight,.qm-highlight,.iecee-highlight,.sfda-highlight,.cb-highlight,.note-box) { padding: 21px 19px !important; }
    body.certification-detail-page main :is(.mandatory-products,.gcts-components) { grid-template-columns: 1fr !important; }
    body.certification-detail-page--saber main .saber-section:has(> .certificate-sample),
    body.certification-detail-page--iecee main .iecee-section:has(> .iecee-certificate),
    body.certification-detail-page--qm main .qm-section:has(> .qm-mark) { grid-template-columns: 1fr !important; }
    body.certification-detail-page main .certificate-sample { grid-template-columns: repeat(2,minmax(0,1fr)) !important; padding: 18px !important; }
    body.certification-detail-page:not(.certification-detail-page--gcc) main .certificate-sample { width: 100% !important; grid-template-columns: 1fr !important; }
    body.certification-detail-page main .certificate-sample img.market-certificate-thumb,
    body.certification-detail-page main .certificate-sample img { width: 100% !important; height: 190px !important; }
    body.certification-detail-page main :is(.saber-contact,.gcc-contact,.qm-contact,.iecee-contact,.sfda-contact,.cb-contact) { padding: 28px 22px !important; }
    .market-lightbox { padding: 12px; }
    .market-lightbox__dialog { max-height: calc(100vh - 24px); padding: 12px; }
    .market-lightbox__image { max-height: calc(100vh - 92px); }
}

@media (prefers-reduced-motion: reduce) {
    .market-button,
    .market-category-nav__links a::after,
    .market-lightbox,
    body.certification-detail-page main .certificate-sample img { transition: none; }
}

/* Typography floor for market-access navigation, diagrams and regulations. */
.market-eyebrow,
.market-hero__eyebrow { font-size: .75rem; }
.market-hero__tags span { font-size: .74rem; }
.market-category-nav__overview span { font-size: .82rem; }
.market-category-nav__overview small { font-size: .7rem; }
.market-category-nav__links strong { font-size: .76rem; }
.market-category-nav__links small { font-size: .7rem; }
.market-path article small { font-size: .65rem; }
.market-path article span { font-size: .72rem; }
.market-gmark__core strong { font-size: .67rem; }
.market-gmark article small,
.market-readiness article span,
.market-readiness > b span { font-size: .65rem; }
.market-gmark article strong,
.market-readiness article strong { font-size: .8rem; }
.market-gmark article span { font-size: .68rem; }
.market-dossier__tab { font-size: .65rem; }
.market-dossier li > b { font-size: .68rem; }
.market-dossier li strong { font-size: .8rem; }
.market-dossier li small { font-size: .68rem; }
.market-network > div strong { font-size: .82rem; }
.market-network > div small { font-size: .62rem; }
.market-network > span { font-size: .7rem; }
body.certification-detail-page main :is(p,li,td,th) { font-size: .93rem !important; line-height: 1.7; }
body.certification-detail-page main .regulations-column h3 { font-size: .73rem !important; }
body.certification-detail-page main :is(.product-tab,.filter-btn) { font-size: .83rem !important; }
.market-lightbox__caption { font-size: .87rem; }
