/* Capability page. Native HTML/SVG and shared brand styles; no client rendering. */
.strength-hero .page-hero-content { gap: 70px; }
.strength-hero .page-hero-content > div { max-width: 650px; }
.strength-hero h1 { white-space: nowrap; font-size: 58px; letter-spacing: -.04em; }
.strength-hero .lead { max-width: 580px; font-size: 16px; }
.strength-hero .button-row { gap: 24px; }
.strength-index { display: grid; gap: 12px; width: 380px; flex: none; }
.strength-index a { display: flex; align-items: center; gap: 15px; padding: 21px 22px; border: 1px solid #e0e9db; border-radius: 13px; background: #fff; transition: border-color .2s, translate .2s; }
.strength-index a:hover { border-color: #b6cfad; translate: 3px 0; }
.strength-index-icon { display: grid; place-items: center; width: 43px; height: 43px; flex: none; border-radius: 11px; background: #eff6e9; color: #568b4b; }
.strength-index-icon .icon { width: 25px; height: 25px; }
.strength-index-copy { display: flex; flex-direction: column; gap: 5px; flex: 1; }
.strength-index strong { font-size: 16px; font-weight: 550; }
.strength-index small { font-size: 10px; color: #6f8064; }
.strength-index a > .icon { width: 17px; height: 17px; color: #859a79; }
.strength-section { padding-block: 70px; scroll-margin-top: -16px; }
.strength-section-heading { display: flex; gap: 22px; align-items: flex-start; margin-bottom: 36px; }
.strength-number { padding-top: 2px; font-size: 13px; font-weight: 500; line-height: 1.5; color: #90a782; letter-spacing: .08em; }
.strength-section-heading .eyebrow { font-size: 11px; margin-bottom: 13px; }
.strength-section-heading h2 { font-size: 33px; letter-spacing: -.02em; }
.strength-section-heading p { margin-top: 14px; font-size: 14px; line-height: 1.8; }
.strength-split { display: grid; grid-template-columns: 1fr 1fr; align-items: center; gap: 70px; }
.strength-split > * { min-width: 0; }
.strength-list { display: grid; gap: 27px; list-style: none; padding: 0; margin: 0 0 28px; }
.strength-list li { display: flex; align-items: flex-start; gap: 13px; }
.strength-check { display: grid; place-items: center; flex: none; width: 24px; height: 24px; margin-top: 1px; border-radius: 50%; background: #edf5e8; color: #548f42; }
.strength-check .icon { width: 14px; height: 14px; }
.strength-list h3 { font-size: 19px; letter-spacing: -.015em; margin-bottom: 10px; }
.strength-list p { font-size: 13px; line-height: 1.9; max-width: 420px; }
.strength-split > div > .text-link { margin-left: 37px; font-size: 13px; }
.strength-integration { padding: 27px 30px 20px; border: 1px solid #dfe9d8; border-radius: 20px; background: #f6f9f1; }
.strength-visual-heading { display: flex; align-items: center; justify-content: space-between; margin-bottom: 24px; color: #5e7852; font-size: 12px; }
.strength-visual-heading .icon { width: 18px; height: 18px; }
.strength-endpoints { display: grid; grid-template-columns: 1fr 1fr; gap: 18px; }
.strength-endpoints > div { display: flex; flex-direction: column; align-items: center; gap: 7px; padding: 17px 10px; border: 1px solid #e0e8d7; border-radius: 10px; background: #fff; }
.strength-endpoints .icon { width: 26px; height: 26px; color: #75966a; margin-bottom: 3px; }
.strength-endpoints strong { font-size: 13px; font-weight: 500; }
.strength-endpoints span { font-size: 10px; color: #728466; }
.strength-connector { height: 25px; width: 1px; background: #c5d8b5; margin: 0 auto; }
.strength-platform { display: flex; align-items: center; justify-content: center; gap: 14px; padding: 18px 16px; border: 1px solid #bdd3ae; border-radius: 12px; background: #edf5e4; }
.strength-platform img { width: 40px; height: 40px; flex: none; }
.strength-platform strong { display: block; font-size: 16px; font-weight: 550; }
.strength-platform span { display: block; font-size: 10px; color: #657d56; margin-top: 3px; }
.strength-integrations > div { padding-block: 14px; }
.strength-visual-note { margin-top: 15px; text-align: right; color: #7c8c72; font-size: 9px; }
.strength-delivery { display: grid; grid-template-columns: repeat(4,1fr); margin: 39px 0 0; padding: 24px 0 0; list-style: none; border-top: 1px solid var(--line); gap: 24px; }
.strength-delivery li { display: flex; align-items: flex-start; gap: 12px; }
.strength-delivery li > span { font-size: 10px; color: #77946b; padding-top: 2px; }
.strength-delivery strong { display: block; font-size: 14px; font-weight: 500; }
.strength-delivery small { display: block; font-size: 10px; color: #718168; margin-top: 6px; }
.strength-delivery .icon { width: 16px; height: 16px; color: #a0b293; margin: 4px 0 0 auto; }
.strength-operations { background: #f4f8ef; border-block: 1px solid #e8eee1; scroll-margin-top: -16px; }
.strength-safeguards { padding: 29px; background: #fff; border: 1px solid #e0e8d7; border-radius: 20px; }
.strength-safeguards-heading { display: flex; align-items: center; gap: 15px; margin-bottom: 24px; }
.strength-shield { display: grid; place-items: center; flex: none; width: 52px; height: 56px; border-radius: 15px; background: #ecf4e4; color: #699454; }
.strength-shield .icon { width: 30px; height: 30px; }
.strength-safeguards-heading strong { font-size: 15px; font-weight: 550; }
.strength-safeguards-heading p { font-size: 11px; margin-top: 5px; }
.strength-safeguard-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; }
.strength-safeguard-grid > div { padding: 20px; border: 1px solid #e8eee1; border-radius: 10px; }
.strength-safeguard-grid .icon { width: 23px; height: 23px; color: #6d8f5b; margin-bottom: 13px; }
.strength-safeguard-grid strong { display: block; font-size: 14px; font-weight: 500; }
.strength-safeguard-grid span { display: block; color: #74836b; font-size: 10px; margin-top: 5px; }
.strength-scope { font-size: 11px; line-height: 1.8; color: #6c7d61; padding: 13px 17px; border-left: 2px solid #b9cfaa; margin-left: 37px; }
.strength-support-grid { display: grid; grid-template-columns: repeat(3,1fr); gap: 24px; }
.strength-support-grid article { padding: 27px 29px; border: 1px solid var(--line); border-radius: 15px; }
.strength-support-grid .icon-box { margin-bottom: 20px; }
.strength-support-grid h3 { font-size: 20px; margin-bottom: 12px; }
.strength-support-grid p { font-size: 13px; line-height: 1.9; }
.strength-support-bottom { display: flex; align-items: center; justify-content: space-between; gap: 40px; padding-top: 30px; margin-top: 34px; border-top: 1px solid var(--line); }
.strength-support-bottom .eyebrow { font-size: 10px; margin-bottom: 12px; }
.strength-service-flow { display: flex; flex-wrap: wrap; gap: 13px; list-style: none; padding: 0; margin: 0; }
.strength-service-flow li { display: flex; align-items: center; gap: 13px; color: #59714d; font-size: 13px; }
.strength-service-flow li + li::before { content: '→'; color: #98ad89; }
.strength-contact { display: flex; flex-direction: column; align-items: flex-start; gap: 5px; flex: none; }
.strength-contact > span { color: #63755a; font-size: 11px; }
.strength-contact a { display: flex; align-items: center; gap: 13px; font-size: 24px; font-weight: 550; letter-spacing: -.01em; }
.strength-contact a .icon { width: 19px; height: 19px; color: var(--green-dark); }
.strength-contact small { color: #74826c; font-size: 10px; }

@media (max-width:1150px) {
  .strength-hero .page-hero-content { gap: 38px; }
  .strength-index { width: 345px; }
  .strength-index a { padding: 18px; }
  .strength-hero h1 { font-size: 52px; }
  .strength-hero .lead { font-size: 14px; }
  .strength-split { gap: 42px; }
  .strength-section { padding-block: 60px; }
  .strength-integration { padding: 24px; }
  .strength-safeguards { padding: 23px; }
  .strength-delivery { gap: 16px; }
}

@media (max-width:900px) {
  .strength-section, .strength-operations { scroll-margin-top: -28px; }
  .strength-hero .page-hero-content { gap: 27px; }
  .strength-index { width: 310px; }
  .strength-index a { padding: 15px; gap: 12px; }
  .strength-index strong { font-size: 14px; }
  .strength-index small { font-size: 9px; }
  .strength-index-icon { width: 37px; height: 37px; }
  .strength-index-icon .icon { width: 22px; height: 22px; }
  .strength-hero h1 { font-size: 46px; }
  .strength-hero .button-row { gap: 18px; }
  .strength-hero .button-row .button { font-size: 13px; padding: 11px 17px; min-height: 46px; }
  .strength-hero .button-row .text-link { font-size: 12px; }
  .strength-section-heading h2 { font-size: 29px; }
  .strength-section-heading p { font-size: 13px; }
  .strength-split { gap: 30px; }
  .strength-list h3 { font-size: 17px; }
  .strength-list p { font-size: 12px; }
  .strength-integration { padding: 21px 18px; }
  .strength-endpoints { gap: 10px; }
  .strength-endpoints strong { font-size: 12px; }
  .strength-endpoints span { font-size: 9px; }
  .strength-platform { gap: 10px; padding-inline: 10px; }
  .strength-platform strong { font-size: 14px; }
  .strength-platform span { font-size: 8px; }
  .strength-safeguards-heading { gap: 12px; }
  .strength-safeguards-heading strong { font-size: 13px; }
  .strength-safeguards-heading p { font-size: 10px; }
  .strength-shield { width: 44px; height: 48px; }
  .strength-safeguard-grid > div { padding: 15px; }
  .strength-safeguard-grid strong { font-size: 12px; }
  .strength-safeguard-grid span { font-size: 9px; }
  .strength-support-grid { gap: 16px; }
  .strength-support-grid article { padding: 23px; }
  .strength-support-grid h3 { font-size: 18px; }
  .strength-support-grid p { font-size: 12px; }
  .strength-delivery { grid-template-columns: repeat(2,1fr); gap: 20px; }
  .strength-delivery li:nth-child(2) > .icon { display: none; }
  .strength-support-bottom { gap: 26px; }
  .strength-service-flow { gap: 10px; }
  .strength-service-flow li { font-size: 11px; gap: 10px; }
  .strength-contact a { font-size: 21px; }
}

@media (max-width:680px) {
  .strength-section, .strength-operations { scroll-margin-top: -32px; }
  .strength-hero h1 { font-size: 39px; }
  .strength-hero .lead { font-size: 14px; }
  .strength-index { width: 100%; margin-top: 32px; gap: 10px; }
  .strength-index a { padding: 16px 18px; }
  .strength-index strong { font-size: 15px; }
  .strength-index small { font-size: 10px; }
  .strength-section { padding-block: 47px; }
  .strength-section-heading { gap: 14px; margin-bottom: 27px; }
  .strength-section-heading .eyebrow { font-size: 10px; }
  .strength-section-heading h2 { font-size: 26px; }
  .strength-section-heading p { font-size: 13px; margin-top: 12px; }
  .strength-number { font-size: 11px; }
  .strength-split { grid-template-columns: 1fr; gap: 31px; }
  .strength-list { gap: 23px; }
  .strength-list h3 { font-size: 18px; }
  .strength-list p { font-size: 13px; }
  .strength-endpoints strong { font-size: 13px; }
  .strength-endpoints span { font-size: 10px; }
  .strength-platform strong { font-size: 15px; }
  .strength-platform span { font-size: 9px; }
  .strength-delivery { margin-top: 28px; gap: 21px 16px; }
  .strength-delivery li { gap: 9px; }
  .strength-delivery strong { font-size: 13px; }
  .strength-delivery small { font-size: 9px; }
  .strength-delivery .icon { display: none; }
  .strength-operations { scroll-margin-top: -32px; }
  .strength-operations .strength-safeguards { order: 2; }
  .strength-safeguards-heading strong { font-size: 14px; }
  .strength-safeguard-grid > div { padding: 18px; }
  .strength-safeguard-grid strong { font-size: 14px; }
  .strength-safeguard-grid span { font-size: 10px; }
  .strength-support-grid { grid-template-columns: 1fr; gap: 15px; }
  .strength-support-grid article { padding: 24px; }
  .strength-support-grid h3 { font-size: 20px; }
  .strength-support-grid p { font-size: 13px; }
  .strength-support-bottom { align-items: flex-start; flex-direction: column; gap: 25px; }
  .strength-service-flow { gap: 11px; }
  .strength-service-flow li { font-size: 12px; gap: 11px; }
  .strength-contact a { font-size: 25px; }
}

@media (max-width:365px) {
  .strength-hero h1 { font-size: 36px; }
  .strength-index a { padding-inline: 14px; }
  .strength-index small { font-size: 9px; }
  .strength-platform span { font-size: 8px; }
  .strength-safeguards { padding: 20px; }
  .strength-safeguard-grid > div { padding: 14px; }
  .strength-service-flow li { font-size: 11px; gap: 8px; }
  .strength-service-flow { gap: 8px; }
}
