{"id":30291,"date":"2026-05-09T05:36:12","date_gmt":"2026-05-09T05:36:12","guid":{"rendered":"https:\/\/www.othellointernational.com\/?page_id=30291"},"modified":"2026-07-21T11:38:11","modified_gmt":"2026-07-21T11:38:11","slug":"gap-analysis","status":"publish","type":"page","link":"https:\/\/www.othellointernational.com\/th\/esg-advisory\/gap-analysis\/","title":{"rendered":"\u0e01\u0e32\u0e23\u0e27\u0e34\u0e40\u0e04\u0e23\u0e32\u0e30\u0e2b\u0e4c\u0e0a\u0e48\u0e2d\u0e07\u0e27\u0e48\u0e32\u0e07\u0e01\u0e32\u0e23\u0e40\u0e1b\u0e34\u0e14\u0e40\u0e1c\u0e22\u0e02\u0e49\u0e2d\u0e21\u0e39\u0e25 ESG"},"content":{"rendered":"\n<!-- ===================================================================\n     OTHELLO INTERNATIONAL \u2014 ESG DISCLOSURE GAP ANALYSIS \u2014 v10\n     URL: \/esg-advisory\/esg-gap-analysis\/\n     PARENT: \/esg-advisory\/ \u00b7 COLUMN 01 \u00b7 ITEM 1.3\n     The diagnostic service \u2014 indicator-by-indicator \u00b7 scored matrix\n     v10 standard \u00b7 FTSE Russell + GRI 2021 + IFRS S1\/S2 + SASB benchmarked\n   =================================================================== -->\n\n<style>.ico{display:inline-block;vertical-align:-.18em;flex:none;color:inherit}.eyebrow .ico{vertical-align:-.16em;margin-right:8px;opacity:.92}\n@import url('https:\/\/fonts.googleapis.com\/css2?family=Poppins:wght@300;400;500;600;700;800;900&family=Fraunces:ital,wght@0,400;0,500;0,600;0,700;1,400;1,500;1,600&family=JetBrains+Mono:wght@400;500;600;700&family=Sarabun:wght@400;500;600&display=swap');\n\n.oth-gap {\n  --black: #000000; --black-soft: #0a0a0a; --black-elev: #141414; --black-card: #1a1a1a; --black-line: #2a2a2a;\n  --red: #ED4036; --red-bright: #FF5046; --red-deep: #C2261C; --red-dark: #8a1a13;\n  --white: #ffffff; --white-soft: rgba(255,255,255,0.78); --white-mute: rgba(255,255,255,0.62);\n  --white-dim: rgba(255,255,255,0.50); --white-line: rgba(255,255,255,0.12);\n  --green: #4ade80; --amber: #fbbf24; --blue: #60a5fa;\n  --gap-met: #4ade80; --gap-partial: #fbbf24; --gap-miss: #ED4036;\n  --font-sans: 'Poppins', -apple-system, sans-serif; --font-display: 'Fraunces', Georgia, serif;\n  --font-mono: 'JetBrains Mono', Menlo, monospace; --font-thai: 'Sarabun', sans-serif;\n  font-family: var(--font-sans); color: var(--white); background: var(--black); line-height: 1.6;\n  font-size: 16px; margin: 0; padding: 0; width: 100%; overflow-x: hidden;\n  scroll-behavior: smooth; scroll-padding-top: 76px;\n}\n.oth-gap *, .oth-gap *::before, .oth-gap *::after { box-sizing: border-box; }\n.oth-gap .wrap { max-width: 1320px; margin: 0 auto; padding: 0 40px; }\n.oth-gap a:focus-visible, .oth-gap button:focus-visible, .oth-gap summary:focus-visible { outline: 2px solid var(--red-bright); outline-offset: 3px; border-radius: 2px; }\n.oth-gap .faq summary:focus-visible { outline-offset: -2px; }\n\n\/* v10 progress + nav + fab *\/\n.oth-gap .reading-progress { position: fixed; top: 0; left: 0; width: 100%; height: 3px; background: rgba(0,0,0,0.4); z-index: 9999; pointer-events: none; }\n.oth-gap .reading-progress-fill { height: 100%; width: 0%; background: linear-gradient(90deg, var(--red), var(--red-bright)); transition: width 0.1s ease-out; box-shadow: 0 0 12px rgba(255,80,70,0.6); }\n.oth-gap .section-nav { position: fixed; top: 12px; left: 50%; transform: translateX(-50%) translateY(-110%); z-index: 9000; opacity: 0; transition: opacity 0.3s, transform 0.4s cubic-bezier(0.16,1,0.3,1); background: rgba(10,10,10,0.85); -webkit-backdrop-filter: blur(20px); backdrop-filter: blur(20px); border: 1px solid rgba(255,255,255,0.08); border-radius: 100px; padding: 6px; display: flex; align-items: center; gap: 4px; max-width: calc(100vw - 24px); box-shadow: 0 12px 40px rgba(0,0,0,0.5); }\n.oth-gap .section-nav.visible { opacity: 1; transform: translateX(-50%) translateY(0); }\n.oth-gap .section-nav .sn-item { display: inline-flex; align-items: center; gap: 6px; font-family: var(--font-mono); font-size: 10.5px; font-weight: 500; letter-spacing: 0.06em; color: var(--white-soft); text-transform: uppercase; padding: 8px 14px; border-radius: 100px; text-decoration: none; transition: all 0.2s; white-space: nowrap; flex-shrink: 0; }\n.oth-gap .section-nav .sn-item:hover { color: var(--white); background: rgba(255,255,255,0.06); }\n.oth-gap .section-nav .sn-item.active { color: var(--white); background: var(--red); box-shadow: 0 4px 12px rgba(237,64,54,0.4); }\n.oth-gap .section-nav .sn-cta { background: var(--red); color: var(--white); }\n.oth-gap .section-nav .sn-cta:hover { background: var(--red-bright); }\n.oth-gap .floating-cta { position: fixed; bottom: 16px; right: 16px; z-index: 9500; display: none; align-items: center; gap: 8px; background: var(--red); color: var(--white); padding: 14px 18px; border-radius: 100px; font-family: var(--font-sans); font-size: 13px; font-weight: 600; letter-spacing: 0.04em; text-transform: uppercase; text-decoration: none; box-shadow: 0 10px 30px rgba(237,64,54,0.5), 0 4px 12px rgba(0,0,0,0.3); opacity: 0; transform: translateY(80px); transition: opacity 0.3s, transform 0.4s cubic-bezier(0.16,1,0.3,1), background 0.2s; }\n.oth-gap .floating-cta.visible { opacity: 1; transform: translateY(0); }\n.oth-gap .floating-cta:hover { background: var(--red-bright); }\n.oth-gap .floating-cta svg { width: 16px; height: 16px; stroke: currentColor; fill: none; stroke-width: 2.5; }\n\n\/* status + breadcrumb *\/\n.oth-gap .status-strip { background: var(--black-soft); border-bottom: 1px solid var(--black-line); padding: 12px 0; font-family: var(--font-mono); font-size: 11px; letter-spacing: 0.12em; text-transform: uppercase; color: var(--white-mute); }\n.oth-gap .status-row { display: flex; align-items: center; justify-content: space-between; gap: 24px; flex-wrap: wrap; }\n.oth-gap .status-row .left { display: flex; align-items: center; gap: 12px; }\n.oth-gap .status-dot { width: 8px; height: 8px; background: var(--red); border-radius: 50%; animation: gap-pulse 2s ease-in-out infinite; }\n@keyframes gap-pulse { 0%, 100% { box-shadow: 0 0 0 0 rgba(237,64,54,0.6); } 50% { box-shadow: 0 0 0 8px rgba(237,64,54,0); } }\n.oth-gap .status-row .right { color: var(--white-dim); }\n.oth-gap .status-row .right b { color: var(--white); font-weight: 500; }\n.oth-gap .breadcrumb { padding: 18px 0 0 0; font-family: var(--font-mono); font-size: 11px; letter-spacing: 0.08em; color: var(--white-dim); }\n.oth-gap .breadcrumb a { color: var(--white-mute); text-decoration: none; transition: color 0.2s; }\n.oth-gap .breadcrumb a:hover { color: var(--red); }\n.oth-gap .breadcrumb .sep { margin: 0 10px; color: var(--red); }\n.oth-gap .breadcrumb .current { color: var(--white); }\n\n\/* hero *\/\n.oth-gap .hero { position: relative; padding: 56px 0 100px 0; background: var(--black); overflow: hidden; }\n.oth-gap .hero::before { content: \"\"; position: absolute; inset: 0; background: radial-gradient(ellipse 1200px 700px at 85% 25%, rgba(237,64,54,0.16), transparent 60%), radial-gradient(ellipse 700px 500px at 15% 80%, rgba(237,64,54,0.06), transparent 60%); pointer-events: none; }\n.oth-gap .hero::after { content: \"\"; position: absolute; inset: 0; background-image: linear-gradient(rgba(255,255,255,0.025) 1px, transparent 1px), linear-gradient(90deg, rgba(255,255,255,0.025) 1px, transparent 1px); background-size: 64px 64px; pointer-events: none; mask-image: radial-gradient(ellipse 1400px 800px at 50% 30%, black, transparent 75%); -webkit-mask-image: radial-gradient(ellipse 1400px 800px at 50% 30%, black, transparent 75%); }\n.oth-gap .hero-grid { position: relative; z-index: 2; display: grid; grid-template-columns: minmax(0, 1.45fr) minmax(0, 1fr); gap: 64px; align-items: center; margin-top: 48px; }\n.oth-gap .hero-tag { display: inline-flex; align-items: center; gap: 12px; padding: 10px 18px; background: rgba(237,64,54,0.10); border: 1px solid rgba(237,64,54,0.30); border-radius: 100px; font-family: var(--font-mono); font-size: 11px; letter-spacing: 0.16em; text-transform: uppercase; color: var(--red-bright); margin-bottom: 30px; font-weight: 500; }\n.oth-gap .hero h1 { font-size: clamp(30px, 5.2vw, 72px); line-height: 1.05; font-weight: 700; letter-spacing: -0.025em; margin: 0 0 26px 0; color: var(--white); }\n.oth-gap .hero h1 .display { font-family: var(--font-display); font-style: italic; font-weight: 400; color: var(--red); }\n.oth-gap .accent-bar { width: 64px; height: 4px; background: var(--red); margin: 28px 0; position: relative; overflow: hidden; }\n.oth-gap .accent-bar::after { content: \"\"; position: absolute; inset: 0; background: linear-gradient(90deg, transparent, rgba(255,255,255,0.4), transparent); animation: gap-shimmer 3s ease-in-out infinite; }\n@keyframes gap-shimmer { 0%, 100% { transform: translateX(-100%); } 50% { transform: translateX(100%); } }\n.oth-gap .hero .lead { font-size: 18px; line-height: 1.7; color: var(--white-soft); margin: 0 0 36px 0; max-width: 60ch; }\n.oth-gap .hero .lead strong { color: var(--white); font-weight: 600; }\n.oth-gap .hero .lead a { color: var(--red); text-decoration: none; border-bottom: 1px solid rgba(237,64,54,0.4); transition: border-color 0.2s; }\n.oth-gap .hero .lead a:hover { border-color: var(--red); }\n.oth-gap .hero .lead .thai { font-family: var(--font-thai); color: var(--red-bright); font-weight: 500; }\n.oth-gap .hero-stats { display: grid; grid-template-columns: repeat(4, 1fr); gap: 1px; background: var(--black-line); border: 1px solid var(--black-line); margin-bottom: 36px; }\n.oth-gap .hero-stat { background: var(--black-soft); padding: 22px 20px; transition: background 0.25s; }\n.oth-gap .hero-stat:hover { background: #161616; }\n.oth-gap .hero-stat .lbl { font-family: var(--font-mono); font-size: 10px; letter-spacing: 0.12em; text-transform: uppercase; color: var(--red); margin-bottom: 8px; font-weight: 600; }\n.oth-gap .hero-stat .val { font-size: 20px; font-weight: 700; color: var(--white); line-height: 1.2; letter-spacing: -0.01em; }\n.oth-gap .hero-stat .sub { font-size: 11px; color: var(--white-mute); margin-top: 4px; }\n.oth-gap .ctas { display: flex; gap: 14px; flex-wrap: wrap; }\n.oth-gap .btn { display: inline-flex; align-items: center; gap: 12px; padding: 18px 32px; font-family: var(--font-sans); font-size: 13px; font-weight: 600; letter-spacing: 0.06em; text-transform: uppercase; text-decoration: none; border-radius: 4px; transition: all 0.25s ease; cursor: pointer; border: 2px solid; min-height: 56px; }\n.oth-gap .btn-primary { background: var(--red); color: var(--white); border-color: var(--red); }\n.oth-gap .btn-primary:hover { background: var(--red-bright); border-color: var(--red-bright); transform: translateY(-2px); box-shadow: 0 12px 32px rgba(237,64,54,0.35); }\n.oth-gap .btn-outline { background: transparent; color: var(--white); border-color: var(--white-line); }\n.oth-gap .btn-outline:hover { background: var(--white); color: var(--black); border-color: var(--white); }\n.oth-gap .btn svg { width: 16px; height: 16px; stroke: currentColor; fill: none; stroke-width: 2; stroke-linecap: round; stroke-linejoin: round; }\n.oth-gap .hero-card { background: linear-gradient(135deg, var(--black-card) 0%, var(--black-soft) 100%); border: 1px solid var(--black-line); padding: 36px 32px; position: relative; overflow: hidden; }\n.oth-gap .hero-card::before { content: \"\"; position: absolute; top: 0; left: 0; width: 4px; height: 100%; background: var(--red); }\n.oth-gap .hero-card-label { font-family: var(--font-mono); font-size: 10px; letter-spacing: 0.16em; text-transform: uppercase; color: var(--red); margin-bottom: 20px; display: flex; align-items: center; gap: 8px; position: relative; z-index: 2; }\n.oth-gap .hero-card-label::before { content: \"\u25cf\"; color: var(--red); }\n.oth-gap .hero-card .display-num { font-family: var(--font-display); font-size: clamp(54px, 7vw, 88px); line-height: 0.95; font-weight: 600; letter-spacing: -0.04em; color: var(--white); margin-bottom: 4px; position: relative; z-index: 2; }\n.oth-gap .hero-card .display-num .red { color: var(--red); font-style: italic; }\n.oth-gap .hero-card .display-sub { font-family: var(--font-mono); font-size: 11px; letter-spacing: 0.12em; color: var(--white-mute); text-transform: uppercase; margin-bottom: 22px; position: relative; z-index: 2; }\n.oth-gap .hero-card-body { font-size: 14px; line-height: 1.65; color: var(--white-soft); margin-bottom: 22px; position: relative; z-index: 2; }\n.oth-gap .hero-card-body strong { color: var(--white); font-weight: 600; }\n.oth-gap .hero-card-stack { position: relative; z-index: 2; display: grid; gap: 10px; padding-top: 18px; border-top: 1px solid var(--black-line); }\n.oth-gap .hero-card-row { display: flex; justify-content: space-between; align-items: center; gap: 12px; font-size: 13px; }\n.oth-gap .hero-card-row .k { color: var(--white-mute); font-family: var(--font-mono); font-size: 10px; letter-spacing: 0.08em; text-transform: uppercase; }\n.oth-gap .hero-card-row .v { color: var(--white); font-weight: 600; font-size: 12.5px; text-align: right; }\n\n\/* section base *\/\n.oth-gap section.block { padding: 120px 0; background: var(--black); position: relative; }\n.oth-gap section.block.alt { background: var(--black-soft); }\n.oth-gap .section-head { margin-bottom: 64px; max-width: 920px; }\n.oth-gap .section-head.center { text-align: center; margin-left: auto; margin-right: auto; }\n.oth-gap .eyebrow { display: inline-flex; align-items: center; gap: 12px; font-family: var(--font-mono); font-size: 11px; font-weight: 500; letter-spacing: 0.18em; text-transform: uppercase; color: var(--red); margin-bottom: 22px; }\n.oth-gap .eyebrow::before { content: \"\"; width: 36px; height: 1px; background: var(--red); }\n.oth-gap .section-head h2 { font-size: clamp(28px, 4.4vw, 56px); line-height: 1.08; font-weight: 700; letter-spacing: -0.02em; margin: 0 0 22px 0; color: var(--white); }\n.oth-gap .section-head h2 .display { font-family: var(--font-display); font-style: italic; font-weight: 400; color: var(--red); }\n.oth-gap .section-head .subtitle { font-size: 17px; color: var(--white-soft); max-width: 68ch; line-height: 1.65; }\n.oth-gap .section-head .subtitle a { color: var(--red); text-decoration: none; border-bottom: 1px solid rgba(237,64,54,0.4); transition: border-color 0.2s; }\n.oth-gap .section-head .subtitle a:hover { border-color: var(--red); }\n.oth-gap .section-head.center .subtitle { margin-left: auto; margin-right: auto; }\n\n\/* ===== MATRIX PREVIEW (key differentiator) ===== *\/\n.oth-gap .matrix-wrap { background: var(--black-card); border: 1px solid var(--black-line); overflow: hidden; position: relative; }\n.oth-gap .matrix-header { background: var(--black); padding: 22px 28px; border-bottom: 1px solid var(--black-line); display: grid; grid-template-columns: 100px minmax(0, 2fr) 90px minmax(0, 1.5fr) 80px; gap: 18px; align-items: center; }\n.oth-gap .matrix-header .mh-col { font-family: var(--font-mono); font-size: 10.5px; font-weight: 600; letter-spacing: 0.14em; text-transform: uppercase; color: var(--red); }\n.oth-gap .matrix-row { padding: 18px 28px; border-bottom: 1px solid var(--black-line); display: grid; grid-template-columns: 100px minmax(0, 2fr) 90px minmax(0, 1.5fr) 80px; gap: 18px; align-items: center; transition: background 0.2s; }\n.oth-gap .matrix-row:last-child { border-bottom: none; }\n.oth-gap .matrix-row:hover { background: #1f1f1f; }\n.oth-gap .mr-code { font-family: var(--font-mono); font-size: 12px; font-weight: 700; color: var(--red); letter-spacing: 0.04em; }\n.oth-gap .mr-indicator { font-size: 13px; color: var(--white); font-weight: 500; line-height: 1.45; }\n.oth-gap .mr-indicator .lbl { display: block; font-family: var(--font-mono); font-size: 9.5px; color: var(--white-mute); margin-top: 4px; letter-spacing: 0.06em; text-transform: uppercase; font-weight: 400; }\n.oth-gap .mr-status { display: inline-flex; align-items: center; gap: 8px; font-family: var(--font-mono); font-size: 11px; font-weight: 600; letter-spacing: 0.04em; text-transform: uppercase; padding: 5px 10px; border-radius: 4px; border: 1px solid; white-space: nowrap; width: fit-content; }\n.oth-gap .mr-status .dot { width: 7px; height: 7px; border-radius: 50%; display: inline-block; }\n.oth-gap .mr-status.met { color: var(--gap-met); border-color: rgba(74,222,128,0.4); background: rgba(74,222,128,0.10); }\n.oth-gap .mr-status.met .dot { background: var(--gap-met); }\n.oth-gap .mr-status.partial { color: var(--gap-partial); border-color: rgba(251,191,36,0.4); background: rgba(251,191,36,0.10); }\n.oth-gap .mr-status.partial .dot { background: var(--gap-partial); }\n.oth-gap .mr-status.miss { color: var(--gap-miss); border-color: rgba(237,64,54,0.5); background: rgba(237,64,54,0.10); }\n.oth-gap .mr-status.miss .dot { background: var(--gap-miss); animation: gap-pulse 2s ease-in-out infinite; }\n.oth-gap .mr-frameworks { display: flex; flex-wrap: wrap; gap: 4px; }\n.oth-gap .mr-frameworks .fw-tag { font-family: var(--font-mono); font-size: 9.5px; color: var(--white-soft); background: var(--black-soft); border: 1px solid var(--black-line); padding: 3px 7px; border-radius: 3px; font-weight: 500; }\n.oth-gap .mr-priority { font-family: var(--font-mono); font-size: 9.5px; font-weight: 700; letter-spacing: 0.10em; text-transform: uppercase; padding: 4px 8px; border-radius: 3px; text-align: center; width: fit-content; }\n.oth-gap .mr-priority.high { color: var(--white); background: var(--red); }\n.oth-gap .mr-priority.med { color: var(--amber); background: rgba(251,191,36,0.10); border: 1px solid rgba(251,191,36,0.3); }\n.oth-gap .mr-priority.low { color: var(--white-mute); background: var(--black-soft); border: 1px solid var(--black-line); }\n\n.oth-gap .matrix-summary { background: var(--black-soft); padding: 24px 28px; border-top: 2px solid var(--red); display: grid; grid-template-columns: repeat(4, 1fr); gap: 28px; }\n.oth-gap .ms-stat .ms-label { font-family: var(--font-mono); font-size: 10px; letter-spacing: 0.14em; text-transform: uppercase; color: var(--white-mute); margin-bottom: 8px; font-weight: 600; }\n.oth-gap .ms-stat .ms-value { font-family: var(--font-display); font-size: 28px; font-weight: 600; line-height: 1; letter-spacing: -0.02em; }\n.oth-gap .ms-stat .ms-value.met { color: var(--gap-met); }\n.oth-gap .ms-stat .ms-value.partial { color: var(--gap-partial); }\n.oth-gap .ms-stat .ms-value.miss { color: var(--gap-miss); }\n.oth-gap .ms-stat .ms-value.band { color: var(--white); font-style: italic; }\n.oth-gap .ms-stat .ms-sub { font-size: 11px; color: var(--white-mute); margin-top: 4px; }\n.oth-gap .matrix-note { padding: 18px 28px; background: var(--black); font-family: var(--font-mono); font-size: 10.5px; color: var(--white-mute); letter-spacing: 0.04em; border-top: 1px solid var(--black-line); line-height: 1.55; }\n.oth-gap .matrix-note b { color: var(--red); }\n\n\/* 4 frameworks assessed *\/\n.oth-gap .fw-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 16px; }\n.oth-gap .fw-card { background: var(--black-card); border: 1px solid var(--black-line); padding: 30px 26px; position: relative; transition: all 0.3s; overflow: hidden; display: flex; flex-direction: column; }\n.oth-gap .fw-card:hover { background: #1f1f1f; transform: translateY(-3px); border-color: rgba(237,64,54,0.4); }\n.oth-gap .fw-card::before { content: \"\"; position: absolute; top: 0; left: 0; width: 36px; height: 2px; background: var(--red); transition: width 0.3s; }\n.oth-gap .fw-card:hover::before { width: 100%; }\n.oth-gap .fw-card .fc-num { font-family: var(--font-mono); font-size: 10px; color: var(--red); letter-spacing: 0.16em; font-weight: 600; margin-bottom: 12px; }\n.oth-gap .fw-card .fc-name { font-family: var(--font-display); font-size: 24px; font-weight: 600; color: var(--white); margin: 0 0 6px 0; letter-spacing: -0.01em; line-height: 1.15; }\n.oth-gap .fw-card .fc-full { font-size: 11px; color: var(--white-mute); font-family: var(--font-mono); margin-bottom: 16px; line-height: 1.4; }\n.oth-gap .fw-card .fc-count { font-family: var(--font-display); font-style: italic; font-size: 36px; line-height: 1; font-weight: 600; color: var(--red); margin-bottom: 4px; letter-spacing: -0.02em; }\n.oth-gap .fw-card .fc-count-lbl { font-family: var(--font-mono); font-size: 10px; letter-spacing: 0.10em; text-transform: uppercase; color: var(--white-mute); margin-bottom: 14px; font-weight: 600; }\n.oth-gap .fw-card .fc-role { font-size: 13px; color: var(--white-soft); line-height: 1.55; margin-bottom: 14px; flex: 1; }\n.oth-gap .fw-card .fc-role b { color: var(--white); font-weight: 600; }\n.oth-gap .fw-card .fc-method { font-family: var(--font-mono); font-size: 9.5px; letter-spacing: 0.08em; color: var(--red); border-top: 1px solid var(--black-line); padding-top: 10px; line-height: 1.5; }\n.oth-gap .fw-card .fc-method b { color: var(--white); }\n<\/style>\n\n<div class=\"oth-gap\" id=\"oth-gap-top\">\n\n  <!-- v10 reading progress + section nav -->\n  <div class=\"reading-progress\" role=\"presentation\" aria-hidden=\"true\"><div class=\"reading-progress-fill\" id=\"ohReadingProgress\"><\/div><\/div>\n  <nav class=\"section-nav\" id=\"ohSectionNav\" aria-label=\"Jump to section\">\n    <a href=\"#matrix\" class=\"sn-item\" data-section=\"matrix\">The Matrix<\/a>\n    <a href=\"#frameworks\" class=\"sn-item\" data-section=\"frameworks\">4 Frameworks<\/a>\n    <a href=\"#process\" class=\"sn-item\" data-section=\"process\">6 Phases<\/a>\n    <a href=\"#bench\" class=\"sn-item\" data-section=\"bench\">The Bench<\/a>\n    <a href=\"#deliverables\" class=\"sn-item\" data-section=\"deliverables\">Deliverables<\/a>\n    <a href=\"#tiers\" class=\"sn-item\" data-section=\"tiers\">3 Tiers<\/a>\n    <a href=\"#use-cases\" class=\"sn-item\" data-section=\"use-cases\">Use Cases<\/a>\n    <a href=\"#faqs\" class=\"sn-item\" data-section=\"faqs\">FAQs<\/a>\n    <a href=\"#contact\" class=\"sn-item sn-cta\">Request Diagnostic<\/a>\n  <\/nav>\n\n  <!-- STATUS STRIP -->\n  <div class=\"status-strip\">\n    <div class=\"wrap\">\n      <div class=\"status-row\">\n        <div class=\"left\"><span class=\"status-dot\" aria-hidden=\"true\"><\/span><span>ESG ADVISORY \u00b7 1.3 \u00b7 ESG DISCLOSURE GAP ANALYSIS \u00b7 DIAGNOSTIC SERVICE<\/span><\/div>\n        <div class=\"right\">300+ indicators <span style=\"color:var(--red);\">\u00b7<\/span> <b>scored matrix output<\/b> <span style=\"color:var(--red);\">\u00b7<\/span> FTSE band estimated<\/div>\n      <\/div>\n    <\/div>\n  <\/div>\n\n  <!-- HERO -->\n  <section class=\"hero\" id=\"hero\">\n    <div class=\"wrap\">\n      <div class=\"breadcrumb\">\n        <a href=\"\/\">Home<\/a><span class=\"sep\">\/<\/span><a href=\"\/esg-advisory\/\">ESG Advisory<\/a><span class=\"sep\">\/<\/span><span class=\"current\">ESG Disclosure Gap Analysis<\/span>\n      <\/div>\n      <div class=\"hero-grid\">\n        <div class=\"hero-left\">\n          <div class=\"hero-tag\">\u2605 DIAGNOSTIC SERVICE \u00b7 COLUMN 01 \u00b7 1.3<\/div>\n          <h1>\n            300+ indicators.<br>\n            <span class=\"display\">One scored matrix.<\/span><br>\n            Before remediation.\n          <\/h1>\n          <div class=\"accent-bar\" aria-hidden=\"true\"><\/div>\n          <p class=\"lead\">\n            The diagnostic that comes before everything else. <strong>Indicator-by-indicator assessment<\/strong> of the company&#8217;s current sustainability disclosure against FTSE Russell methodology, GRI 2021, IFRS S1 + S2, and SASB \u2014 calibrated to the company&#8217;s ICB sector. Output: a scored gap matrix, an estimated current FTSE band, and a prioritised remediation plan. Commission this before you commit budget to <a href=\"\/esg-advisory\/bilingual-sustainability-reporting\/\">full bilingual reporting<\/a> or <a href=\"\/esg-advisory\/disclosure-remediation\/\">disclosure remediation<\/a>. <span class=\"thai\">\u0e01\u0e32\u0e23\u0e27\u0e34\u0e40\u0e04\u0e23\u0e32\u0e30\u0e2b\u0e4c\u0e0a\u0e48\u0e2d\u0e07\u0e27\u0e48\u0e32\u0e07<\/span>\n          <\/p>\n          <div class=\"hero-stats\">\n            <div class=\"hero-stat\"><div class=\"lbl\">FTSE indicators<\/div><div class=\"val\">300+ \u00b7 14 themes<\/div><div class=\"sub\">~125 sector-averaged per company<\/div><\/div>\n            <div class=\"hero-stat\"><div class=\"lbl\">Frameworks benchmarked<\/div><div class=\"val\">4 simultaneously<\/div><div class=\"sub\">FTSE \u00b7 GRI \u00b7 IFRS S1\/S2 \u00b7 SASB<\/div><\/div>\n            <div class=\"hero-stat\"><div class=\"lbl\">Output<\/div><div class=\"val\">Scored matrix<\/div><div class=\"sub\">+ estimated FTSE band<\/div><\/div>\n            <div class=\"hero-stat\"><div class=\"lbl\">Standard turnaround<\/div><div class=\"val\">4\u20136 weeks<\/div><div class=\"sub\">quick-look 1\u20132 weeks available<\/div><\/div>\n          <\/div>\n          <div class=\"ctas\">\n            <a href=\"#contact\" class=\"btn btn-primary\">\n              <svg aria-hidden=\"true\" viewBox=\"0 0 24 24\"><line x1=\"22\" y1=\"2\" x2=\"11\" y2=\"13\"\/><polygon points=\"22 2 15 22 11 13 2 9 22 2\"\/><\/svg>\n              Request Diagnostic\n            <\/a>\n            <a href=\"#matrix\" class=\"btn btn-outline\">\n              <svg aria-hidden=\"true\" viewBox=\"0 0 24 24\"><line x1=\"5\" y1=\"12\" x2=\"19\" y2=\"12\"\/><polyline points=\"12 5 19 12 12 19\"\/><\/svg>\n              See Sample Matrix Output\n            <\/a>\n          <\/div>\n        <\/div>\n        <div class=\"hero-right\">\n          <div class=\"hero-card\">\n            <div class=\"hero-card-label\">THE OUTPUT IS QUANTITATIVE<\/div>\n            <div class=\"display-num\">3<span class=\"red\">\u00d7<\/span><\/div>\n            <div class=\"display-sub\">colour-coded states \u00b7 indicator-level scoring<\/div>\n            <div class=\"hero-card-body\">\n              Each FTSE Russell indicator applicable to the company&#8217;s ICB sector is assessed against current public disclosure and scored as <strong style=\"color: var(--gap-met);\">Met<\/strong>, <strong style=\"color: var(--gap-partial);\">Partial<\/strong>, or <strong style=\"color: var(--gap-miss);\">Gap<\/strong>. The matrix output shows the company&#8217;s current FTSE band, cross-framework alignments, and prioritised gap-fill recommendations with effort estimates.\n            <\/div>\n            <div class=\"hero-card-stack\">\n              <div class=\"hero-card-row\"><span class=\"k\">Method<\/span><span class=\"v\">FTSE Russell v3.5<\/span><\/div>\n              <div class=\"hero-card-row\"><span class=\"k\">Sector<\/span><span class=\"v\">ICB-calibrated<\/span><\/div>\n              <div class=\"hero-card-row\"><span class=\"k\">Format<\/span><span class=\"v\">Excel + PDF + summary<\/span><\/div>\n              <div class=\"hero-card-row\"><span class=\"k\">NDA<\/span><span class=\"v\">From first email<\/span><\/div>\n              <div class=\"hero-card-row\"><span class=\"k\">Quote turnaround<\/span><span class=\"v\">1 business hour<\/span><\/div>\n            <\/div>\n          <\/div>\n        <\/div>\n      <\/div>\n    <\/div>\n  <\/section>\n\n  <!-- THE MATRIX (sample output preview) -->\n  <section class=\"block alt\" id=\"matrix\">\n    <div class=\"wrap\">\n      <div class=\"section-head\">\n        <div class=\"eyebrow\"><svg class=\"ico\" width=\"13\" height=\"13\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" aria-hidden=\"true\" focusable=\"false\"><path d=\"M3.85 8.62a4 4 0 0 1 4.78-4.77 4 4 0 0 1 6.74 0 4 4 0 0 1 4.78 4.78 4 4 0 0 1 0 6.74 4 4 0 0 1-4.77 4.78 4 4 0 0 1-6.75 0 4 4 0 0 1-4.78-4.77 4 4 0 0 1 0-6.76Z\" \/> <path d=\"m9 12 2 2 4-4\" \/><\/svg>The Output<\/div>\n        <h2>What a gap matrix <span class=\"display\">actually looks like.<\/span><\/h2>\n        <p class=\"subtitle\">The diagnostic deliverable is a forensic document \u2014 not a marketing artefact. Below is a representative excerpt showing six rows from an actual matrix structure: indicator code, indicator language, current state, framework cross-references, remediation priority. The full matrix runs to ~125 rows for an average ICB sector, ~300 rows for energy and industrials. Cross-framework mapping is built in line; estimated current FTSE band is summarised at the bottom.<\/p>\n      <\/div>\n\n      <div class=\"matrix-wrap\">\n        <div class=\"matrix-header\">\n          <div class=\"mh-col\">INDICATOR<\/div>\n          <div class=\"mh-col\">DISCLOSURE LANGUAGE<\/div>\n          <div class=\"mh-col\">CURRENT<\/div>\n          <div class=\"mh-col\">FRAMEWORKS<\/div>\n          <div class=\"mh-col\">PRIORITY<\/div>\n        <\/div>\n\n        <div class=\"matrix-row\">\n          <div class=\"mr-code\">E.01.04<\/div>\n          <div class=\"mr-indicator\">GHG emissions targets aligned with science-based methodology<span class=\"lbl\">CLIMATE CHANGE \u00b7 SCOPE 1 + 2 + 3<\/span><\/div>\n          <div><span class=\"mr-status partial\"><span class=\"dot\"><\/span> Partial<\/span><\/div>\n          <div class=\"mr-frameworks\"><span class=\"fw-tag\">FTSE<\/span><span class=\"fw-tag\">CDP<\/span><span class=\"fw-tag\">IFRS S2<\/span><span class=\"fw-tag\">SBTi<\/span><\/div>\n          <div><span class=\"mr-priority high\">High<\/span><\/div>\n        <\/div>\n\n        <div class=\"matrix-row\">\n          <div class=\"mr-code\">E.02.07<\/div>\n          <div class=\"mr-indicator\">Water consumption disclosed with intensity ratio and stressed-basin breakdown<span class=\"lbl\">WATER SECURITY \u00b7 LOCATION-SPECIFIC<\/span><\/div>\n          <div><span class=\"mr-status met\"><span class=\"dot\"><\/span> Met<\/span><\/div>\n          <div class=\"mr-frameworks\"><span class=\"fw-tag\">FTSE<\/span><span class=\"fw-tag\">CDP<\/span><span class=\"fw-tag\">GRI 303<\/span><\/div>\n          <div><span class=\"mr-priority low\">Low<\/span><\/div>\n        <\/div>\n\n        <div class=\"matrix-row\">\n          <div class=\"mr-code\">S.03.02<\/div>\n          <div class=\"mr-indicator\">Human rights due diligence policy and process disclosed across operations<span class=\"lbl\">HUMAN RIGHTS \u00b7 UNGP-ALIGNED<\/span><\/div>\n          <div><span class=\"mr-status miss\"><span class=\"dot\"><\/span> Gap<\/span><\/div>\n          <div class=\"mr-frameworks\"><span class=\"fw-tag\">FTSE<\/span><span class=\"fw-tag\">GRI 411<\/span><span class=\"fw-tag\">UN GP<\/span><\/div>\n          <div><span class=\"mr-priority high\">High<\/span><\/div>\n        <\/div>\n\n        <div class=\"matrix-row\">\n          <div class=\"mr-code\">S.04.05<\/div>\n          <div class=\"mr-indicator\">Employee training hours per employee with breakdown by gender and category<span class=\"lbl\">LABOUR STANDARDS \u00b7 DIVERSITY METRICS<\/span><\/div>\n          <div><span class=\"mr-status partial\"><span class=\"dot\"><\/span> Partial<\/span><\/div>\n          <div class=\"mr-frameworks\"><span class=\"fw-tag\">FTSE<\/span><span class=\"fw-tag\">GRI 404<\/span><span class=\"fw-tag\">SASB<\/span><\/div>\n          <div><span class=\"mr-priority med\">Med<\/span><\/div>\n        <\/div>\n\n        <div class=\"matrix-row\">\n          <div class=\"mr-code\">G.01.06<\/div>\n          <div class=\"mr-indicator\">Anti-corruption training with completion rate disclosed by personnel category<span class=\"lbl\">ANTI-CORRUPTION \u00b7 CAC-ALIGNED<\/span><\/div>\n          <div><span class=\"mr-status met\"><span class=\"dot\"><\/span> Met<\/span><\/div>\n          <div class=\"mr-frameworks\"><span class=\"fw-tag\">FTSE<\/span><span class=\"fw-tag\">GRI 205<\/span><span class=\"fw-tag\">CAC<\/span><\/div>\n          <div><span class=\"mr-priority low\">Low<\/span><\/div>\n        <\/div>\n\n        <div class=\"matrix-row\">\n          <div class=\"mr-code\">G.04.02<\/div>\n          <div class=\"mr-indicator\">Country-by-country tax transparency disclosed for material jurisdictions<span class=\"lbl\">TAX TRANSPARENCY \u00b7 GRI 207 ALIGNED<\/span><\/div>\n          <div><span class=\"mr-status miss\"><span class=\"dot\"><\/span> Gap<\/span><\/div>\n          <div class=\"mr-frameworks\"><span class=\"fw-tag\">FTSE<\/span><span class=\"fw-tag\">GRI 207<\/span><span class=\"fw-tag\">B-Team<\/span><\/div>\n          <div><span class=\"mr-priority high\">High<\/span><\/div>\n        <\/div>\n\n        <div class=\"matrix-summary\">\n          <div class=\"ms-stat\">\n            <div class=\"ms-label\">DISCLOSED FULLY<\/div>\n            <div class=\"ms-value met\">38<\/div>\n            <div class=\"ms-sub\">of ~125 indicators \u00b7 30%<\/div>\n          <\/div>\n          <div class=\"ms-stat\">\n            <div class=\"ms-label\">PARTIAL DISCLOSURE<\/div>\n            <div class=\"ms-value partial\">52<\/div>\n            <div class=\"ms-sub\">42% \u00b7 remediation eligible<\/div>\n          <\/div>\n          <div class=\"ms-stat\">\n            <div class=\"ms-label\">CURRENT GAPS<\/div>\n            <div class=\"ms-value miss\">35<\/div>\n            <div class=\"ms-sub\">28% \u00b7 prioritised remediation<\/div>\n          <\/div>\n          <div class=\"ms-stat\">\n            <div class=\"ms-label\">ESTIMATED FTSE BAND<\/div>\n            <div class=\"ms-value band\">2.4 \/ 5.0<\/div>\n            <div class=\"ms-sub\">indicative \u00b7 pre-remediation<\/div>\n          <\/div>\n        <\/div>\n\n        <div class=\"matrix-note\">\n          REPRESENTATIVE EXCERPT <b>\u00b7<\/b> Sample structure for illustration. Actual indicator codes follow FTSE Russell ESG Scores Methodology v3.5. Final matrix is delivered in Excel (filterable, sortable by theme\/priority\/status) and PDF (board-ready), with the prioritised remediation plan as an accompanying document.\n        <\/div>\n      <\/div>\n    <\/div>\n  <\/section>\n\n  <!-- 4 FRAMEWORKS BENCHMARKED -->\n  <section class=\"block\" id=\"frameworks\">\n    <div class=\"wrap\">\n      <div class=\"section-head\">\n        <div class=\"eyebrow\"><svg class=\"ico\" width=\"13\" height=\"13\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" aria-hidden=\"true\" focusable=\"false\"><path d=\"M6 22a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h8a2.4 2.4 0 0 1 1.704.706l3.588 3.588A2.4 2.4 0 0 1 20 8v12a2 2 0 0 1-2 2z\" \/> <path d=\"M14 2v5a1 1 0 0 0 1 1h5\" \/> <path d=\"m9 15 2 2 4-4\" \/><\/svg>Methodologies Benchmarked<\/div>\n        <h2>Four frameworks. <span class=\"display\">One indicator-by-indicator pass.<\/span><\/h2>\n        <p class=\"subtitle\">The gap analysis is not a single-framework audit \u2014 it&#8217;s a simultaneous assessment against four major sustainability frameworks. Each company indicator is mapped to FTSE Russell, GRI 2021, IFRS S1\/S2, and SASB sector standards. This means the diagnostic output is usable across rating-agency engagement (FTSE, MSCI, DJSI, Sustainalytics, CDP) and regulatory disclosure (Thai SEC, IFRS Roadmap, EU CSRD-equivalent).<\/p>\n      <\/div>\n      <div class=\"fw-grid\">\n        <div class=\"fw-card\">\n          <div class=\"fc-num\">FW.01 \u00b7 RATING<\/div>\n          <div class=\"fc-name\">FTSE Russell<\/div>\n          <div class=\"fc-full\">LSEG ESG Scores Methodology v3.5<\/div>\n          <div class=\"fc-count\">300+<\/div>\n          <div class=\"fc-count-lbl\">INDICATORS \u00b7 14 THEMES<\/div>\n          <p class=\"fc-role\">The 2026 SET ESG methodology. Public-disclosure scoring across <b>14 themes (E\u00b7S\u00b7G) with sector-specific weights<\/b> via ICB classification. ~125 indicators averaged per company sector.<\/p>\n          <div class=\"fc-method\">METHOD <b>\u00b7<\/b> ICB sector-weighted indicator pass<\/div>\n        <\/div>\n        <div class=\"fw-card\">\n          <div class=\"fc-num\">FW.02 \u00b7 DISCLOSURE<\/div>\n          <div class=\"fc-name\">GRI 2021<\/div>\n          <div class=\"fc-full\">Global Reporting Initiative Universal + Sector<\/div>\n          <div class=\"fc-count\">200+<\/div>\n          <div class=\"fc-count-lbl\">UNIVERSAL + SECTOR STANDARDS<\/div>\n          <p class=\"fc-role\">GRI Universal Standards (101 \/ 2 \/ 3) <b>+ applicable sector standards<\/b> (Oil &amp; Gas GRI 11, Coal GRI 12, Agriculture &amp; Aquaculture GRI 13). Assessed by in-house GRI 2021 Certified Trainer.<\/p>\n          <div class=\"fc-method\">METHOD <b>\u00b7<\/b> Topic-by-disclosure mapping<\/div>\n        <\/div>\n        <div class=\"fw-card\">\n          <div class=\"fc-num\">FW.03 \u00b7 MANDATE<\/div>\n          <div class=\"fc-name\">IFRS S1 + S2<\/div>\n          <div class=\"fc-full\">ISSB Sustainability Disclosure Standards<\/div>\n          <div class=\"fc-count\">100+<\/div>\n          <div class=\"fc-count-lbl\">REQUIRED + MATERIAL DISCLOSURES<\/div>\n          <p class=\"fc-role\">IFRS S1 general sustainability + IFRS S2 climate-related. Becoming Thai SEC mandate. <b>\u00a722 climate resilience + \u00a722(a)(b) scenario analysis<\/b> coverage flagged in matrix. Assessed by IFRS Foundation-certified specialist.<\/p>\n          <div class=\"fc-method\">METHOD <b>\u00b7<\/b> \u00a7-by-\u00a7 requirement coverage<\/div>\n        <\/div>\n        <div class=\"fw-card\">\n          <div class=\"fc-num\">FW.04 \u00b7 DISCLOSURE<\/div>\n          <div class=\"fc-name\">SASB<\/div>\n          <div class=\"fc-full\">Industry Standards \u2014 Financial Materiality<\/div>\n          <div class=\"fc-count\">~30<\/div>\n          <div class=\"fc-count-lbl\">METRICS PER INDUSTRY<\/div>\n          <p class=\"fc-role\">SASB Industry Standards \u2014 ISSB integrated. Identifies <b>financial-materiality KPIs for the company&#8217;s specific SASB industry<\/b>. Useful for investor-grade scoring under MSCI ESG Ratings methodology.<\/p>\n          <div class=\"fc-method\">METHOD <b>\u00b7<\/b> Sector-metric coverage check<\/div>\n        <\/div>\n      <\/div>\n    <\/div>\n  <\/section>\n\n<style>\n\/* PART 2 CSS *\/\n\/* 6-phase process *\/\n.oth-gap .process { display: grid; grid-template-columns: repeat(3, 1fr); gap: 16px; position: relative; }\n.oth-gap .proc-step { background: var(--black-card); border: 1px solid var(--black-line); padding: 30px 26px; position: relative; transition: all 0.3s; }\n.oth-gap .proc-step::before { content: \"\"; position: absolute; top: 0; left: 0; width: 100%; height: 3px; background: var(--red); }\n.oth-gap .proc-step:hover { background: #1f1f1f; transform: translateY(-3px); }\n.oth-gap .proc-circle { width: 52px; height: 52px; background: var(--red); border: 4px solid var(--black); border-radius: 50%; display: flex; align-items: center; justify-content: center; font-family: var(--font-display); font-style: italic; font-size: 20px; font-weight: 600; color: var(--white); margin: -30px 0 18px -8px; }\n.oth-gap .proc-step h4 { font-size: 18px; font-weight: 600; color: var(--white); margin: 0 0 8px 0; letter-spacing: -0.01em; line-height: 1.2; }\n.oth-gap .proc-step .duration { font-family: var(--font-mono); font-size: 10px; letter-spacing: 0.10em; text-transform: uppercase; color: var(--red); margin-bottom: 14px; font-weight: 600; }\n.oth-gap .proc-step p { font-size: 13px; line-height: 1.6; color: var(--white-soft); margin: 0; }\n.oth-gap .proc-step p b { color: var(--white); }\n\n\/* Bench strip (same component as other pages) *\/\n.oth-gap .bench-strip { display: grid; grid-template-columns: 1fr 1fr; gap: 28px; align-items: stretch; }\n.oth-gap .bench-left { background: linear-gradient(135deg, var(--red-dark) 0%, var(--red-deep) 100%); color: var(--white); padding: 40px 36px; position: relative; overflow: hidden; }\n.oth-gap .bench-left::before { content: \"\\2605\"; position: absolute; top: -40px; right: -20px; font-family: var(--font-display); font-size: 240px; line-height: 1; color: var(--white); opacity: 0.08; }\n.oth-gap .bench-left .bl-eyebrow { font-family: var(--font-mono); font-size: 11px; letter-spacing: 0.18em; text-transform: uppercase; color: rgba(255,255,255,0.85); margin-bottom: 18px; display: flex; align-items: center; gap: 10px; position: relative; z-index: 2; }\n.oth-gap .bench-left .bl-eyebrow::before { content: \"\"; width: 32px; height: 1px; background: rgba(255,255,255,0.6); }\n.oth-gap .bench-left h3 { font-family: var(--font-display); font-style: italic; font-size: clamp(22px, 2.6vw, 30px); line-height: 1.25; font-weight: 500; color: var(--white); margin: 0 0 18px 0; position: relative; z-index: 2; }\n.oth-gap .bench-left h3 em { font-style: normal; font-weight: 600; }\n.oth-gap .bench-left p { font-size: 14.5px; line-height: 1.7; color: rgba(255,255,255,0.92); margin: 0 0 14px 0; position: relative; z-index: 2; }\n.oth-gap .bench-left a { color: var(--white); text-decoration: none; border-bottom: 1px solid rgba(255,255,255,0.5); font-weight: 600; }\n.oth-gap .bench-right { background: var(--black-card); border: 1px solid var(--black-line); padding: 32px 30px; }\n.oth-gap .bench-list { display: grid; gap: 12px; }\n.oth-gap .bench-row { display: grid; grid-template-columns: minmax(140px, auto) 1fr; gap: 16px; align-items: start; padding: 12px 0; border-bottom: 1px solid var(--black-line); }\n.oth-gap .bench-row:last-child { border-bottom: none; }\n.oth-gap .bench-row .br-cred { font-family: var(--font-mono); font-size: 11.5px; font-weight: 600; color: var(--red); letter-spacing: 0.06em; line-height: 1.3; }\n.oth-gap .bench-row .br-desc { font-size: 13px; color: var(--white-soft); line-height: 1.5; }\n.oth-gap .bench-row .br-desc b { color: var(--white); font-weight: 600; }\n\n\/* Use case grid *\/\n.oth-gap .uc-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 18px; }\n.oth-gap .uc-card { background: var(--black-card); border: 1px solid var(--black-line); padding: 32px 28px; position: relative; transition: all 0.3s; overflow: hidden; display: flex; flex-direction: column; }\n.oth-gap .uc-card:hover { background: #1f1f1f; transform: translateY(-3px); border-color: rgba(237,64,54,0.4); }\n.oth-gap .uc-card::before { content: \"\"; position: absolute; top: 0; left: 0; width: 3px; height: 100%; background: var(--red); transform: scaleY(0.3); transform-origin: top; transition: transform 0.4s; }\n.oth-gap .uc-card:hover::before { transform: scaleY(1); }\n.oth-gap .uc-card .uc-icon { width: 44px; height: 44px; background: rgba(237,64,54,0.10); border: 1px solid rgba(237,64,54,0.3); border-radius: 50%; display: flex; align-items: center; justify-content: center; margin-bottom: 18px; color: var(--red); }\n.oth-gap .uc-card .uc-icon svg { width: 22px; height: 22px; stroke: currentColor; fill: none; stroke-width: 2; stroke-linecap: round; stroke-linejoin: round; }\n.oth-gap .uc-card .uc-num { font-family: var(--font-mono); font-size: 10px; color: var(--red); letter-spacing: 0.16em; font-weight: 600; margin-bottom: 10px; }\n.oth-gap .uc-card h4 { font-family: var(--font-display); font-size: 22px; font-weight: 600; color: var(--white); margin: 0 0 14px 0; line-height: 1.2; letter-spacing: -0.01em; }\n.oth-gap .uc-card h4 .display { font-style: italic; color: var(--red); font-weight: 500; }\n.oth-gap .uc-card p { font-size: 13.5px; line-height: 1.65; color: var(--white-soft); margin: 0 0 14px 0; flex: 1; }\n.oth-gap .uc-card p b { color: var(--white); font-weight: 600; }\n.oth-gap .uc-card .uc-rec { font-family: var(--font-mono); font-size: 10px; letter-spacing: 0.10em; color: var(--red); border-top: 1px solid var(--black-line); padding-top: 12px; text-transform: uppercase; font-weight: 600; line-height: 1.5; }\n.oth-gap .uc-card .uc-rec b { color: var(--white); font-weight: 700; }\n<\/style>\n\n  <!-- THE 6-PHASE PROCESS -->\n  <section class=\"block alt\" id=\"process\">\n    <div class=\"wrap\">\n      <div class=\"section-head\">\n        <div class=\"eyebrow\"><svg class=\"ico\" width=\"13\" height=\"13\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" aria-hidden=\"true\" focusable=\"false\"><path d=\"M6 22a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h8a2.4 2.4 0 0 1 1.704.706l3.588 3.588A2.4 2.4 0 0 1 20 8v12a2 2 0 0 1-2 2z\" \/> <path d=\"M14 2v5a1 1 0 0 0 1 1h5\" \/> <path d=\"m9 15 2 2 4-4\" \/><\/svg>The Diagnostic Process<\/div>\n        <h2>Six phases. <span class=\"display\">From source inventory to remediation plan.<\/span><\/h2>\n        <p class=\"subtitle\">The gap analysis runs as a structured six-phase workflow \u2014 designed to produce a defensible, reproducible diagnostic that an external rating analyst could audit. Each phase has a designated specialist on the in-house bench. Standard duration 4\u20136 weeks; quick-look 1\u20132 weeks (top-30 indicators only); deep diagnostic 8\u201310 weeks (with stakeholder interviews and supply chain extension).<\/p>\n      <\/div>\n      <div class=\"process\">\n        <div class=\"proc-step\">\n          <div class=\"proc-circle\">1<\/div>\n          <h4>Source Inventory<\/h4>\n          <div class=\"duration\">WEEK 1 \u00b7 DISCLOSURE INGEST<\/div>\n          <p>All current public disclosure ingested: prior-year sustainability report, 56-1 One Report Part 1.3, integrated report, climate disclosure, website ESG pages, sustainable finance framework documents (if applicable), prior-year rating agency submissions (CDP, MSCI, DJSI, Sustainalytics). <b>The inventory itself becomes a baseline document.<\/b><\/p>\n        <\/div>\n        <div class=\"proc-step\">\n          <div class=\"proc-circle\">2<\/div>\n          <h4>Indicator Mapping<\/h4>\n          <div class=\"duration\">WEEK 1\u20132 \u00b7 ICB-CALIBRATED<\/div>\n          <p>Company mapped to ICB sector classification \u2014 determines which FTSE Russell indicators apply with high weight and which apply with lower weight. <b>~125 sector-applicable indicators identified (300+ for energy\/industrials)<\/b>. Cross-framework mapping table built linking each FTSE indicator to GRI\/IFRS\/SASB equivalents.<\/p>\n        <\/div>\n        <div class=\"proc-step\">\n          <div class=\"proc-circle\">3<\/div>\n          <h4>Quality Assessment<\/h4>\n          <div class=\"duration\">WEEK 2\u20134 \u00b7 INDICATOR PASS<\/div>\n          <p>Each applicable indicator scored against current public disclosure: <b>Met (full disclosure with quantitative data), Partial (qualitative or incomplete), Gap (not disclosed)<\/b>. Assessment uses FTSE Russell&#8217;s actual disclosure quality criteria \u2014 not generic ESG scoring proxies. Rationale captured per indicator for audit defensibility.<\/p>\n        <\/div>\n        <div class=\"proc-step\">\n          <div class=\"proc-circle\">4<\/div>\n          <h4>FTSE Band Estimate<\/h4>\n          <div class=\"duration\">WEEK 4 \u00b7 INDICATIVE SCORING<\/div>\n          <p>Estimated current FTSE Russell band calculated from indicator-level scores using FTSE&#8217;s weighted scoring methodology. <b>Output is indicative \u2014 actual FTSE scoring is done by Russell&#8217;s internal analysts<\/b> against the same public disclosure. The estimate gives boards and IR teams a quantitative starting position before remediation.<\/p>\n        <\/div>\n        <div class=\"proc-step\">\n          <div class=\"proc-circle\">5<\/div>\n          <h4>Priority &amp; Effort<\/h4>\n          <div class=\"duration\">WEEK 4\u20135 \u00b7 REMEDIATION SCOPE<\/div>\n          <p>Gaps and partials prioritised on three axes: <b>FTSE scoring impact (high-weight indicators first), remediation effort (data-collection burden), and dependency (some disclosures require operational programmes before disclosure)<\/b>. Effort estimated in weeks per gap. Output: prioritised remediation roadmap.<\/p>\n        <\/div>\n        <div class=\"proc-step\">\n          <div class=\"proc-circle\">6<\/div>\n          <h4>Report-Out<\/h4>\n          <div class=\"duration\">WEEK 5\u20136 \u00b7 BOARD-READY<\/div>\n          <p>Three deliverables finalised: <b>scored matrix (Excel + PDF), executive summary (board-ready PDF), prioritised remediation plan (with effort estimates and target FTSE band uplift)<\/b>. Output workshop with client sustainability team, IR team, and CFO\/CG team. Diagnostic feeds directly into <a href=\"\/esg-advisory\/disclosure-remediation\/\" style=\"color: var(--red);\">disclosure remediation<\/a> if commissioned.<\/p>\n        <\/div>\n      <\/div>\n    <\/div>\n  <\/section>\n\n  <!-- THE BENCH -->\n  <section class=\"block\" id=\"bench\">\n    <div class=\"wrap\">\n      <div class=\"section-head\">\n        <div class=\"eyebrow\"><svg class=\"ico\" width=\"13\" height=\"13\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" aria-hidden=\"true\" focusable=\"false\"><path d=\"M16 21v-2a4 4 0 0 0-4-4H6a4 4 0 0 0-4 4v2\" \/> <path d=\"M16 3.128a4 4 0 0 1 0 7.744\" \/> <path d=\"M22 21v-2a4 4 0 0 0-3-3.87\" \/> <circle cx=\"9\" cy=\"7\" r=\"4\" \/><\/svg>The Specialist Bench<\/div>\n        <h2>Eight credentials. <span class=\"display\">Doing the assessment, not just describing the methodology.<\/span><\/h2>\n        <p class=\"subtitle\">The gap analysis is only as good as the people assessing each indicator. Most ESG advisory practices describe methodology to junior consultants who then run the assessment. Othello inverts this \u2014 the credentialled specialists <strong>do the assessment work directly<\/strong>. Each framework is scored by the person who holds the credential the framework issuer recognises. <a href=\"\/our-team\/\">Meet the named bench \u2192<\/a> \u00b7 <a href=\"\/esg-advisory\/#bench\">Full bench register \u2192<\/a><\/p>\n      <\/div>\n      <div class=\"bench-strip\">\n        <div class=\"bench-left\">\n          <div class=\"bl-eyebrow\">\u2605 WHO DOES THE INDICATOR PASS<\/div>\n          <h3>The framework issuer&#8217;s certification holder <em>does the assessment<\/em> \u2014 not a junior consultant.<\/h3>\n          <p>The conventional Big Four \/ boutique model: senior consultants set methodology, junior analysts run the assessment, partner reviews on a sample basis. The result on a 125-indicator gap matrix is variable quality at the indicator level.<\/p>\n          <p>Othello inverts this. The <strong>GRI 2021 Certified Trainer<\/strong> does the GRI alignment pass. The <strong>IFRS Foundation-certified specialist<\/strong> does the IFRS S1\/S2 pass. The <strong>AA1000AS ACSAP<\/strong> does the assurance-readiness pass. Each indicator is scored by the framework issuer&#8217;s recognised credential holder. Available for verification at procurement stage under <a href=\"\/our-team\/\">mutual NDA<\/a>.<\/p>\n        <\/div>\n        <div class=\"bench-right\">\n          <div class=\"bench-list\">\n            <div class=\"bench-row\">\n              <div class=\"br-cred\">FTSE Russell<br>Calibrated<\/div>\n              <div class=\"br-desc\"><b>1,500 pages of active SET50 ESG regulatory work in production<\/b> calibrated to FTSE Russell methodology since 2024 \u2014 pre-dating the SET methodology transition announcement. The vocabulary is FTSE-native.<\/div>\n            <\/div>\n            <div class=\"bench-row\">\n              <div class=\"br-cred\">GRI 2021<br>Certified Trainer<\/div>\n              <div class=\"br-desc\"><b>FTPI \/ GRI Partner<\/b> (June 2023). Authorized GRI Standards training delivery. Universal Standards (101 \/ 2 \/ 3) + applicable Sector Standards. Plus GRI Human Rights and SDG Integration training (2024).<\/div>\n            <\/div>\n            <div class=\"bench-row\">\n              <div class=\"br-cred\">IFRS S1 &amp; S2<br>Certified<\/div>\n              <div class=\"br-desc\"><b>IFRS Foundation<\/b> (2025) \u2014 Basic Knowledge in IFRS Sustainability Disclosure Standards. Direct certification from the standard&#8217;s issuing body. \u00a722 climate resilience scoring against the actual standard text.<\/div>\n            <\/div>\n            <div class=\"bench-row\">\n              <div class=\"br-cred\">AA1000AS<br>ACSAP<\/div>\n              <div class=\"br-desc\"><b>Associate Certified Sustainability Assurance Practitioner<\/b> \u2014 AccountAbility (June 2024). Tests indicator disclosure against AA1000AS Type 1 (existence) and Type 2 (quality) assurance criteria.<\/div>\n            <\/div>\n            <div class=\"bench-row\">\n              <div class=\"br-cred\">ISO 14064<br>Lead Auditor<\/div>\n              <div class=\"br-desc\"><b>CQI \/ IRCA accredited<\/b> (June 2024). GHG Scope 1, 2, 3 indicator assessment to audit-grade rigour. Identifies common GHG inventory disclosure gaps (boundary issues, location vs market-based, Scope 3 categories).<\/div>\n            <\/div>\n            <div class=\"bench-row\">\n              <div class=\"br-cred\">TGO CFO + CFP<br>Auditor<\/div>\n              <div class=\"br-desc\"><b>Thailand GHG Management Organization<\/b> Auditor \u2014 CFO + CFP. Cross-checks national Thai GHG submission alignment with public 56-1 disclosure. Catches the common reconciliation gap.<\/div>\n            <\/div>\n          <\/div>\n        <\/div>\n      <\/div>\n    <\/div>\n  <\/section>\n\n  <!-- USE CASES -->\n  <section class=\"block alt\" id=\"use-cases\">\n    <div class=\"wrap\">\n      <div class=\"section-head\">\n        <div class=\"eyebrow\"><svg class=\"ico\" width=\"13\" height=\"13\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" aria-hidden=\"true\" focusable=\"false\"><path d=\"m11 17 2 2a1 1 0 1 0 3-3\" \/> <path d=\"m14 14 2.5 2.5a1 1 0 1 0 3-3l-3.88-3.88a3 3 0 0 0-4.24 0l-.88.88a1 1 0 1 1-3-3l2.81-2.81a5.79 5.79 0 0 1 7.06-.87l.47.28a2 2 0 0 0 1.42.25L21 4\" \/> <path d=\"m21 3 1 11h-2\" \/> <path d=\"M3 3 2 14l6.5 6.5a1 1 0 1 0 3-3\" \/> <path d=\"M3 4h8\" \/><\/svg>When to Commission<\/div>\n        <h2>Six scenarios. <span class=\"display\">All quantitative-baseline questions.<\/span><\/h2>\n        <p class=\"subtitle\">Gap analysis is the right diagnostic when the question is &#8220;where do we actually stand&#8221; \u2014 quantitatively, indicator-by-indicator. Below are six scenarios where SET-listed corporates, IR teams, and procurement teams typically commission an Othello gap analysis. If the question is &#8220;should we even disclose&#8221; \u2014 the answer is yes, under SEC Tor Chor 55\/2563. If the question is &#8220;what should we prioritise&#8221; \u2014 that&#8217;s what the matrix output answers.<\/p>\n      <\/div>\n      <div class=\"uc-grid\">\n\n        <div class=\"uc-card\">\n          <div class=\"uc-icon\"><svg aria-hidden=\"true\" viewBox=\"0 0 24 24\"><path d=\"M16 21v-2a4 4 0 0 0-4-4H5a4 4 0 0 0-4 4v2\"\/><circle cx=\"8.5\" cy=\"7\" r=\"4\"\/><path d=\"M20 8v6M23 11h-6\"\/><\/svg><\/div>\n          <div class=\"uc-num\">SCENARIO 01<\/div>\n          <h4>New sustainability <span class=\"display\">lead inheriting the portfolio.<\/span><\/h4>\n          <p>A newly-appointed Head of Sustainability, Chief Sustainability Officer, or VP ESG inheriting prior-year disclosure they didn&#8217;t build. <b>The baseline question: &#8220;where do we actually stand against FTSE methodology?&#8221;<\/b> Gap analysis output gives the new lead a quantitative position to take to the board within the first 90 days.<\/p>\n          <div class=\"uc-rec\">TIER \u00b7 <b>STANDARD<\/b> (4\u20136 weeks) \u2014 full indicator matrix<\/div>\n        <\/div>\n\n        <div class=\"uc-card\">\n          <div class=\"uc-icon\"><svg aria-hidden=\"true\" viewBox=\"0 0 24 24\"><polyline points=\"22 12 18 12 15 21 9 3 6 12 2 12\"\/><\/svg><\/div>\n          <div class=\"uc-num\">SCENARIO 02<\/div>\n          <h4>Pre-rating-agency <span class=\"display\">engagement scoping.<\/span><\/h4>\n          <p>Before commissioning a CDP submission, MSCI ESG engagement, DJSI \/ S&amp;P CSA questionnaire response, or Sustainalytics engagement, the company wants to know <b>likely score before submitting<\/b>. Gap analysis estimates the band the company would land in, indicates the cost-of-uplift across submissions, and informs whether to submit this cycle or remediate first.<\/p>\n          <div class=\"uc-rec\">TIER \u00b7 <b>QUICK-LOOK<\/b> (1\u20132 weeks) \u2014 top 30 indicators for the target agency<\/div>\n        <\/div>\n\n        <div class=\"uc-card\">\n          <div class=\"uc-icon\"><svg aria-hidden=\"true\" viewBox=\"0 0 24 24\"><path d=\"M16 4h2a2 2 0 0 1 2 2v14a2 2 0 0 1-2 2H6a2 2 0 0 1-2-2V6a2 2 0 0 1 2-2h2\"\/><rect x=\"8\" y=\"2\" width=\"8\" height=\"4\" rx=\"1\"\/><path d=\"M9 14l2 2 4-4\"\/><\/svg><\/div>\n          <div class=\"uc-num\">SCENARIO 03<\/div>\n          <h4>Board demanding <span class=\"display\">quantitative ESG position.<\/span><\/h4>\n          <p>Board sustainability committee or full board asks the IR team &#8220;where are we&#8221; on ESG against peers and against global standards. A qualitative answer doesn&#8217;t land \u2014 the board needs <b>indicator-level scoring with FTSE band estimate and peer benchmarking context<\/b>. Gap analysis produces the board-ready document.<\/p>\n          <div class=\"uc-rec\">TIER \u00b7 <b>STANDARD + PEER BAND<\/b> \u2014 board-ready executive summary<\/div>\n        <\/div>\n\n        <div class=\"uc-card\">\n          <div class=\"uc-icon\"><svg aria-hidden=\"true\" viewBox=\"0 0 24 24\"><polyline points=\"20 6 9 17 4 12\"\/><path d=\"M2 12h2M22 12h-2M12 2v2M12 22v-2\"\/><\/svg><\/div>\n          <div class=\"uc-num\">SCENARIO 04<\/div>\n          <h4>Pre-IPO or pre-listing <span class=\"display\">ESG readiness.<\/span><\/h4>\n          <p>Companies preparing for SET listing or dual-listing (HKEX, SGX, NYSE) need <b>ESG readiness assessment under the prospective listing venue&#8217;s disclosure regime<\/b>. Thai SEC + SET (FTSE Russell methodology), HKEX ESG Reporting Guide, SGX SGX-ST Mainboard ESG Rules, or NYSE \/ NASDAQ ESG disclosure. Gap analysis maps current disclosure to the target listing&#8217;s requirements.<\/p>\n          <div class=\"uc-rec\">TIER \u00b7 <b>STANDARD or DEEP<\/b> \u2014 listing-venue specific<\/div>\n        <\/div>\n\n        <div class=\"uc-card\">\n          <div class=\"uc-icon\"><svg aria-hidden=\"true\" viewBox=\"0 0 24 24\"><circle cx=\"12\" cy=\"12\" r=\"10\"\/><path d=\"M2 12h20M12 2a15.3 15.3 0 0 1 4 10 15.3 15.3 0 0 1-4 10 15.3 15.3 0 0 1-4-10 15.3 15.3 0 0 1 4-10z\"\/><\/svg><\/div>\n          <div class=\"uc-num\">SCENARIO 05<\/div>\n          <h4>M&amp;A diligence \u2014 <span class=\"display\">buy-side or sell-side.<\/span><\/h4>\n          <p>ESG due diligence on a target (buy-side) or pre-disclosure self-assessment for a sale process (sell-side). <b>Climate transition risk exposure, Scope 3 supply chain risk, human rights due diligence gaps, anti-corruption programme defensibility<\/b>. Gap analysis output supports DDQ response or buy-side diligence memo. Confidentiality framework via mutual NDA standard.<\/p>\n          <div class=\"uc-rec\">TIER \u00b7 <b>DEEP<\/b> (8\u201310 weeks) \u2014 with stakeholder + supply chain<\/div>\n        <\/div>\n\n        <div class=\"uc-card\">\n          <div class=\"uc-icon\"><svg aria-hidden=\"true\" viewBox=\"0 0 24 24\"><path d=\"M14 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8z\"\/><polyline points=\"14 2 14 8 20 8\"\/><line x1=\"9\" y1=\"13\" x2=\"15\" y2=\"13\"\/><line x1=\"9\" y1=\"17\" x2=\"15\" y2=\"17\"\/><\/svg><\/div>\n          <div class=\"uc-num\">SCENARIO 06<\/div>\n          <h4>Pre-RFP scoping \u2014 <span class=\"display\">sizing the budget.<\/span><\/h4>\n          <p>Procurement teams scoping a full ESG advisory RFP need <b>quantitative basis for the budget envelope<\/b>. Gap analysis output shows the volume of remediation work required, identifies the high-priority indicators that drive scope, and surfaces dependencies (data infrastructure, materiality refresh, climate scenario analysis) that drive scope and timeline.<\/p>\n          <div class=\"uc-rec\">TIER \u00b7 <b>QUICK-LOOK or STANDARD<\/b> \u2014 feeds RFP scope<\/div>\n        <\/div>\n\n      <\/div>\n    <\/div>\n  <\/section>\n\n<style>\n\/* PART 3 CSS *\/\n\/* Deliverables *\/\n.oth-gap .deliv-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 16px; }\n.oth-gap .deliv-card { background: var(--black-card); border: 1px solid var(--black-line); padding: 28px 26px; position: relative; transition: all 0.3s; overflow: hidden; display: flex; flex-direction: column; }\n.oth-gap .deliv-card:hover { background: #1f1f1f; transform: translateY(-3px); border-color: rgba(237,64,54,0.4); }\n.oth-gap .deliv-card::before { content: \"\"; position: absolute; top: 0; left: 0; width: 100%; height: 2px; background: var(--red); transform: scaleX(0.3); transform-origin: left; transition: transform 0.4s; }\n.oth-gap .deliv-card:hover::before { transform: scaleX(1); }\n.oth-gap .deliv-card .dc-tag { display: inline-block; align-self: flex-start; font-family: var(--font-mono); font-size: 9.5px; letter-spacing: 0.14em; text-transform: uppercase; color: var(--red); border: 1px solid rgba(237,64,54,0.4); padding: 4px 10px; border-radius: 2px; margin-bottom: 16px; font-weight: 600; }\n.oth-gap .deliv-card h4 { font-family: var(--font-display); font-size: 21px; font-weight: 600; color: var(--white); margin: 0 0 8px 0; line-height: 1.2; letter-spacing: -0.01em; }\n.oth-gap .deliv-card h4 .display { font-style: italic; color: var(--red); font-weight: 500; }\n.oth-gap .deliv-card .dc-meta { font-family: var(--font-mono); font-size: 10.5px; color: var(--white-mute); margin-bottom: 14px; letter-spacing: 0.04em; }\n.oth-gap .deliv-card p { font-size: 13px; line-height: 1.6; color: var(--white-soft); margin: 0 0 14px 0; flex: 1; }\n.oth-gap .deliv-card p b { color: var(--white); }\n.oth-gap .deliv-card .dc-format { font-family: var(--font-mono); font-size: 10px; letter-spacing: 0.10em; color: var(--red); border-top: 1px solid var(--black-line); padding-top: 12px; text-transform: uppercase; font-weight: 600; }\n.oth-gap .deliv-card .dc-format b { color: var(--white); }\n\n\/* 3-Tier comparison *\/\n.oth-gap .tiers { display: grid; grid-template-columns: repeat(3, 1fr); gap: 18px; }\n.oth-gap .tier-card { background: var(--black-card); border: 1px solid var(--black-line); padding: 36px 30px; position: relative; transition: all 0.3s; display: flex; flex-direction: column; }\n.oth-gap .tier-card.featured { border-color: var(--red); }\n.oth-gap .tier-card.featured::before { content: \"RECOMMENDED\"; position: absolute; top: -10px; left: 24px; background: var(--red); color: var(--white); font-family: var(--font-mono); font-size: 9.5px; letter-spacing: 0.14em; padding: 4px 10px; border-radius: 2px; font-weight: 600; }\n.oth-gap .tier-card:hover { background: #1f1f1f; transform: translateY(-3px); }\n.oth-gap .tier-card .tc-tier { font-family: var(--font-mono); font-size: 10.5px; letter-spacing: 0.16em; text-transform: uppercase; color: var(--red); font-weight: 600; margin-bottom: 14px; }\n.oth-gap .tier-card h3 { font-family: var(--font-display); font-style: italic; font-size: 28px; font-weight: 600; color: var(--white); margin: 0 0 6px 0; letter-spacing: -0.01em; line-height: 1.15; }\n.oth-gap .tier-card .tc-duration { font-family: var(--font-mono); font-size: 11px; color: var(--white-mute); margin-bottom: 20px; padding-bottom: 18px; border-bottom: 1px solid var(--black-line); letter-spacing: 0.04em; }\n.oth-gap .tier-card .tc-duration b { color: var(--red); font-weight: 600; }\n.oth-gap .tier-card .tc-list { list-style: none; padding: 0; margin: 0 0 18px 0; flex: 1; }\n.oth-gap .tier-card .tc-list li { font-size: 13px; line-height: 1.5; color: var(--white-soft); padding: 9px 0; padding-left: 24px; position: relative; border-bottom: 1px dashed var(--black-line); }\n.oth-gap .tier-card .tc-list li:last-child { border-bottom: none; }\n.oth-gap .tier-card .tc-list li::before { content: \"\u2713\"; position: absolute; left: 0; color: var(--gap-met); font-weight: 700; }\n.oth-gap .tier-card .tc-list li.no::before { content: \"\u2014\"; color: var(--white-dim); }\n.oth-gap .tier-card .tc-list li.no { color: var(--white-dim); }\n.oth-gap .tier-card .tc-list li b { color: var(--white); font-weight: 600; }\n.oth-gap .tier-card .tc-best { font-family: var(--font-mono); font-size: 10px; letter-spacing: 0.10em; color: var(--red); border-top: 1px solid var(--black-line); padding-top: 14px; text-transform: uppercase; font-weight: 600; line-height: 1.5; }\n.oth-gap .tier-card .tc-best b { color: var(--white); font-weight: 700; }\n\n\/* Pricing 2-component *\/\n.oth-gap .price-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 20px; }\n.oth-gap .price-card { background: var(--black-card); border: 1px solid var(--black-line); padding: 36px 32px; position: relative; }\n.oth-gap .price-card::before { content: \"\"; position: absolute; top: 0; left: 0; width: 4px; height: 100%; background: var(--red); }\n.oth-gap .price-card .pc-num { font-family: var(--font-mono); font-size: 10px; color: var(--red); letter-spacing: 0.16em; font-weight: 600; margin-bottom: 12px; }\n.oth-gap .price-card h4 { font-family: var(--font-display); font-style: italic; font-size: 24px; font-weight: 500; color: var(--white); margin: 0 0 14px 0; letter-spacing: -0.01em; }\n.oth-gap .price-card p { font-size: 14px; line-height: 1.65; color: var(--white-soft); margin: 0 0 14px 0; }\n.oth-gap .price-card p b { color: var(--white); font-weight: 600; }\n.oth-gap .price-card .pc-note { margin-top: 18px; padding: 14px 18px; background: var(--black-soft); border: 1px solid var(--black-line); font-size: 12px; color: var(--white-mute); font-family: var(--font-mono); letter-spacing: 0.04em; }\n.oth-gap .price-card .pc-note b { color: var(--red); }\n\n\/* RFP *\/\n.oth-gap .rfp-block { background: var(--black); border: 1px solid var(--red); padding: 56px 48px; position: relative; overflow: hidden; }\n.oth-gap .rfp-block::before { content: \"RFP\"; position: absolute; top: -30px; right: -10px; font-family: var(--font-display); font-style: italic; font-size: clamp(120px, 14vw, 240px); line-height: 1; color: var(--red); opacity: 0.06; font-weight: 600; pointer-events: none; }\n.oth-gap .rfp-grid { display: grid; grid-template-columns: 1fr 1.2fr; gap: 48px; align-items: center; position: relative; z-index: 2; }\n.oth-gap .rfp-left h2 { font-size: clamp(26px, 3.4vw, 40px); line-height: 1.1; font-weight: 700; letter-spacing: -0.02em; margin: 0 0 18px 0; color: var(--white); }\n.oth-gap .rfp-left h2 .display { font-family: var(--font-display); font-style: italic; font-weight: 400; color: var(--red); }\n.oth-gap .rfp-left p { font-size: 14.5px; line-height: 1.7; color: var(--white-soft); margin: 0 0 14px 0; }\n.oth-gap .rfp-left p strong { color: var(--white); font-weight: 600; }\n.oth-gap .rfp-matrix { display: grid; gap: 10px; }\n.oth-gap .rfp-row { background: var(--black-soft); border: 1px solid var(--black-line); padding: 14px 20px; display: grid; grid-template-columns: auto 1fr auto; gap: 16px; align-items: center; transition: all 0.25s; }\n.oth-gap .rfp-row:hover { border-color: rgba(237,64,54,0.3); background: var(--black-card); }\n.oth-gap .rfp-row .num { font-family: var(--font-mono); font-size: 11px; font-weight: 600; color: var(--red); min-width: 22px; }\n.oth-gap .rfp-row .req { font-size: 13.5px; color: var(--white); font-weight: 500; }\n.oth-gap .rfp-row .req span { display: block; font-family: var(--font-mono); font-size: 10.5px; color: var(--white-mute); font-weight: 400; margin-top: 2px; }\n.oth-gap .rfp-row .met { font-family: var(--font-mono); font-size: 10px; letter-spacing: 0.14em; text-transform: uppercase; color: #4ade80; background: rgba(74,222,128,0.10); border: 1px solid rgba(74,222,128,0.30); padding: 4px 10px; border-radius: 100px; font-weight: 600; white-space: nowrap; }\n\n\/* FAQ *\/\n.oth-gap .faqs { max-width: 920px; margin: 0 auto; border-top: 2px solid var(--black-line); }\n.oth-gap .faq { border-bottom: 1px solid var(--black-line); background: var(--black-card); margin-bottom: 10px; border-radius: 6px; overflow: hidden; transition: all 0.3s; }\n.oth-gap .faq[open] { border-color: var(--red); }\n.oth-gap .faq summary { list-style: none; cursor: pointer; padding: 22px 26px; display: grid; grid-template-columns: 60px minmax(0, 1fr) 32px; gap: 18px; align-items: center; font-size: 15.5px; font-weight: 600; color: var(--white); transition: background 0.2s; }\n.oth-gap .faq summary::-webkit-details-marker { display: none; }\n.oth-gap .faq summary:hover { background: #1f1f1f; }\n.oth-gap .faq-num { font-family: var(--font-mono); font-size: 11px; font-weight: 600; letter-spacing: 0.1em; color: var(--red); }\n.oth-gap .faq-icon { width: 30px; height: 30px; border: 2px solid var(--red); border-radius: 50%; display: flex; align-items: center; justify-content: center; font-size: 18px; font-weight: 600; color: var(--red); transition: all 0.3s; }\n.oth-gap .faq[open] .faq-icon { background: var(--red); color: var(--white); transform: rotate(45deg); }\n.oth-gap .faq-body { padding: 0 26px 24px 104px; }\n.oth-gap .faq-body p { font-size: 14.5px; line-height: 1.75; color: var(--white-soft); margin: 0 0 12px 0; }\n.oth-gap .faq-body p:last-child { margin-bottom: 0; }\n.oth-gap .faq-body p strong { color: var(--white); font-weight: 600; }\n.oth-gap .faq-body a { color: var(--red); text-decoration: none; border-bottom: 1px solid rgba(237,64,54,0.4); }\n\n\/* Final CTA *\/\n.oth-gap .final-cta { background: radial-gradient(ellipse 900px 600px at 50% 0%, rgba(237,64,54,0.20), transparent 60%), radial-gradient(ellipse 700px 400px at 50% 100%, rgba(237,64,54,0.10), transparent 60%), var(--black); padding: 130px 0; text-align: center; position: relative; overflow: hidden; }\n.oth-gap .final-cta-content { position: relative; z-index: 2; max-width: 880px; margin: 0 auto; padding: 0 32px; }\n.oth-gap .final-cta h2 { font-size: clamp(32px, 5vw, 60px); line-height: 1.05; font-weight: 700; letter-spacing: -0.025em; color: var(--white); margin: 0 auto 22px auto; max-width: 24ch; }\n.oth-gap .final-cta h2 .display { font-family: var(--font-display); font-style: italic; font-weight: 400; color: var(--red); }\n.oth-gap .final-cta p { font-size: 17px; line-height: 1.65; color: var(--white-soft); max-width: 56ch; margin: 0 auto 44px auto; }\n.oth-gap .final-cta .ctas { justify-content: center; }\n.oth-gap .final-cta-note { margin-top: 30px; font-family: var(--font-mono); font-size: 11px; letter-spacing: 0.14em; text-transform: uppercase; color: var(--white-mute); line-height: 1.7; }\n.oth-gap .final-cta-note b { color: var(--red); }\n.oth-gap .final-cta-note a { color: inherit; text-decoration: none; }\n.oth-gap .final-cta-note a:hover { color: var(--white); }\n.oth-gap .footer-line { padding: 32px 0; text-align: center; font-family: var(--font-mono); font-size: 12px; font-weight: 500; letter-spacing: 0.16em; text-transform: uppercase; color: var(--white-mute); background: var(--black); border-top: 1px solid var(--black-line); }\n.oth-gap .footer-line .red { color: var(--red); }\n\n\/* RESPONSIVE *\/\n@media (max-width: 1100px) {\n  .oth-gap .hero-grid { grid-template-columns: 1fr; gap: 48px; }\n  .oth-gap .fw-grid { grid-template-columns: repeat(2, 1fr); }\n  .oth-gap .process { grid-template-columns: repeat(2, 1fr); }\n  .oth-gap .bench-strip { grid-template-columns: 1fr; }\n  .oth-gap .uc-grid { grid-template-columns: repeat(2, 1fr); }\n  .oth-gap .deliv-grid { grid-template-columns: repeat(2, 1fr); }\n  .oth-gap .tiers { grid-template-columns: 1fr; }\n  .oth-gap .price-grid { grid-template-columns: 1fr; }\n  .oth-gap .rfp-grid { grid-template-columns: 1fr; gap: 32px; }\n  .oth-gap .hero-stats { grid-template-columns: repeat(2, 1fr); }\n  .oth-gap .matrix-header, .oth-gap .matrix-row { grid-template-columns: 80px minmax(0, 1.5fr) 80px 80px; padding: 14px 18px; gap: 12px; }\n  .oth-gap .matrix-header .mh-col:nth-child(4), .oth-gap .matrix-row .mr-frameworks { display: none; }\n  .oth-gap .matrix-summary { grid-template-columns: repeat(2, 1fr); gap: 16px; padding: 20px 18px; }\n}\n@media (max-width: 768px) {\n  .oth-gap { scroll-padding-top: 64px; }\n  .oth-gap .wrap { padding: 0 20px; }\n  .oth-gap .hero { padding: 32px 0 64px 0; }\n  .oth-gap section.block { padding: 64px 0; }\n  .oth-gap .fw-grid { grid-template-columns: 1fr; }\n  .oth-gap .process { grid-template-columns: 1fr; }\n  .oth-gap .uc-grid { grid-template-columns: 1fr; }\n  .oth-gap .deliv-grid { grid-template-columns: 1fr; }\n  .oth-gap .price-card { padding: 26px 22px; }\n  .oth-gap .tier-card { padding: 28px 24px; }\n  .oth-gap .rfp-block { padding: 32px 22px; }\n  .oth-gap .ctas { flex-direction: column; }\n  .oth-gap .btn { justify-content: center; width: 100%; }\n  .oth-gap .bench-left, .oth-gap .bench-right { padding: 28px 22px; }\n  .oth-gap .bench-row { grid-template-columns: 1fr; gap: 4px; }\n  .oth-gap .matrix-header, .oth-gap .matrix-row { grid-template-columns: 70px minmax(0, 1fr) 80px; padding: 12px 14px; font-size: 12px; }\n  .oth-gap .matrix-header .mh-col:nth-child(5), .oth-gap .matrix-row .mr-priority { display: none; }\n  .oth-gap .mr-indicator { font-size: 12px; }\n  .oth-gap .mr-status { font-size: 9.5px; padding: 4px 7px; }\n  .oth-gap .matrix-summary { grid-template-columns: 1fr 1fr; gap: 14px; padding: 18px 14px; }\n  .oth-gap .ms-stat .ms-value { font-size: 24px; }\n  .oth-gap .matrix-note { padding: 14px 16px; font-size: 9.5px; }\n  .oth-gap .faq summary { padding: 18px 20px; gap: 14px; grid-template-columns: 42px 1fr 26px; font-size: 14.5px; }\n  .oth-gap .faq-body { padding: 0 20px 20px 76px; }\n  .oth-gap .final-cta { padding: 64px 0; }\n  .oth-gap .section-nav { padding: 4px; gap: 2px; left: 12px; right: 12px; max-width: none; transform: translateY(-110%); overflow-x: auto; -webkit-overflow-scrolling: touch; scrollbar-width: none; }\n  .oth-gap .section-nav.visible { transform: translateY(0); }\n  .oth-gap .section-nav::-webkit-scrollbar { display: none; }\n  .oth-gap .section-nav .sn-item { font-size: 9.5px; padding: 7px 11px; }\n  .oth-gap .floating-cta { display: inline-flex; }\n}\n@media (prefers-reduced-motion: reduce) {\n  .oth-gap { scroll-behavior: auto; }\n  .oth-gap *, .oth-gap *::before, .oth-gap *::after { animation-duration: 0.01ms !important; animation-iteration-count: 1 !important; transition-duration: 0.01ms !important; scroll-behavior: auto !important; }\n  .oth-gap .accent-bar::after { display: none; }\n  .oth-gap .reading-progress-fill { transition: none !important; }\n  .oth-gap .mr-status.miss .dot { animation: none !important; }\n}\n<\/style>\n\n  <!-- DELIVERABLES -->\n  <section class=\"block\" id=\"deliverables\">\n    <div class=\"wrap\">\n      <div class=\"section-head\">\n        <div class=\"eyebrow\"><svg class=\"ico\" width=\"13\" height=\"13\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" aria-hidden=\"true\" focusable=\"false\"><path d=\"M3.85 8.62a4 4 0 0 1 4.78-4.77 4 4 0 0 1 6.74 0 4 4 0 0 1 4.78 4.78 4 4 0 0 1 0 6.74 4 4 0 0 1-4.77 4.78 4 4 0 0 1-6.75 0 4 4 0 0 1-4.78-4.77 4 4 0 0 1 0-6.76Z\" \/> <path d=\"m9 12 2 2 4-4\" \/><\/svg>What You Receive<\/div>\n        <h2>Six deliverables. <span class=\"display\">Excel-filterable. Board-ready.<\/span><\/h2>\n        <p class=\"subtitle\">The diagnostic produces six deliverables \u2014 designed to be operational (Excel for analysts), executive (PDF for board), and feed-forward (remediation plan for ongoing work). Each deliverable can be commissioned independently or as part of the standard tier engagement.<\/p>\n      <\/div>\n      <div class=\"deliv-grid\">\n        <div class=\"deliv-card\">\n          <span class=\"dc-tag\">\u2605 PRIMARY OUTPUT<\/span>\n          <h4>Scored Indicator <span class=\"display\">Matrix<\/span><\/h4>\n          <div class=\"dc-meta\">EXCEL + PDF \u00b7 FILTERABLE \u00b7 ~125 ROWS AVG<\/div>\n          <p>The forensic core. <b>Indicator-by-indicator scoring across FTSE Russell methodology, GRI 2021, IFRS S1\/S2, SASB.<\/b> Each row: indicator code, indicator language, current state (Met\/Partial\/Gap), rationale, cross-framework alignment, priority, effort estimate. Filterable by theme, status, priority. Sortable by FTSE scoring impact.<\/p>\n          <div class=\"dc-format\">FORMAT <b>\u00b7<\/b> .xlsx + .pdf \u00b7 TH\/EN bilingual<\/div>\n        <\/div>\n        <div class=\"deliv-card\">\n          <span class=\"dc-tag\">EXECUTIVE SUMMARY<\/span>\n          <h4>Board-Ready <span class=\"display\">Summary<\/span><\/h4>\n          <div class=\"dc-meta\">PDF \u00b7 8\u201312 PAGES \u00b7 LANGUAGE-MIRRORED<\/div>\n          <p>One-page-per-theme summary for the board sustainability committee or full board: <b>current FTSE band estimate, top-5 priority gaps, year-on-year delta vs prior assessment, peer-band positioning context, recommended budget envelope for remediation.<\/b> Designed for 30-minute board consideration.<\/p>\n          <div class=\"dc-format\">FORMAT <b>\u00b7<\/b> .pdf \u00b7 bilingual EN\/TH<\/div>\n        <\/div>\n        <div class=\"deliv-card\">\n          <span class=\"dc-tag\">CROSS-FRAMEWORK<\/span>\n          <h4>Framework <span class=\"display\">Mapping Table<\/span><\/h4>\n          <div class=\"dc-meta\">EXCEL \u00b7 FTSE \u2194 GRI \u2194 IFRS \u2194 SASB<\/div>\n          <p>The cross-reference document showing how each FTSE Russell indicator maps to corresponding GRI 2021 disclosures, IFRS S1\/S2 paragraphs, and SASB metrics. <b>Becomes the source-of-truth for subsequent disclosure drafting and rating-agency submissions.<\/b> Reusable artefact across reporting cycles.<\/p>\n          <div class=\"dc-format\">FORMAT <b>\u00b7<\/b> .xlsx \u00b7 Othello methodology v3.5<\/div>\n        <\/div>\n        <div class=\"deliv-card\">\n          <span class=\"dc-tag\">PRIORITISED PLAN<\/span>\n          <h4>Remediation <span class=\"display\">Roadmap<\/span><\/h4>\n          <div class=\"dc-meta\">PDF + EXCEL \u00b7 18-MONTH HORIZON<\/div>\n          <p>Gap-by-gap remediation plan prioritised on three axes: <b>FTSE scoring impact, remediation effort, operational dependencies.<\/b> Each gap mapped to: required disclosure language, source data needed, internal team owner, estimated effort (weeks), target completion. Feeds directly into <a href=\"\/esg-advisory\/disclosure-remediation\/\" style=\"color: var(--red);\">disclosure remediation<\/a> if commissioned.<\/p>\n          <div class=\"dc-format\">FORMAT <b>\u00b7<\/b> .pdf + .xlsx \u00b7 12-month + 18-month views<\/div>\n        <\/div>\n        <div class=\"deliv-card\">\n          <span class=\"dc-tag\">QUICK-LOOK<\/span>\n          <h4>Peer-Band <span class=\"display\">Positioning<\/span><\/h4>\n          <div class=\"dc-meta\">PDF \u00b7 INDICATIVE \u00b7 SECTOR PEER SET<\/div>\n          <p>Where the company likely sits within its ICB sector peer group on the FTSE Russell band scale. <b>Uses public disclosure of peer SET-listed companies (no proprietary data).<\/b> Indicative positioning \u2014 useful for board context but not a substitute for FTSE Russell&#8217;s own internal scoring.<\/p>\n          <div class=\"dc-format\">FORMAT <b>\u00b7<\/b> .pdf \u00b7 indicative \u00b7 peer-set defined per engagement<\/div>\n        <\/div>\n        <div class=\"deliv-card\">\n          <span class=\"dc-tag\">WORKSHOP<\/span>\n          <h4>Output <span class=\"display\">Workshop<\/span><\/h4>\n          <div class=\"dc-meta\">90 MIN \u00b7 CLIENT TEAM + BENCH<\/div>\n          <p>Workshop-style report-out with client sustainability team, IR team, CFO\/CG team, and Othello bench. <b>Walks through the matrix, top priority gaps, remediation plan, and Q&amp;A on indicator-specific scoring decisions.<\/b> Optional follow-up Q&amp;A window (2 weeks post-delivery) included as standard.<\/p>\n          <div class=\"dc-format\">FORMAT <b>\u00b7<\/b> in-person Bangkok or video \u00b7 bilingual<\/div>\n        <\/div>\n      <\/div>\n    <\/div>\n  <\/section>\n\n  <!-- 3 TIERS -->\n  <section class=\"block alt\" id=\"tiers\">\n    <div class=\"wrap\">\n      <div class=\"section-head\">\n        <div class=\"eyebrow\"><svg class=\"ico\" width=\"13\" height=\"13\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" aria-hidden=\"true\" focusable=\"false\"><path d=\"m11 17 2 2a1 1 0 1 0 3-3\" \/> <path d=\"m14 14 2.5 2.5a1 1 0 1 0 3-3l-3.88-3.88a3 3 0 0 0-4.24 0l-.88.88a1 1 0 1 1-3-3l2.81-2.81a5.79 5.79 0 0 1 7.06-.87l.47.28a2 2 0 0 0 1.42.25L21 4\" \/> <path d=\"m21 3 1 11h-2\" \/> <path d=\"M3 3 2 14l6.5 6.5a1 1 0 1 0 3-3\" \/> <path d=\"M3 4h8\" \/><\/svg>Engagement Tiers<\/div>\n        <h2>Three tiers. <span class=\"display\">Quick-look to deep diagnostic.<\/span><\/h2>\n        <p class=\"subtitle\">Gap analysis scales to the question. Quick-look (1\u20132 weeks) for pre-RFP scoping or rating-agency submission decisions. Standard (4\u20136 weeks) for the full indicator matrix \u2014 most common engagement. Deep (8\u201310 weeks) for first-time reporters, M&amp;A diligence, or sectors with complex supply chain disclosure (energy, industrials, consumer goods with agricultural supply chains).<\/p>\n      <\/div>\n      <div class=\"tiers\">\n        <div class=\"tier-card\">\n          <div class=\"tc-tier\">TIER 01 \u00b7 QUICK-LOOK<\/div>\n          <h3>Diagnostic Snapshot<\/h3>\n          <div class=\"tc-duration\">DURATION <b>\u00b7 1\u20132 weeks<\/b><\/div>\n          <ul class=\"tc-list\">\n            <li>Top <b>30 priority indicators<\/b> assessed<\/li>\n            <li>FTSE Russell scoring focus<\/li>\n            <li>Estimated FTSE band (indicative)<\/li>\n            <li>Executive summary PDF (4\u20136 pages)<\/li>\n            <li>Workshop walkthrough (60 min)<\/li>\n            <li class=\"no\">Full ~125-indicator matrix<\/li>\n            <li class=\"no\">Cross-framework mapping table<\/li>\n            <li class=\"no\">Peer-band positioning<\/li>\n            <li class=\"no\">Stakeholder interviews<\/li>\n          <\/ul>\n          <div class=\"tc-best\">BEST FOR <b>\u00b7<\/b> Pre-RFP scoping \u00b7 rating-agency submission decisions \u00b7 board pre-read<\/div>\n        <\/div>\n        <div class=\"tier-card featured\">\n          <div class=\"tc-tier\">TIER 02 \u00b7 STANDARD<\/div>\n          <h3>Full Gap Analysis<\/h3>\n          <div class=\"tc-duration\">DURATION <b>\u00b7 4\u20136 weeks<\/b><\/div>\n          <ul class=\"tc-list\">\n            <li>Full <b>~125-indicator matrix<\/b> (sector-applicable)<\/li>\n            <li>FTSE Russell + GRI 2021 + IFRS S1\/S2 + SASB<\/li>\n            <li>Estimated FTSE band + scoring rationale<\/li>\n            <li>Cross-framework mapping table<\/li>\n            <li>Board-ready executive summary<\/li>\n            <li>Prioritised remediation roadmap (18-month)<\/li>\n            <li>Peer-band positioning<\/li>\n            <li>Output workshop (90 min)<\/li>\n            <li class=\"no\">Stakeholder interviews (Tier 3)<\/li>\n          <\/ul>\n          <div class=\"tc-best\">BEST FOR <b>\u00b7<\/b> New sustainability leads \u00b7 board reviews \u00b7 pre-IPO readiness \u00b7 annual cycle baseline<\/div>\n        <\/div>\n        <div class=\"tier-card\">\n          <div class=\"tc-tier\">TIER 03 \u00b7 DEEP<\/div>\n          <h3>Deep Diagnostic<\/h3>\n          <div class=\"tc-duration\">DURATION <b>\u00b7 8\u201310 weeks<\/b><\/div>\n          <ul class=\"tc-list\">\n            <li>Everything in Tier 02 +<\/li>\n            <li>Full <b>300+ indicator pass<\/b> (where sector demands)<\/li>\n            <li>Stakeholder interviews (10\u201315 interviews)<\/li>\n            <li>Supply chain ESG extension assessment<\/li>\n            <li>Climate scenario gap analysis (NGFS Phase IV)<\/li>\n            <li>Materiality refresh (GRI 3 \/ ESRS double)<\/li>\n            <li>M&amp;A or pre-IPO readiness format<\/li>\n            <li>Sector-specific deep dive (e.g. Scope 3 categories for industrials)<\/li>\n            <li>Output workshop (half-day)<\/li>\n          <\/ul>\n          <div class=\"tc-best\">BEST FOR <b>\u00b7<\/b> M&amp;A diligence \u00b7 first-time reporters \u00b7 energy\/industrials\/complex supply chains<\/div>\n        <\/div>\n      <\/div>\n    <\/div>\n  <\/section>\n\n  <!-- PRICING -->\n  <section class=\"block\" id=\"pricing\">\n    <div class=\"wrap\">\n      <div class=\"section-head\">\n        <div class=\"eyebrow\"><svg class=\"ico\" width=\"13\" height=\"13\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" aria-hidden=\"true\" focusable=\"false\"><path d=\"M12 17V7\" \/> <path d=\"M16 8h-6a2 2 0 0 0 0 4h4a2 2 0 0 1 0 4H8\" \/> <path d=\"M4 3a1 1 0 0 1 1-1 1.3 1.3 0 0 1 .7.2l.933.6a1.3 1.3 0 0 0 1.4 0l.934-.6a1.3 1.3 0 0 1 1.4 0l.933.6a1.3 1.3 0 0 0 1.4 0l.933-.6a1.3 1.3 0 0 1 1.4 0l.934.6a1.3 1.3 0 0 0 1.4 0l.933-.6A1.3 1.3 0 0 1 19 2a1 1 0 0 1 1 1v18a1 1 0 0 1-1 1 1.3 1.3 0 0 1-.7-.2l-.933-.6a1.3 1.3 0 0 0-1.4 0l-.934.6a1.3 1.3 0 0 1-1.4 0l-.933-.6a1.3 1.3 0 0 0-1.4 0l-.933.6a1.3 1.3 0 0 1-1.4 0l-.934-.6a1.3 1.3 0 0 0-1.4 0l-.933.6a1.3 1.3 0 0 1-.7.2 1 1 0 0 1-1-1z\" \/><\/svg>Pricing Structure<\/div>\n        <h2>Fixed engagement. <span class=\"display\">Tier-priced.<\/span><\/h2>\n        <p class=\"subtitle\">Gap analysis pricing is fixed-fee by tier \u2014 not per-word. Scope is locked at engagement based on ICB sector complexity and tier selection. Quotes within one business hour of source files (or describable engagement scope) and signed mutual NDA.<\/p>\n      <\/div>\n      <div class=\"price-grid\">\n        <div class=\"price-card\">\n          <div class=\"pc-num\">FIXED ENGAGEMENT FEE<\/div>\n          <h4>Tier-Priced<\/h4>\n          <p>Pricing structured by tier \u2014 <b>Quick-look, Standard, Deep<\/b> \u2014 with adjustments for ICB sector complexity (energy, industrials, financial services at upper band; consumer, tech, services at standard band). Quote within one business hour of receipt of source files and signed mutual NDA.<\/p>\n          <p><b>Multi-engagement discount<\/b> applies where gap analysis precedes a Bilingual Sustainability Reporting or 56-1 ESG Section engagement \u2014 gap analysis fee is partially credited against the subsequent disclosure engagement.<\/p>\n          <div class=\"pc-note\">QUOTE TURNAROUND <b>\u00b7<\/b> 1 business hour Bangkok time on receipt of NDA + scope brief<\/div>\n        <\/div>\n        <div class=\"price-card\">\n          <div class=\"pc-num\">REPEAT-ENGAGEMENT<\/div>\n          <h4>Annual Diagnostic Retainer<\/h4>\n          <p>For SET-listed companies committing to annual gap analysis as part of their reporting cycle, an <b>annual diagnostic retainer<\/b> covers Standard Tier each year with year-on-year continuity. The matrix becomes a tracking document showing band uplift, remediation progress, and indicator-level year-on-year delta.<\/p>\n          <p>Retainer pricing reflects year-two efficiency: <b>30\u201340% reduction<\/b> on subsequent annual cycles vs year-one. Useful for IR teams and CSOs tracking measurable ESG progress against external targets.<\/p>\n          <div class=\"pc-note\">RETAINER STRUCTURE <b>\u00b7<\/b> 12-month or 36-month engagement letters available<\/div>\n        <\/div>\n      <\/div>\n    <\/div>\n  <\/section>\n\n  <!-- RFP -->\n  <section class=\"block alt\" id=\"rfp\">\n    <div class=\"wrap\">\n      <div class=\"rfp-block\">\n        <div class=\"rfp-grid\">\n          <div class=\"rfp-left\">\n            <div class=\"eyebrow\"><svg class=\"ico\" width=\"13\" height=\"13\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" aria-hidden=\"true\" focusable=\"false\"><path d=\"M16 21v-2a4 4 0 0 0-4-4H6a4 4 0 0 0-4 4v2\" \/> <path d=\"M16 3.128a4 4 0 0 1 0 7.744\" \/> <path d=\"M22 21v-2a4 4 0 0 0-3-3.87\" \/> <circle cx=\"9\" cy=\"7\" r=\"4\" \/><\/svg>For Procurement Teams<\/div>\n            <h2>Building an RFP for <span class=\"display\">ESG diagnostic services?<\/span><\/h2>\n            <p>Othello is built for institutional procurement. <strong>Every standard ESG diagnostic procurement requirement is met<\/strong> \u2014 ISO 17100, in-house credentialled bench, mutual NDA from first email, GDPR + PDPA compliance, and quick-turn capacity.<\/p>\n            <p>Gap analysis RFP response time is <strong>2\u20134 business days<\/strong> standard. Quote on engagement scoping within one business hour of source files and signed mutual NDA.<\/p>\n            <div style=\"margin-top: 28px;\">\n              <a href=\"#contact\" class=\"btn btn-primary\">\n                <svg aria-hidden=\"true\" viewBox=\"0 0 24 24\"><line x1=\"22\" y1=\"2\" x2=\"11\" y2=\"13\"\/><polygon points=\"22 2 15 22 11 13 2 9 22 2\"\/><\/svg>\n                Request Diagnostic\n              <\/a>\n            <\/div>\n          <\/div>\n          <div class=\"rfp-matrix\">\n            <div class=\"rfp-row\"><div class=\"num\">01<\/div><div class=\"req\">ISO 17100:2015 certified<span>International standard for translation services<\/span><\/div><div class=\"met\"><span aria-hidden=\"true\">\u2713<\/span> Met<\/div><\/div>\n            <div class=\"rfp-row\"><div class=\"num\">02<\/div><div class=\"req\">FTSE Russell methodology calibrated<span>v3.5 \u00b7 14 themes \u00b7 300+ indicators \u00b7 ICB sector-weighted<\/span><\/div><div class=\"met\"><span aria-hidden=\"true\">\u2713<\/span> Met<\/div><\/div>\n            <div class=\"rfp-row\"><div class=\"num\">03<\/div><div class=\"req\">In-house credentialled assessors<span>GRI 2021 Trainer \u00b7 IFRS Foundation \u00b7 AA1000AS \u00b7 ISO 14064<\/span><\/div><div class=\"met\"><span aria-hidden=\"true\">\u2713<\/span> Met<\/div><\/div>\n            <div class=\"rfp-row\"><div class=\"num\">04<\/div><div class=\"req\">Mutual NDA standard<span>From first email \u00b7 firm-wide policy<\/span><\/div><div class=\"met\"><span aria-hidden=\"true\">\u2713<\/span> Met<\/div><\/div>\n            <div class=\"rfp-row\"><div class=\"num\">05<\/div><div class=\"req\">GDPR + PDPA compliance<span>EU + Thailand data protection<\/span><\/div><div class=\"met\"><span aria-hidden=\"true\">\u2713<\/span> Met<\/div><\/div>\n            <div class=\"rfp-row\"><div class=\"num\">06<\/div><div class=\"req\">Quick-turn capacity<span>1\u20132 week Quick-look tier available<\/span><\/div><div class=\"met\"><span aria-hidden=\"true\">\u2713<\/span> Met<\/div><\/div>\n            <div class=\"rfp-row\"><div class=\"num\">07<\/div><div class=\"req\">100% in-house \u00b7 no outsourcing<span>Bangkok-based \u00b7 ISO-controlled<\/span><\/div><div class=\"met\"><span aria-hidden=\"true\">\u2713<\/span> Met<\/div><\/div>\n            <div class=\"rfp-row\"><div class=\"num\">08<\/div><div class=\"req\">Sector-calibrated outputs<span>ICB sector classification \u00b7 8 industries covered<\/span><\/div><div class=\"met\"><span aria-hidden=\"true\">\u2713<\/span> Met<\/div><\/div>\n          <\/div>\n        <\/div>\n      <\/div>\n    <\/div>\n  <\/section>\n\n  <!-- FAQ -->\n  <section class=\"block\" id=\"faqs\">\n    <div class=\"wrap\">\n      <div class=\"section-head center\">\n        <div class=\"eyebrow\"><svg class=\"ico\" width=\"13\" height=\"13\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" aria-hidden=\"true\" focusable=\"false\"><path d=\"M6 22a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h8a2.4 2.4 0 0 1 1.704.706l3.588 3.588A2.4 2.4 0 0 1 20 8v12a2 2 0 0 1-2 2z\" \/> <path d=\"M14 2v5a1 1 0 0 0 1 1h5\" \/> <path d=\"M10 9H8\" \/> <path d=\"M16 13H8\" \/> <path d=\"M16 17H8\" \/><\/svg>Common Questions<\/div>\n        <h2>What sustainability and IR teams <span class=\"display\">ask first.<\/span><\/h2>\n      <\/div>\n      <div class=\"faqs\">\n        <details class=\"faq\"><summary><span class=\"faq-num\">Q.01<\/span><span>What is the difference between a gap analysis and a sustainability audit?<\/span><span class=\"faq-icon\" aria-hidden=\"true\">+<\/span><\/summary><div class=\"faq-body\"><p>A gap analysis is a <strong>disclosure-quality diagnostic<\/strong> \u2014 assessing how well current public disclosure performs against FTSE Russell methodology, GRI 2021, IFRS S1\/S2, and SASB conventions. It does not validate the underlying data (that&#8217;s audit work). It assesses whether what the company discloses is <strong>complete, structured, and indicator-aligned<\/strong> to how rating agencies and regulators will read it.<\/p><p>A sustainability audit (AA1000AS or ISO 14064 verification) tests whether the underlying ESG data is accurate. The two are complementary: gap analysis tells you what&#8217;s missing from disclosure; assurance tells you whether what&#8217;s disclosed is accurate. Othello&#8217;s in-house bench includes <a href=\"\/our-team\/\" style=\"color: var(--red);\">AA1000AS ACSAP and ISO 14064 Lead Auditor<\/a> \u2014 but those credentials are used differently in the gap analysis context.<\/p><\/div><\/details>\n        <details class=\"faq\"><summary><span class=\"faq-num\">Q.02<\/span><span>How does the estimated FTSE band compare to the company&#8217;s actual FTSE Russell score?<\/span><span class=\"faq-icon\" aria-hidden=\"true\">+<\/span><\/summary><div class=\"faq-body\"><p>The estimated band is indicative. <strong>Actual FTSE Russell scoring is done by Russell&#8217;s internal analysts<\/strong> applying their proprietary scoring algorithm to the same public disclosure. Othello&#8217;s estimated band is calculated from indicator-level scoring using FTSE&#8217;s published methodology \u2014 meaning it reflects FTSE&#8217;s stated approach but cannot fully replicate Russell&#8217;s internal scoring nuances.<\/p><p>In practice, the estimated band typically lands within <strong>\u00b10.3 of the actual FTSE band<\/strong> for SET-listed companies where the gap analysis has full access to public disclosure. The estimate is most useful as a <em>baseline<\/em> for remediation planning \u2014 the question is &#8220;where does the band move with remediation&#8221; rather than &#8220;what is the precise current band.&#8221;<\/p><\/div><\/details>\n        <details class=\"faq\"><summary><span class=\"faq-num\">Q.03<\/span><span>What information does Othello need from us to start a gap analysis?<\/span><span class=\"faq-icon\" aria-hidden=\"true\">+<\/span><\/summary><div class=\"faq-body\"><p>Standard gap analysis kicks off on receipt of <strong>three categories of input<\/strong>: (1) <strong>Current public disclosure<\/strong> \u2014 most recent sustainability report, 56-1 One Report Part 1.3, integrated report, climate disclosure, ESG website pages, prior-year rating agency submissions; (2) <strong>ICB sector classification<\/strong> \u2014 the company&#8217;s primary ICB industry and supersector; (3) <strong>Engagement scope<\/strong> \u2014 which tier (Quick-look \/ Standard \/ Deep), which frameworks prioritised (e.g. FTSE-only vs full cross-framework), any specific rating agency targets (CDP, MSCI, DJSI, Sustainalytics).<\/p><p>Optional but recommended: <strong>internal KPI inventory<\/strong> (helps assess what could be disclosed vs. what currently is), <strong>materiality matrix or topic register<\/strong> (helps focus the priority assessment), <strong>prior internal gap-analyses or audit findings<\/strong> (helps avoid duplicate work). All under mutual NDA from first email.<\/p><\/div><\/details>\n        <details class=\"faq\"><summary><span class=\"faq-num\">Q.04<\/span><span>How is the gap analysis different from what Big Four firms provide?<\/span><span class=\"faq-icon\" aria-hidden=\"true\">+<\/span><\/summary><div class=\"faq-body\"><p>Big Four firms (Deloitte, KPMG, PwC, EY) provide ESG diagnostic services through their sustainability advisory practices. The standard Big Four model: senior consultants set methodology, junior analysts run the indicator assessment, partner reviews the output on a sample basis. <strong>Quality varies at the indicator level<\/strong> because the assessment is run by analysts who don&#8217;t hold the framework issuer&#8217;s credential.<\/p><p>Othello inverts this. The framework issuer&#8217;s credential holder <strong>does the assessment work directly<\/strong>: GRI 2021 Certified Trainer scores the GRI alignment pass; IFRS Foundation-certified specialist scores the IFRS S1\/S2 pass; AA1000AS ACSAP scores the assurance-readiness pass. Plus the practice is built on a <a href=\"\/esg-advisory\/bilingual-sustainability-reporting\/\" style=\"color: var(--red);\">bilingual reporting foundation<\/a> \u2014 meaning the gap analysis output is calibrated to actual disclosure-drafting conventions, not just abstract methodology.<\/p><\/div><\/details>\n        <details class=\"faq\"><summary><span class=\"faq-num\">Q.05<\/span><span>Can we use the gap analysis output for our CDP \/ MSCI \/ DJSI submissions?<\/span><span class=\"faq-icon\" aria-hidden=\"true\">+<\/span><\/summary><div class=\"faq-body\"><p>Yes \u2014 the gap analysis output feeds directly into rating-agency submission preparation. The cross-framework mapping table identifies which FTSE indicators map to specific CDP questionnaire items, MSCI key issues, DJSI \/ S&amp;P CSA questions, and Sustainalytics ESG Risk Rating issues. <strong>The same underlying disclosure inventory becomes the source material for each agency&#8217;s submission.<\/strong><\/p><p>For the most submission-focused use, commission the <strong>Quick-look Tier<\/strong> targeted at the specific rating agency (e.g., &#8220;CDP Climate Change submission readiness&#8221;) \u2014 top 30 indicators specific to that agency&#8217;s scoring, with submission-readiness assessment per indicator. Standard Tier covers all four rating agencies plus FTSE in a single pass. See <a href=\"\/esg-advisory\/cdp-disclosure\/\" style=\"color: var(--red);\">CDP<\/a> \u00b7 <a href=\"\/esg-advisory\/msci-esg-rating\/\" style=\"color: var(--red);\">MSCI<\/a> \u00b7 <a href=\"\/esg-advisory\/sp-csa-djsi\/\" style=\"color: var(--red);\">DJSI \/ S&amp;P CSA<\/a> \u00b7 <a href=\"\/esg-advisory\/sustainalytics\/\" style=\"color: var(--red);\">Sustainalytics<\/a> services.<\/p><\/div><\/details>\n        <details class=\"faq\"><summary><span class=\"faq-num\">Q.06<\/span><span>How does gap analysis pricing compare to the cost of full bilingual sustainability reporting?<\/span><span class=\"faq-icon\" aria-hidden=\"true\">+<\/span><\/summary><div class=\"faq-body\"><p>Gap analysis is significantly less than the full <a href=\"\/esg-advisory\/bilingual-sustainability-reporting\/\" style=\"color: var(--red);\">bilingual sustainability reporting<\/a> engagement \u2014 typically <strong>10\u201320% of the full annual reporting cost<\/strong>, depending on tier selection. The point of the gap analysis is to right-size the subsequent investment: instead of committing to a full bilingual report and then discovering scope creep, the gap analysis surfaces the actual remediation work required upfront.<\/p><p>Where gap analysis directly precedes a full bilingual sustainability reporting engagement or 56-1 ESG section engagement, <strong>gap analysis fees are partially credited<\/strong> against the subsequent disclosure engagement. The cross-framework mapping table built during gap analysis becomes the source-of-truth for the subsequent drafting work \u2014 no methodology rebuild required.<\/p><\/div><\/details>\n        <details class=\"faq\"><summary><span class=\"faq-num\">Q.07<\/span><span>How does Othello handle confidentiality on the gap analysis output?<\/span><span class=\"faq-icon\" aria-hidden=\"true\">+<\/span><\/summary><div class=\"faq-body\"><p>Mutual NDA from the first email is the firm-wide standard. Gap analysis outputs \u2014 scored matrix, board summary, remediation roadmap \u2014 are <strong>commercially sensitive<\/strong> because they identify specific disclosure weaknesses competitors and short-sellers could exploit. All deliverables are watermarked, version-controlled, and delivered via secured channels (encrypted email or client SFTP).<\/p><p>For listed companies, gap analysis output is typically classified as <strong>material non-public information (MNPI)<\/strong> during the engagement period until incorporated into the next public disclosure cycle. Othello&#8217;s standard engagement letters include the MNPI handling provisions and information barriers. Conflict-of-interest checks are run before engagement to ensure no overlap with rating agency, sponsor, or competitor advisory relationships.<\/p><\/div><\/details>\n        <details class=\"faq\"><summary><span class=\"faq-num\">Q.08<\/span><span>Can the gap analysis be a standalone deliverable, or does it need to lead to a full engagement?<\/span><span class=\"faq-icon\" aria-hidden=\"true\">+<\/span><\/summary><div class=\"faq-body\"><p>Yes \u2014 gap analysis is a fully standalone engagement. Many SET-listed companies commission gap analysis specifically to <strong>inform an internal decision<\/strong> (whether to engage an external advisor, whether to remediate now or next cycle, whether to enter a rating agency) without committing to a follow-on engagement. The remediation roadmap is structured so that internal teams can execute it themselves if they have the capacity.<\/p><p>For companies that do progress to a follow-on engagement (full bilingual reporting, 56-1 drafting, or remediation), gap analysis becomes the baseline document that the subsequent work is measured against. <strong>Year-two gap analysis<\/strong> typically shows measurable band uplift as a result of the remediation work \u2014 useful for IR teams reporting ESG progress to institutional shareholders.<\/p><\/div><\/details>\n        <details class=\"faq\"><summary><span class=\"faq-num\">Q.09<\/span><span>Can Othello respond to a formal RFP for ESG gap analysis?<\/span><span class=\"faq-icon\" aria-hidden=\"true\">+<\/span><\/summary><div class=\"faq-body\"><p>Yes. Othello responds to formal procurement processes for ESG gap analysis from SET-listed corporates, prospective listing applicants, and procurement teams scoping larger ESG advisory engagements. Standard procurement requirements are met: <strong>ISO 17100:2015 certification, ATA + ATC accreditation, GDPR + PDPA compliance, mutual NDA from first email, in-house credentialled assessors (GRI 2021, IFRS S1\/S2, AA1000AS, ISO 14064, TGO), and SET-listed engagement references available under mutual NDA at procurement stage<\/strong>.<\/p><p>Standard RFP response is <strong>2\u20134 business days<\/strong> for gap analysis (faster than full advisory engagements because scope is more structured). RFP response covers: methodology approach, tier recommendation per scenario, in-house bench credentials, capacity allocation, pricing structure, engagement timeline, and sample matrix structure (anonymised). Quote response on engagement scoping is within one business hour of receipt of source files and signed NDA.<\/p><\/div><\/details>\n      <\/div>\n    <\/div>\n  <\/section>\n\n  <!-- FINAL CTA -->\n  <section class=\"final-cta\" id=\"contact\">\n    <div class=\"final-cta-content\">\n      <h2>The diagnostic <span class=\"display\">before remediation.<\/span><\/h2>\n      <p>Indicator-by-indicator scoring. Estimated FTSE band. Prioritised remediation roadmap. Quote response within one business hour. Mutual NDA from the first email. Bangkok time.<\/p>\n      <div class=\"ctas\">\n        <a href=\"\/contact\/\" class=\"btn btn-primary\">\n          <svg aria-hidden=\"true\" viewBox=\"0 0 24 24\"><line x1=\"22\" y1=\"2\" x2=\"11\" y2=\"13\"\/><polygon points=\"22 2 15 22 11 13 2 9 22 2\"\/><\/svg>\n          Request Diagnostic\n        <\/a>\n        <a href=\"\/esg-advisory\/\" class=\"btn btn-outline\">\n          <svg aria-hidden=\"true\" viewBox=\"0 0 24 24\"><line x1=\"5\" y1=\"12\" x2=\"19\" y2=\"12\"\/><polyline points=\"12 5 19 12 12 19\"\/><\/svg>\n          Back to ESG Advisory\n        <\/a>\n      <\/div>\n      <div class=\"final-cta-note\">\n        <a href=\"tel:+6628592145\"><b>+66 02-859-2145<\/b><\/a> <span style=\"color: var(--red);\">\u00b7<\/span> <a href=\"mailto:info@othelloshop.com\"><b>info@othelloshop.com<\/b><\/a><br>\n        Unit 12-03, Chartered Square <span style=\"color: var(--red);\">\u00b7<\/span> 152 N Sathon Rd<br>\n        Si Lom <span style=\"color: var(--red);\">\u00b7<\/span> Bang Rak <span style=\"color: var(--red);\">\u00b7<\/span> Bangkok 10500 <span style=\"color: var(--red);\">\u00b7<\/span> Thailand\n      <\/div>\n    <\/div>\n  <\/section>\n\n  <div class=\"footer-line\">\n    ESG Advisory <span class=\"red\">\u00b7<\/span> 1.3 <span class=\"red\">\u00b7<\/span> ESG Disclosure Gap Analysis <span class=\"red\">\u2014<\/span> Othello International \u00b7 Bangkok\n  <\/div>\n\n  <!-- v10 FLOATING MOBILE CTA -->\n  <a href=\"#contact\" class=\"floating-cta\" id=\"ohFloatingCta\" aria-label=\"Request a diagnostic\">\n    <svg aria-hidden=\"true\" viewBox=\"0 0 24 24\"><line x1=\"22\" y1=\"2\" x2=\"11\" y2=\"13\"\/><polygon points=\"22 2 15 22 11 13 2 9 22 2\"\/><\/svg>\n    Request Diagnostic\n  <\/a>\n\n<\/div>\n<!-- PAGE END -->\n\n<script>\n(function(){\n  if (typeof window === 'undefined' || typeof document === 'undefined') return;\n  var root = document.querySelector('.oth-gap');\n  if (!root) return;\n  var nav = document.getElementById('ohSectionNav');\n  var progressFill = document.getElementById('ohReadingProgress');\n  var fab = document.getElementById('ohFloatingCta');\n  var hero = document.querySelector('.oth-gap .hero');\n  var sections = ['matrix','frameworks','process','bench','use-cases','tiers','faqs','contact']\n    .map(function(id){ return document.getElementById(id); }).filter(Boolean);\n  var navItems = nav ? nav.querySelectorAll('.sn-item[data-section]') : [];\n\n  function onScroll(){\n    var y = window.scrollY || window.pageYOffset;\n    var docH = Math.max(document.body.scrollHeight, document.documentElement.scrollHeight) - window.innerHeight;\n    if (progressFill && docH > 0) {\n      progressFill.style.width = Math.min(100, Math.max(0, (y \/ docH) * 100)) + '%';\n    }\n    var heroBottom = hero ? hero.offsetTop + hero.offsetHeight - 120 : 600;\n    if (y > heroBottom) {\n      if (nav && !nav.classList.contains('visible')) nav.classList.add('visible');\n      if (fab && !fab.classList.contains('visible')) fab.classList.add('visible');\n    } else {\n      if (nav) nav.classList.remove('visible');\n      if (fab) fab.classList.remove('visible');\n    }\n    if (navItems.length) {\n      var current = null;\n      var viewportMid = y + window.innerHeight * 0.35;\n      sections.forEach(function(s){\n        var top = s.offsetTop, bottom = top + s.offsetHeight;\n        if (viewportMid >= top && viewportMid < bottom) current = s.id;\n      });\n      navItems.forEach(function(item){\n        if (item.getAttribute('data-section') === current) item.classList.add('active');\n        else item.classList.remove('active');\n      });\n    }\n  }\n\n  var ticking = false;\n  window.addEventListener('scroll', function(){\n    if (!ticking) { window.requestAnimationFrame(function(){ onScroll(); ticking = false; }); ticking = true; }\n  }, { passive: true });\n  window.addEventListener('resize', onScroll, { passive: true });\n  onScroll();\n})();\n<\/script>\n\n<script type=\"application\/ld+json\">\n{\n  \"@context\": \"https:\/\/schema.org\",\n  \"@graph\": [\n    {\n      \"@type\": \"Organization\",\n      \"@id\": \"https:\/\/www.othellointernational.com\/#organization\",\n      \"name\": \"Othello International\",\n      \"legalName\": \"Othello International Co., Ltd.\",\n      \"url\": \"https:\/\/www.othellointernational.com\/\",\n      \"email\": \"info@othelloshop.com\",\n      \"telephone\": \"+66-2-859-2145\",\n      \"address\": {\"@type\": \"PostalAddress\", \"streetAddress\": \"Unit 12-03, Chartered Square, 152 N Sathon Rd\", \"addressLocality\": \"Bang Rak\", \"addressRegion\": \"Bangkok\", \"postalCode\": \"10500\", \"addressCountry\": \"TH\"}\n    },\n    {\n      \"@type\": \"BreadcrumbList\",\n      \"itemListElement\": [\n        {\"@type\": \"ListItem\", \"position\": 1, \"name\": \"Home\", \"item\": \"https:\/\/www.othellointernational.com\/\"},\n        {\"@type\": \"ListItem\", \"position\": 2, \"name\": \"ESG Advisory\", \"item\": \"https:\/\/www.othellointernational.com\/esg-advisory\/\"},\n        {\"@type\": \"ListItem\", \"position\": 3, \"name\": \"ESG Disclosure Gap Analysis\", \"item\": \"https:\/\/www.othellointernational.com\/esg-advisory\/esg-gap-analysis\/\"}\n      ]\n    },\n    {\n      \"@type\": \"Service\",\n      \"@id\": \"https:\/\/www.othellointernational.com\/esg-advisory\/esg-gap-analysis\/#service\",\n      \"serviceType\": \"ESG Disclosure Gap Analysis\",\n      \"name\": \"ESG Disclosure Gap Analysis \u2014 Indicator-by-Indicator Diagnostic\",\n      \"provider\": {\"@id\": \"https:\/\/www.othellointernational.com\/#organization\"},\n      \"areaServed\": {\"@type\": \"Country\", \"name\": \"Thailand\"},\n      \"description\": \"Diagnostic ESG disclosure gap analysis benchmarking current public disclosure against FTSE Russell methodology (14 themes, 300+ indicators), GRI 2021 Universal + Sector Standards, IFRS S1\/S2 (ISSB), and SASB Industry Standards simultaneously. Output: scored indicator matrix, estimated FTSE band, cross-framework mapping table, prioritised remediation roadmap. Three engagement tiers: Quick-look (1-2 weeks, top 30 indicators), Standard (4-6 weeks, full matrix), Deep (8-10 weeks, with stakeholder interviews and supply chain extension). Assessed by in-house credentialled bench: GRI 2021 Certified Trainer, IFRS Foundation-certified specialist, AA1000AS ACSAP, ISO 14064 Lead Auditor, TGO CFO\/CFP Auditor.\",\n      \"audience\": {\"@type\": \"Audience\", \"audienceType\": \"SET-listed companies, new sustainability leads, IR teams, boards, M&A diligence, pre-IPO applicants, procurement teams\"},\n      \"hasOfferCatalog\": {\n        \"@type\": \"OfferCatalog\",\n        \"name\": \"Gap Analysis Tiers\",\n        \"itemListElement\": [\n          {\"@type\": \"Offer\", \"name\": \"Quick-Look Diagnostic Snapshot\", \"description\": \"1-2 weeks \u00b7 top 30 priority indicators \u00b7 FTSE band estimate \u00b7 executive summary\"},\n          {\"@type\": \"Offer\", \"name\": \"Standard Full Gap Analysis\", \"description\": \"4-6 weeks \u00b7 ~125-indicator matrix \u00b7 4-framework cross-reference \u00b7 prioritised remediation roadmap \u00b7 peer-band positioning\"},\n          {\"@type\": \"Offer\", \"name\": \"Deep Diagnostic\", \"description\": \"8-10 weeks \u00b7 full 300+ indicator pass \u00b7 stakeholder interviews \u00b7 supply chain extension \u00b7 climate scenario gap \u00b7 materiality refresh\"}\n        ]\n      }\n    },\n    {\n      \"@type\": \"FAQPage\",\n      \"mainEntity\": [\n        {\"@type\": \"Question\", \"name\": \"What is the difference between a gap analysis and a sustainability audit?\", \"acceptedAnswer\": {\"@type\": \"Answer\", \"text\": \"Gap analysis is a disclosure-quality diagnostic assessing how well current public disclosure performs against FTSE Russell, GRI 2021, IFRS S1\/S2, and SASB. A sustainability audit (AA1000AS or ISO 14064) tests whether underlying ESG data is accurate. Gap analysis tells you what's missing from disclosure; assurance tells you whether what's disclosed is accurate.\"}},\n        {\"@type\": \"Question\", \"name\": \"How does the estimated FTSE band compare to the actual FTSE Russell score?\", \"acceptedAnswer\": {\"@type\": \"Answer\", \"text\": \"The estimated band is indicative. Actual FTSE Russell scoring is done by Russell's internal analysts. Othello's estimate is calculated from indicator-level scoring using FTSE's published methodology and typically lands within \u00b10.3 of the actual FTSE band. Most useful as a baseline for remediation planning.\"}},\n        {\"@type\": \"Question\", \"name\": \"What information does Othello need to start a gap analysis?\", \"acceptedAnswer\": {\"@type\": \"Answer\", \"text\": \"Three categories: (1) current public disclosure including sustainability report, 56-1 One Report Part 1.3, rating-agency submissions; (2) ICB sector classification; (3) engagement scope including tier selection and rating agency targets. Optional: internal KPI inventory, materiality matrix, prior gap analyses.\"}},\n        {\"@type\": \"Question\", \"name\": \"How is the gap analysis different from Big Four firms?\", \"acceptedAnswer\": {\"@type\": \"Answer\", \"text\": \"Big Four typically run assessments via junior analysts with senior consultant methodology setting. Othello has the framework issuer's credential holder do the assessment directly: GRI 2021 Certified Trainer scores GRI; IFRS Foundation-certified specialist scores IFRS S1\/S2; AA1000AS ACSAP scores assurance-readiness. Plus the practice is built on a bilingual reporting foundation.\"}},\n        {\"@type\": \"Question\", \"name\": \"Can the gap analysis output feed CDP, MSCI, DJSI submissions?\", \"acceptedAnswer\": {\"@type\": \"Answer\", \"text\": \"Yes. Cross-framework mapping table identifies which FTSE indicators map to CDP questionnaire items, MSCI key issues, DJSI\/S&P CSA questions, and Sustainalytics issues. Standard Tier covers all four rating agencies plus FTSE in a single pass. Quick-look Tier can target a specific rating agency.\"}},\n        {\"@type\": \"Question\", \"name\": \"How does gap analysis pricing compare to full bilingual reporting?\", \"acceptedAnswer\": {\"@type\": \"Answer\", \"text\": \"Typically 10-20% of full annual reporting cost. Where gap analysis directly precedes full bilingual reporting or 56-1 ESG drafting, fees are partially credited against the subsequent engagement. Cross-framework mapping table built during gap analysis becomes source-of-truth for subsequent drafting work.\"}},\n        {\"@type\": \"Question\", \"name\": \"How does Othello handle confidentiality on gap analysis output?\", \"acceptedAnswer\": {\"@type\": \"Answer\", \"text\": \"Mutual NDA from first email firm-wide standard. Gap analysis outputs typically classified as material non-public information (MNPI). Watermarked, version-controlled, delivered via secured channels. Standard engagement letters include MNPI handling provisions and information barriers. Conflict-of-interest checks before engagement.\"}},\n        {\"@type\": \"Question\", \"name\": \"Can gap analysis be a standalone deliverable?\", \"acceptedAnswer\": {\"@type\": \"Answer\", \"text\": \"Yes. Many SET-listed companies commission gap analysis to inform an internal decision without committing to follow-on engagement. Remediation roadmap structured for internal team execution. Year-two gap analysis typically shows measurable band uplift from remediation work.\"}},\n        {\"@type\": \"Question\", \"name\": \"Can Othello respond to a formal RFP for ESG gap analysis?\", \"acceptedAnswer\": {\"@type\": \"Answer\", \"text\": \"Yes. Standard RFP response 2-4 business days. ISO 17100, ATA, ATC, GDPR, PDPA, mutual NDA, in-house credentialled assessors (GRI 2021, IFRS S1\/S2, AA1000AS, ISO 14064, TGO), SET-listed references available at procurement stage.\"}}\n      ]\n    }\n  ]\n}\n<\/script>\n\n\n","protected":false},"excerpt":{"rendered":"<p>The Matrix 4 Frameworks 6 Phases The Bench Deliverables 3 Tiers Use Cases FAQs Request Diagnostic ESG ADVISORY \u00b7 1.3 \u00b7 ESG DISCLOSURE GAP ANALYSIS \u00b7 DIAGNOSTIC SERVICE 300+ indicators \u00b7 scored matrix output \u00b7 FTSE band estimated Home\/ESG Advisory\/ESG Disclosure Gap Analysis \u2605 DIAGNOSTIC SERVICE \u00b7 COLUMN 01 \u00b7 1.3 300+ indicators. One scored [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"parent":30280,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"_yoast_wpseo_title":"ESG Gap Analysis Thailand | FTSE Russell Indicators | Othello","_yoast_wpseo_metadesc":"ESG gap analysis for Thai listed companies. Indicator-by-indicator FTSE Russell diagnostic, bilingual report, estimated score range. 2-4 weeks. Fixed fee.","_yoast_wpseo_focuskw":"esg disclosure gap analysis","_yoast_wpseo_canonical":"","rank_math_title":"ESG Gap Analysis Thailand | FTSE Russell Indicators | Othello","rank_math_description":"ESG gap analysis for Thai listed companies. Indicator-by-indicator FTSE Russell diagnostic, bilingual report, estimated score range. 2-4 weeks. Fixed fee.","rank_math_focus_keyword":"esg disclosure gap analysis","rank_math_canonical_url":"","_yoast_wpseo_meta-robots-noindex":"","_yoast_wpseo_meta-robots-nofollow":"","_yoast_wpseo_opengraph-title":"","_yoast_wpseo_opengraph-description":"","_yoast_wpseo_twitter-title":"","_yoast_wpseo_twitter-description":"","_jetpack_hide_featured_image":false,"_jetpack_featured_image_duplicate_dismissed":0,"footnotes":"","rank_math_robots":["index"]},"class_list":["post-30291","page","type-page","status-publish","hentry"],"jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/www.othellointernational.com\/th\/wp-json\/wp\/v2\/pages\/30291","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.othellointernational.com\/th\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/www.othellointernational.com\/th\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/www.othellointernational.com\/th\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.othellointernational.com\/th\/wp-json\/wp\/v2\/comments?post=30291"}],"version-history":[{"count":8,"href":"https:\/\/www.othellointernational.com\/th\/wp-json\/wp\/v2\/pages\/30291\/revisions"}],"predecessor-version":[{"id":32690,"href":"https:\/\/www.othellointernational.com\/th\/wp-json\/wp\/v2\/pages\/30291\/revisions\/32690"}],"up":[{"embeddable":true,"href":"https:\/\/www.othellointernational.com\/th\/wp-json\/wp\/v2\/pages\/30280"}],"wp:attachment":[{"href":"https:\/\/www.othellointernational.com\/th\/wp-json\/wp\/v2\/media?parent=30291"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}