.esprit-sgbr { --sgbr-color: #173f54; color: #444; font-size: 17px; line-height: 1.65; }
.esprit-sgbr .esprit-sgbr-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 24px; }
.esprit-sgbr .esprit-sgbr-card { display: flex; flex-direction: column; min-width: 0; padding: 28px; background: #fff; border: 1px solid #dce5e9; border-radius: 14px; box-shadow: 0 6px 24px rgba(23, 63, 84, .05); }
.esprit-sgbr .esprit-sgbr-card h3 { color: var(--sgbr-color); font-size: 24px; font-weight: 600; line-height: 1.3; margin: 0 0 14px; padding: 0; overflow-wrap: anywhere; }
.esprit-sgbr .esprit-sgbr-card p { margin: 0 0 14px; padding: 0; font-size: 16px; line-height: 1.65; }
.esprit-sgbr .esprit-sgbr-logo { height: 64px; margin-bottom: 22px; display: flex; align-items: center; }
.esprit-sgbr .esprit-sgbr-logo img { max-height: 64px; max-width: 160px; width: auto; height: auto; object-fit: contain; }
.esprit-sgbr .esprit-sgbr-card .esprit-sgbr-role { font-weight: 600; }
.esprit-sgbr .esprit-sgbr-card .esprit-sgbr-meta { color: #555; }
.esprit-sgbr .esprit-sgbr-cover { height: 200px; width: 100%; object-fit: contain; object-position: left center; margin-bottom: 22px; }
.esprit-sgbr .esprit-sgbr-card .esprit-sgbr-label { color: var(--sgbr-color); font-size: 14px; font-weight: 600; }
.esprit-sgbr .esprit-sgbr-card a.esprit-sgbr-button { align-self: flex-start; margin-top: auto; padding: 10px 20px; background: var(--sgbr-color); border: 2px solid var(--sgbr-color); border-radius: 30px; color: #fff !important; font-size: 16px; line-height: 1.5; text-decoration: none !important; transition: background .15s, border-color .15s; }
.esprit-sgbr .esprit-sgbr-card a.esprit-sgbr-button:hover { background: #0f2d3d; border-color: #0f2d3d; }
.esprit-sgbr a:focus-visible { outline: 3px solid #427e9a; outline-offset: 4px; }
.esprit-sgbr p.esprit-sgbr-more { margin: 24px 0 0; padding: 0; }
.esprit-sgbr .esprit-sgbr-more a { color: var(--sgbr-color); text-decoration: underline; }
.esprit-sgbr p.esprit-sgbr-notice { margin: 0 0 16px; padding: 0; font-size: 16px; }
@media (max-width: 980px) { .esprit-sgbr .esprit-sgbr-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 600px) { .esprit-sgbr .esprit-sgbr-grid { grid-template-columns: minmax(0, 1fr); gap: 18px; } .esprit-sgbr .esprit-sgbr-card { padding: 24px; } }
