.grc-fw-section{background:#fff;color:#272d35;padding:112px 0 38px;scroll-margin-top:110px}
.grc-fw-wrap{width:min(1240px,calc(100% - 96px));margin-inline:auto}
.grc-fw-layout{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);grid-template-areas:"copy visual" "panels visual" "cta visual";column-gap:52px;row-gap:0;align-items:start}
.grc-fw-copy{grid-area:copy;min-width:0;align-self:end}
.grc-fw-copy>.eyebrow{display:block;max-width:100%;font-size:11px;line-height:1.7;letter-spacing:.1em;color:#566253}
.grc-fw-copy h2{font-size:clamp(34px,3.8vw,56px);line-height:1.06;letter-spacing:-.045em;margin:24px 0}
.grc-fw-intro{font-size:17px;line-height:1.75;max-width:530px;color:#586259;margin:0}
.grc-fw-panels{grid-area:panels;margin:30px 0 28px;min-height:170px}
.grc-fw-panel{border-left:3px solid #2cc700;padding:3px 0 4px 21px;max-width:510px}
.grc-fw-panel[hidden]{display:none!important}
.grc-fw-category{font-size:10px;line-height:1.7;letter-spacing:.12em;text-transform:uppercase;color:#626b61}
.grc-fw-panel h3{font-size:24px;letter-spacing:-.035em;line-height:1.25;margin:8px 0 10px}
.grc-fw-panel p{font-size:15px;line-height:1.75;margin:0;color:#4e5b51}
.grc-fw-cta{grid-area:cta;justify-self:start;align-self:start;gap:24px;font-size:14px}
.grc-fw-visual{grid-area:visual;min-width:0;align-self:center}
.grc-fw-orbit{position:relative;width:100%;aspect-ratio:1;isolation:isolate}
.grc-fw-ring{position:absolute;left:50%;top:50%;border:1px dashed #c5d3c1;border-radius:50%;transform:translate(-50%,-50%);pointer-events:none;z-index:-1}
.grc-fw-ring-outer{width:81%;height:81%}
.grc-fw-ring-inner{width:48%;height:48%;border-style:solid;border-color:#dce6d7}
.grc-fw-spokes{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;z-index:-1}
.grc-fw-spokes line{stroke:#cedbc9;stroke-width:.15;stroke-dasharray:.8 1.2}
.grc-fw-center{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:154px;height:154px;border-radius:50%;background:#fff;border:1px solid #d9e4d4;box-shadow:0 0 0 17px #e6f4df;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:8px;color:#272d35}
.grc-fw-center img{width:54px;height:54px;object-fit:contain}
.grc-fw-center>span{font-size:18px;line-height:1.3;font-weight:700;letter-spacing:-.04em;text-align:center}
.grc-fw-center>span>span{display:block;font-size:10px;letter-spacing:.14em;font-weight:500;margin-top:3px}
.grc-fw-badge{position:absolute;left:var(--fw-x);top:var(--fw-y);transform:translate(-50%,-50%);width:98px;height:98px;padding:8px;border:1px solid #d4ddd0;border-radius:50%;background:#fff;color:#272d35;font:inherit;font-size:13px;font-weight:600;line-height:1.4;cursor:pointer;text-align:center;box-shadow:0 5px 12px #272d3505;transition:border-color .18s,box-shadow .18s,background .18s}
.grc-fw-badge:hover{border-color:#628b56;background:#f9fff6}
.grc-fw-badge[aria-pressed=true]{border:3px solid #2cc700;box-shadow:0 0 0 6px #2cc70014;background:#fff}
.grc-fw-badge:focus-visible{outline:3px solid #272d35;outline-offset:6px}
.grc-fw-hint{text-align:center;font-size:12px;color:#626b61;line-height:1.7;margin:22px 0 0}
.grc-fw-scope{font-size:12px;line-height:1.8;color:#667060;border-top:1px solid #dce4d8;padding-top:24px;margin:52px 0 0;max-width:none}
.grc-fw-fallback{margin-top:24px;padding-left:20px;font-size:15px;line-height:1.8}
.grc-fw-fallback li+li{margin-top:12px}
@media(min-width:1600px){.grc-fw-badge{width:108px;height:108px;font-size:14px}}
@media(max-width:1150px){.grc-fw-wrap{width:calc(100% - 64px)}.grc-fw-layout{column-gap:30px;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr)}.grc-fw-badge{width:83px;height:83px;font-size:11px}.grc-fw-center{width:122px;height:122px;box-shadow:0 0 0 12px #e6f4df}.grc-fw-center img{width:42px;height:42px}.grc-fw-center>span{font-size:16px}.grc-fw-panels{min-height:198px}}
@media(max-width:960px){.grc-fw-section{padding-top:76px}.grc-fw-layout{grid-template-columns:1fr;grid-template-areas:"copy" "visual" "panels" "cta";gap:28px}.grc-fw-copy{max-width:650px;padding:0}.grc-fw-copy h2{font-size:46px}.grc-fw-intro,.grc-fw-panel{max-width:650px}.grc-fw-panels{min-height:0;margin:0}.grc-fw-visual{width:min(620px,100%);justify-self:center}.grc-fw-badge{width:96px;height:96px;font-size:13px}.grc-fw-center{width:148px;height:148px}.grc-fw-center img{width:54px;height:54px}.grc-fw-center>span{font-size:18px}.grc-fw-scope{margin-top:36px}}
@media(max-width:600px){.grc-fw-section{padding:64px 0 28px}.grc-fw-wrap{width:calc(100% - 40px)}.grc-fw-copy h2{font-size:37px;line-height:1.08}.grc-fw-copy>.eyebrow{font-size:10px}.grc-fw-intro{font-size:16px;line-height:1.75}.grc-fw-panel p{font-size:15px}.grc-fw-panel h3{font-size:24px}.grc-fw-cta{font-size:13px;max-width:100%;gap:16px}.grc-fw-layout{gap:28px}.grc-fw-orbit{aspect-ratio:auto;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}.grc-fw-ring,.grc-fw-spokes,.grc-fw-center{display:none}.grc-fw-badge{position:static;transform:none;inset:auto;width:100%;height:auto;min-height:76px;border-radius:12px;font-size:12px;padding:10px 4px;overflow-wrap:anywhere;box-shadow:none}.grc-fw-badge[aria-pressed=true]{box-shadow:none}.grc-fw-badge:focus-visible{outline-offset:2px}.grc-fw-hint{margin-top:17px}.grc-fw-scope{font-size:11px;margin-top:28px;padding-top:20px}}
@media(prefers-reduced-motion:reduce){.grc-fw-badge{transition:none}}

.grc-fw-badge[data-grc-framework="bsi"]{font-size:11px}

/* Missing-framework contact action, continuing the established GRC design. */
.grc-fw-request{margin-top:56px;padding:72px 24px 66px;border-top:1px solid #dce4d8;text-align:center;scroll-margin-top:110px}
.grc-fw-request h2{font-size:clamp(32px,3.4vw,48px);line-height:1.12;letter-spacing:-.03em;margin:0 0 32px;text-wrap:balance}
.grc-fw-request-link{font-size:16px;min-height:54px;max-width:100%;gap:26px;padding:16px 24px;justify-content:center}
@media(max-width:600px){.grc-fw-request{margin-top:38px;padding:48px 0 38px}.grc-fw-request h2{margin-bottom:26px}.grc-fw-request-link{font-size:15px;padding:15px 20px;gap:20px}}
