.sf-v2.sf-frameworks-page {
  left: auto;
  margin-left: 0;
  margin-right: 0;
  right: auto;
  width: 100%;
}

.sf-v2.sf-frameworks-page .sf-frameworks-hero {
  padding-bottom: 58px;
  padding-top: 58px;
}
.sf-v2.sf-frameworks-page .sf-frameworks-hero .sf-hero-grid > .wp-block-group__inner-container {
  align-items: start;
}
.sf-v2.sf-frameworks-page .sf-frameworks-hero .sf-hero-copy {
  padding-top: 0;
}
.sf-v2.sf-frameworks-page .sf-frameworks-hero .sf-hero-copy h1 {
  max-width: 640px;
}
.sf-v2.sf-frameworks-page .sf-frameworks-hero .sf-hero-subtitle {
  font-size: 20px;
  line-height: 1.55;
  max-width: 620px;
}
.sf-v2.sf-frameworks-page .sf-frameworks-hero-visual {
  box-shadow: 0 20px 52px rgba(10, 35, 68, .18);
  padding: 24px;
}
.sf-v2.sf-frameworks-page .sf-button__link .fa,
.sf-v2.sf-frameworks-page .wp-block-button__link .fa {
  font-size: 1.08em;
  margin-right: .5rem;
  vertical-align: -0.04em;
}
.sf-v2.sf-frameworks-page .wp-block-button__link { font-weight: 750; }
.sf-v2.sf-frameworks-page .sf-section-head { margin-bottom: 26px; }
.sf-v2.sf-frameworks-page .sf-section:not(.sf-hero) { padding-bottom: 68px; padding-top: 68px; }
.sf-v2.sf-frameworks-page .sf-section-compact { padding-bottom: 28px; padding-top: 28px; }
.sf-v2.sf-frameworks-page .sf-frameworks-hero-visual .sf-section-kicker,
.sf-v2.sf-frameworks-page .sf-frameworks-hero-visual > .wp-block-group__inner-container > .sf-section-kicker { font-size: 10px; letter-spacing: .1em; }
.sf-v2.sf-frameworks-page .sf-frameworks-hero-visual h3 { font-size: 24px; line-height: 1.15; }
.sf-v2.sf-frameworks-page .sf-frameworks-hero-visual > .wp-block-group__inner-container > .sf-section-kicker { font-size: 9px; margin-bottom: 8px; }
.sf-v2.sf-frameworks-page .sf-frameworks-hero-visual > .wp-block-group__inner-container > h3 { font-size: 20px; max-width: 360px; }
.sf-v2.sf-frameworks-page .sf-frameworks-methodology-map > .wp-block-group__inner-container { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; margin-top: 16px; }
.sf-v2.sf-frameworks-page .sf-frameworks-map-node h3 { font-size: 15px; }
.sf-v2.sf-frameworks-page .sf-frameworks-map-node p { font-size: 11px; line-height: 1.35; }
.sf-v2.sf-frameworks-page .sf-frameworks-map-node { padding: 0; }
.sf-v2.sf-frameworks-page .sf-frameworks-map-node > .wp-block-group__inner-container { gap: 9px; padding: 11px; }
.sf-v2.sf-frameworks-page .sf-frameworks-map-connector { display: none; }
/* Only the inner content wrapper is a grid; its parent contains one section container. */
.sf-v2.sf-frameworks-page .sf-section:is(.sf-frameworks-split, .sf-frameworks-customization, .sf-frameworks-service-map) > .wp-block-group__inner-container {
  display: block;
}
.sf-v2.sf-frameworks-page .sf-section:is(.sf-frameworks-split, .sf-frameworks-customization, .sf-frameworks-service-map) .sf-section-inner {
  width: 100%;
  max-width: 1180px;
  margin-inline: auto;
}
.sf-v2.sf-frameworks-page .sf-section:is(.sf-frameworks-split, .sf-frameworks-customization, .sf-frameworks-service-map) .sf-section-inner > .wp-block-group__inner-container {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  gap: 48px;
  width: 100%;
  max-width: none;
  margin-inline: auto;
  align-items: center;
}
.sf-v2.sf-frameworks-page .sf-section:is(.sf-frameworks-split, .sf-frameworks-customization, .sf-frameworks-service-map) .sf-section-inner > .wp-block-group__inner-container > * {
  min-width: 0;
}
@media (max-width: 900px) {
  .sf-v2.sf-frameworks-page .sf-section:is(.sf-frameworks-split, .sf-frameworks-customization, .sf-frameworks-service-map) .sf-section-inner > .wp-block-group__inner-container {
    grid-template-columns: minmax(0, 1fr);
    gap: 28px;
  }
}
.sf-v2.sf-frameworks-page .sf-frameworks-split .sf-frameworks-copy-centered,
.sf-v2.sf-frameworks-page .sf-frameworks-customization .sf-frameworks-copy-centered,
.sf-v2.sf-frameworks-page .sf-frameworks-service-map .sf-frameworks-copy-centered { text-align: left; }
.sf-v2.sf-frameworks-page .sf-frameworks-copy-centered .sf-section-kicker { display: block; text-align: left; letter-spacing: 0; margin-bottom: 16px; }
.sf-v2.sf-frameworks-page .sf-frameworks-copy-centered h2 { font-size: 34px; line-height: 1.2; letter-spacing: 0; margin: 0 0 20px; max-width: 540px; text-align: left; }
.sf-v2.sf-frameworks-page .sf-frameworks-copy-centered p:not(.sf-section-kicker) { font-size: 16px; line-height: 1.75; margin: 0 0 16px; max-width: 540px; text-align: left; }
.sf-v2.sf-frameworks-page .sf-frameworks-copy-centered .sf-button-row { justify-content: flex-start; gap: 12px; margin-top: 26px; }
.sf-v2.sf-frameworks-page .sf-frameworks-image-band {
  display: grid; grid-template-columns: minmax(0, 1.08fr) minmax(260px, .92fr);
  gap: 28px; align-items: center; margin: 0 auto 30px; max-width: 1040px;
  padding: 18px; border: 1px solid rgba(13,86,217,.12); border-radius: 14px;
  background: #fff; box-shadow: 0 14px 38px rgba(10,44,84,.08);
}
.sf-v2.sf-frameworks-page .sf-frameworks-image-band figure,
.sf-v2.sf-frameworks-page .sf-frameworks-evidence-image { margin: 0; }
.sf-v2.sf-frameworks-page .sf-frameworks-image-band img,
.sf-v2.sf-frameworks-page .sf-frameworks-evidence-image img { display: block; width: 100%; height: auto; border-radius: 10px; }
.sf-v2.sf-frameworks-page .sf-frameworks-image-band h3 { margin: .2rem 0 .5rem; }
.sf-v2.sf-frameworks-page .sf-frameworks-image-band p:last-child { margin-bottom: 0; }
.sf-v2.sf-frameworks-page .sf-frameworks-evidence-image { max-width: 840px; margin: 0 auto 28px; }
.sf-v2.sf-frameworks-page .sf-frameworks-evidence-image img { max-height: 260px; object-fit: cover; object-position: center; }
.sf-v2.sf-frameworks-page .sf-ai-score .sf-icon-badge,
.sf-v2.sf-frameworks-page #sf-ai-score .sf-icon-badge { display: grid; place-items: center; width: 46px; height: 46px; border-radius: 50%; background: #e8f1ff; color: #0d56d9; }
.sf-v2.sf-frameworks-page .sf-ai-score .sf-icon-badge .fa,
.sf-v2.sf-frameworks-page #sf-ai-score .sf-icon-badge .fa { color: #0d56d9; font-size: 20px; }
.sf-v2.sf-frameworks-page .sf-frameworks-custom-inputs { padding: 26px 28px; }
.sf-v2.sf-frameworks-page .sf-frameworks-custom-inputs > .wp-block-group__inner-container > .sf-section-kicker { margin: 0 0 16px; letter-spacing: .08em; }
.sf-v2.sf-frameworks-page .sf-frameworks-custom-visual .sf-frameworks-pill-row {
  display: block;
  width: 100%;
}
.sf-v2.sf-frameworks-page .sf-frameworks-custom-visual .sf-frameworks-pill-row > .wp-block-group__inner-container {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  width: 100%;
}
.sf-v2.sf-frameworks-page .sf-frameworks-custom-visual .sf-frameworks-pill {
  margin: 0;
  min-height: 42px;
  padding: 9px 16px;
  border: 1px solid rgba(255, 255, 255, .55);
  box-shadow: 0 4px 12px rgba(3, 18, 38, .12);
}
.sf-v2.sf-frameworks-page .sf-faq-card { padding: 0; margin: 0; overflow: hidden; border: 0; border-bottom: 1px solid #dce4eb; border-radius: 0; background: transparent; box-shadow: none; transform: none; }
.sf-v2.sf-frameworks-page .sf-faq-card:first-child { border-top: 1px solid #dce4eb; }
.sf-v2.sf-frameworks-page .sf-faq-card:hover { box-shadow: none; transform: none; border-color: #dce4eb; }
.sf-v2.sf-frameworks-page .sf-faq-card summary { display: block; position: relative; min-height: 72px; padding: 23px 58px 23px 20px; cursor: pointer; list-style: none; font-size: 17px; line-height: 1.5; font-weight: 600; color: #092f54; letter-spacing: 0; }
.sf-v2.sf-frameworks-page .sf-faq-card summary:hover { background: #f5f8fb; }
.sf-v2.sf-frameworks-page .sf-faq-card summary:focus-visible { outline: 2px solid #0d56d9; outline-offset: -3px; }
.sf-v2.sf-frameworks-page .sf-faq-card[open] { background: #f5f8fb; }
.sf-v2.sf-frameworks-page .sf-faq-card summary::-webkit-details-marker { display: none; }
.sf-v2.sf-frameworks-page .sf-faq-card summary::after { content: "+"; position: absolute; right: 20px; top: 50%; transform: translateY(-50%); display: grid; place-items: center; width: 28px; height: 28px; border-radius: 50%; background: #e7eef7; color: #0d56d9; font-size: 20px; font-weight: 400; }
.sf-v2.sf-frameworks-page .sf-faq-card[open] summary::after { content: "−"; }
.sf-v2.sf-frameworks-page .sf-faq-card .sf-faq-answer { margin: 0; padding: 0 58px 24px 20px; max-width: 850px; color: #50627a; font-size: 16px; line-height: 1.75; }
.sf-v2.sf-frameworks-page .sf-faq-card summary .sf-tm { display: inline; position: relative; font-size: .6em; }
.sf-v2.sf-frameworks-page .wp-block-group:has(> .wp-block-group__inner-container > .sf-faq-card) { width: 100%; max-width: 960px; margin-inline: auto; }
.sf-v2.sf-frameworks-page .wp-block-group__inner-container:has(> .sf-faq-card) { display: block; }
@media (max-width: 760px) {
  .sf-v2.sf-frameworks-page .sf-frameworks-copy-centered h2 { font-size: 28px; }
  .sf-v2.sf-frameworks-page .sf-frameworks-custom-inputs { padding: 22px 20px; }
  .sf-v2.sf-frameworks-page .sf-frameworks-custom-visual .sf-frameworks-pill-row > .wp-block-group__inner-container { gap: 8px; }
  .sf-v2.sf-frameworks-page .sf-frameworks-custom-visual .sf-frameworks-pill { min-height: 40px; padding: 8px 13px; }
  .sf-v2.sf-frameworks-page .sf-faq-card summary { font-size: 16px; padding-left: 12px; }
  .sf-v2.sf-frameworks-page .sf-faq-card .sf-faq-answer { padding-left: 12px; padding-right: 20px; }
  .sf-v2.sf-frameworks-page .sf-frameworks-hero { padding-bottom: 52px; padding-top: 48px; }
  .sf-v2.sf-frameworks-page .sf-frameworks-hero .sf-hero-copy { padding-top: 0; }
  .sf-v2.sf-frameworks-page .sf-section:not(.sf-hero) { padding-bottom: 48px; padding-top: 48px; }
  .sf-v2.sf-frameworks-page .sf-frameworks-image-band { grid-template-columns: 1fr; gap: 16px; padding: 14px; }
  .sf-v2.sf-frameworks-page .sf-frameworks-methodology-map > .wp-block-group__inner-container { grid-template-columns: 1fr; }
}
