/* SpaceBridge verified-photo cleanup: abstract concepts are live HTML/CSS, never raster UI. */
.sbrc-visual {
  box-sizing: border-box;
  position: relative;
  display: grid;
  width: 100%;
  height: 100%;
  min-height: 180px;
  place-items: center;
  overflow: hidden;
  padding: clamp(18px, 3vw, 34px);
  color: #16324a;
  background:
    radial-gradient(circle at 86% 12%, rgba(30, 142, 194, .14), transparent 34%),
    linear-gradient(145deg, #f7fbfd 0%, #eaf5f8 100%);
}
.sbrc-visual::before {
  content: "";
  position: absolute;
  inset: 18% auto auto 8%;
  width: 42%;
  height: 42%;
  border: 1px solid rgba(7, 95, 156, .12);
  border-radius: 50%;
}
.sbrc-panel {
  position: relative;
  z-index: 1;
  display: grid;
  width: min(100%, 470px);
  gap: 12px;
  padding: clamp(18px, 2.4vw, 28px);
  border: 1px solid #c9dfe8;
  border-radius: 18px;
  background: rgba(255,255,255,.96);
  box-shadow: 0 18px 44px rgba(16,45,67,.12);
}
.sbrc-panel__label { color: #075f9c; font-size: 12px; font-weight: 850; letter-spacing: .08em; }
.sbrc-panel__title { color: #16233a; font-size: clamp(18px, 2vw, 24px); font-weight: 850; line-height: 1.25; letter-spacing: -.03em; }
.sbrc-steps { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 8px; }
.sbrc-step { display: grid; place-items: center; min-height: 58px; padding: 8px; border: 1px solid #d7e6ec; border-radius: 11px; background: #f8fbfc; color: #52677f; font-size: 12px; font-weight: 750; text-align: center; }
.sbrc-step b { display: block; margin-bottom: 2px; color: #075f9c; font-size: 11px; }
.sbrc-meter { display: grid; grid-template-columns: 1.1fr .8fr 1fr; gap: 7px; }
.sbrc-meter span { height: 8px; border-radius: 99px; background: #cfe7ef; }
.sbrc-meter span:nth-child(2) { background:#7bc0d9; }
.sbrc-meter span:nth-child(3) { background:#0f789f; }

.sbrc-card-visual {
  display: grid;
  place-items: center;
  min-height: 132px;
  padding: 18px;
  background: linear-gradient(145deg,#f7fbfd,#e9f5f8);
}
.sbrc-card-visual__icon {
  display: grid;
  width: 64px;
  height: 64px;
  place-items: center;
  border: 1px solid #b9d9e5;
  border-radius: 18px;
  background: #fff;
  color: #075f9c;
  box-shadow: 0 12px 24px rgba(16,45,67,.09);
  font-size: 27px;
}
.sbrc-card-visual__tags { display:flex; flex-wrap:wrap; justify-content:center; gap:6px; margin-top:10px; }
.sbrc-card-visual__tags span { padding:4px 8px; border:1px solid #cfe1e9; border-radius:999px; background:#fff; color:#52677f; font-size:11px; font-weight:750; }

.sbrc-post-visual {
  display: grid;
  gap: 14px;
  padding: clamp(20px,4vw,34px);
  background: linear-gradient(145deg,#f8fbfc,#ecf6f9);
}
.sbrc-post-visual h3 { margin:0; color:#16233a; font-size:clamp(18px,3vw,24px); line-height:1.35; }
.sbrc-post-visual p { margin:0; color:#52677f; font-size:14px; line-height:1.65; }
.sbrc-post-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:9px; }
.sbrc-post-grid span { min-height:58px; padding:10px; border:1px solid #cfe1e9; border-radius:10px; background:#fff; color:#25384a; font-size:12px; font-weight:750; text-align:center; }
.sbrc-post-grid b { display:block; margin-bottom:3px; color:#075f9c; font-size:11px; }

.quote-banner.sbrc-no-raster { background:linear-gradient(110deg,#e9f5fa,#f8fcfd 58%,#fff); }
html body.sbrc-page footer.site-footer {
  background-color:#081a2d !important;
  background-image:linear-gradient(135deg,#07182a 0%,#0b2a46 58%,#0d385b 100%) !important;
  background-size:100% 100% !important;
}
/* The verified dark footer replaces the former light surface, so its inherited
   ink and blue focus ring must be paired with the new background as well. */
html body.sbrc-page footer.site-footer :is(.footer-links a,address a),
html body.sbrc-page footer.site-footer :is(.footer-links a,address a):is(:hover,:active,:visited) {
  color:#f6fbff !important;
}
html body.sbrc-page footer.site-footer :is(address,.footer-bottom p,.footer-bottom span) {
  color:#dcecf7 !important;
}
html body.sbrc-page footer.site-footer a:focus-visible {
  outline:3px solid #ffd166 !important;
  outline-offset:3px !important;
}

@media (max-width:760px) {
  .sbrc-visual { min-height: 230px; padding: 16px; }
  .sbrc-panel { gap: 10px; padding: 18px; border-radius: 14px; }
  .sbrc-steps { grid-template-columns: 1fr; }
  .sbrc-step { min-height: 44px; grid-template-columns:auto 1fr; gap:8px; justify-items:start; text-align:left; }
  .sbrc-step b { margin:0; }
  .sbrc-post-grid { grid-template-columns:1fr; }
}
