/* Explicit layer roles keep CMS image/overlay/blur/grid settings authoritative. */
.infr-channel-hero{isolation:isolate}
.infr-channel-hero>.infr-channel-layer{position:absolute;pointer-events:none}
.infr-channel-hero>.infr-channel-image{opacity:1}
/* A localized reading scrim protects copy without repainting the image or CMS mask. */
html[data-infr-theme="light"] .infr-channel-hero>.relative:not(.infr-channel-layer):has(h1){isolation:isolate}
html[data-infr-theme="light"] .infr-channel-hero>.relative:not(.infr-channel-layer):has(h1)::before{content:"";position:absolute;z-index:-1;pointer-events:none;left:50%;transform:translateX(-50%);top:-90px;bottom:-90px;width:min(100%,1100px);background:radial-gradient(ellipse closest-side at center,color-mix(in srgb,var(--theme-surface) 96%,transparent) 0%,color-mix(in srgb,var(--theme-surface) 93%,transparent) 45%,color-mix(in srgb,var(--theme-surface) 70%,transparent) 67%,transparent 100%)}
html[data-infr-theme="light"] .infr-channel-hero>.relative:not(.infr-channel-layer):has(h1) p{color:var(--theme-text)!important;text-shadow:0 1px 1px color-mix(in srgb,var(--theme-surface) 70%,transparent)}
html[data-infr-theme="light"] .infr-channel-about>.relative:not(.infr-channel-layer):has(h1)::before{left:calc((100% - 100vw)/2);transform:none;top:-64px;bottom:-64px;width:min(1120px,100vw);background:linear-gradient(90deg,color-mix(in srgb,var(--theme-surface) 94%,transparent) 0%,color-mix(in srgb,var(--theme-surface) 92%,transparent) 48%,color-mix(in srgb,var(--theme-surface) 80%,transparent) 68%,color-mix(in srgb,var(--theme-surface) 38%,transparent) 84%,transparent 100%)}
html[data-infr-theme="light"] .infr-channel-contact>.relative:not(.infr-channel-layer):has(h1)::before{top:44px;bottom:44px}
@media(max-width:640px){html[data-infr-theme="light"] .infr-channel-hero>.relative:not(.infr-channel-layer):has(h1)::before{width:calc(100% + 24px)}html[data-infr-theme="light"] .infr-channel-about>.relative:not(.infr-channel-layer):has(h1)::before{left:calc((100% - 100vw)/2);width:100vw;top:0;bottom:0}}
.infr-partners-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px;align-items:stretch}
.infr-partner-card{display:flex;flex-direction:column;height:216px;min-width:0;border:1px solid var(--theme-border);border-radius:16px;overflow:hidden;background:var(--theme-surface);box-shadow:0 3px 16px #18334b06}
.infr-partner-heading{display:flex;align-items:center;gap:12px;height:80px;flex:none;padding:16px;border-bottom:1px solid var(--theme-border)}
.infr-partner-logo{display:flex;align-items:center;justify-content:center;width:78px;height:48px;flex:none;background:#fff;border-radius:7px;padding:6px}
.infr-partner-logo img{max-width:100%;max-height:100%;object-fit:contain}
.infr-partner-heading h3{font-size:16px;line-height:1.4;font-weight:650;color:var(--theme-text-strong);margin:0}
.infr-partner-document{display:grid;grid-template-columns:minmax(76px,96px) minmax(0,1fr);align-items:center;gap:12px;flex:1;min-height:0;width:100%;padding:12px;border:0;background:none;color:inherit;text-align:left;cursor:zoom-in}
.infr-partner-paper{display:flex;justify-content:center;align-items:center;width:100%;height:104px;padding:6px;border:1px solid var(--theme-border);border-radius:8px;background:#f6f7f8;overflow:hidden}
.infr-partner-paper img{width:100%;height:100%;object-fit:contain;filter:none}
.infr-partner-document:hover .infr-partner-paper{border-color:var(--theme-accent)}
.infr-partner-document-caption{display:flex;flex-direction:column;gap:8px;min-width:0;padding:0;font-size:13px;line-height:1.55;overflow-wrap:anywhere;color:var(--theme-text)}
.infr-partner-document-caption>span:last-child{font-size:13px;font-weight:650;color:var(--theme-accent)}
.infr-partner-pending{display:flex;align-items:center;justify-content:center;flex:1;margin:0;padding:16px;font-size:14px;line-height:1.5;color:var(--theme-muted)}
.infr-partner-document:focus-visible,.infr-certificate-dialog :is(button,a,.infr-certificate-viewport):focus-visible{outline:3px solid var(--theme-accent);outline-offset:3px}
.infr-certificate-dialog{padding:0;border:1px solid var(--theme-border);border-radius:14px;width:min(1160px,calc(100vw - 32px));max-width:calc(100vw - 32px);height:min(900px,calc(100dvh - 32px));max-height:calc(100dvh - 32px);overflow:hidden;background:var(--theme-surface);color:var(--theme-text-strong);box-shadow:0 25px 100px #0006}
.infr-certificate-dialog[open]{display:flex;flex-direction:column}
.infr-certificate-dialog::backdrop{background:#142331b8;backdrop-filter:blur(5px)}
.infr-certificate-toolbar{min-height:72px;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px 20px;background:var(--theme-surface);border-bottom:1px solid var(--theme-border);flex:none}
.infr-certificate-toolbar h2{font-size:17px;line-height:1.5;margin:0;font-weight:650}
.infr-certificate-actions{display:flex;gap:8px;flex-wrap:wrap;flex:none}
.infr-certificate-actions :is(button,a){display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:8px 14px;border:1px solid var(--theme-border);border-radius:7px;background:var(--theme-bg);font:inherit;font-size:14px;color:var(--theme-text-strong);text-decoration:none;cursor:pointer}
.infr-certificate-actions :is(button,a):hover{color:var(--theme-accent);border-color:var(--theme-accent)}
.infr-certificate-viewport{flex:1;min-height:0;overflow:auto;padding:20px;background:#edf0f3;text-align:center;overscroll-behavior:contain}
.infr-certificate-viewport img{display:inline-block;width:auto;height:auto;max-width:100%;max-height:100%;object-fit:contain;vertical-align:middle;box-shadow:0 5px 20px #0002;background:#fff;cursor:zoom-in}
.infr-certificate-viewport.is-zoomed img{max-width:none;max-height:none;cursor:zoom-out}
@media(max-width:1100px){.infr-partners-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.infr-partners-grid{gap:12px}.infr-partner-card{height:252px}.infr-partner-heading{flex-direction:column;gap:6px;height:76px;padding:10px}.infr-partner-logo{width:64px;height:32px;padding:3px}.infr-partner-heading h3{font-size:14px}.infr-partner-paper{height:88px;padding:5px}.infr-partner-document{grid-template-columns:minmax(0,1fr);grid-template-rows:88px auto;align-content:center;gap:8px;padding:10px}.infr-partner-document-caption{gap:5px;font-size:12px;line-height:1.45;text-align:center}.infr-partner-document-caption>span:last-child{font-size:12px}.infr-partner-pending{text-align:center;padding:16px 8px;font-size:13px}.infr-certificate-dialog{width:calc(100vw - 16px);max-width:calc(100vw - 16px);height:calc(100dvh - 16px);max-height:calc(100dvh - 16px)}html .infr-certificate-dialog>.infr-certificate-toolbar{align-items:flex-start;flex-direction:column;padding:14px;gap:12px}.infr-certificate-actions{width:100%;gap:6px}.infr-certificate-actions :is(button,a){padding:8px 10px;font-size:13px;flex:1}.infr-certificate-viewport{padding:12px}}
