/* Detailed partner pages extend the approved Risk Ledger layout. */
.ai-new-vendor .rl-banner{background:#002f5a}
.ai-new-vendor .rl-banner h1{font-size:clamp(2.3rem,4.8vw,4.5rem);overflow-wrap:anywhere}
.ai-new-vendor :is(.rl-benefit-card,.rl-guide-card){transition:border-color .2s,box-shadow .2s}
.ai-new-vendor :is(.rl-benefit-card,.rl-guide-card):is(:hover,:focus-within){border-color:var(--orange);box-shadow:0 0 0 1px var(--orange),0 10px 28px #c4510014}
.ai-new-vendor :is(.rl-benefit-card,.rl-guide-card):is(:hover,:focus-within)>a{color:var(--orange)}
.ai-new-vendor .brand-panel-dark{background:#052a46;color:white;border:1px solid #c5dbea4d}
.ai-new-vendor .brand-panel-dark p{border-color:#c5dbea4d}
.ai-new-vendor .brand-panel-dark :is(p,.brand-note){color:#d9e7f2}
.ai-new-vendor .brand-note{font-size:.85rem;color:var(--muted)}
.ai-trident-security .ai-brand-panel img{max-width:120px;max-height:120px}
.ai-comply-grc .ai-brand-panel img{max-width:100px;max-height:100px}
.ai-riskxchange .rl-banner{background:#002f5a}
.ai-riskxchange .rl-banner h1{font-size:clamp(2.4rem,4.8vw,4.5rem);overflow-wrap:anywhere}
.ai-riskxchange .ai-brand-panel img{max-width:160px;max-height:160px;border-radius:4px}
/* Hover treatment on RiskXchange, Tonic and SenseOn; fixed borders avoid layout shifts. */
:is(.ai-riskxchange,.ai-tonic-security,.ai-senseon) :is(.rl-benefit-card,.rl-guide-card){transition:border-color .2s,box-shadow .2s}
:is(.ai-riskxchange,.ai-tonic-security,.ai-senseon) :is(.rl-benefit-card,.rl-guide-card):is(:hover,:focus-within){border-color:var(--orange);box-shadow:0 0 0 1px var(--orange),0 10px 28px #c4510014}
:is(.ai-riskxchange,.ai-tonic-security,.ai-senseon) :is(.rl-benefit-card,.rl-guide-card):is(:hover,:focus-within)>a{color:var(--orange)}
.ai-senseon .rl-banner{background:#002f5a}
.ai-senseon .ai-brand-panel img{max-width:260px}
.ai-tonic-security .rl-banner{background:#002f5a}
.ai-tonic-security .rl-banner h1{font-size:clamp(2.4rem,4.8vw,4.5rem)}
.ai-tonic-security .ai-brand-panel img{max-width:260px}
.ai-tonic-security .ai-platform-text .rl-steps{grid-template-columns:repeat(2,minmax(0,1fr))}
.ai-neuraltrust .rl-banner{background:#082b51}
.ai-rootz .rl-banner{background:#002f5a}
.ai-brand-panel{min-height:225px;display:flex;flex-direction:column;justify-content:center;gap:27px}
.ai-brand-panel img{max-width:300px;max-height:140px;object-fit:contain}
.ai-rootz .ai-brand-panel img{max-width:95px;height:95px}
.ai-brand-panel p{margin-top:0;padding-top:21px}
.ai-platform-with-image{display:block}
.ai-platform-with-image .rl-platform-copy{display:grid;grid-template-columns:1fr 1fr;gap:0 65px}
.ai-platform-with-image .rl-platform-copy>.eyebrow{grid-column:1}
.ai-platform-with-image .rl-platform-copy>h2{grid-column:1}
.ai-platform-with-image .rl-platform-copy>p:not(.eyebrow){grid-column:1}
.ai-platform-with-image .rl-steps{grid-column:2;grid-row:1/4;margin-top:0;align-self:center}
.ai-platform-with-image .rl-platform-figure{margin-top:34px;max-width:100%}
.ai-platform-text{display:block}
.ai-platform-text .rl-platform-copy>h2{max-width:720px}
.ai-platform-text .rl-platform-copy>p:not(.eyebrow){max-width:760px}
.ai-platform-text .rl-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:33px;margin-top:26px}
.ai-platform-text .rl-steps li{margin-top:0;border-top:1px solid #cfdee9;padding-top:25px}
.ai-page .rl-resource-nav{gap:14px 25px}
@media(max-width:800px){.ai-brand-panel{min-height:0;gap:25px;padding:32px}.ai-brand-panel img{max-width:270px}.ai-rootz .ai-brand-panel img{max-width:75px;height:75px}.ai-platform-with-image .rl-platform-copy{display:block}.ai-platform-with-image .rl-steps{margin-top:26px}.ai-platform-text .rl-steps{grid-template-columns:1fr;gap:20px}.ai-platform-text .rl-steps li{padding-top:20px}.ai-platform-with-image .rl-platform-figure{max-width:100%}}
@media(max-width:800px){.ai-tonic-security .ai-platform-text .rl-steps{grid-template-columns:1fr}}

/* Pillar 1: explanatory copy beside vendor-published product artwork. */
.vendor-platform-visual .rl-platform{grid-template-columns:minmax(0,1fr) minmax(0,1.25fr);gap:60px;align-items:center}
.vendor-platform-visual .rl-platform .rl-steps{display:block}
.vendor-platform-visual .rl-platform-figure{min-width:0;width:100%}
.vendor-platform-visual .rl-platform-figure img{width:100%;height:auto;object-fit:contain;background:white;border:1px solid var(--line)}
.vendor-platform-visual .rl-platform-figure> a:focus-visible{outline:3px solid var(--orange);outline-offset:5px;border-radius:6px}
.vendor-platform-visual .platform-source{display:inline;text-decoration:underline;text-underline-offset:3px;color:var(--blue)}
.ai-riskxchange.vendor-platform-visual .rl-platform-figure{max-width:500px;justify-self:center}
@media(max-width:800px){.vendor-platform-visual .rl-platform{grid-template-columns:1fr;gap:30px}.vendor-platform-visual .rl-platform-figure{max-width:100%}}
/* Match Risk Ledger's desktop text-left / artwork-right template. */
.vendor-platform-visual .rl-platform.ai-platform-with-image{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.25fr);gap:85px}
.vendor-platform-visual .ai-platform-with-image .rl-platform-copy{display:block}
.vendor-platform-visual .ai-platform-with-image .rl-steps{display:block;margin-top:27px}
.vendor-platform-visual .ai-platform-with-image .rl-platform-figure{margin:0}
@media(max-width:1100px){.vendor-platform-visual .rl-platform.ai-platform-with-image{gap:45px}}
@media(max-width:800px){.vendor-platform-visual .rl-platform.ai-platform-with-image{grid-template-columns:1fr;gap:32px}}

.vendor-platform-visual :is(.rl-benefit-card,.rl-guide-card){transition:border-color .18s ease,box-shadow .18s ease}
.vendor-platform-visual :is(.rl-benefit-card,.rl-guide-card):is(:hover,:focus-within){border-color:var(--orange);box-shadow:0 0 0 1px var(--orange),0 10px 28px #c4510014}
.vendor-platform-visual :is(.rl-benefit-card,.rl-guide-card):is(:hover,:focus-within)>a{color:var(--orange)}
@media(prefers-reduced-motion:reduce){.vendor-platform-visual :is(.rl-benefit-card,.rl-guide-card){transition:none}}
