:root {
  --tw-navy: #071332;
  --tw-blue: #0b46e5;
  --tw-bright-blue: #1465f3;
  --tw-white: #ffffff;
  --tw-off-white: #f7f9fc;
  --tw-gray: #687386;
  --tw-dark-gray: #253047;
  --tw-border: #d9e0ea;
  --tw-shell: 1240px;
  --tw-radius-interactive: 6px;
  --tw-radius-information: 0px;
  --tw-space-1: 8px;
  --tw-space-2: 16px;
  --tw-space-3: 24px;
  --tw-space-4: 32px;
  --tw-space-5: 48px;
  --tw-space-6: 64px;
  --tw-space-7: 96px;
  --tw-header-height: 88px;
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body {
  margin: 0;
  background: var(--tw-white);
  color: var(--tw-navy);
  font-family: Inter, ui-sans-serif, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  line-height: 1.6;
  text-rendering: optimizeLegibility;
  -webkit-font-smoothing: antialiased;
}
img { max-width: 100%; height: auto; }
a { color: var(--tw-blue); text-underline-offset: .14em; }
a:hover { text-decoration-thickness: 2px; }
button, input, select, textarea { font: inherit; }
button, input, select, textarea, .tw-button { border-radius: var(--tw-radius-interactive); }
.screen-reader-text { position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0; }

.tw-shell { width: min(calc(100% - 48px), var(--tw-shell)); margin-inline: auto; }

.tw-skip-link {
  position: fixed; left: 16px; top: 16px; transform: translateY(-150%); z-index: 99999;
  background: var(--tw-navy); color: #fff; padding: 10px 14px; border-radius: var(--tw-radius-interactive);
}
.tw-skip-link:focus { transform: translateY(0); }

/* Header */
.tw-site-header {
  position: relative;
  z-index: 1000;
  background: #fff;
  border-bottom: 1px solid rgba(7,19,50,.08);
}
.tw-header-inner {
  min-height: var(--tw-header-height);
  display: flex;
  align-items: center;
  gap: 36px;
}
.tw-branding { flex: 0 0 auto; display:flex; align-items:center; }
.tw-branding .custom-logo-link { display:flex; align-items:center; text-decoration:none; }
.tw-branding img { display:block; max-height: 58px; width:auto; }
.tw-site-title { color: var(--tw-navy); font-size: 1.55rem; font-weight: 800; text-decoration: none; }
.tw-navigation-wrap { margin-left:auto; display:flex; align-items:center; gap:24px; min-width:0; }
.tw-primary-nav { display:flex; align-items:center; }
.tw-primary-menu { list-style:none; display:flex; align-items:stretch; gap:4px; margin:0; padding:0; }
.tw-nav-item { position:static; display:flex; align-items:center; }
.tw-nav-trigger-row { display:flex; align-items:center; }
.tw-nav-link {
  display:flex; align-items:center; min-height:44px; padding:9px 10px;
  color:var(--tw-navy); text-decoration:none; font-weight:700; font-size:.94rem; white-space:nowrap;
}
.tw-nav-link:hover, .tw-nav-link:focus-visible, .tw-has-mega.is-open .tw-nav-link { color:var(--tw-blue); }
.tw-mega-toggle {
  width:28px; height:38px; min-height:0; padding:0; margin-left:-7px; border:0; background:transparent;
  color:var(--tw-navy); font-weight:800; line-height:1; box-shadow:none; transform:none;
}
.tw-mega-toggle:hover { background:transparent; border:0; color:var(--tw-blue); transform:none; }
.tw-mega-toggle > span[aria-hidden="true"] { display:block; transition: transform .18s ease; transform-origin:center; }
.tw-has-mega.is-open .tw-mega-toggle > span[aria-hidden="true"] { transform: rotate(180deg); }
.tw-portal-button {
  display:inline-flex; align-items:center; justify-content:center; gap:8px; min-height:44px; padding:10px 17px;
  background:var(--tw-blue); color:#fff; border:1px solid var(--tw-blue); border-radius:var(--tw-radius-interactive);
  text-decoration:none; font-size:.91rem; font-weight:750; white-space:nowrap;
}
.tw-portal-button:hover, .tw-portal-button:focus-visible { background:var(--tw-navy); border-color:var(--tw-navy); color:#fff; }
.tw-portal-icon { font-size:.9em; }
.tw-menu-toggle { display:none; }

/* Mega menu */
.tw-mega-panel {
  position:absolute; left:0; right:0; top:100%; background:#fff; border-top:1px solid var(--tw-border);
  border-bottom:1px solid var(--tw-border); box-shadow:0 18px 38px rgba(7,19,50,.11);
}
.tw-mega-panel[hidden] { display:none!important; }
.tw-mega-inner { display:grid; grid-template-columns:minmax(0,3fr) minmax(250px,1fr); gap:48px; padding-top:36px; padding-bottom:38px; }
.tw-mega-columns { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:34px; }
.tw-mega-column { border-radius:0; }
.tw-mega-column h2, .tw-mega-feature h2 { margin:0 0 14px; color:var(--tw-navy); font-size:.79rem; line-height:1.2; letter-spacing:.08em; text-transform:uppercase; }
.tw-mega-column ul { list-style:none; margin:0; padding:0; }
.tw-mega-column li + li { margin-top:3px; }
.tw-mega-column a { display:block; padding:6px 0; color:var(--tw-navy); text-decoration:none; }
.tw-mega-column a:hover .tw-mega-link-label, .tw-mega-column a:focus-visible .tw-mega-link-label { color:var(--tw-blue); }
.tw-mega-link-label { display:block; font-size:.98rem; line-height:1.35; font-weight:700; }
.tw-mega-link-description { display:block; margin-top:2px; color:var(--tw-gray); font-size:.79rem; line-height:1.4; font-weight:500; }
.tw-mega-feature { padding:28px 0 28px 34px; border-left:1px solid var(--tw-border); border-radius:0; }
.tw-mega-feature h2 { color:var(--tw-blue); }
.tw-mega-feature p { margin:0 0 18px; color:var(--tw-dark-gray); font-size:.94rem; line-height:1.55; }
.tw-text-link { display:inline-flex; align-items:center; gap:8px; color:var(--tw-blue); font-weight:800; text-decoration:none; }
.tw-text-link:hover { text-decoration:underline; }

.tw-site-main { min-height:50vh; }
.tw-content-shell, .tw-page-header { padding-block:64px; }
.tw-page-content > .elementor { width:100%; }
.tw-entry-header h1, .tw-page-header h1 { margin:0; line-height:1.08; font-size:clamp(2.25rem,5vw,4.5rem); }
.tw-entry-content, .tw-page-content { min-width:0; }

/* Trusted World box rule: informational/display containers are square. */
.tw-information, .tw-card, .tw-metric, .tw-document, .tw-callout { border-radius:var(--tw-radius-information); }

.tw-button, .wp-element-button, button, input[type="button"], input[type="submit"] {
  display:inline-flex; align-items:center; justify-content:center; min-height:44px; padding:10px 18px;
  border:1px solid var(--tw-blue); background:var(--tw-blue); color:#fff; font-weight:700; text-decoration:none;
  cursor:pointer; transition:transform .15s ease,background-color .15s ease,border-color .15s ease;
}
.tw-button:hover, .wp-element-button:hover, button:hover, input[type="submit"]:hover { background:var(--tw-navy); border-color:var(--tw-navy); transform:translateY(-1px); }
:focus-visible { outline:3px solid rgba(20,101,243,.35); outline-offset:3px; }
input:not([type="checkbox"]):not([type="radio"]), select, textarea { max-width:100%; border:1px solid #aeb8c6; background:#fff; color:var(--tw-navy); padding:10px 12px; }

.tw-site-footer { margin-top:64px; background:var(--tw-navy); color:#fff; }
.tw-footer-inner { padding-block:48px; display:grid; grid-template-columns:1fr auto auto; align-items:center; gap:32px; }
.tw-footer-menu { list-style:none; display:flex; flex-wrap:wrap; gap:24px; margin:0; padding:0; }
.tw-footer-menu a { color:#fff; }
.tw-copyright { color:rgba(255,255,255,.8); }

@media (max-width: 1180px) {
  .tw-header-inner { gap:20px; }
  .tw-navigation-wrap { gap:14px; }
  .tw-nav-link { padding-inline:7px; font-size:.89rem; }
  .tw-portal-button { padding-inline:13px; }
}

@media (max-width: 1050px) {
  .tw-site-header { position:relative; }
  .tw-header-inner { min-height:76px; flex-wrap:wrap; padding-block:10px; }
  .tw-branding img { max-height:50px; }
  .tw-menu-toggle {
    margin-left:auto; display:inline-flex; align-items:center; gap:10px; min-height:42px; padding:8px 11px;
    background:#fff; color:var(--tw-navy); border:1px solid var(--tw-border); border-radius:var(--tw-radius-interactive);
  }
  .tw-menu-toggle:hover { background:var(--tw-off-white); border-color:var(--tw-border); color:var(--tw-navy); transform:none; }
  .tw-menu-toggle-icon { display:flex; flex-direction:column; gap:4px; }
  .tw-menu-toggle-icon span { display:block; width:20px; height:2px; background:currentColor; }
  .tw-navigation-wrap { display:none; flex:0 0 100%; width:100%; margin:0; padding:10px 0 18px; align-items:stretch; flex-direction:column; gap:14px; }
  .tw-site-header.mobile-nav-open .tw-navigation-wrap { display:flex; }
  .tw-primary-nav, .tw-primary-menu, .tw-nav-item, .tw-nav-trigger-row { width:100%; }
  .tw-primary-menu { flex-direction:column; align-items:stretch; gap:0; }
  .tw-nav-item { display:block; border-top:1px solid var(--tw-border); }
  .tw-nav-trigger-row { justify-content:space-between; }
  .tw-nav-link { min-height:50px; padding:12px 2px; font-size:1rem; flex:1; }
  .tw-mega-toggle { width:48px; height:48px; margin:0; }
  .tw-mega-panel { position:static; border:0; border-top:1px solid var(--tw-border); box-shadow:none; background:var(--tw-off-white); }
  .tw-mega-inner { width:100%; display:block; padding:18px 18px 22px; }
  .tw-mega-columns { grid-template-columns:1fr; gap:20px; }
  .tw-mega-column h2 { margin-bottom:7px; }
  .tw-mega-column a { padding:6px 0; }
  .tw-mega-feature { margin-top:22px; padding:20px 0 0; border-left:0; border-top:1px solid var(--tw-border); }
  .tw-portal-button { width:100%; }
  .tw-footer-inner { grid-template-columns:1fr; }
}

@media (max-width: 600px) {
  .tw-shell { width:min(calc(100% - 28px),var(--tw-shell)); }
  .tw-menu-toggle-label { display:none; }
  .tw-content-shell, .tw-page-header { padding-block:40px; }
}
/* 1.2.0 global branding/footer */
.tw-global-logo{display:flex;align-items:center}.tw-header-logo{display:block;max-height:58px;width:auto;max-width:310px}.tw-footer-main{padding-block:56px;display:grid;grid-template-columns:1.5fr 1fr auto;gap:56px;align-items:start}.tw-footer-about p{max-width:520px;margin:12px 0;color:rgba(255,255,255,.82)}.tw-footer-brand{font-size:1.35rem}.tw-footer-actions{display:grid;gap:14px}.tw-footer-cta{color:#fff;font-weight:700;text-decoration:none}.tw-footer-legal{border-top:1px solid rgba(255,255,255,.2)}.tw-footer-legal-inner{min-height:64px;display:flex;align-items:center;gap:24px;flex-wrap:wrap;font-size:.9rem}.tw-footer-legal a{color:#fff}@media(max-width:900px){.tw-footer-main{grid-template-columns:1fr;gap:28px}.tw-header-logo{max-height:50px;max-width:250px}}

/* 1.3.0 shell refinements */
:root{--tw-header-height:82px}
.tw-header-inner{gap:28px}.tw-navigation-wrap{gap:18px}.tw-header-logo{max-height:62px;max-width:330px}.tw-nav-link{font-size:.92rem}.tw-portal-button{min-height:46px;padding:10px 18px}
.tw-search-toggle{position:relative;flex:0 0 42px;width:42px;height:42px;min-height:42px;padding:0;border:1px solid transparent;background:#fff;color:var(--tw-navy);border-radius:var(--tw-radius-interactive);box-shadow:none;transform:none}.tw-search-toggle:hover,.tw-search-toggle:focus-visible{background:var(--tw-off-white);border-color:var(--tw-border);color:var(--tw-blue);transform:none}.tw-search-icon{position:absolute;left:12px;top:11px;width:15px;height:15px;border:2px solid currentColor;border-radius:50%}.tw-search-icon:after{content:"";position:absolute;width:8px;height:2px;background:currentColor;right:-6px;bottom:-4px;transform:rotate(45deg);transform-origin:left center}.tw-search-panel{position:absolute;left:0;right:0;top:100%;z-index:999;background:#fff;border-top:1px solid var(--tw-border);border-bottom:1px solid var(--tw-border);box-shadow:0 16px 32px rgba(7,19,50,.09)}.tw-search-panel[hidden]{display:none!important}.tw-search-panel-inner{padding-block:24px}.tw-search-form{max-width:760px;margin-left:auto}.tw-search-form label{display:block;margin-bottom:8px;font-size:.78rem;letter-spacing:.08em;text-transform:uppercase;font-weight:800}.tw-search-row{display:flex;gap:10px}.tw-search-row input{flex:1;min-height:48px}.tw-search-row button{min-width:110px}
.tw-site-footer{margin-top:72px;background:var(--tw-navy);color:#fff}.tw-footer-main{padding-block:64px;display:grid;grid-template-columns:1.55fr .8fr .8fr 1fr;gap:48px;align-items:start}.tw-footer-brand,.tw-footer-column h2,.tw-footer-connect h2{margin:0 0 16px;color:#fff}.tw-footer-brand{font-size:1.35rem;line-height:1.2}.tw-footer-column h2,.tw-footer-connect h2{font-size:.78rem;letter-spacing:.08em;text-transform:uppercase}.tw-footer-about p{max-width:470px;margin:0 0 16px;color:rgba(255,255,255,.78)}.tw-footer-contact{display:grid;gap:7px}.tw-footer-contact a,.tw-footer-column a,.tw-footer-connect a,.tw-footer-social a{color:#fff;text-decoration:none}.tw-footer-contact a:hover,.tw-footer-column a:hover,.tw-footer-connect a:hover,.tw-footer-social a:hover{text-decoration:underline}.tw-footer-column ul{list-style:none;margin:0;padding:0;display:grid;gap:8px}.tw-footer-column a{color:rgba(255,255,255,.86)}.tw-footer-actions{display:grid;gap:10px}.tw-footer-actions>a{font-weight:750}.tw-footer-social{display:flex;gap:14px;flex-wrap:wrap;margin-top:24px;font-size:.88rem}.tw-footer-legal{border-top:1px solid rgba(255,255,255,.18)}.tw-footer-legal-inner{min-height:62px;display:flex;align-items:center;gap:24px;flex-wrap:wrap;color:rgba(255,255,255,.72);font-size:.86rem}.tw-footer-legal a{color:rgba(255,255,255,.82);text-decoration:none}
#wpadminbar .tw-staging-flag>.ab-item{background:#b42318!important;color:#fff!important;font-weight:800!important;letter-spacing:.04em}
@media(max-width:1180px){.tw-header-logo{max-width:285px}.tw-search-toggle{flex-basis:38px;width:38px}.tw-footer-main{grid-template-columns:1.4fr 1fr 1fr;gap:34px}.tw-footer-connect{grid-column:2/4}}
@media(max-width:1050px){.tw-search-toggle{width:100%;flex-basis:auto;border-color:var(--tw-border)}.tw-search-icon{left:calc(50% - 11px)}.tw-search-panel{position:static;box-shadow:none}.tw-search-form{margin:0}.tw-footer-main{grid-template-columns:1fr 1fr}.tw-footer-about{grid-column:1/-1}.tw-footer-connect{grid-column:auto}.tw-header-logo{max-height:52px;max-width:260px}}
@media(max-width:650px){.tw-search-row{display:grid}.tw-search-row button{width:100%}.tw-footer-main{grid-template-columns:1fr}.tw-footer-about,.tw-footer-connect{grid-column:auto}.tw-footer-legal-inner{align-items:flex-start;flex-direction:column;gap:8px;padding-block:18px}}

/* 1.4.0 Real Choice Journeys */
.tw-eyebrow{margin:0 0 10px;color:var(--tw-blue);font-size:.78rem;font-weight:800;letter-spacing:.09em;text-transform:uppercase}.tw-rcj-archive-hero{padding:72px 0 46px;background:var(--tw-off-white);border-bottom:1px solid var(--tw-border)}.tw-rcj-archive-hero h1{margin:0;font-size:clamp(2.6rem,5vw,5rem);line-height:1.02}.tw-rcj-archive-intro{max-width:760px;margin:18px 0 0;color:var(--tw-dark-gray);font-size:1.08rem}.tw-rcj-archive-section{padding:54px 0 80px}.tw-rcj-filters{display:flex;flex-wrap:wrap;gap:10px;margin:0 0 30px}.tw-rcj-filter{display:inline-flex;align-items:center;min-height:40px;padding:7px 12px;border:1px solid var(--tw-border);border-radius:var(--tw-radius-interactive);background:#fff;color:var(--tw-navy);font-weight:700;text-decoration:none}.tw-rcj-filter:hover,.tw-rcj-filter:focus-visible,.tw-rcj-filter.is-active{border-color:var(--tw-blue);color:var(--tw-blue);background:#f5f8ff}.tw-rcj-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}.tw-rcj-grid-archive{grid-template-columns:repeat(3,minmax(0,1fr));gap:26px}.tw-rcj-card{border:1px solid var(--tw-border);background:#fff;border-radius:0;overflow:hidden}.tw-rcj-card-image{display:block;aspect-ratio:4/3;overflow:hidden;background:#eef2f7}.tw-rcj-card-image img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .24s ease}.tw-rcj-card:hover .tw-rcj-card-image img{transform:scale(1.025)}.tw-rcj-card-body{padding:20px}.tw-rcj-card-audience{margin:0 0 7px;color:var(--tw-blue);font-size:.76rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase}.tw-rcj-card h2,.tw-rcj-card h3{margin:0 0 10px;font-size:1.2rem;line-height:1.25}.tw-rcj-card h2 a,.tw-rcj-card h3 a{color:var(--tw-navy);text-decoration:none}.tw-rcj-card-teaser{margin:0 0 20px;color:var(--tw-dark-gray);font-size:.92rem}.tw-rcj-pagination{margin-top:38px}.tw-rcj-single-hero{padding:62px 0;background:var(--tw-off-white);border-bottom:1px solid var(--tw-border)}.tw-rcj-single-hero-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(360px,.85fr);gap:56px;align-items:center}.tw-rcj-single-copy h1{margin:0;font-size:clamp(2.8rem,5vw,5.6rem);line-height:1.01}.tw-rcj-single-teaser{max-width:700px;margin:20px 0 0;color:var(--tw-dark-gray);font-size:1.16rem}.tw-rcj-decision{margin-top:30px;padding:20px 22px;border-left:4px solid var(--tw-blue);background:#fff;border-radius:0}.tw-rcj-decision p{margin:0}.tw-rcj-decision-label{margin-bottom:5px!important;color:var(--tw-blue);font-size:.75rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.tw-rcj-single-image{margin:0;aspect-ratio:4/3;overflow:hidden}.tw-rcj-single-image img{display:block;width:100%;height:100%;object-fit:cover}.tw-rcj-single-content{display:grid;grid-template-columns:minmax(0,760px) minmax(220px,1fr);gap:64px;padding-top:58px;padding-bottom:76px}.tw-rcj-story-body{font-size:1.04rem;color:var(--tw-dark-gray)}.tw-rcj-story-body>*:first-child{margin-top:0}.tw-rcj-story-side{display:flex;flex-direction:column;align-items:flex-start;gap:22px}.tw-rcj-primary-cta{margin-top:10px}.tw-rcj-shortcode-heading{margin:0 0 24px;font-size:clamp(1.8rem,3vw,2.8rem)}
@media(max-width:980px){.tw-rcj-grid,.tw-rcj-grid-archive{grid-template-columns:repeat(2,minmax(0,1fr))}.tw-rcj-single-hero-grid,.tw-rcj-single-content{grid-template-columns:1fr}.tw-rcj-single-image{max-width:720px}.tw-rcj-story-side{border-top:1px solid var(--tw-border);padding-top:28px}}
@media(max-width:620px){.tw-rcj-archive-hero{padding:48px 0 32px}.tw-rcj-archive-section{padding:34px 0 56px}.tw-rcj-grid,.tw-rcj-grid-archive{grid-template-columns:1fr}.tw-rcj-filters{gap:8px}.tw-rcj-filter{font-size:.88rem}.tw-rcj-single-hero{padding:42px 0}.tw-rcj-single-content{padding-top:38px;padding-bottom:52px;gap:38px}}


/* Real Choice interactive journey — 1.5.0 */
.tw-rcj-experience {
    padding-top: clamp(44px, 7vw, 88px);
    padding-bottom: clamp(56px, 8vw, 104px);
}
.tw-rcj-intro {
    max-width: 860px;
    margin: 0 auto clamp(42px, 6vw, 72px);
    font-size: 1.08rem;
    line-height: 1.75;
}
.tw-rcj-choice-section {
    border-top: 1px solid var(--tw-border, #d8dfeb);
    padding-top: clamp(36px, 5vw, 60px);
}
.tw-rcj-choice-heading {
    max-width: 720px;
    margin-bottom: 28px;
}
.tw-rcj-choice-heading h2 {
    margin: 4px 0 0;
}
.tw-rcj-choice-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 1px;
    background: #d8dfeb;
    border: 1px solid #d8dfeb;
}
.tw-rcj-choice {
    appearance: none;
    border: 0;
    border-radius: 0;
    background: #fff;
    color: var(--tw-ink, #071332);
    text-align: left;
    padding: clamp(24px, 3vw, 38px);
    min-height: 230px;
    cursor: pointer;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 18px;
    font: inherit;
    transition: background-color .18s ease, color .18s ease;
}
.tw-rcj-choice:hover,
.tw-rcj-choice:focus-visible {
    background: #f1f6ff;
}
.tw-rcj-choice.is-selected {
    background: #0a49e8;
    color: #fff;
}
.tw-rcj-choice-number {
    display: inline-grid;
    place-items: center;
    width: 34px;
    height: 34px;
    border: 1px solid currentColor;
    border-radius: 50%;
    font-weight: 800;
}
.tw-rcj-choice-text {
    font-size: clamp(1.08rem, 1.4vw, 1.28rem);
    font-weight: 750;
    line-height: 1.35;
    flex: 1;
}
.tw-rcj-choice-action {
    font-weight: 700;
    font-size: .94rem;
}
.tw-rcj-results {
    margin-top: clamp(28px, 4vw, 48px);
}
.tw-rcj-result {
    border-top: 4px solid #0a49e8;
    background: #f7f9fc;
    padding: clamp(26px, 4vw, 46px);
}
.tw-rcj-result[hidden] {
    display: none !important;
}
.tw-rcj-result-block {
    border-radius: 0;
    padding: 0 0 26px;
    background: transparent;
}
.tw-rcj-result-block + .tw-rcj-result-block {
    border-top: 1px solid #d8dfeb;
    padding-top: 26px;
}
.tw-rcj-result-label {
    color: #0a49e8;
    font-size: .8rem;
    font-weight: 850;
    letter-spacing: .09em;
    text-transform: uppercase;
    margin: 0 0 8px;
}
.tw-rcj-result-block p:last-child {
    font-size: clamp(1.08rem, 1.5vw, 1.28rem);
    line-height: 1.65;
    margin-bottom: 0;
}
.tw-rcj-choose-again {
    border: 1px solid #0a49e8;
    border-radius: 4px;
    background: #fff;
    color: #0a49e8;
    padding: 10px 16px;
    font: inherit;
    font-weight: 750;
    cursor: pointer;
}
.tw-rcj-choose-again:hover,
.tw-rcj-choose-again:focus-visible {
    background: #edf3ff;
}
.tw-rcj-bottom-nav {
    margin-top: clamp(36px, 5vw, 64px);
    padding-top: 26px;
    border-top: 1px solid #d8dfeb;
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 20px;
    flex-wrap: wrap;
}
@media (max-width: 820px) {
    .tw-rcj-choice-grid {
        grid-template-columns: 1fr;
    }
    .tw-rcj-choice {
        min-height: 0;
    }
}

/* 1.5.1 RCJ interaction polish */
.tw-rcj-choice-text,
.tw-rcj-choice-action {
    display: block;
    width: 100%;
}
.tw-rcj-choice-action {
    margin-top: auto;
    padding-top: 12px;
}


/* 1.5.2 — Outcome must be read before consequence is revealed */
.tw-rcj-consequence-gate {
    border-top: 1px solid #d8dfeb;
    padding-top: 24px;
    margin-top: 2px;
}
.tw-rcj-show-consequence {
    border: 0;
    border-radius: 4px;
    background: #0a49e8;
    color: #fff;
    padding: 12px 18px;
    font: inherit;
    font-weight: 800;
    cursor: pointer;
}
.tw-rcj-show-consequence:hover,
.tw-rcj-show-consequence:focus-visible {
    background: #083cc1;
}
.tw-rcj-consequence[hidden],
.tw-rcj-consequence-gate[hidden] {
    display: none !important;
}
.tw-rcj-consequence {
    margin-top: 24px;
}


/* 1.5.3 — Make the interactive decision obvious immediately */
.tw-rcj-single-hero {
    padding: 34px 0 30px;
}
.tw-rcj-single-hero-grid {
    gap: 40px;
}
.tw-rcj-single-copy h1 {
    font-size: clamp(2.7rem, 4.6vw, 4.9rem);
}
.tw-rcj-single-teaser {
    margin-top: 14px;
    font-size: 1.08rem;
    line-height: 1.5;
}
.tw-rcj-intro-compact {
    max-width: 700px;
    margin-top: 16px;
    color: var(--tw-dark-gray);
    font-size: .98rem;
    line-height: 1.6;
}
.tw-rcj-intro-compact > *:first-child {
    margin-top: 0;
}
.tw-rcj-intro-compact > *:last-child {
    margin-bottom: 0;
}
.tw-rcj-decision {
    margin-top: 20px;
    padding: 16px 18px;
}
.tw-rcj-single-image {
    aspect-ratio: 16 / 10;
    max-height: 390px;
}
.tw-rcj-start-link {
    display: inline-flex;
    align-items: center;
    margin-top: 16px;
    padding: 9px 13px;
    border: 1px solid var(--tw-blue);
    border-radius: 4px;
    color: var(--tw-blue);
    background: #fff;
    font-weight: 800;
    text-decoration: none;
}
.tw-rcj-start-link:hover,
.tw-rcj-start-link:focus-visible {
    background: #f1f6ff;
}
.tw-rcj-experience {
    padding-top: 28px;
}
.tw-rcj-choice-section {
    border-top: 0;
    padding-top: 0;
    scroll-margin-top: 110px;
}
.tw-rcj-choice-heading {
    margin-bottom: 18px;
}
.tw-rcj-choice-grid {
    margin-top: 0;
}
.tw-rcj-choice {
    min-height: 190px;
    padding: clamp(22px, 2.4vw, 32px);
}
@media (max-width: 980px) {
    .tw-rcj-single-hero {
        padding: 28px 0 24px;
    }
    .tw-rcj-single-hero-grid {
        gap: 26px;
    }
    .tw-rcj-single-image {
        max-height: 340px;
    }
    .tw-rcj-experience {
        padding-top: 24px;
    }
}
@media (max-width: 620px) {
    .tw-rcj-single-hero {
        padding: 24px 0 20px;
    }
    .tw-rcj-single-copy h1 {
        font-size: clamp(2.5rem, 12vw, 3.7rem);
    }
    .tw-rcj-single-image {
        aspect-ratio: 4 / 3;
        max-height: none;
    }
    .tw-rcj-start-link {
        width: 100%;
        justify-content: center;
    }
    .tw-rcj-experience {
        padding-top: 20px;
    }
}


/* Documents & Accountability — 1.6.0 */
.tw-document-hero,
.tw-documents-archive-hero {
    background: #f5f8fc;
    border-bottom: 1px solid #d8dfeb;
    padding: clamp(42px, 7vw, 82px) 0;
}
.tw-document-hero-grid {
    display: grid;
    grid-template-columns: minmax(0, 1.7fr) minmax(260px, .7fr);
    gap: 56px;
    align-items: end;
}
.tw-document-hero h1,
.tw-documents-archive-hero h1 {
    margin: 8px 0 16px;
    font-size: clamp(2.6rem, 5vw, 5rem);
}
.tw-document-description,
.tw-documents-archive-hero p {
    max-width: 800px;
    font-size: 1.12rem;
    line-height: 1.7;
}
.tw-document-facts {
    border-left: 4px solid #0a49e8;
    background: #fff;
    border-radius: 0;
    padding: 24px;
}
.tw-document-facts > div + div {
    border-top: 1px solid #d8dfeb;
    margin-top: 16px;
    padding-top: 16px;
}
.tw-document-facts span {
    display: block;
    color: #5b6578;
    font-size: .8rem;
    font-weight: 800;
    letter-spacing: .08em;
    text-transform: uppercase;
}
.tw-document-facts strong {
    display: block;
    margin-top: 5px;
    font-size: 1.15rem;
}
.tw-document-body {
    padding-top: 46px;
    padding-bottom: 80px;
}
.tw-document-extra {
    max-width: 850px;
    margin-bottom: 36px;
    line-height: 1.75;
}
.tw-document-actions {
    display: flex;
    gap: 14px;
    align-items: center;
    flex-wrap: wrap;
}
.tw-button-secondary {
    background: #fff;
    color: #0a49e8;
    border: 1px solid #0a49e8;
}
.tw-button-secondary:hover,
.tw-button-secondary:focus-visible {
    background: #edf3ff;
}
.tw-documents-archive-body {
    padding-top: 38px;
    padding-bottom: 88px;
}
.tw-document-filters {
    display: grid;
    grid-template-columns: minmax(220px, 1fr) minmax(170px, .6fr) auto auto;
    gap: 14px;
    align-items: end;
    margin-bottom: 34px;
    padding-bottom: 28px;
    border-bottom: 1px solid #d8dfeb;
}
.tw-document-filters label span {
    display: block;
    margin-bottom: 7px;
    font-size: .84rem;
    font-weight: 800;
}
.tw-document-filters select {
    width: 100%;
    min-height: 44px;
    border: 1px solid #9ba6b6;
    border-radius: 4px;
    background: #fff;
    padding: 8px 12px;
}
.tw-document-library,
.tw-document-list {
    display: grid;
    gap: 1px;
    background: #d8dfeb;
    border: 1px solid #d8dfeb;
}
.tw-document-card,
.tw-document-list-item {
    background: #fff;
    border-radius: 0;
    padding: clamp(24px, 3vw, 34px);
}
.tw-document-card-meta,
.tw-document-list-meta {
    display: flex;
    gap: 10px;
    flex-wrap: wrap;
    color: #0a49e8;
    font-size: .8rem;
    font-weight: 800;
    letter-spacing: .06em;
    text-transform: uppercase;
}
.tw-document-card-meta span + span::before,
.tw-document-list-meta span + span::before {
    content: "•";
    margin-right: 10px;
    color: #8e98a8;
}
.tw-document-card h2,
.tw-document-list-item h3 {
    margin: 10px 0 10px;
}
.tw-document-card h2 a,
.tw-document-list-item h3 a {
    color: #071332;
    text-decoration: none;
}
.tw-document-card h2 a:hover,
.tw-document-card h2 a:focus-visible,
.tw-document-list-item h3 a:hover,
.tw-document-list-item h3 a:focus-visible {
    color: #0a49e8;
}
.tw-document-card p,
.tw-document-list-item p {
    max-width: 850px;
    color: #4f5a6d;
    line-height: 1.65;
}
.tw-document-empty {
    background: #fff;
    margin: 0;
    padding: 32px;
}
@media (max-width: 850px) {
    .tw-document-hero-grid {
        grid-template-columns: 1fr;
        gap: 28px;
    }
    .tw-document-filters {
        grid-template-columns: 1fr 1fr;
    }
}
@media (max-width: 620px) {
    .tw-document-filters {
        grid-template-columns: 1fr;
    }
    .tw-document-actions .tw-button {
        width: 100%;
        text-align: center;
    }
}

/* Metrics & Outcomes — 1.7.0 */
.tw-impact-hero{background:#f5f8fc;border-bottom:1px solid #d8dfeb;padding:56px 0}.tw-impact-hero h1{font-size:clamp(2.7rem,5vw,5rem);margin:8px 0 16px}.tw-impact-hero p{max-width:850px;line-height:1.7}
.tw-impact-body{padding-top:48px;padding-bottom:90px}.tw-impact-group{padding-bottom:58px}.tw-impact-group+.tw-impact-group{border-top:1px solid #d8dfeb;padding-top:58px}.tw-impact-heading{max-width:820px;margin-bottom:26px}.tw-impact-heading h2{font-size:clamp(1.8rem,3vw,2.7rem);margin:6px 0 10px}
.tw-metrics-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;background:#d8dfeb;border:1px solid #d8dfeb}.tw-metric-card{background:#fff;padding:30px;border-radius:0}.tw-metric-value{font-size:clamp(2.4rem,4vw,4rem);font-weight:850;line-height:1;margin:0}.tw-metric-context{color:#0a49e8;font-weight:750}.tw-metric-why{border-top:1px solid #d8dfeb;padding-top:16px}.tw-metric-period{font-size:.85rem;color:#667085}.tw-metric-empty{background:#fff;padding:24px;margin:0;grid-column:1/-1}
.tw-metric-single-value{font-size:clamp(2.4rem,5vw,4.5rem);font-weight:850}.tw-metric-single-value span{font-size:1.2rem;font-weight:700}.tw-metric-detail{max-width:950px;padding-top:48px;padding-bottom:90px}.tw-metric-detail section{padding-bottom:30px;margin-bottom:30px;border-bottom:1px solid #d8dfeb}.tw-metric-detail h2{font-size:1.5rem}
@media(max-width:900px){.tw-metrics-grid{grid-template-columns:1fr 1fr}}@media(max-width:620px){.tw-metrics-grid{grid-template-columns:1fr}}


/* Metrics & Outcomes polish — 1.7.1 */

/* The gray block in 1.7.0 was only the grid's background showing through
   when fewer than three cards existed. Metric cards do not require graphics. */
.tw-metrics-grid {
    background: transparent;
    border: 0;
    gap: 18px;
}
.tw-metric-card {
    border: 1px solid #d8dfeb;
}

/* Keep a single metric from looking like an unfinished three-column row. */
.tw-impact-group .tw-metrics-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

/* Compact the individual metric page. */
.tw-metric-single .tw-impact-hero {
    padding: 36px 0 38px;
}
.tw-metric-single .tw-impact-hero h1 {
    margin-bottom: 22px;
}
.tw-metric-single-value {
    margin: 0;
    line-height: 1;
}
.tw-metric-single-value span {
    display: inline-block;
    margin-left: 8px;
    vertical-align: baseline;
}
.tw-metric-detail {
    padding-top: 34px;
    padding-bottom: 64px;
}
.tw-metric-detail section {
    padding-bottom: 22px;
    margin-bottom: 22px;
}
.tw-metric-detail section p {
    margin-bottom: 0;
    line-height: 1.7;
}

@media (max-width: 900px) {
    .tw-impact-group .tw-metrics-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}
@media (max-width: 620px) {
    .tw-impact-group .tw-metrics-grid {
        grid-template-columns: 1fr;
    }
}


/* Standard Page Framework — 1.8.0 */
.tw-page-shell {
    width: min(100% - 48px, 1440px);
    margin-inline: auto;
}
.tw-page-shell-standard {
    max-width: 960px;
}
.tw-page-shell-wide {
    max-width: 1240px;
}
.tw-page-shell-full {
    max-width: 1440px;
}
.tw-page-hero {
    background: #f5f8fc;
    border-bottom: 1px solid #d8dfeb;
    padding: clamp(38px, 6vw, 72px) 0;
}
.tw-page-hero .tw-eyebrow {
    margin: 0 0 10px;
}
.tw-page-title {
    margin: 0;
    font-size: clamp(2.6rem, 5vw, 4.8rem);
    line-height: 1.02;
}
.tw-page-intro {
    max-width: 860px;
    margin: 22px 0 0;
    color: #39465d;
    font-size: clamp(1.05rem, 1.5vw, 1.25rem);
    line-height: 1.7;
}
.tw-page-content {
    padding-top: clamp(34px, 5vw, 58px);
    padding-bottom: clamp(60px, 8vw, 100px);
}
.tw-page-content > :first-child {
    margin-top: 0;
}
.tw-page-content > :last-child {
    margin-bottom: 0;
}
.tw-page-content h2 {
    margin-top: 1.7em;
    margin-bottom: .55em;
    font-size: clamp(1.8rem, 3vw, 2.55rem);
    line-height: 1.15;
}
.tw-page-content h3 {
    margin-top: 1.55em;
    margin-bottom: .5em;
    font-size: clamp(1.35rem, 2vw, 1.75rem);
}
.tw-page-content p,
.tw-page-content li {
    line-height: 1.75;
}
.tw-page-content p {
    margin: 0 0 1.25em;
}
.tw-page-content ul,
.tw-page-content ol {
    padding-left: 1.4em;
    margin-bottom: 1.5em;
}
.tw-page-content blockquote {
    margin: 2em 0;
    padding: 4px 0 4px 22px;
    border-left: 4px solid #0a49e8;
    font-size: 1.15rem;
}
.tw-page-content img {
    max-width: 100%;
    height: auto;
}
.tw-standard-page-full .tw-page-content {
    width: 100%;
}
.tw-page-elementor-body {
    width: 100%;
    margin: 0;
    padding: 0;
}
.tw-standard-page-elementor .elementor {
    width: 100%;
}
.tw-page-title-hidden .tw-page-hero {
    padding-top: 34px;
    padding-bottom: 34px;
}

/* Reusable content primitives for normal WordPress/Elementor content. */
.tw-content-callout {
    margin: 30px 0;
    padding: 24px 26px;
    border-left: 4px solid #0a49e8;
    background: #f5f8fc;
}
.tw-content-cta {
    margin: 36px 0;
    padding: clamp(26px, 4vw, 42px);
    background: #071332;
    color: #fff;
}
.tw-content-cta h2,
.tw-content-cta h3,
.tw-content-cta p {
    color: inherit;
}
.tw-content-grid-2,
.tw-content-grid-3 {
    display: grid;
    gap: 22px;
    margin: 30px 0;
}
.tw-content-grid-2 {
    grid-template-columns: repeat(2, minmax(0, 1fr));
}
.tw-content-grid-3 {
    grid-template-columns: repeat(3, minmax(0, 1fr));
}
.tw-content-card {
    padding: 24px;
    border: 1px solid #d8dfeb;
    background: #fff;
}

@media (max-width: 760px) {
    .tw-page-shell {
        width: min(100% - 32px, 1440px);
    }
    .tw-content-grid-2,
    .tw-content-grid-3 {
        grid-template-columns: 1fr;
    }
}


/* Mega menu pointer transition — 1.8.4
   Actual theme selectors. JS supplies a short close delay so a small physical
   gap cannot collapse the panel while the pointer moves into it. */
.tw-has-mega {
    position: static;
}
.tw-nav-trigger-row {
    position: relative;
}
.tw-nav-trigger-row::after {
    content: "";
    position: absolute;
    z-index: 2;
    left: 0;
    right: 0;
    top: 100%;
    height: 24px;
    background: transparent;
}
.tw-mega-panel {
    z-index: 1000;
}
.tw-has-mega.is-open .tw-mega-panel {
    visibility: visible;
    opacity: 1;
    pointer-events: auto;
}


/* ==========================================================
   Elementor Compatibility Layer — 1.9.0
   ========================================================== */

/*
 * The theme owns the header/footer. Elementor is a body-layout tool.
 * These rules remove outer conflicts without overriding deliberate
 * per-widget design choices made inside Elementor.
 */
.tw-standard-page-has-elementor .tw-page-content {
    box-sizing: border-box;
}

/* STANDARD:
   Elementor body sits inside the theme's readable standard content width. */
.tw-standard-page-standard.tw-standard-page-has-elementor .tw-page-content > .elementor {
    width: 100%;
    max-width: 100%;
    margin-inline: auto;
}

/* WIDE:
   Elementor gets the wider theme shell, but no duplicate Elementor outer margin. */
.tw-standard-page-wide.tw-standard-page-has-elementor .tw-page-content > .elementor {
    width: 100%;
    max-width: 100%;
    margin-inline: auto;
}

/* FULL WIDTH:
   Elementor can use the full browser width. Individual Elementor containers
   may still intentionally set their own max-width. */
.tw-standard-page-full.tw-standard-page-has-elementor .tw-page-content {
    width: 100%;
    max-width: none;
    padding-left: 0;
    padding-right: 0;
}
.tw-standard-page-full.tw-standard-page-has-elementor .tw-page-content > .elementor {
    width: 100%;
    max-width: none;
    margin: 0;
}

/* "Elementor Canvas-style Body":
   no theme hero and no body shell, but Trusted World header/footer remain. */
.tw-standard-page-elementor.tw-standard-page-has-elementor .tw-page-elementor-body,
.tw-standard-page-elementor .tw-page-elementor-body {
    width: 100%;
    max-width: none;
    margin: 0;
    padding: 0;
}
.tw-standard-page-elementor .tw-page-elementor-body > .elementor {
    width: 100%;
    max-width: none;
    margin: 0;
}

/* Prevent accidental horizontal overflow from full-width Elementor sections. */
.tw-elementor-page,
.tw-elementor-page #page,
.tw-elementor-page .tw-standard-page {
    overflow-x: clip;
}

/* --------------------------
   Trusted World defaults
   -------------------------- */

/* Typography defaults. Elementor widget-level choices can still override these. */
.tw-elementor-page .elementor-widget-text-editor,
.tw-elementor-page .elementor-widget-text-editor p,
.tw-elementor-page .elementor-widget-icon-list,
.tw-elementor-page .elementor-widget-button,
.tw-elementor-page .elementor-widget-heading {
    font-family: Inter, ui-sans-serif, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}

.tw-elementor-page .elementor-widget-heading .elementor-heading-title {
    color: #071332;
    line-height: 1.12;
}

.tw-elementor-page .elementor-widget-text-editor {
    color: #253047;
    line-height: 1.7;
}

/* Links use the site blue unless the Elementor widget deliberately assigns color. */
.tw-elementor-page .elementor-widget-text-editor a {
    color: #0B46E5;
}

/* Buttons follow the theme interaction rule: small radius, not pill shaped. */
.tw-elementor-page .elementor-button {
    min-height: 44px;
    border-radius: 6px;
    font-weight: 700;
    line-height: 1.2;
}

/* Common Elementor forms receive the same compact input radius. */
.tw-elementor-page .elementor-field,
.tw-elementor-page .elementor-field-textual,
.tw-elementor-page input:not([type="checkbox"]):not([type="radio"]),
.tw-elementor-page select,
.tw-elementor-page textarea {
    border-radius: 4px;
}

/* Display/information boxes remain square unless a widget explicitly overrides. */
.tw-elementor-page .elementor-widget-container .tw-content-card,
.tw-elementor-page .elementor-widget-container .tw-content-callout,
.tw-elementor-page .elementor-widget-container .tw-content-cta {
    border-radius: 0;
}

/* Remove theme paragraph margins only where Elementor already manages spacing. */
.tw-elementor-page .elementor-widget-text-editor > .elementor-widget-container > :first-child {
    margin-top: 0;
}
.tw-elementor-page .elementor-widget-text-editor > .elementor-widget-container > :last-child {
    margin-bottom: 0;
}

/* Elementor nested containers should never exceed the page body's available width
   merely because the outer theme wrapper has a width calculation. */
.tw-standard-page-has-elementor .elementor,
.tw-standard-page-has-elementor .e-con,
.tw-standard-page-has-elementor .elementor-section,
.tw-standard-page-has-elementor .elementor-container {
    box-sizing: border-box;
}

/* Full-width Elementor layouts should meet the footer cleanly. */
.tw-standard-page-full.tw-standard-page-has-elementor .tw-page-content,
.tw-standard-page-elementor .tw-page-elementor-body {
    padding-bottom: 0;
}

/* Responsive: never add a second theme gutter around an Elementor canvas body. */
@media (max-width: 760px) {
    .tw-standard-page-full.tw-standard-page-has-elementor .tw-page-content,
    .tw-standard-page-elementor .tw-page-elementor-body {
        width: 100%;
        padding-left: 0;
        padding-right: 0;
    }
}


/* ==========================================================
   Native Homepage Framework — 2.0.0
   ========================================================== */
.tw-home {
    color: #071332;
}
.tw-home-shell {
    width: min(100% - 48px, 1440px);
    margin-inline: auto;
}
.tw-home-hero {
    background: #f5f8fc;
    border-bottom: 1px solid #d8dfeb;
    padding: clamp(58px, 8vw, 110px) 0;
}
.tw-home-hero-grid {
    display: grid;
    grid-template-columns: minmax(0, 1.12fr) minmax(420px, .88fr);
    gap: clamp(44px, 7vw, 100px);
    align-items: center;
}
.tw-home-hero h1 {
    margin: 10px 0 24px;
    max-width: 900px;
    font-size: clamp(3.25rem, 6vw, 6.6rem);
    line-height: .98;
    letter-spacing: -.04em;
}
.tw-home-lead {
    max-width: 760px;
    margin: 0;
    font-size: clamp(1.12rem, 1.65vw, 1.4rem);
    line-height: 1.7;
    color: #39465d;
}
.tw-home-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    margin-top: 32px;
}
.tw-button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 48px;
    padding: 13px 20px;
    border: 1px solid #0b46e5;
    border-radius: 6px;
    font-weight: 750;
    text-decoration: none;
}
.tw-button-primary {
    background: #0b46e5;
    color: #fff;
}
.tw-button-secondary {
    background: transparent;
    color: #0b46e5;
}
.tw-button:hover,
.tw-button:focus-visible {
    transform: translateY(-1px);
}
.tw-home-hero-system {
    position: relative;
    min-height: 430px;
}
.tw-system-center,
.tw-system-node {
    position: absolute;
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    background: #fff;
    border: 1px solid #cfd8e8;
}
.tw-system-center {
    inset: 50% auto auto 50%;
    transform: translate(-50%, -50%);
    width: 180px;
    height: 180px;
    font-size: 1.5rem;
    font-weight: 850;
    line-height: 1.05;
    border: 3px solid #0b46e5;
}
.tw-system-node {
    width: 150px;
    min-height: 76px;
    padding: 12px;
    font-weight: 700;
}
.tw-system-node::before {
    content: "";
    position: absolute;
    z-index: -1;
    width: 120px;
    height: 1px;
    background: #9fb0ca;
}
.tw-system-node-1 { top: 0; left: 50%; transform: translateX(-50%); }
.tw-system-node-1::before { top: 100%; left: 50%; transform: rotate(90deg); transform-origin: left center; }
.tw-system-node-2 { top: 50%; right: 0; transform: translateY(-50%); }
.tw-system-node-2::before { right: 100%; top: 50%; }
.tw-system-node-3 { bottom: 0; left: 50%; transform: translateX(-50%); }
.tw-system-node-3::before { bottom: 100%; left: 50%; transform: rotate(90deg); transform-origin: left center; }
.tw-system-node-4 { top: 50%; left: 0; transform: translateY(-50%); }
.tw-system-node-4::before { left: 100%; top: 50%; }

.tw-home-section {
    padding: clamp(64px, 8vw, 108px) 0;
}
.tw-home-section + .tw-home-section {
    border-top: 1px solid #d8dfeb;
}
.tw-home-section h2 {
    margin: 8px 0 18px;
    max-width: 900px;
    font-size: clamp(2.25rem, 4vw, 4.3rem);
    line-height: 1.03;
    letter-spacing: -.025em;
}
.tw-home-section-heading {
    max-width: 900px;
    margin-bottom: 38px;
}
.tw-home-section-heading > p:last-child,
.tw-home-section-copy {
    max-width: 820px;
    color: #46536a;
    font-size: 1.08rem;
    line-height: 1.72;
}
.tw-home-split {
    display: grid;
    grid-template-columns: minmax(0, .9fr) minmax(0, 1.1fr);
    gap: clamp(36px, 7vw, 100px);
    align-items: start;
}
.tw-home-card-grid {
    display: grid;
    gap: 18px;
}
.tw-home-card-grid-3 {
    grid-template-columns: repeat(3, minmax(0, 1fr));
}
.tw-home-card-grid-4 {
    grid-template-columns: repeat(4, minmax(0, 1fr));
}
.tw-home-card {
    background: #fff;
    border: 1px solid #d8dfeb;
    border-radius: 0;
}
.tw-home-card-body,
.tw-home-network-card,
.tw-home-metric-card,
.tw-home-involved-card {
    padding: 28px;
}
.tw-home-card h3 {
    margin: 10px 0 12px;
    font-size: 1.35rem;
    line-height: 1.2;
}
.tw-home-card h3 a {
    color: inherit;
    text-decoration: none;
}
.tw-home-card p {
    color: #46536a;
    line-height: 1.65;
}
.tw-home-card-image {
    display: block;
    aspect-ratio: 16 / 10;
    overflow: hidden;
    background: #eef2f8;
}
.tw-home-card-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.tw-home-more {
    margin: 28px 0 0;
}
.tw-home-real-choice {
    background: #fff;
}
.tw-home-network {
    background: #f8fafe;
}
.tw-home-card-number {
    display: inline-block;
    margin-bottom: 42px;
    color: #0b46e5;
    font-size: .86rem;
    font-weight: 850;
    letter-spacing: .12em;
}
.tw-home-metric-class {
    margin: 0 0 18px;
    color: #0b46e5 !important;
    font-size: .82rem;
    font-weight: 850;
    letter-spacing: .1em;
    text-transform: uppercase;
}
.tw-home-metric-value {
    margin: 0;
    color: #071332 !important;
    font-size: clamp(2.8rem, 4.5vw, 4.8rem);
    font-weight: 850;
    line-height: .95 !important;
}
.tw-home-metric-context {
    margin: 8px 0 22px;
    color: #0b46e5 !important;
    font-weight: 750;
}
.tw-home-process {
    background: #071332;
    color: #fff;
}
.tw-home-process .tw-eyebrow,
.tw-home-process h2 {
    color: #fff;
}
.tw-home-process .tw-home-section-heading > p:last-child {
    color: #c9d2e1;
}
.tw-home-process-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    border-top: 1px solid #43506a;
    border-bottom: 1px solid #43506a;
}
.tw-home-process-step {
    padding: 32px 30px;
}
.tw-home-process-step + .tw-home-process-step {
    border-left: 1px solid #43506a;
}
.tw-home-process-step h3 {
    margin-top: 0;
    color: #fff;
    font-size: 1.3rem;
}
.tw-home-process-step p {
    color: #c9d2e1;
    line-height: 1.7;
}
.tw-home-documents {
    background: #f5f8fc;
}
.tw-home-document-list {
    border-top: 1px solid #cfd8e8;
}
.tw-home-document-row {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 24px;
    padding: 20px 4px;
    border-bottom: 1px solid #cfd8e8;
    color: #071332;
    text-decoration: none;
}
.tw-home-document-row strong,
.tw-home-document-row small {
    display: block;
}
.tw-home-document-row small {
    margin-top: 6px;
    color: #657189;
}
.tw-home-involved-card {
    min-height: 260px;
    display: flex;
    flex-direction: column;
}
.tw-home-involved-card .tw-text-link {
    margin-top: auto;
}
.tw-text-link {
    color: #0b46e5;
    font-weight: 750;
    text-decoration: none;
}
.tw-text-link:hover,
.tw-text-link:focus-visible {
    text-decoration: underline;
}

@media (max-width: 1050px) {
    .tw-home-hero-grid {
        grid-template-columns: 1fr;
    }
    .tw-home-hero-system {
        max-width: 680px;
        width: 100%;
        margin-inline: auto;
    }
    .tw-home-card-grid-4 {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}
@media (max-width: 820px) {
    .tw-home-shell {
        width: min(100% - 32px, 1440px);
    }
    .tw-home-split,
    .tw-home-card-grid-3,
    .tw-home-process-grid {
        grid-template-columns: 1fr;
    }
    .tw-home-process-step + .tw-home-process-step {
        border-left: 0;
        border-top: 1px solid #43506a;
    }
}
@media (max-width: 600px) {
    .tw-home-card-grid-4 {
        grid-template-columns: 1fr;
    }
    .tw-home-hero-system {
        min-height: 350px;
    }
    .tw-system-center {
        width: 132px;
        height: 132px;
        font-size: 1.1rem;
    }
    .tw-system-node {
        width: 112px;
        min-height: 60px;
        font-size: .82rem;
    }
    .tw-system-node::before {
        width: 76px;
    }
}


/* ==========================================================
   Homepage visual refinement — 2.1.0
   Reference direction: denser, more visual, fewer empty fields.
   ========================================================== */

.tw-home-shell {
    width: min(100% - 64px, 1360px);
}

/* Hero: tighter, image-led, visually weighted like the approved reference. */
.tw-home-hero {
    padding: 34px 0 46px;
    background:
        radial-gradient(circle at 32% 86%, rgba(11,70,229,.08), transparent 30%),
        #fff;
}
.tw-home-hero-grid {
    grid-template-columns: minmax(0, .9fr) minmax(520px, 1.1fr);
    gap: 28px;
    min-height: 520px;
}
.tw-home-hero h1 {
    max-width: 690px;
    margin: 8px 0 18px;
    font-size: clamp(3.6rem, 5.6vw, 6.25rem);
}
.tw-home-lead {
    max-width: 620px;
    font-size: 1.18rem;
    line-height: 1.55;
}
.tw-home-support-line {
    margin: 14px 0 0;
    color: #0b46e5;
    font-size: 1.08rem;
    font-weight: 800;
}
.tw-home-actions {
    margin-top: 24px;
}
.tw-home-hero-photo {
    min-height: 500px;
    overflow: hidden;
    position: relative;
    border-radius: 0;
}
.tw-home-hero-photo::before {
    content: "";
    position: absolute;
    z-index: 2;
    inset: 0 auto 0 0;
    width: 18%;
    background: linear-gradient(90deg, #fff 0%, rgba(255,255,255,.92) 35%, rgba(255,255,255,0) 100%);
}
.tw-home-hero-photo img {
    width: 100%;
    height: 100%;
    min-height: 500px;
    object-fit: cover;
}

/* Tighten every major section. */
.tw-home-section {
    padding: 54px 0;
}
.tw-home-section-heading {
    margin-bottom: 26px;
}
.tw-home-section h2 {
    margin: 6px 0 12px;
    font-size: clamp(2.25rem, 3.5vw, 3.75rem);
}
.tw-home-section-heading > p:last-child,
.tw-home-section-copy {
    font-size: 1rem;
    line-height: 1.58;
}

/* Model becomes a compact transition, not a huge text field. */
.tw-home-model {
    padding-top: 42px;
    padding-bottom: 42px;
}

/* Real Choice card treatment: image-first and compact. */
.tw-home-real-choice {
    background: #fff;
}
.tw-home-rcj-card {
    box-shadow: 0 8px 22px rgba(7,19,50,.08);
    border: 1px solid #d9e1ee;
}
.tw-home-card-image {
    aspect-ratio: 4 / 3;
}
.tw-home-card-body {
    padding: 18px 20px 20px;
}
.tw-home-card h3 {
    font-size: 1.22rem;
}
.tw-home-card p {
    line-height: 1.5;
}

/* Network is more compact and graphic. */
.tw-home-network {
    padding-top: 48px;
    padding-bottom: 42px;
}
.tw-home-network-card {
    padding: 22px;
    min-height: 190px;
}
.tw-home-card-number {
    margin-bottom: 22px;
}

/* Stats strip inspired by the approved reference. */
.tw-home-stats {
    padding: 28px 0 30px;
    background: #eef6ff;
    border-top: 1px solid #d8e6f7;
    border-bottom: 1px solid #d8e6f7;
}
.tw-home-stats h2 {
    margin: 0 0 22px;
    text-align: center;
    font-size: clamp(1.35rem, 2.2vw, 2rem);
}
.tw-home-stats-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
}
.tw-home-stat {
    padding: 4px 26px;
    text-align: center;
}
.tw-home-stat + .tw-home-stat {
    border-left: 1px solid #b9cde5;
}
.tw-home-stat strong,
.tw-home-stat span {
    display: block;
}
.tw-home-stat strong {
    color: #0b46e5;
    font-size: clamp(1.75rem, 3vw, 2.65rem);
    line-height: 1;
}
.tw-home-stat span {
    margin-top: 7px;
    color: #253047;
    font-size: .9rem;
    line-height: 1.35;
}

/* Evidence cards need visual weight, not acres of white. */
.tw-home-evidence {
    background: #fff;
}
.tw-home-metric-card {
    min-height: 260px;
    padding: 22px;
    background: #f8fafe;
}
.tw-home-metric-value {
    font-size: clamp(2.6rem, 4vw, 4.2rem);
}

/* Dark process band tightened. */
.tw-home-process {
    padding-top: 52px;
    padding-bottom: 52px;
}
.tw-home-process-step {
    padding: 26px 28px;
}

/* Accountability becomes a concise band. */
.tw-home-documents {
    padding-top: 46px;
    padding-bottom: 46px;
}

/* Get involved becomes the strong closing visual block. */
.tw-home-involved {
    padding-top: 48px;
    padding-bottom: 54px;
}
.tw-home-involved .tw-home-section-heading {
    text-align: center;
    margin-inline: auto;
}
.tw-home-involved .tw-home-card-grid {
    max-width: 1180px;
    margin-inline: auto;
}
.tw-home-involved-card {
    min-height: 215px;
    padding: 24px;
    background: linear-gradient(180deg, #fff, #f8fafe);
}
.tw-home-involved-card h3 {
    color: #0b46e5;
}

/* Reduce space before footer. */
.tw-home-involved + * {
    margin-top: 0;
}

@media (max-width: 1050px) {
    .tw-home-hero-grid {
        grid-template-columns: 1fr;
    }
    .tw-home-hero-photo {
        min-height: 380px;
    }
    .tw-home-hero-photo img {
        min-height: 380px;
    }
}
@media (max-width: 820px) {
    .tw-home-shell {
        width: min(100% - 32px, 1360px);
    }
    .tw-home-stats-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 20px 0;
    }
    .tw-home-stat:nth-child(3) {
        border-left: 0;
    }
}
@media (max-width: 560px) {
    .tw-home-stats-grid {
        grid-template-columns: 1fr;
    }
    .tw-home-stat + .tw-home-stat {
        border-left: 0;
        border-top: 1px solid #b9cde5;
        padding-top: 18px;
    }
}


/* Footer redesign — 2.2.0 */
.tw-site-footer {
    background: #071332;
    color: #fff;
}
.tw-footer-main {
    padding: 54px 0 46px;
}
.tw-footer-shell {
    width: min(100% - 64px, 1360px);
    margin-inline: auto;
}
.tw-footer-grid {
    display: grid;
    grid-template-columns: 1.2fr .8fr 1fr;
    gap: 54px;
    align-items: start;
}
.tw-footer-logo img {
    max-width: 230px;
    height: auto;
    filter: brightness(0) invert(1);
}
.tw-footer-brand p {
    max-width: 440px;
    margin: 22px 0 0;
    color: #cdd6e5;
    line-height: 1.65;
}
.tw-footer-contact {
    display: flex;
    flex-direction: column;
    gap: 6px;
    margin-top: 18px;
}
.tw-footer-contact a,
.tw-footer-links a,
.tw-footer-social a {
    color: #fff;
    text-decoration: none;
}
.tw-footer-links h2,
.tw-footer-cta h2 {
    margin: 0 0 18px;
    color: #fff;
    font-size: 1.45rem;
}
.tw-footer-links ul {
    list-style: none;
    margin: 0;
    padding: 0;
}
.tw-footer-links li + li {
    margin-top: 10px;
}
.tw-footer-cta {
    padding-left: 34px;
    border-left: 1px solid #34415b;
}
.tw-footer-cta .tw-eyebrow {
    color: #73a0ff;
}
.tw-footer-bottom {
    border-top: 1px solid #34415b;
    padding: 18px 0;
}
.tw-footer-bottom-row {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 24px;
}
.tw-footer-bottom p {
    margin: 0;
    color: #98a6bd;
    font-size: .88rem;
}
.tw-footer-social {
    display: flex;
    flex-wrap: wrap;
    gap: 18px;
    font-size: .9rem;
}
.tw-footer-social a {
    color: #cdd6e5;
}
@media (max-width: 900px) {
    .tw-footer-grid {
        grid-template-columns: 1fr 1fr;
    }
    .tw-footer-cta {
        grid-column: 1 / -1;
        padding-left: 0;
        padding-top: 28px;
        border-left: 0;
        border-top: 1px solid #34415b;
    }
}
@media (max-width: 620px) {
    .tw-footer-shell {
        width: min(100% - 32px, 1360px);
    }
    .tw-footer-grid {
        grid-template-columns: 1fr;
    }
    .tw-footer-bottom-row {
        align-items: flex-start;
        flex-direction: column;
    }
}

/* Four-up Real Choice homepage grid — 2.2.0 */
.tw-home-real-choice .tw-home-card-grid-4 {
    grid-template-columns: repeat(4, minmax(0, 1fr));
}
@media (max-width: 1050px) {
    .tw-home-real-choice .tw-home-card-grid-4 {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}
@media (max-width: 620px) {
    .tw-home-real-choice .tw-home-card-grid-4 {
        grid-template-columns: 1fr;
    }
}


/* Focused Real Choice Journey — 2.3.0 */
body.tw-rcj-focus-page{margin:0;background:#f2f3f5;color:#202124}
.tw-rcj-focus{min-height:100vh;padding:26px;background:radial-gradient(circle at 50% 0%,rgba(11,70,229,.045),transparent 34%),#f2f3f5}
.tw-rcj-focus-shell{width:min(100%,1120px);margin:0 auto;overflow:hidden;background:#fff;border:1px solid #d8dadd;border-radius:28px;box-shadow:0 2px 12px rgba(20,24,32,.08)}
.tw-rcj-focus-brand{padding:24px 32px;border-bottom:1px solid #e3e4e6}
.tw-rcj-focus-brand-link{display:inline-flex;align-items:center;gap:18px;color:#202124;text-decoration:none}
.tw-rcj-focus-mark{display:grid;place-items:center;width:66px;height:66px;border-radius:50%;background:#1d1d1f;color:#fff;font-size:1.8rem;font-weight:850}
.tw-rcj-focus-brand strong,.tw-rcj-focus-brand small{display:block}
.tw-rcj-focus-brand strong{font-size:1.75rem;line-height:1.1}
.tw-rcj-focus-brand small{margin-top:5px;color:#8a8a8c;font-size:1.15rem}
.tw-rcj-stage{padding:34px;animation:twRcxFade .22s ease}
.tw-rcj-stage[hidden]{display:none!important}
@keyframes twRcxFade{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}
.tw-rcj-stage-one-grid{display:grid;grid-template-columns:minmax(0,1.08fr) minmax(340px,.92fr);gap:34px;align-items:stretch}
.tw-rcj-stage-copy h1{margin:16px 0 18px;font-size:clamp(2rem,4.2vw,3.4rem);line-height:1.05;letter-spacing:-.025em}
.tw-rcj-risk-label{display:inline-flex;margin:0;padding:7px 14px;border-radius:999px;background:#f1f1f2;color:#727274;font-size:.78rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase}
.tw-rcj-stage-teaser,.tw-rcj-stage-context{color:#5a5a5d;font-size:1.15rem;line-height:1.58}
.tw-rcj-stage-context>:first-child{margin-top:0}.tw-rcj-stage-context>:last-child{margin-bottom:0}
.tw-rcj-focus-decision{margin-top:24px;padding:20px 22px;border-left:5px solid #c8c9cc;background:#f7f7f8;border-radius:14px}
.tw-rcj-focus-decision strong{display:block;margin-bottom:7px}.tw-rcj-focus-decision p{margin:0;color:#343437;font-size:1.07rem}
.tw-rcj-focus-image,.tw-rcj-final-image{margin:0;overflow:hidden;border-radius:18px;background:#eef0f3}
.tw-rcj-focus-image{min-height:390px}
.tw-rcj-focus-image img,.tw-rcj-final-image img{display:block;width:100%;height:100%;object-fit:cover}
.tw-rcj-focus-choices{margin-top:34px}
.tw-rcj-focus-kicker{margin:0 0 16px;color:#252527;font-size:.9rem;font-weight:850;letter-spacing:.1em;text-transform:uppercase}
.tw-rcj-focus-choice-list{display:grid;gap:14px}
.tw-rcj-focus-choice{display:flex;align-items:center;justify-content:space-between;gap:18px;width:100%;min-height:76px;padding:18px 24px;border:1px solid #d7d8db;border-radius:17px;background:#fff;color:#222225;font:inherit;font-size:1.08rem;text-align:left;cursor:pointer;transition:border-color .16s ease,transform .16s ease,box-shadow .16s ease}
.tw-rcj-focus-choice:hover,.tw-rcj-focus-choice:focus-visible{border-color:#0b46e5;box-shadow:0 4px 16px rgba(11,70,229,.10);transform:translateY(-1px)}
.tw-rcj-chosen{margin:0 0 24px;padding-bottom:20px;border-bottom:1px solid #e0e1e3;color:#89898c;font-size:1.02rem}
.tw-rcj-reveal,.tw-rcj-final-grid{max-width:980px}
.tw-rcj-reveal-copy,.tw-rcj-final-copy{color:#5a5a5d;font-size:clamp(1.3rem,2.4vw,1.8rem);line-height:1.55}
.tw-rcj-reveal-copy p,.tw-rcj-final-copy p{margin:0 0 22px}
.tw-rcj-stage-actions{display:flex;flex-direction:column;gap:18px;margin-top:30px}
.tw-rcj-next,.tw-rcj-learn{display:inline-flex;align-items:center;justify-content:center;width:100%;min-height:64px;padding:16px 24px;border:1px solid #d7d8db;border-radius:16px;background:#f7f7f8;color:#222225;font:inherit;font-size:1.08rem;font-weight:700;text-decoration:none;cursor:pointer}
.tw-rcj-next:hover,.tw-rcj-next:focus-visible,.tw-rcj-learn:hover,.tw-rcj-learn:focus-visible{border-color:#0b46e5}
.tw-rcj-reset{align-self:center;border:0;background:transparent;color:#929295;font:inherit;font-size:1rem;cursor:pointer}
.tw-rcj-followed-label{color:#a33b3e}
.tw-rcj-final-grid{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(300px,.9fr);gap:32px;align-items:start}
.tw-rcj-prevention{margin-top:28px;padding:24px 28px;border:1px solid #a9d9bc;border-radius:16px;background:#eef9f2}
.tw-rcj-prevention .tw-rcj-focus-kicker{color:#2f7e58}
.tw-rcj-prevention p:last-child{margin-bottom:0;color:#326348;font-size:1.2rem;line-height:1.55}
.tw-rcj-final-image{min-height:330px}
.tw-rcj-final-actions{padding-top:28px;border-top:1px solid #e0e1e3}
.tw-rcj-learn{width:auto;align-self:flex-start;background:#1e1e20;border-color:#1e1e20;color:#fff}
@media(max-width:820px){
.tw-rcj-focus{padding:12px}.tw-rcj-focus-shell{border-radius:20px}.tw-rcj-focus-brand{padding:18px 20px}.tw-rcj-focus-mark{width:52px;height:52px;font-size:1.35rem}.tw-rcj-focus-brand strong{font-size:1.35rem}.tw-rcj-focus-brand small{font-size:.98rem}.tw-rcj-stage{padding:24px 20px}.tw-rcj-stage-one-grid,.tw-rcj-final-grid{grid-template-columns:1fr}.tw-rcj-focus-image{min-height:260px;order:-1}.tw-rcj-final-image{min-height:240px}}


/* Real Choice interaction polish — 2.3.1 */
.tw-rcj-focus-brand {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 24px;
}
.tw-rcj-back-link,
.tw-rcj-return {
    color: #667085;
    font-weight: 700;
    text-decoration: none;
}
.tw-rcj-back-link:hover,
.tw-rcj-back-link:focus-visible,
.tw-rcj-return:hover,
.tw-rcj-return:focus-visible {
    color: #0b46e5;
    text-decoration: underline;
}

/* Override inherited dark button hover. */
.tw-rcj-focus .tw-rcj-focus-choice:hover,
.tw-rcj-focus .tw-rcj-focus-choice:focus-visible {
    background: #f3f7ff !important;
    color: #0b1b42 !important;
    border-color: #0b46e5 !important;
    box-shadow: 0 4px 16px rgba(11,70,229,.10);
}
.tw-rcj-focus .tw-rcj-focus-choice:hover span,
.tw-rcj-focus .tw-rcj-focus-choice:focus-visible span {
    color: #0b1b42 !important;
}

.tw-rcj-final-actions {
    flex-direction: row;
    align-items: center;
    justify-content: flex-start;
    flex-wrap: wrap;
}
.tw-rcj-reset-button {
    align-self: auto;
    min-height: 52px;
    padding: 12px 20px;
    border: 2px solid #0b46e5;
    border-radius: 12px;
    background: #fff;
    color: #0b46e5;
    font-weight: 800;
}
.tw-rcj-reset-button:hover,
.tw-rcj-reset-button:focus-visible {
    background: #0b46e5 !important;
    color: #fff !important;
}
.tw-rcj-return {
    display: inline-flex;
    min-height: 52px;
    align-items: center;
    padding: 12px 6px;
}

/* Post-journey conversion panel */
.tw-rcj-action-panel {
    margin: 42px -34px -34px;
    padding: 46px 34px 38px;
    border-top: 1px solid #dfe4ec;
    background: #f8fafe;
    text-align: center;
}
.tw-rcj-action-eyebrow {
    margin: 0 0 10px;
    color: #0b46e5;
    font-size: .82rem;
    font-weight: 850;
    letter-spacing: .12em;
}
.tw-rcj-action-panel h2 {
    max-width: 900px;
    margin: 0 auto 12px;
    color: #071332;
    font-size: clamp(2rem, 3.5vw, 3.25rem);
    line-height: 1.08;
}
.tw-rcj-action-intro {
    max-width: 760px;
    margin: 0 auto 28px;
    color: #59657a;
    font-size: 1.05rem;
}
.tw-rcj-action-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 18px;
    max-width: 1050px;
    margin: 0 auto;
    text-align: left;
}
.tw-rcj-action-grid article {
    display: flex;
    min-height: 245px;
    flex-direction: column;
    padding: 26px;
    border: 1px solid #d6dfed;
    background: #fff;
}
.tw-rcj-action-grid h3 {
    margin: 0 0 16px;
    color: #0b46e5;
    font-size: 1.35rem;
}
.tw-rcj-action-grid p {
    margin: 0 0 24px;
    color: #536077;
    line-height: 1.55;
}
.tw-rcj-action-grid a {
    margin-top: auto;
    color: #0b46e5;
    font-weight: 800;
    text-decoration: none;
}
.tw-rcj-action-grid a:hover,
.tw-rcj-action-grid a:focus-visible {
    text-decoration: underline;
}
@media (max-width: 820px) {
    .tw-rcj-focus-brand {
        align-items: flex-start;
        flex-direction: column;
    }
    .tw-rcj-action-panel {
        margin: 34px -20px -24px;
        padding: 36px 20px 28px;
    }
    .tw-rcj-action-grid {
        grid-template-columns: 1fr;
    }
    .tw-rcj-action-grid article {
        min-height: 0;
    }
}


/* Real Choice button contrast correction — 2.3.2 */
.tw-rcj-focus .tw-rcj-next {
    background: #0b46e5 !important;
    border-color: #0b46e5 !important;
    color: #ffffff !important;
    box-shadow: none !important;
}
.tw-rcj-focus .tw-rcj-next:hover,
.tw-rcj-focus .tw-rcj-next:focus-visible {
    background: #0739bd !important;
    border-color: #0739bd !important;
    color: #ffffff !important;
    box-shadow: 0 4px 14px rgba(11,70,229,.22) !important;
}
.tw-rcj-focus .tw-rcj-next:active {
    background: #062f9c !important;
    border-color: #062f9c !important;
    color: #ffffff !important;
}


/* Stage 2 supporting image + CTA order refinement — 2.3.3 */
.tw-rcj-stage-two-grid {
    display: grid;
    grid-template-columns: minmax(0, 1.7fr) minmax(250px, .7fr);
    gap: 34px;
    align-items: start;
}
.tw-rcj-stage-two-image {
    margin: 0;
    min-height: 220px;
    max-height: 310px;
    overflow: hidden;
    border-radius: 16px;
    background: #eef0f3;
}
.tw-rcj-stage-two-image img {
    display: block;
    width: 100%;
    height: 100%;
    min-height: 220px;
    max-height: 310px;
    object-fit: cover;
}
@media (max-width: 820px) {
    .tw-rcj-stage-two-grid {
        grid-template-columns: 1fr;
    }
    .tw-rcj-stage-two-image {
        min-height: 200px;
        max-height: 260px;
    }
    .tw-rcj-stage-two-image img {
        min-height: 200px;
        max-height: 260px;
    }
}


/* ==========================================================
   Trusted World Footer v2 — 2.3.4
   ========================================================== */
.tw-site-footer.tw-site-footer-v2 {
    margin-top: 0;
    background: #0b1735;
    color: #ffffff;
}
.tw-site-footer-v2 .tw-footer-shell {
    width: min(100% - 48px, 1500px);
    margin: 0 auto;
    padding: 0;
}
.tw-site-footer-v2 .tw-footer-primary {
    display: grid;
    grid-template-columns: minmax(0, 1.35fr) minmax(220px, .75fr) minmax(300px, .9fr);
    gap: 64px;
    padding: 48px 0 38px;
    align-items: start;
}
.tw-site-footer-v2 .tw-footer-logo {
    margin: 0 0 18px;
}
.tw-site-footer-v2 .tw-footer-logo .custom-logo-link {
    display: inline-flex;
}
.tw-site-footer-v2 .tw-footer-logo img {
    width: auto;
    max-width: 250px;
    max-height: 58px;
    object-fit: contain;
    filter: brightness(0) invert(1);
}
.tw-site-footer-v2 .tw-footer-identity h2 {
    margin: 0 0 18px;
    color: #fff;
    font-size: 1.55rem;
}
.tw-site-footer-v2 .tw-footer-statement {
    max-width: 520px;
    margin: 0;
    color: rgba(255,255,255,.78);
    font-size: 1rem;
    line-height: 1.65;
}
.tw-site-footer-v2 .tw-footer-contact {
    display: flex;
    flex-wrap: wrap;
    gap: 10px 22px;
    margin-top: 20px;
}
.tw-site-footer-v2 .tw-footer-contact a,
.tw-site-footer-v2 .tw-footer-nav a,
.tw-site-footer-v2 .tw-footer-action-list a,
.tw-site-footer-v2 .tw-footer-social a,
.tw-site-footer-v2 .tw-footer-legal-links a {
    color: #ffffff;
    text-decoration: none;
}
.tw-site-footer-v2 .tw-footer-contact a:hover,
.tw-site-footer-v2 .tw-footer-contact a:focus-visible,
.tw-site-footer-v2 .tw-footer-nav a:hover,
.tw-site-footer-v2 .tw-footer-nav a:focus-visible,
.tw-site-footer-v2 .tw-footer-social a:hover,
.tw-site-footer-v2 .tw-footer-social a:focus-visible,
.tw-site-footer-v2 .tw-footer-legal-links a:hover,
.tw-site-footer-v2 .tw-footer-legal-links a:focus-visible {
    text-decoration: underline;
}
.tw-site-footer-v2 .tw-footer-heading {
    margin: 2px 0 18px;
    color: rgba(255,255,255,.58);
    font-size: .76rem;
    font-weight: 850;
    letter-spacing: .12em;
    text-transform: uppercase;
}
.tw-site-footer-v2 .tw-footer-nav ul {
    display: grid;
    gap: 10px;
    margin: 0;
    padding: 0;
    list-style: none;
}
.tw-site-footer-v2 .tw-footer-nav a {
    color: rgba(255,255,255,.88);
}
.tw-site-footer-v2 .tw-footer-action-list {
    display: grid;
    gap: 9px;
}
.tw-site-footer-v2 .tw-footer-action-list a {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 18px;
    min-height: 58px;
    padding: 11px 0;
    border-top: 1px solid rgba(255,255,255,.15);
}
.tw-site-footer-v2 .tw-footer-action-list a:last-child {
    border-bottom: 1px solid rgba(255,255,255,.15);
}
.tw-site-footer-v2 .tw-footer-action-list span {
    font-weight: 800;
}
.tw-site-footer-v2 .tw-footer-action-list small {
    color: #8fb2ff;
    font-size: .84rem;
    font-weight: 750;
    white-space: nowrap;
}
.tw-site-footer-v2 .tw-footer-action-list a:hover span,
.tw-site-footer-v2 .tw-footer-action-list a:focus-visible span,
.tw-site-footer-v2 .tw-footer-action-list a:hover small,
.tw-site-footer-v2 .tw-footer-action-list a:focus-visible small {
    color: #ffffff;
}
.tw-site-footer-v2 .tw-footer-secondary {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 24px;
    min-height: 60px;
    padding: 14px 0;
    border-top: 1px solid rgba(255,255,255,.14);
}
.tw-site-footer-v2 .tw-footer-social,
.tw-site-footer-v2 .tw-footer-legal-links {
    display: flex;
    flex-wrap: wrap;
    gap: 18px;
    margin: 0;
}
.tw-site-footer-v2 .tw-footer-social a,
.tw-site-footer-v2 .tw-footer-legal-links a {
    color: rgba(255,255,255,.72);
    font-size: .86rem;
}
.tw-site-footer-v2 .tw-footer-legal-copy {
    padding: 17px 0 22px;
    border-top: 1px solid rgba(255,255,255,.10);
}
.tw-site-footer-v2 .tw-footer-legal-copy p {
    max-width: 980px;
    margin: 0;
    color: rgba(255,255,255,.54);
    font-size: .79rem;
    line-height: 1.55;
}
@media (max-width: 980px) {
    .tw-site-footer-v2 .tw-footer-primary {
        grid-template-columns: 1fr 1fr;
        gap: 38px;
    }
    .tw-site-footer-v2 .tw-footer-identity {
        grid-column: 1 / -1;
    }
}
@media (max-width: 680px) {
    .tw-site-footer-v2 .tw-footer-shell {
        width: min(100% - 32px, 1500px);
    }
    .tw-site-footer-v2 .tw-footer-primary {
        grid-template-columns: 1fr;
        gap: 30px;
        padding: 38px 0 30px;
    }
    .tw-site-footer-v2 .tw-footer-identity {
        grid-column: auto;
    }
    .tw-site-footer-v2 .tw-footer-secondary {
        align-items: flex-start;
        flex-direction: column;
        padding: 18px 0;
    }
    .tw-site-footer-v2 .tw-footer-action-list a {
        align-items: flex-start;
        flex-direction: column;
        gap: 5px;
    }
}


/* Guaranteed footer renderer — 2.3.5 */
.tw-site-footer-v3 {
    background: #0b1735 !important;
    color: #fff !important;
}
body > .tw-site-footer-v3 {
    display: block !important;
}
/* Common legacy/template-builder footer containers are suppressed. */
.elementor-location-footer:not(:has(.tw-site-footer-v3)) {
    display: none !important;
}


/* ==========================================================
   Trusted World Footer polish — 2.3.6
   ========================================================== */
.tw-site-footer-v3 {
    margin-top: 0 !important;
    background: #0b1735 !important;
    color: #ffffff !important;
}
.tw-site-footer-v3 .tw-footer-shell {
    width: min(100% - 64px, 1480px);
    margin: 0 auto;
}
.tw-site-footer-v3 .tw-footer-primary {
    display: grid;
    grid-template-columns: minmax(0, 1.25fr) minmax(220px, .65fr) minmax(320px, .9fr);
    gap: 72px;
    padding: 56px 0 42px;
    align-items: start;
}
.tw-site-footer-v3 .tw-footer-brand-lockup {
    display: flex;
    align-items: center;
    gap: 16px;
    margin-bottom: 20px;
}
.tw-site-footer-v3 .tw-footer-mark {
    display: grid;
    place-items: center;
    width: 52px;
    height: 52px;
    flex: 0 0 52px;
    border-radius: 50%;
    background: #ffffff;
    color: #0b1735;
    font-size: 1.05rem;
    font-weight: 900;
    letter-spacing: .02em;
}
.tw-site-footer-v3 .tw-footer-identity h2 {
    margin: 0;
    color: #fff;
    font-size: 1.55rem;
    line-height: 1.1;
}
.tw-site-footer-v3 .tw-footer-tagline {
    margin: 4px 0 0;
    color: rgba(255,255,255,.58);
    font-size: .9rem;
}
.tw-site-footer-v3 .tw-footer-statement {
    max-width: 540px;
    margin: 0;
    color: rgba(255,255,255,.76);
    font-size: 1rem;
    line-height: 1.65;
}
.tw-site-footer-v3 .tw-footer-contact {
    display: flex;
    flex-wrap: wrap;
    gap: 10px 22px;
    margin-top: 20px;
}
.tw-site-footer-v3 .tw-footer-contact a,
.tw-site-footer-v3 .tw-footer-nav a,
.tw-site-footer-v3 .tw-footer-action-list a,
.tw-site-footer-v3 .tw-footer-social a,
.tw-site-footer-v3 .tw-footer-legal-links a {
    text-decoration: none;
}
.tw-site-footer-v3 .tw-footer-contact a {
    color: #fff;
    font-weight: 700;
}
.tw-site-footer-v3 .tw-footer-heading {
    margin: 2px 0 18px;
    color: rgba(255,255,255,.46);
    font-size: .76rem;
    font-weight: 850;
    letter-spacing: .12em;
    text-transform: uppercase;
}
.tw-site-footer-v3 .tw-footer-nav ul {
    margin: 0;
    padding: 0;
    list-style: none;
}
.tw-site-footer-v3 .tw-footer-nav li + li {
    margin-top: 10px;
}
.tw-site-footer-v3 .tw-footer-nav a {
    color: rgba(255,255,255,.84);
    font-size: .98rem;
}
.tw-site-footer-v3 .tw-footer-nav a:hover,
.tw-site-footer-v3 .tw-footer-nav a:focus-visible,
.tw-site-footer-v3 .tw-footer-contact a:hover,
.tw-site-footer-v3 .tw-footer-contact a:focus-visible,
.tw-site-footer-v3 .tw-footer-social a:hover,
.tw-site-footer-v3 .tw-footer-social a:focus-visible,
.tw-site-footer-v3 .tw-footer-legal-links a:hover,
.tw-site-footer-v3 .tw-footer-legal-links a:focus-visible {
    color: #8fb2ff;
}
.tw-site-footer-v3 .tw-footer-action-list {
    display: grid;
    gap: 0;
    border-top: 1px solid rgba(255,255,255,.14);
}
.tw-site-footer-v3 .tw-footer-action-list a {
    display: grid;
    grid-template-columns: 1fr auto;
    gap: 18px;
    align-items: center;
    padding: 15px 0;
    border-bottom: 1px solid rgba(255,255,255,.14);
    color: #fff;
}
.tw-site-footer-v3 .tw-footer-action-list span {
    font-weight: 800;
    font-size: 1rem;
}
.tw-site-footer-v3 .tw-footer-action-list small {
    color: #8fb2ff;
    font-size: .82rem;
    font-weight: 750;
    white-space: nowrap;
}
.tw-site-footer-v3 .tw-footer-action-list a:hover span,
.tw-site-footer-v3 .tw-footer-action-list a:focus-visible span,
.tw-site-footer-v3 .tw-footer-action-list a:hover small,
.tw-site-footer-v3 .tw-footer-action-list a:focus-visible small {
    color: #ffffff;
}
.tw-site-footer-v3 .tw-footer-secondary {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 28px;
    padding: 18px 0;
    border-top: 1px solid rgba(255,255,255,.12);
}
.tw-site-footer-v3 .tw-footer-social,
.tw-site-footer-v3 .tw-footer-legal-links {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 16px;
}
.tw-site-footer-v3 .tw-footer-social-label {
    color: rgba(255,255,255,.40);
    font-size: .75rem;
    font-weight: 800;
    letter-spacing: .1em;
    text-transform: uppercase;
}
.tw-site-footer-v3 .tw-footer-social a,
.tw-site-footer-v3 .tw-footer-legal-links a {
    color: rgba(255,255,255,.70);
    font-size: .86rem;
}
.tw-site-footer-v3 .tw-footer-legal-copy {
    padding: 17px 0 24px;
    border-top: 1px solid rgba(255,255,255,.08);
}
.tw-site-footer-v3 .tw-footer-legal-copy p {
    max-width: 1080px;
    margin: 0;
    color: rgba(255,255,255,.48);
    font-size: .77rem;
    line-height: 1.55;
}
@media (max-width: 980px) {
    .tw-site-footer-v3 .tw-footer-shell {
        width: min(100% - 40px, 1480px);
    }
    .tw-site-footer-v3 .tw-footer-primary {
        grid-template-columns: 1fr 1fr;
        gap: 40px;
    }
    .tw-site-footer-v3 .tw-footer-identity {
        grid-column: 1 / -1;
    }
}
@media (max-width: 680px) {
    .tw-site-footer-v3 .tw-footer-shell {
        width: min(100% - 28px, 1480px);
    }
    .tw-site-footer-v3 .tw-footer-primary {
        grid-template-columns: 1fr;
        gap: 30px;
        padding: 40px 0 30px;
    }
    .tw-site-footer-v3 .tw-footer-identity {
        grid-column: auto;
    }
    .tw-site-footer-v3 .tw-footer-secondary {
        align-items: flex-start;
        flex-direction: column;
    }
    .tw-site-footer-v3 .tw-footer-action-list a {
        grid-template-columns: 1fr;
        gap: 4px;
    }
}


/* Footer social icons — 2.3.7 */
.tw-site-footer-v3 .tw-footer-social {
    gap: 10px;
}
.tw-site-footer-v3 .tw-footer-social-label {
    margin-right: 6px;
}
.tw-site-footer-v3 .tw-footer-social-icon {
    display: inline-grid;
    place-items: center;
    width: 38px;
    height: 38px;
    border: 1px solid rgba(255,255,255,.22);
    border-radius: 50%;
    color: rgba(255,255,255,.82);
    transition: background-color .16s ease, border-color .16s ease, color .16s ease, transform .16s ease;
}
.tw-site-footer-v3 .tw-footer-social-icon svg {
    width: 18px;
    height: 18px;
    fill: currentColor;
}
.tw-site-footer-v3 .tw-footer-social-icon:hover,
.tw-site-footer-v3 .tw-footer-social-icon:focus-visible {
    background: #ffffff;
    border-color: #ffffff;
    color: #0b1735;
    transform: translateY(-1px);
    text-decoration: none;
}


/* Homepage limited rich text — 2.3.9 */
.tw-home-richtext > :first-child {
    margin-top: 0;
}
.tw-home-richtext > :last-child {
    margin-bottom: 0;
}
.tw-home-richtext p {
    margin: 0 0 .8em;
    color: inherit;
    font: inherit;
    line-height: inherit;
}
.tw-home-richtext strong,
.tw-home-richtext b {
    color: inherit;
    font-weight: 800;
}
.tw-home-richtext em,
.tw-home-richtext i {
    font-style: italic;
}
.tw-home-richtext a {
    color: #0b46e5;
    font-weight: 700;
}
.tw-home-richtext ul,
.tw-home-richtext ol {
    margin: .55em 0 .8em 1.2em;
    padding: 0;
}
.tw-home-richtext li + li {
    margin-top: .3em;
}


/* THE MODEL alignment — 2.3.10
   Eyebrow stays at top. Right column is untouched.
   Only the H2 is vertically centered against the right column. */
@media (min-width: 981px) {
    .tw-home-model .tw-home-model-left {
        align-self: stretch;
        display: grid;
        grid-template-rows: auto 1fr;
    }

    .tw-home-model .tw-home-model-left > .tw-eyebrow {
        align-self: start;
    }

    .tw-home-model .tw-home-model-left > h2 {
        align-self: center;
        margin-top: 0;
        margin-bottom: 0;
    }
}


/* Network upper-right image — 2.3.11 */
.tw-home-network-intro {
    display: grid;
    grid-template-columns: minmax(0, 1.1fr) minmax(360px, .9fr);
    gap: 56px;
    align-items: start;
    margin-bottom: 30px;
}
.tw-home-network-intro .tw-home-section-heading {
    margin-bottom: 0;
}
.tw-home-network-image {
    align-self: start;
    width: 100%;
}
.tw-home-network-image img {
    display: block;
    width: 100%;
    height: auto;
    max-height: 360px;
    object-fit: contain;
}
@media (max-width: 980px) {
    .tw-home-network-intro {
        grid-template-columns: 1fr;
        gap: 28px;
    }
    .tw-home-network-image {
        max-width: 720px;
    }
}


/* Real Choice momentum + escape navigation — 2.3.13 */
.tw-rcj-focus-nav {
    display: flex;
    align-items: center;
    gap: 22px;
}
.tw-rcj-focus-nav a {
    text-decoration: none;
}
.tw-rcj-home-link {
    color: #5f6b80;
    font-weight: 750;
}
.tw-rcj-home-link:hover,
.tw-rcj-home-link:focus-visible,
.tw-rcj-back-link:hover,
.tw-rcj-back-link:focus-visible {
    color: #0b46e5;
}
.tw-rcj-path-tension {
    width: 100%;
    max-width: 900px;
    margin: 0 auto 18px;
    color: #5d6470;
    font-size: 1.08rem;
    line-height: 1.6;
    text-align: center;
}
.tw-rcj-path-question {
    margin-top: 28px;
    padding: 24px 28px;
    border-left: 4px solid #0b46e5;
    background: #f5f7fb;
}
.tw-rcj-path-question p:last-child {
    margin: 8px 0 0;
    color: #303a4f;
    font-size: 1.08rem;
    line-height: 1.55;
}
@media (max-width: 700px) {
    .tw-rcj-focus-brand {
        align-items: flex-start;
        gap: 16px;
    }
    .tw-rcj-focus-nav {
        flex-direction: column;
        align-items: flex-end;
        gap: 7px;
    }
}


/* Donate What We Need page — 2.3.14 */
.tw-needs-page { background:#fff; color:#0b1735; }
.tw-needs-shell { width:min(100% - 64px, 1480px); margin:0 auto; }
.tw-needs-hero { background:#f4f7fb; border-bottom:1px solid #dbe3ef; }
.tw-needs-hero-grid {
    display:grid;
    grid-template-columns:minmax(0,1fr) minmax(420px,.9fr);
    gap:64px;
    align-items:center;
    min-height:610px;
    padding:72px 0;
}
.tw-needs-hero h1 {
    max-width:780px;
    margin:16px 0 26px;
    font-size:clamp(3.4rem,5.8vw,6.4rem);
    line-height:.95;
    letter-spacing:-.045em;
}
.tw-needs-date {
    max-width:760px;
    margin:0 0 18px;
    font-size:1.25rem;
    line-height:1.5;
    font-weight:800;
}
.tw-needs-intro {
    max-width:720px;
    color:#536078;
    font-size:1.08rem;
    line-height:1.65;
}
.tw-needs-hero-image img {
    display:block;
    width:100%;
    max-height:480px;
    object-fit:cover;
    border-radius:18px;
}
.tw-needs-visual-placeholder {
    display:grid;
    place-items:center;
    min-height:420px;
    border:1px solid #d7e0ec;
    background:
        radial-gradient(circle at 30% 35%, rgba(11,70,229,.12), transparent 34%),
        radial-gradient(circle at 70% 60%, rgba(11,70,229,.08), transparent 30%),
        #fff;
    color:#0b46e5;
    font-size:1.45rem;
    font-weight:850;
    text-align:center;
    padding:40px;
}
.tw-needs-list-section,
.tw-needs-process { padding:80px 0; }
.tw-needs-list-section { background:#fff; }
.tw-needs-list-grid,
.tw-needs-process-grid {
    display:grid;
    grid-template-columns:minmax(280px,.72fr) minmax(0,1.28fr);
    gap:80px;
    align-items:start;
}
.tw-needs-list-section h2,
.tw-needs-process h2 {
    margin:12px 0 0;
    font-size:clamp(2.3rem,4vw,4.2rem);
    line-height:1;
    letter-spacing:-.035em;
}
.tw-needs-list {
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:0 34px;
    margin:0 0 34px;
    padding:0;
    list-style:none;
    border-top:1px solid #dbe3ef;
}
.tw-needs-list li {
    position:relative;
    padding:18px 0 18px 28px;
    border-bottom:1px solid #dbe3ef;
    font-size:1.08rem;
    font-weight:750;
}
.tw-needs-list li::before {
    content:"✓";
    position:absolute;
    left:0;
    color:#0b46e5;
    font-weight:900;
}
.tw-needs-process { background:#0b1735; color:#fff; }
.tw-needs-process .tw-eyebrow { color:#8fb2ff; }
.tw-needs-process-copy { color:rgba(255,255,255,.76); font-size:1.08rem; line-height:1.7; }
.tw-needs-process-steps {
    margin-top:34px;
    border-top:1px solid rgba(255,255,255,.16);
}
.tw-needs-process-steps > div {
    display:grid;
    grid-template-columns:48px 1fr;
    gap:18px;
    align-items:center;
    padding:18px 0;
    border-bottom:1px solid rgba(255,255,255,.16);
}
.tw-needs-process-steps strong {
    display:grid;
    place-items:center;
    width:38px;
    height:38px;
    border-radius:50%;
    background:#0b46e5;
    color:#fff;
}
.tw-needs-process-steps span { color:#fff; font-weight:750; }

@media(max-width:980px){
    .tw-needs-shell { width:min(100% - 40px,1480px); }
    .tw-needs-hero-grid,
    .tw-needs-list-grid,
    .tw-needs-process-grid { grid-template-columns:1fr; gap:36px; }
    .tw-needs-hero-grid { min-height:0; padding:56px 0; }
}
@media(max-width:680px){
    .tw-needs-shell { width:min(100% - 28px,1480px); }
    .tw-needs-list { grid-template-columns:1fr; }
}


/* Trusted World Native Page Builder — 2.4.0 */
.tw-page-builder-content{width:100%}
.tw-pb-section{padding:64px 0;border-top:1px solid #e2e7ef}
.tw-pb-section h2{margin:8px 0 18px;font-size:clamp(2.2rem,4vw,4rem);line-height:1.03;letter-spacing:-.03em}
.tw-pb-richtext{color:#4e5a70;font-size:1.05rem;line-height:1.7}
.tw-pb-split{display:grid;grid-template-columns:minmax(0,1fr) minmax(380px,.9fr);gap:52px;align-items:center}
.tw-pb-split.is-image-left .tw-pb-copy{order:2}.tw-pb-split.is-image-left .tw-pb-image{order:1}
.tw-pb-image{margin:0}.tw-pb-image img{display:block;width:100%;height:auto;max-height:500px;object-fit:cover}
.tw-pb-statement-box{padding:38px}.tw-pb-statement-box.is-light{background:#f5f8fc}.tw-pb-statement-box.is-dark{background:#0b1735;color:#fff}.tw-pb-statement-box.is-blue{background:#0b46e5;color:#fff}
.tw-pb-statement-box.is-dark .tw-pb-richtext,.tw-pb-statement-box.is-blue .tw-pb-richtext{color:rgba(255,255,255,.82)}
.tw-pb-card-grid{display:grid;gap:18px}.tw-pb-card-grid.cols-2{grid-template-columns:repeat(2,1fr)}.tw-pb-card-grid.cols-3{grid-template-columns:repeat(3,1fr)}.tw-pb-card-grid.cols-4{grid-template-columns:repeat(4,1fr)}
.tw-pb-card{display:flex;flex-direction:column;padding:26px;border:1px solid #dbe2ed;background:#fff}.tw-pb-card h3{margin:0 0 12px}.tw-pb-card a{margin-top:auto;color:#0b46e5;font-weight:800;text-decoration:none}
.tw-pb-stat-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));background:#eef6ff}.tw-pb-stat{text-align:center;padding:24px}.tw-pb-stat strong{display:block;color:#0b46e5;font-size:clamp(2rem,4vw,3.2rem)}.tw-pb-stat span{display:block;margin-top:6px}
.tw-pb-process-grid{display:grid;grid-template-columns:repeat(3,1fr);background:#0b1735;color:#fff}.tw-pb-process-grid article{padding:28px}.tw-pb-process-grid article+article{border-left:1px solid #43506a}.tw-pb-process-grid span{display:grid;place-items:center;width:36px;height:36px;border-radius:50%;background:#0b46e5;font-weight:900;margin-bottom:16px}
.tw-pb-quote{margin:0}.tw-pb-quote p{font-size:clamp(2rem,4vw,3.6rem);line-height:1.15;letter-spacing:-.03em;color:#0b1735}.tw-pb-quote cite{display:block;margin-top:18px;font-style:normal;font-weight:800}
.tw-pb-link-list{border-top:1px solid #dbe2ed}.tw-pb-link-list a{display:flex;justify-content:space-between;gap:18px;padding:18px 4px;border-bottom:1px solid #dbe2ed;color:#0b1735;text-decoration:none}.tw-pb-link-list strong,.tw-pb-link-list small{display:block}.tw-pb-link-list small{margin-top:4px;color:#667085}
@media(max-width:980px){.tw-pb-split{grid-template-columns:1fr}.tw-pb-card-grid.cols-4{grid-template-columns:repeat(2,1fr)}.tw-pb-card-grid.cols-3,.tw-pb-process-grid{grid-template-columns:1fr}.tw-pb-process-grid article+article{border-left:0;border-top:1px solid #43506a}}
@media(max-width:680px){.tw-pb-section{padding:48px 0}.tw-pb-card-grid.cols-2,.tw-pb-card-grid.cols-4{grid-template-columns:1fr}}


/* Homepage Model emotional background image — 2.4.2 */
.tw-home-model {
    position: relative;
    isolation: isolate;
    overflow: hidden;
}
.tw-home-model.has-background-image::before {
    content: "";
    position: absolute;
    inset: 0;
    z-index: -2;
    background-image: var(--tw-model-bg-image);
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    opacity: var(--tw-model-bg-opacity, .12);
}
.tw-home-model.has-background-image::after {
    content: "";
    position: absolute;
    inset: 0;
    z-index: -1;
    background: rgba(255,255,255,.12);
    pointer-events: none;
}
.tw-home-model > .tw-home-shell {
    position: relative;
    z-index: 1;
}


/* Homepage How It Works visual story — 2.4.3 */
.tw-home-process-grid.has-step-images {
    align-items: stretch;
}
.tw-home-process-grid.has-step-images .tw-home-process-step {
    display: flex;
    flex-direction: column;
    padding-top: 0;
}
.tw-home-process-image {
    position: relative;
    margin: 0 0 26px;
    overflow: hidden;
    aspect-ratio: 16 / 9;
    background: rgba(255,255,255,.05);
}
.tw-home-process-image img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.tw-home-process-step-copy {
    flex: 1;
}
.tw-home-process-grid.has-step-images .tw-home-process-step:not(:last-child) .tw-home-process-image::after {
    content: "→";
    position: absolute;
    right: -19px;
    top: 50%;
    z-index: 3;
    transform: translateY(-50%);
    display: grid;
    place-items: center;
    width: 38px;
    height: 38px;
    border-radius: 50%;
    background: #0b46e5;
    color: #fff;
    font-size: 19px;
    font-weight: 900;
    box-shadow: 0 0 0 7px #0b1735;
}
@media (max-width: 980px) {
    .tw-home-process-grid.has-step-images .tw-home-process-step:not(:last-child) .tw-home-process-image::after {
        content: "↓";
        right: 18px;
        top: auto;
        bottom: -19px;
        transform: none;
    }
}


/* Homepage impact network pulse — 2.4.4 */
.tw-home-stats {
    position: relative;
    overflow: hidden;
    padding-top: 34px;
    background:
        radial-gradient(circle at 50% 58%, rgba(11,70,229,.055), transparent 46%),
        #eef6ff;
}
.tw-home-stats h2 {
    position: relative;
    z-index: 2;
    margin-bottom: 8px;
}
.tw-home-stats-network {
    position: relative;
    width: 100%;
    margin: 0 auto -4px;
    opacity: .95;
}
.tw-home-stats-network svg {
    display: block;
    width: 100%;
    height: auto;
    overflow: visible;
}
.tw-stats-network-mesh path {
    fill: none;
    stroke: rgba(91,151,230,.18);
    stroke-width: 1.2;
    stroke-linecap: round;
    stroke-linejoin: round;
}
.tw-stats-network-flow {
    fill: none;
    stroke: rgba(255,255,255,.98);
    stroke-width: 7;
    stroke-linecap: round;
    filter: drop-shadow(0 0 6px rgba(74,142,235,.8));
    stroke-dasharray: 1450;
    stroke-dashoffset: 1450;
}
.tw-stats-network-small-nodes circle {
    fill: rgba(74,142,235,.46);
    opacity: 0;
    transform-box: fill-box;
    transform-origin: center;
}
.tw-stats-main-node .halo {
    fill: rgba(255,255,255,.9);
    stroke: rgba(84,151,241,.28);
    stroke-width: 4;
    opacity: 0;
    transform: scale(.45);
}
.tw-stats-main-node .core {
    fill: #0b46e5;
    stroke: #fff;
    stroke-width: 3;
    opacity: 0;
    transform: scale(.45);
    filter: drop-shadow(0 0 6px rgba(11,70,229,.5));
}
.tw-stats-network-drops line {
    stroke: rgba(11,70,229,.55);
    stroke-width: 1.5;
    stroke-dasharray: 4 5;
    opacity: 0;
}
.tw-home-stats.is-network-active .tw-stats-network-flow {
    animation: twStatsDraw 1.45s cubic-bezier(.22,.7,.28,1) forwards;
}
.tw-home-stats.is-network-active .tw-stats-network-small-nodes circle {
    animation: twStatsDotIn .45s ease forwards;
}
.tw-home-stats.is-network-active .tw-stats-network-small-nodes circle:nth-child(2n) { animation-delay: .32s; }
.tw-home-stats.is-network-active .tw-stats-network-small-nodes circle:nth-child(3n) { animation-delay: .48s; }
.tw-home-stats.is-network-active .tw-stats-network-small-nodes circle:nth-child(5n) { animation-delay: .64s; }
.tw-home-stats.is-network-active .tw-stats-main-node .halo,
.tw-home-stats.is-network-active .tw-stats-main-node .core {
    animation: twStatsNodeIn .5s cubic-bezier(.2,.8,.2,1) forwards;
    transform-box: fill-box;
    transform-origin: center;
}
.tw-home-stats.is-network-active .tw-stats-main-node.node-1 .halo,
.tw-home-stats.is-network-active .tw-stats-main-node.node-1 .core { animation-delay: .25s; }
.tw-home-stats.is-network-active .tw-stats-main-node.node-2 .halo,
.tw-home-stats.is-network-active .tw-stats-main-node.node-2 .core { animation-delay: .55s; }
.tw-home-stats.is-network-active .tw-stats-main-node.node-3 .halo,
.tw-home-stats.is-network-active .tw-stats-main-node.node-3 .core { animation-delay: .85s; }
.tw-home-stats.is-network-active .tw-stats-main-node.node-4 .halo,
.tw-home-stats.is-network-active .tw-stats-main-node.node-4 .core { animation-delay: 1.15s; }
.tw-home-stats.is-network-active .tw-stats-network-drops line {
    animation: twStatsDropIn .35s ease forwards;
}
.tw-home-stats.is-network-active .tw-stats-network-drops line:nth-child(1) { animation-delay: .48s; }
.tw-home-stats.is-network-active .tw-stats-network-drops line:nth-child(2) { animation-delay: .78s; }
.tw-home-stats.is-network-active .tw-stats-network-drops line:nth-child(3) { animation-delay: 1.08s; }
.tw-home-stats.is-network-active .tw-stats-network-drops line:nth-child(4) { animation-delay: 1.38s; }

.tw-home-stats-grid {
    position: relative;
    z-index: 2;
}
.tw-home-stat {
    padding-top: 0;
}
.tw-home-stat strong {
    text-shadow: 0 0 18px rgba(11,70,229,.08);
}

@keyframes twStatsDraw {
    to { stroke-dashoffset: 0; }
}
@keyframes twStatsDotIn {
    0% { opacity: 0; transform: scale(.2); }
    100% { opacity: 1; transform: scale(1); }
}
@keyframes twStatsNodeIn {
    0% { opacity: 0; transform: scale(.45); }
    70% { opacity: 1; transform: scale(1.12); }
    100% { opacity: 1; transform: scale(1); }
}
@keyframes twStatsDropIn {
    from { opacity: 0; }
    to { opacity: 1; }
}

@media (max-width: 760px) {
    .tw-home-stats-network {
        margin-bottom: 12px;
    }
    .tw-home-stats-network svg {
        min-width: 760px;
        width: 760px;
        transform: translateX(calc((100vw - 760px) / 2));
        opacity: .58;
    }
    .tw-stats-network-drops {
        display: none;
    }
}

@media (prefers-reduced-motion: reduce) {
    .tw-stats-network-flow {
        stroke-dashoffset: 0;
    }
    .tw-stats-network-small-nodes circle,
    .tw-stats-main-node .halo,
    .tw-stats-main-node .core,
    .tw-stats-network-drops line {
        opacity: 1;
        transform: none;
        animation: none !important;
    }
}


/* Homepage impact stat icons — 2.4.5 */
.tw-stats-network-icons .tw-stats-icon {
    opacity: 1;
}
.tw-stats-network-icons .tw-stats-icon-anim {
    opacity: 0;
    transform-box: fill-box;
    transform-origin: center;
}
.tw-stats-network-icons .icon-ring {
    fill: rgba(255,255,255,.58);
    stroke: rgba(91,151,230,.30);
    stroke-width: 1.6;
}
.tw-stats-network-icons .icon-art {
    fill: none;
    stroke: rgba(11,70,229,.72);
    stroke-width: 2.1;
    stroke-linecap: round;
    stroke-linejoin: round;
}
.tw-stats-network-icons .people-icon circle {
    fill: rgba(11,70,229,.18);
}
.tw-home-stats.is-network-active .tw-stats-network-icons .tw-stats-icon-anim {
    animation: twStatsIconIn .55s cubic-bezier(.2,.8,.2,1) forwards;
}
.tw-home-stats.is-network-active .tw-stats-network-icons .icon-1 .tw-stats-icon-anim { animation-delay: .34s; }
.tw-home-stats.is-network-active .tw-stats-network-icons .icon-2 .tw-stats-icon-anim { animation-delay: .64s; }
.tw-home-stats.is-network-active .tw-stats-network-icons .icon-3 .tw-stats-icon-anim { animation-delay: .94s; }
.tw-home-stats.is-network-active .tw-stats-network-icons .icon-4 .tw-stats-icon-anim { animation-delay: 1.24s; }

@keyframes twStatsIconIn {
    0% { opacity: 0; transform: translateY(8px) scale(.86); }
    100% { opacity: 1; transform: translateY(0) scale(1); }
}

@media (prefers-reduced-motion: reduce) {
    .tw-stats-network-icons .tw-stats-icon-anim {
        opacity: 1;
        transform: none;
        animation: none !important;
    }
}


/* 2.4.6 icon placement correction */
.tw-stats-network-icons .icon-ring {
    fill: rgba(255,255,255,.72);
    stroke: rgba(91,151,230,.42);
}
.tw-stats-network-icons .icon-art {
    stroke: rgba(11,70,229,.82);
}


/* Homepage impact network polish — 2.4.7 */
.tw-home-stats {
    background:
        radial-gradient(circle at 50% 54%, rgba(34,107,230,.07), transparent 42%),
        linear-gradient(180deg, #eef6ff 0%, #edf5ff 100%);
}
.tw-home-stats-network {
    margin-top: 2px;
    margin-bottom: -8px;
}
.tw-home-stats-network svg {
    overflow: visible;
}
.tw-stats-network-mesh path {
    stroke: rgba(89,148,226,.23);
    stroke-width: 1.1;
}
.tw-stats-network-secondary circle {
    fill: rgba(69,137,226,.52);
    opacity: 0;
}
.tw-home-stats.is-network-active .tw-stats-network-secondary circle {
    animation: twStatsDotIn .45s ease forwards;
}
.tw-home-stats.is-network-active .tw-stats-network-secondary circle:nth-child(2n) { animation-delay: .25s; }
.tw-home-stats.is-network-active .tw-stats-network-secondary circle:nth-child(3n) { animation-delay: .42s; }
.tw-home-stats.is-network-active .tw-stats-network-secondary circle:nth-child(5n) { animation-delay: .58s; }

.tw-stats-network-flow {
    stroke-width: 8;
    filter: drop-shadow(0 0 7px rgba(67,131,224,.82));
}
.tw-stats-main-node .halo-outer {
    fill: rgba(255,255,255,.68);
    stroke: rgba(92,151,231,.25);
    stroke-width: 3;
}
.tw-stats-main-node .halo-inner {
    fill: rgba(255,255,255,.86);
    stroke: rgba(107,164,235,.32);
    stroke-width: 2;
}
.tw-stats-main-node .core {
    fill: #124de3;
    stroke: #fff;
    stroke-width: 3;
}
.tw-stats-network-icons .icon-ring {
    fill: rgba(255,255,255,.64);
    stroke: rgba(95,151,228,.28);
    stroke-width: 1.5;
}
.tw-stats-network-icons .icon-art {
    stroke: rgba(11,70,229,.76);
    stroke-width: 2.0;
}
.tw-stats-network-icons .people-icon circle {
    fill: rgba(11,70,229,.22);
    stroke: rgba(11,70,229,.62);
}
.tw-stats-network-drops line {
    stroke: rgba(11,70,229,.56);
    stroke-width: 1.4;
    stroke-dasharray: 4 5;
}
.tw-home-stats-grid {
    margin-top: -3px;
}


/* Homepage impact section — approved visual band — 2.4.8 */
.tw-home-stats-network-approved {
    width: 100%;
    margin: 8px auto -2px;
    opacity: 0;
    transform: translateY(8px);
}
.tw-home-stats.is-network-active .tw-home-stats-network-approved {
    animation: twApprovedNetworkIn .7s ease forwards;
}
.tw-home-stats-network-approved img {
    display: block;
    width: 100%;
    height: auto;
    object-fit: contain;
}
.tw-home-stats-network-approved + .tw-home-stats-grid {
    margin-top: -2px;
}

/* Old SVG network rules no longer apply because the approved band is an image asset. */
.tw-home-stats-network-approved svg {
    display: none !important;
}

@keyframes twApprovedNetworkIn {
    from { opacity: 0; transform: translateY(8px); }
    to   { opacity: 1; transform: translateY(0); }
}

@media (max-width: 760px) {
    .tw-home-stats-network-approved {
        width: 118%;
        margin-left: -9%;
        overflow: hidden;
    }
    .tw-home-stats-network-approved img {
        width: 100%;
        min-width: 0;
        transform: none;
    }
}

@media (prefers-reduced-motion: reduce) {
    .tw-home-stats-network-approved {
        opacity: 1;
        transform: none;
        animation: none !important;
    }
}

/* Header actions + persistent homepage CTAs — 2.5.0 */
.tw-header-actions{display:flex;align-items:center;gap:20px;white-space:nowrap}.tw-header-actions a{color:#0b1735;text-decoration:none;font-weight:800;font-size:.96rem}.tw-header-actions a:hover,.tw-header-actions a:focus-visible{color:#0b46e5}
.tw-persistent-actions{position:fixed;right:18px;top:50%;z-index:9990;transform:translateY(-50%) translateX(130%);opacity:0;pointer-events:none;transition:transform .28s ease,opacity .2s ease}.tw-persistent-actions.is-visible{transform:translateY(-50%) translateX(0);opacity:1;pointer-events:auto}.tw-persistent-actions.is-suppressed{transform:translateY(-50%) translateX(130%);opacity:0;pointer-events:none}
.tw-persistent-tabs{display:grid;gap:8px}.tw-persistent-tabs button{width:126px;padding:14px 16px;border:1px solid #cbd6e6;background:#fff;color:#0b1735;font:inherit;font-weight:800;text-align:left;cursor:pointer;box-shadow:0 10px 26px rgba(11,23,53,.10)}.tw-persistent-tabs button:hover,.tw-persistent-tabs button:focus-visible,.tw-persistent-tabs button.is-active{border-color:#0b46e5;color:#0b46e5}
.tw-persistent-panel{position:absolute;right:142px;top:0;width:350px;padding:24px;background:#fff;border:1px solid #dbe2ed;box-shadow:0 20px 55px rgba(11,23,53,.18)}.tw-persistent-panel h2{margin:0 0 14px;font-size:1.35rem;color:#0b1735}.tw-persistent-panel>a{display:inline-block;margin-top:16px;color:#0b46e5;text-decoration:none;font-weight:800}
.tw-live-label{margin:0 0 8px;color:#0b46e5;font-size:.78rem;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.tw-live-list{margin:16px 0 0;padding-left:1.4rem}.tw-live-list li{padding:5px 0;color:#34425a}.tw-live-leaders li{display:flex;justify-content:space-between;gap:14px}.tw-live-leaders strong{white-space:nowrap;color:#0b1735;font-size:.9rem}
.tw-give-amounts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:18px}.tw-give-amounts a{display:block;padding:13px 10px;border:1px solid #cbd6e6;color:#0b1735;text-align:center;text-decoration:none;font-weight:800}.tw-give-amounts a:hover,.tw-give-amounts a:focus-visible{border-color:#0b46e5;color:#0b46e5}.tw-give-amounts .is-other{grid-column:1/-1}
.tw-home-involved-live .tw-home-involved-card{display:flex;flex-direction:column;min-height:360px}.tw-home-involved-live .tw-home-involved-card .tw-text-link{margin-top:auto}
@media(max-width:900px){.tw-header-actions{gap:12px}.tw-header-actions a{font-size:.86rem}.tw-persistent-actions{top:auto;bottom:14px;right:14px;left:14px;transform:translateY(140%)}.tw-persistent-actions.is-visible{transform:translateY(0)}.tw-persistent-actions.is-suppressed{transform:translateY(140%)}.tw-persistent-tabs{grid-template-columns:repeat(3,1fr);gap:8px}.tw-persistent-tabs button{width:auto;text-align:center;padding:12px 8px}.tw-persistent-panel{right:0;left:0;top:auto;bottom:62px;width:auto}}


/* Site-wide header actions + Give modal — 2.5.3 */
.tw-header-actions button.tw-header-give-trigger{
    border:0;
    background:transparent;
    color:#0b1735;
    padding:0;
    font:inherit;
    font-weight:800;
    font-size:.96rem;
    cursor:pointer
}
.tw-header-actions button.tw-header-give-trigger:hover,
.tw-header-actions button.tw-header-give-trigger:focus-visible{color:#0b46e5}

.tw-give-now-button{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    margin-top:18px;
    padding:13px 20px;
    border:1px solid #0b46e5;
    background:#0b46e5;
    color:#fff;
    font:inherit;
    font-weight:800;
    cursor:pointer
}
.tw-give-now-button:hover,.tw-give-now-button:focus-visible{
    background:#fff;
    color:#0b46e5
}

html.tw-modal-open,html.tw-modal-open body{overflow:hidden}
.tw-give-modal[hidden]{display:none}
.tw-give-modal{
    position:fixed;
    inset:0;
    z-index:10050;
    display:grid;
    place-items:center;
    padding:24px;
    opacity:0;
    pointer-events:none;
    transition:opacity .18s ease
}
.tw-give-modal.is-open{opacity:1;pointer-events:auto}
.tw-give-modal-backdrop{
    position:absolute;
    inset:0;
    background:rgba(7,18,43,.72);
    backdrop-filter:blur(3px)
}
.tw-give-modal-dialog{
    position:relative;
    z-index:1;
    width:min(760px,96vw);
    max-height:92vh;
    background:#fff;
    box-shadow:0 30px 90px rgba(0,0,0,.28);
    display:flex;
    flex-direction:column
}
.tw-give-modal-header{
    display:flex;
    align-items:flex-start;
    justify-content:space-between;
    gap:20px;
    padding:20px 22px 14px;
    border-bottom:1px solid #e2e7ef
}
.tw-give-modal-header h2{margin:0;color:#0b1735;font-size:1.45rem}
.tw-give-modal-close{
    width:40px;
    height:40px;
    border:0;
    background:#f4f7fb;
    color:#0b1735;
    font-size:1.8rem;
    line-height:1;
    cursor:pointer
}
.tw-give-modal-body{
    min-height:640px;
    height:min(740px,calc(92vh - 86px));
    background:#fff
}
.tw-give-modal-body iframe{
    display:block;
    width:100%;
    height:100%;
    border:0;
    background:#fff
}

@media(max-width:700px){
    .tw-give-modal{padding:8px}
    .tw-give-modal-dialog{width:100%;max-height:96vh}
    .tw-give-modal-body{height:calc(96vh - 82px);min-height:0}
}

/* People / Leadership section — 2.5.4 */
.tw-pb-people-grid{display:grid;gap:24px;margin-top:28px}.tw-pb-people-grid.cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.tw-pb-people-grid.cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.tw-pb-people-grid.cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.tw-pb-person-card{border:1px solid #dbe2ed;background:#fff;overflow:hidden}.tw-pb-person-photo{margin:0;aspect-ratio:4/3;overflow:hidden;background:#eef3f9}.tw-pb-person-photo img{display:block;width:100%;height:100%;object-fit:cover}.tw-pb-person-copy{padding:22px}.tw-pb-person-copy h3{margin:0 0 6px;color:#0b1735;font-size:1.25rem;line-height:1.2}.tw-pb-person-title{margin:0 0 14px;color:#0b46e5;font-weight:800}.tw-pb-person-bio{margin:0;color:#56637a;line-height:1.6}@media(max-width:980px){.tw-pb-people-grid.cols-4,.tw-pb-people-grid.cols-3{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:680px){.tw-pb-people-grid.cols-2,.tw-pb-people-grid.cols-3,.tw-pb-people-grid.cols-4{grid-template-columns:1fr}}


/* Text + Image editorial layout — 2.5.8 */
.tw-pb-text_image .tw-pb-split,
.tw-pb-image_feature .tw-pb-split{
    grid-template-columns:minmax(0,1fr) minmax(0,1fr);
    gap:56px;
    align-items:center;
}
.tw-pb-text_image .tw-pb-copy,
.tw-pb-image_feature .tw-pb-copy{
    min-width:0;
}
.tw-pb-text_image .tw-pb-copy .tw-eyebrow,
.tw-pb-image_feature .tw-pb-copy .tw-eyebrow{
    margin-bottom:10px;
}
.tw-pb-section .tw-pb-split-heading{
    margin:0 0 20px;
    font-size:clamp(1.8rem,2.6vw,2.65rem);
    line-height:1.08;
    letter-spacing:-.025em;
    color:#0b1735;
}
.tw-pb-text_image .tw-pb-image img,
.tw-pb-image_feature .tw-pb-image img{
    width:100%;
    max-height:520px;
    object-fit:cover;
}
@media(max-width:820px){
    .tw-pb-text_image .tw-pb-split,
    .tw-pb-image_feature .tw-pb-split{
        grid-template-columns:1fr;
        gap:28px;
    }
    .tw-pb-split.is-image-left .tw-pb-copy,
    .tw-pb-split.is-image-left .tw-pb-image{
        order:initial;
    }
}


/* Rich-text formatting helpers — 2.5.9 */
.tw-align-left{text-align:left}
.tw-align-center{text-align:center}
.tw-align-right{text-align:right}
.tw-pb-richtext strong{font-weight:800}
.tw-pb-richtext em{font-style:italic}


/* People photo + contact improvements — 2.5.11 */
.tw-pb-person-photo{
    aspect-ratio:auto;
    overflow:visible;
    background:#eef3f9
}
.tw-pb-person-photo img{
    display:block;
    width:100%;
    height:auto;
    object-fit:contain
}
.tw-pb-person-copy{
    display:flex;
    flex-direction:column;
    height:100%
}
.tw-pb-person-contact{
    display:inline-flex;
    align-items:center;
    width:max-content;
    margin-top:18px;
    color:#0b46e5;
    font-weight:800;
    text-decoration:none
}
.tw-pb-person-contact:hover,
.tw-pb-person-contact:focus-visible{
    text-decoration:underline
}


/* Global Get Involved band — 2.5.13 */
.tw-global-involved{
    margin:0;
}
.tw-global-involved + .tw-site-footer-v3{
    margin-top:0;
}


/* Footer Image Disclosure modal — 2.5.17 */
.tw-footer-legal-button{
    appearance:none;
    border:0;
    background:transparent;
    padding:0;
    color:inherit;
    font:inherit;
    cursor:pointer;
    text-decoration:none;
}
.tw-footer-legal-button:hover,
.tw-footer-legal-button:focus-visible{
    color:#fff;
    text-decoration:underline;
}
.tw-image-disclosure-modal[hidden]{display:none!important}
.tw-image-disclosure-modal{
    position:fixed;
    inset:0;
    z-index:10050;
    display:grid;
    place-items:center;
    padding:24px;
    opacity:0;
    transition:opacity .18s ease;
}
.tw-image-disclosure-modal.is-open{opacity:1}
.tw-image-disclosure-backdrop{
    position:absolute;
    inset:0;
    background:rgba(5,18,48,.72);
}
.tw-image-disclosure-dialog{
    position:relative;
    width:min(680px,100%);
    max-height:min(80vh,720px);
    overflow:auto;
    background:#fff;
    color:#0b1735;
    border:1px solid #dbe2ed;
    box-shadow:0 24px 80px rgba(0,0,0,.28);
}
.tw-image-disclosure-header{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:20px;
    padding:22px 26px;
    border-bottom:1px solid #e3e8f0;
}
.tw-image-disclosure-header h2{
    margin:0;
    font-size:1.5rem;
}
.tw-image-disclosure-close{
    appearance:none;
    border:0;
    background:transparent;
    color:#0b1735;
    font-size:2rem;
    line-height:1;
    cursor:pointer;
}
.tw-image-disclosure-body{
    padding:24px 26px 28px;
}
.tw-image-disclosure-body p{
    margin:0;
    line-height:1.7;
    color:#34425a;
}
.tw-image-disclosure-open{overflow:hidden}


/* Page Builder typography + Statement / Callout controls — 2.5.18 */
.tw-text-align-left{text-align:left}
.tw-text-align-center{text-align:center}
.tw-text-align-right{text-align:right}

.tw-pb-richtext.tw-text-size-normal{
    font-size:1.05rem;
    line-height:1.7;
}
.tw-pb-richtext.tw-text-size-large{
    font-size:clamp(1.35rem,2vw,1.65rem);
    line-height:1.5;
}
.tw-pb-richtext.tw-text-size-statement{
    font-size:clamp(1.75rem,3vw,2.35rem);
    line-height:1.3;
    letter-spacing:-.015em;
}

.tw-pb-statement-box.is-style-statement{
    padding:46px 52px;
}
.tw-pb-statement-box.is-style-callout{
    padding:28px 32px;
    border-left:5px solid #0b46e5;
}
.tw-pb-statement-box.is-style-callout.is-dark,
.tw-pb-statement-box.is-style-callout.is-blue{
    border-left-color:#fff;
}
.tw-pb-statement-box .tw-pb-richtext p:first-child{margin-top:0}
.tw-pb-statement-box .tw-pb-richtext p:last-child{margin-bottom:0}

@media(max-width:680px){
    .tw-pb-statement-box.is-style-statement{padding:34px 28px}
    .tw-pb-statement-box.is-style-callout{padding:24px 22px}
}


/* Text + Image / Image Feature sizing controls — 2.5.19 */
.tw-pb-text_image .tw-pb-split.is-image-size-small,
.tw-pb-image_feature .tw-pb-split.is-image-size-small{
    grid-template-columns:minmax(0,7fr) minmax(240px,3fr);
}
.tw-pb-text_image .tw-pb-split.is-image-size-medium,
.tw-pb-image_feature .tw-pb-split.is-image-size-medium{
    grid-template-columns:minmax(0,3fr) minmax(300px,2fr);
}
.tw-pb-text_image .tw-pb-split.is-image-size-equal,
.tw-pb-image_feature .tw-pb-split.is-image-size-equal{
    grid-template-columns:minmax(0,1fr) minmax(0,1fr);
}
.tw-pb-text_image .tw-pb-split.is-image-size-large,
.tw-pb-image_feature .tw-pb-split.is-image-size-large{
    grid-template-columns:minmax(280px,2fr) minmax(0,3fr);
}

/* When the image is on the left, reverse the column ratio too. */
.tw-pb-text_image .tw-pb-split.is-image-left.is-image-size-small,
.tw-pb-image_feature .tw-pb-split.is-image-left.is-image-size-small{
    grid-template-columns:minmax(240px,3fr) minmax(0,7fr);
}
.tw-pb-text_image .tw-pb-split.is-image-left.is-image-size-medium,
.tw-pb-image_feature .tw-pb-split.is-image-left.is-image-size-medium{
    grid-template-columns:minmax(300px,2fr) minmax(0,3fr);
}
.tw-pb-text_image .tw-pb-split.is-image-left.is-image-size-large,
.tw-pb-image_feature .tw-pb-split.is-image-left.is-image-size-large{
    grid-template-columns:minmax(0,3fr) minmax(280px,2fr);
}

/* Show Full Image: preserve the entire source image, no crop. */
.tw-pb-text_image .tw-pb-split.is-image-fit-full .tw-pb-image img,
.tw-pb-image_feature .tw-pb-split.is-image-fit-full .tw-pb-image img{
    width:100%;
    height:auto;
    max-height:none;
    object-fit:contain;
}

/* Fill Space: use the existing editorial crop behavior. */
.tw-pb-text_image .tw-pb-split.is-image-fit-fill .tw-pb-image,
.tw-pb-image_feature .tw-pb-split.is-image-fit-fill .tw-pb-image{
    align-self:stretch;
}
.tw-pb-text_image .tw-pb-split.is-image-fit-fill .tw-pb-image img,
.tw-pb-image_feature .tw-pb-split.is-image-fit-fill .tw-pb-image img{
    width:100%;
    height:100%;
    min-height:320px;
    max-height:520px;
    object-fit:cover;
}

@media(max-width:820px){
    .tw-pb-text_image .tw-pb-split.is-image-size-small,
    .tw-pb-text_image .tw-pb-split.is-image-size-medium,
    .tw-pb-text_image .tw-pb-split.is-image-size-equal,
    .tw-pb-text_image .tw-pb-split.is-image-size-large,
    .tw-pb-image_feature .tw-pb-split.is-image-size-small,
    .tw-pb-image_feature .tw-pb-split.is-image-size-medium,
    .tw-pb-image_feature .tw-pb-split.is-image-size-equal,
    .tw-pb-image_feature .tw-pb-split.is-image-size-large,
    .tw-pb-text_image .tw-pb-split.is-image-left.is-image-size-small,
    .tw-pb-text_image .tw-pb-split.is-image-left.is-image-size-medium,
    .tw-pb-text_image .tw-pb-split.is-image-left.is-image-size-large,
    .tw-pb-image_feature .tw-pb-split.is-image-left.is-image-size-small,
    .tw-pb-image_feature .tw-pb-split.is-image-left.is-image-size-medium,
    .tw-pb-image_feature .tw-pb-split.is-image-left.is-image-size-large{
        grid-template-columns:1fr;
    }
    .tw-pb-text_image .tw-pb-split.is-image-fit-fill .tw-pb-image img,
    .tw-pb-image_feature .tw-pb-split.is-image-fit-fill .tw-pb-image img{
        min-height:0;
        height:auto;
        max-height:none;
    }
}


/* FAQ / Accordion — 2.5.20 */
.tw-pb-faq{
    border-top:1px solid #dbe2ed;
}
.tw-pb-faq-item{
    border-bottom:1px solid #dbe2ed;
}
.tw-pb-faq-question{
    width:100%;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:24px;
    padding:20px 4px;
    border:0;
    background:transparent;
    color:#0b1735;
    text-align:left;
    font:inherit;
    font-size:1.12rem;
    font-weight:800;
    cursor:pointer;
}
.tw-pb-faq-question:hover,
.tw-pb-faq-question:focus-visible{
    color:#0b46e5;
}
.tw-pb-faq-icon{
    flex:0 0 auto;
    display:grid;
    place-items:center;
    width:30px;
    height:30px;
    border:1px solid #cbd6e6;
    font-size:1.25rem;
    line-height:1;
    transition:transform .18s ease,border-color .18s ease;
}
.tw-pb-faq-question[aria-expanded="true"] .tw-pb-faq-icon{
    transform:rotate(45deg);
    border-color:#0b46e5;
}
.tw-pb-faq-answer{
    padding:0 46px 22px 4px;
}
.tw-pb-faq-answer .tw-pb-richtext{
    max-width:900px;
}
@media(max-width:680px){
    .tw-pb-faq-question{font-size:1.02rem;padding:18px 0}
    .tw-pb-faq-answer{padding:0 0 20px}
}


/* Contact Form — 2.5.21 */
.tw-contact-form-wrap{
    max-width:980px;
}
.tw-contact-form-wrap > .tw-pb-richtext{
    margin-bottom:26px;
}
.tw-contact-form{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:20px 24px;
}
.tw-contact-field label{
    display:block;
    margin-bottom:7px;
    color:#0b1735;
    font-weight:800;
}
.tw-contact-field label small{
    color:#667085;
    font-weight:500;
}
.tw-contact-field input,
.tw-contact-field select,
.tw-contact-field textarea{
    width:100%;
    box-sizing:border-box;
    border:1px solid #cbd6e6;
    background:#fff;
    color:#0b1735;
    padding:12px 13px;
    font:inherit;
    border-radius:4px;
}
.tw-contact-field textarea{
    min-height:160px;
    resize:vertical;
}
.tw-contact-field input:focus,
.tw-contact-field select:focus,
.tw-contact-field textarea:focus{
    outline:2px solid rgba(11,70,229,.18);
    outline-offset:1px;
    border-color:#0b46e5;
}
.tw-contact-field-wide{
    grid-column:1/-1;
}
.tw-contact-submit{
    border:0;
    cursor:pointer;
}
.tw-contact-success,
.tw-contact-error{
    padding:18px 20px;
    margin:0 0 22px;
    border-left:5px solid #0b46e5;
    background:#f2f7ff;
    color:#0b1735;
}
.tw-contact-error{
    border-left-color:#b42318;
    background:#fff3f2;
}
.tw-contact-success p,
.tw-contact-error p{
    margin:0;
}
.tw-contact-hp{
    position:absolute!important;
    left:-10000px!important;
    width:1px!important;
    height:1px!important;
    overflow:hidden!important;
}
@media(max-width:680px){
    .tw-contact-form{grid-template-columns:1fr}
    .tw-contact-field-wide{grid-column:auto}
}


/* Kitchen Sink — 2.5.22 */
.tw-pb-kitchen-sink{
    padding:38px;
}
.tw-pb-kitchen-sink.is-theme-light{
    background:#fff;
    color:#0b1735;
}
.tw-pb-kitchen-sink.is-theme-dark{
    background:#0b1735;
    color:#fff;
}
.tw-pb-kitchen-sink.is-theme-blue{
    background:#0b46e5;
    color:#fff;
}
.tw-pb-kitchen-sink.is-theme-dark .tw-pb-richtext,
.tw-pb-kitchen-sink.is-theme-blue .tw-pb-richtext{
    color:rgba(255,255,255,.86);
}
.tw-pb-kitchen-sink.is-width-wide{
    max-width:none;
}
.tw-pb-kitchen-sink.is-width-medium{
    max-width:980px;
    margin-left:auto;
    margin-right:auto;
}
.tw-pb-kitchen-sink.is-width-narrow{
    max-width:760px;
    margin-left:auto;
    margin-right:auto;
}
.tw-pb-kitchen-sink.is-divider-top,
.tw-pb-kitchen-sink.is-divider-both{
    border-top:1px solid #dbe2ed;
}
.tw-pb-kitchen-sink.is-divider-bottom,
.tw-pb-kitchen-sink.is-divider-both{
    border-bottom:1px solid #dbe2ed;
}
.tw-pb-kitchen-sink.is-theme-dark.is-divider-top,
.tw-pb-kitchen-sink.is-theme-dark.is-divider-bottom,
.tw-pb-kitchen-sink.is-theme-dark.is-divider-both,
.tw-pb-kitchen-sink.is-theme-blue.is-divider-top,
.tw-pb-kitchen-sink.is-theme-blue.is-divider-bottom,
.tw-pb-kitchen-sink.is-theme-blue.is-divider-both{
    border-color:rgba(255,255,255,.22);
}
.tw-pb-kitchen-grid{
    display:grid;
    gap:42px;
    align-items:center;
}
.tw-pb-kitchen-sink.is-image-left.is-image-size-small .tw-pb-kitchen-grid{
    grid-template-columns:minmax(220px,3fr) minmax(0,7fr);
}
.tw-pb-kitchen-sink.is-image-right.is-image-size-small .tw-pb-kitchen-grid{
    grid-template-columns:minmax(0,7fr) minmax(220px,3fr);
}
.tw-pb-kitchen-sink.is-image-left.is-image-size-medium .tw-pb-kitchen-grid{
    grid-template-columns:minmax(280px,2fr) minmax(0,3fr);
}
.tw-pb-kitchen-sink.is-image-right.is-image-size-medium .tw-pb-kitchen-grid{
    grid-template-columns:minmax(0,3fr) minmax(280px,2fr);
}
.tw-pb-kitchen-sink.is-image-left.is-image-size-equal .tw-pb-kitchen-grid,
.tw-pb-kitchen-sink.is-image-right.is-image-size-equal .tw-pb-kitchen-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
}
.tw-pb-kitchen-sink.is-image-left.is-image-size-large .tw-pb-kitchen-grid{
    grid-template-columns:minmax(0,3fr) minmax(260px,2fr);
}
.tw-pb-kitchen-sink.is-image-right.is-image-size-large .tw-pb-kitchen-grid{
    grid-template-columns:minmax(260px,2fr) minmax(0,3fr);
}
.tw-pb-kitchen-sink.is-image-size-full .tw-pb-kitchen-grid{
    grid-template-columns:1fr;
}
.tw-pb-kitchen-image{
    margin:0;
}
.tw-pb-kitchen-image img{
    display:block;
    width:100%;
    height:auto;
}
.tw-pb-kitchen-sink.is-image-fit-fill .tw-pb-kitchen-image img{
    height:100%;
    min-height:280px;
    max-height:520px;
    object-fit:cover;
}
.tw-pb-kitchen-sink.is-image-fit-full .tw-pb-kitchen-image img{
    object-fit:contain;
}
.tw-pb-kitchen-sink.is-image-above .tw-pb-kitchen-image{
    margin-bottom:28px;
}
.tw-pb-kitchen-sink.is-image-below .tw-pb-kitchen-image{
    margin-top:28px;
}
.tw-pb-kitchen-sink .tw-button{
    margin-top:20px;
}
@media(max-width:820px){
    .tw-pb-kitchen-sink{
        padding:28px;
    }
    .tw-pb-kitchen-grid{
        grid-template-columns:1fr!important;
        gap:28px;
    }
}


/* Section anchors — 2.5.23 */
.tw-pb-section[id]{
    scroll-margin-top:120px;
}
@media(max-width:782px){
    .tw-pb-section[id]{
        scroll-margin-top:96px;
    }
}


/* Process / Steps dark-panel contrast fix — 2.5.24 */
.tw-pb-process-grid article h3{
    color:#fff;
}
.tw-pb-process-grid article .tw-pb-richtext{
    color:rgba(255,255,255,.82);
}
.tw-pb-process-grid article .tw-pb-richtext strong,
.tw-pb-process-grid article .tw-pb-richtext b{
    color:#fff;
}
.tw-pb-process-grid article .tw-pb-richtext a{
    color:#fff;
    text-decoration-color:rgba(255,255,255,.55);
}


/* Process + FAQ color controls — 2.5.25 */
.tw-pb-process-grid.is-bg-white{background:#fff}
.tw-pb-process-grid.is-bg-soft-gray{background:#f4f6f9}
.tw-pb-process-grid.is-bg-soft-blue{background:#eef4ff}
.tw-pb-process-grid.is-bg-navy{background:#0b1735}

.tw-pb-process-grid.is-text-dark,
.tw-pb-process-grid.is-text-auto:not(.is-bg-navy){color:#0b1735}
.tw-pb-process-grid.is-text-light,
.tw-pb-process-grid.is-text-auto.is-bg-navy{color:#fff}

.tw-pb-process-grid.is-text-dark article h3,
.tw-pb-process-grid.is-text-auto:not(.is-bg-navy) article h3{color:#0b1735}
.tw-pb-process-grid.is-text-dark article .tw-pb-richtext,
.tw-pb-process-grid.is-text-auto:not(.is-bg-navy) article .tw-pb-richtext{color:#526079}
.tw-pb-process-grid.is-text-dark article .tw-pb-richtext strong,
.tw-pb-process-grid.is-text-dark article .tw-pb-richtext b,
.tw-pb-process-grid.is-text-auto:not(.is-bg-navy) article .tw-pb-richtext strong,
.tw-pb-process-grid.is-text-auto:not(.is-bg-navy) article .tw-pb-richtext b{color:#0b1735}

.tw-pb-process-grid.is-text-light article h3,
.tw-pb-process-grid.is-text-auto.is-bg-navy article h3{color:#fff}
.tw-pb-process-grid.is-text-light article .tw-pb-richtext,
.tw-pb-process-grid.is-text-auto.is-bg-navy article .tw-pb-richtext{color:rgba(255,255,255,.82)}
.tw-pb-process-grid.is-text-light article .tw-pb-richtext strong,
.tw-pb-process-grid.is-text-light article .tw-pb-richtext b,
.tw-pb-process-grid.is-text-auto.is-bg-navy article .tw-pb-richtext strong,
.tw-pb-process-grid.is-text-auto.is-bg-navy article .tw-pb-richtext b{color:#fff}

.tw-pb-process-grid.is-bg-white article+article,
.tw-pb-process-grid.is-bg-soft-gray article+article,
.tw-pb-process-grid.is-bg-soft-blue article+article{border-color:#d8e0ec}

/* FAQ question color presets */
.tw-pb-faq.is-bg-white .tw-pb-faq-question{background:#fff}
.tw-pb-faq.is-bg-soft-gray .tw-pb-faq-question{background:#f4f6f9}
.tw-pb-faq.is-bg-soft-blue .tw-pb-faq-question{background:#eef4ff}
.tw-pb-faq.is-bg-navy .tw-pb-faq-question{background:#0b1735}

.tw-pb-faq.is-text-dark .tw-pb-faq-question,
.tw-pb-faq.is-text-auto:not(.is-bg-navy) .tw-pb-faq-question{color:#0b1735}
.tw-pb-faq.is-text-light .tw-pb-faq-question,
.tw-pb-faq.is-text-auto.is-bg-navy .tw-pb-faq-question{color:#fff}

/* Hover/focus keeps strong contrast instead of switching to navy + blue text. */
.tw-pb-faq.is-bg-white .tw-pb-faq-question:hover,
.tw-pb-faq.is-bg-white .tw-pb-faq-question:focus-visible{background:#f4f7fb}
.tw-pb-faq.is-bg-soft-gray .tw-pb-faq-question:hover,
.tw-pb-faq.is-bg-soft-gray .tw-pb-faq-question:focus-visible{background:#e9eef5}
.tw-pb-faq.is-bg-soft-blue .tw-pb-faq-question:hover,
.tw-pb-faq.is-bg-soft-blue .tw-pb-faq-question:focus-visible{background:#dfeaff}
.tw-pb-faq.is-bg-navy .tw-pb-faq-question:hover,
.tw-pb-faq.is-bg-navy .tw-pb-faq-question:focus-visible{background:#14254b}

.tw-pb-faq.is-text-dark .tw-pb-faq-question:hover,
.tw-pb-faq.is-text-dark .tw-pb-faq-question:focus-visible,
.tw-pb-faq.is-text-auto:not(.is-bg-navy) .tw-pb-faq-question:hover,
.tw-pb-faq.is-text-auto:not(.is-bg-navy) .tw-pb-faq-question:focus-visible{color:#0b46e5}
.tw-pb-faq.is-text-light .tw-pb-faq-question:hover,
.tw-pb-faq.is-text-light .tw-pb-faq-question:focus-visible,
.tw-pb-faq.is-text-auto.is-bg-navy .tw-pb-faq-question:hover,
.tw-pb-faq.is-text-auto.is-bg-navy .tw-pb-faq-question:focus-visible{color:#fff}

.tw-pb-faq.is-bg-navy .tw-pb-faq-icon{border-color:rgba(255,255,255,.55);color:inherit}


/* Process / Steps number contrast — 2.5.26 */
.tw-pb-process-grid article > span{
    color:#fff !important;
}


/* Page Builder header alignment — 2.5.27 */
.tw-header-align-left{text-align:left}
.tw-header-align-center{text-align:center}
.tw-header-align-right{text-align:right}


/* Site-wide professional typography + spacing reset — 2.5.28
   Purpose: restore clear hierarchy across interior pages without rebuilding content. */

/* Standard interior page titles */
.tw-entry-header h1,
.tw-page-header h1,
.tw-document-hero h1,
.tw-documents-archive-hero h1,
.tw-impact-hero h1,
.tw-needs-hero h1,
.tw-rcj-archive-hero h1,
.tw-rcj-single-copy h1{
    font-size:clamp(2.35rem,4.15vw,4rem);
    line-height:1.02;
    letter-spacing:-.035em;
}

/* Reduce oversized interior hero spacing */
.tw-entry-header,
.tw-page-header{
    padding-top:54px;
    padding-bottom:44px;
}
.tw-impact-hero,
.tw-needs-hero,
.tw-rcj-archive-hero,
.tw-rcj-single-hero{
    padding-top:48px;
    padding-bottom:40px;
}

/* Page Builder sections: tighter rhythm */
.tw-page-builder-content .tw-pb-section{
    padding-top:48px;
    padding-bottom:48px;
}

/* Major section headings: important, but clearly below page title */
.tw-page-builder-content .tw-pb-section h2{
    font-size:clamp(1.85rem,3vw,3rem);
    line-height:1.08;
    letter-spacing:-.025em;
    margin-top:6px;
    margin-bottom:16px;
}

/* Eyebrows remain supporting navigation cues */
.tw-page-builder-content .tw-eyebrow{
    font-size:.76rem;
    line-height:1.3;
    letter-spacing:.085em;
    margin-bottom:8px;
}

/* Normal prose remains readable and restrained */
.tw-page-builder-content .tw-pb-richtext{
    font-size:1.03rem;
    line-height:1.68;
}
.tw-page-builder-content .tw-pb-richtext.tw-text-size-normal{
    font-size:1.03rem;
    line-height:1.68;
}
.tw-page-builder-content .tw-pb-richtext.tw-text-size-large{
    font-size:clamp(1.18rem,1.55vw,1.42rem);
    line-height:1.5;
}
.tw-page-builder-content .tw-pb-richtext.tw-text-size-statement{
    font-size:clamp(1.42rem,2.15vw,1.9rem);
    line-height:1.35;
    letter-spacing:-.01em;
}

/* Statements and callouts should emphasize, not dominate the entire screen */
.tw-page-builder-content .tw-pb-statement-box.is-style-statement{
    padding:34px 40px;
}
.tw-page-builder-content .tw-pb-statement-box.is-style-callout{
    padding:24px 28px;
}

/* Keep text + image layouts editorial rather than presentation-scale */
.tw-page-builder-content .tw-pb-split{
    gap:42px;
}
.tw-page-builder-content .tw-pb-split-heading{
    max-width:760px;
}

/* Cards/process/FAQ should read as UI, not giant page headlines */
.tw-page-builder-content .tw-pb-card h3,
.tw-page-builder-content .tw-pb-process-grid article h3{
    font-size:1.12rem;
    line-height:1.3;
}
.tw-page-builder-content .tw-pb-process-grid article{
    padding:24px;
}

/* Quote styling also follows the hierarchy */
.tw-page-builder-content .tw-pb-quote p{
    font-size:clamp(1.6rem,2.7vw,2.5rem);
    line-height:1.2;
}

/* Mobile: preserve hierarchy without billboard typography */
@media(max-width:680px){
    .tw-entry-header h1,
    .tw-page-header h1,
    .tw-document-hero h1,
    .tw-documents-archive-hero h1,
    .tw-impact-hero h1,
    .tw-needs-hero h1,
    .tw-rcj-archive-hero h1,
    .tw-rcj-single-copy h1{
        font-size:clamp(2rem,10vw,2.75rem);
    }
    .tw-page-builder-content .tw-pb-section{
        padding-top:38px;
        padding-bottom:38px;
    }
    .tw-page-builder-content .tw-pb-section h2{
        font-size:clamp(1.65rem,8vw,2.15rem);
    }
    .tw-page-builder-content .tw-pb-statement-box.is-style-statement{
        padding:28px 24px;
    }
    .tw-page-builder-content .tw-pb-statement-box.is-style-callout{
        padding:22px 20px;
    }
}


/* Interior page title band — 2.5.29
   Restores the Trusted World blue page-title treatment with a restrained height. */
.tw-entry-header,
.tw-page-header{
    background:var(--tw-blue);
    color:#fff;
    padding-top:38px;
    padding-bottom:38px;
    border-bottom:0;
}

.tw-entry-header h1,
.tw-page-header h1{
    margin:0;
    color:#fff;
    font-size:clamp(2.35rem,3.2vw,3.05rem);
    line-height:1.04;
    letter-spacing:-.025em;
    max-width:none;
}

/* If these standard header areas contain breadcrumbs/meta, keep them readable. */
.tw-entry-header a,
.tw-page-header a,
.tw-entry-header .tw-breadcrumbs,
.tw-page-header .tw-breadcrumbs{
    color:rgba(255,255,255,.92);
}

/* Keep the first content area visually connected to the title band. */
.tw-page-builder-content .tw-pb-section:first-child{
    border-top:0;
}

@media(max-width:680px){
    .tw-entry-header,
    .tw-page-header{
        padding-top:30px;
        padding-bottom:30px;
    }
    .tw-entry-header h1,
    .tw-page-header h1{
        font-size:clamp(2rem,9vw,2.55rem);
    }
}


/* Actual Standard Page Framework title hero — 2.5.30
   2.5.29 targeted legacy header classes; standard pages render .tw-page-hero. */
.tw-page-hero{
    background:var(--tw-blue);
    color:#fff;
    border-bottom:0;
    padding:38px 0;
}
.tw-page-hero .tw-page-title{
    margin:0;
    color:#fff;
    font-size:clamp(2.25rem,3vw,3rem);
    line-height:1.04;
    letter-spacing:-.025em;
    max-width:none;
}
.tw-page-hero .tw-eyebrow,
.tw-page-hero .tw-page-intro,
.tw-page-hero a{
    color:rgba(255,255,255,.94);
}
.tw-page-title-hidden .tw-page-hero{
    padding-top:30px;
    padding-bottom:30px;
}
@media(max-width:680px){
    .tw-page-hero{padding:30px 0}
    .tw-page-hero .tw-page-title{
        font-size:clamp(2rem,9vw,2.5rem);
    }
}


/* Interior page-title band color — 2.5.31 */
.tw-page-hero{
    background:#4d8efa;
}


/* Align interior page title with Page Builder content — 2.5.32
   Standard hero markup uses .tw-page-shell-wide; match the Page Builder's
   visible left edge consistently across the page. */
.tw-page-hero .tw-page-shell{
    width:min(100% - 48px,1240px);
    max-width:1240px;
    margin-inline:auto;
}
@media(max-width:760px){
    .tw-page-hero .tw-page-shell{
        width:min(100% - 32px,1240px);
    }
}


/* Donation / LGL Widget — 2.5.33 */
.tw-pb-donation_lgl{
    background:#f7f9fc;
}
.tw-donation-shell{
    display:grid;
    grid-template-columns:minmax(0,.9fr) minmax(420px,1.1fr);
    gap:54px;
    align-items:start;
}
.tw-donation-copy{
    padding-top:12px;
}
.tw-donation-copy > .tw-pb-richtext{
    font-size:1.12rem;
    line-height:1.7;
    max-width:650px;
}
.tw-donation-capacity{
    margin-top:30px;
    padding-top:24px;
    border-top:1px solid #d9e1ee;
}
.tw-donation-capacity-label{
    margin:0 0 16px;
    color:#0b46e5;
    font-size:.76rem;
    font-weight:850;
    letter-spacing:.085em;
}
.tw-donation-capacity-grid{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:12px;
}
.tw-donation-capacity-grid > div{
    padding:18px;
    background:#fff;
    border:1px solid #dce3ee;
}
.tw-donation-capacity-grid strong{
    display:block;
    margin-bottom:5px;
    color:#071332;
    font-size:1rem;
}
.tw-donation-capacity-grid span{
    display:block;
    color:#59667d;
    font-size:.92rem;
    line-height:1.45;
}
.tw-donation-message{
    margin-top:24px;
    padding:24px 26px;
    border-left:4px solid #4d8efa;
    background:#eef4ff;
}
.tw-donation-message h3{
    margin:0 0 8px;
    color:#071332;
    font-size:1.35rem;
}
.tw-donation-message .tw-pb-richtext{
    font-size:1rem;
}
.tw-donation-form-card{
    background:#fff;
    border:1px solid #dce3ee;
    box-shadow:0 18px 45px rgba(7,19,50,.08);
    padding:18px;
}
.tw-lgl-frame{
    display:block;
    width:100%;
    min-height:760px;
    border:0;
    background:#fff;
}
.tw-donation-placeholder{
    min-height:420px;
    display:grid;
    place-content:center;
    text-align:center;
    padding:36px;
    background:#f7f9fc;
    border:1px dashed #aebbd0;
    color:#536078;
}
.tw-donation-placeholder strong{
    display:block;
    color:#071332;
    font-size:1.25rem;
}
.tw-donation-placeholder p{
    margin:8px 0 0;
}
.tw-donation-trust{
    margin:14px 6px 2px;
    color:#667085;
    font-size:.82rem;
    line-height:1.45;
    text-align:center;
}
@media(max-width:980px){
    .tw-donation-shell{
        grid-template-columns:1fr;
        gap:34px;
    }
    .tw-donation-copy{
        padding-top:0;
    }
}
@media(max-width:620px){
    .tw-donation-capacity-grid{
        grid-template-columns:1fr;
    }
    .tw-donation-form-card{
        padding:10px;
    }
    .tw-lgl-frame{
        min-height:820px;
    }
}


/* Vertical Timeline — 2.5.34 */
.tw-pb-timeline{
    position:relative;
    isolation:isolate;
    overflow:hidden;
    --tw-timeline-progress:0%;
}
.tw-pb-timeline.is-timeline-bg-white{background:#fff}
.tw-pb-timeline.is-timeline-bg-soft-gray{background:#f5f7fa}
.tw-pb-timeline.is-timeline-bg-soft-blue{background:#f3f7ff}
.tw-pb-timeline.is-timeline-bg-navy{background:#071332}
.tw-pb-timeline > .tw-page-shell{position:relative;z-index:1}

.tw-pb-timeline.is-timeline-ambient-subtle::before,
.tw-pb-timeline.is-timeline-ambient-strong::before{
    content:"";
    position:absolute;
    z-index:0;
    inset:-8% -12%;
    pointer-events:none;
    background:
        radial-gradient(circle at 12% 10%, color-mix(in srgb, var(--tw-timeline-accent) 24%, transparent) 0 9%, transparent 28%),
        radial-gradient(circle at 84% 28%, rgba(77,142,250,.20) 0 10%, transparent 30%),
        radial-gradient(circle at 22% 58%, rgba(0,167,157,.14) 0 9%, transparent 28%),
        radial-gradient(circle at 78% 82%, rgba(108,62,207,.13) 0 8%, transparent 27%);
    filter:blur(54px);
    opacity:.7;
    transform:translate3d(0,0,0) scale(1.03);
    animation:twTimelineAmbient 18s ease-in-out infinite alternate;
}
.tw-pb-timeline.is-timeline-ambient-strong::before{
    filter:blur(62px);
    opacity:1;
}
.tw-pb-timeline.is-timeline-bg-navy.is-timeline-ambient-subtle::before,
.tw-pb-timeline.is-timeline-bg-navy.is-timeline-ambient-strong::before{
    opacity:.46;
}
@keyframes twTimelineAmbient{
    0%{transform:translate3d(-1.5%,0,0) scale(1.03)}
    50%{transform:translate3d(1.8%,1.2%,0) scale(1.07)}
    100%{transform:translate3d(-.4%,2.4%,0) scale(1.04)}
}
.tw-pb-timeline.is-timeline-bg-navy .tw-eyebrow,
.tw-pb-timeline.is-timeline-bg-navy > .tw-page-shell > h2{color:#fff}
.tw-pb-timeline.is-timeline-bg-navy .tw-timeline-intro{color:rgba(255,255,255,.75)}

.tw-timeline-intro{
    max-width:780px;
    margin:0 0 42px;
}
.tw-timeline{
    position:relative;
    --tw-line-neutral:#cbd5e1;
}
.tw-pb-timeline.is-timeline-bg-navy .tw-timeline{--tw-line-neutral:rgba(255,255,255,.20)}
.tw-timeline-track{
    position:relative;
    padding:28px 0 12px;
}
.tw-timeline-line{
    position:absolute;
    top:0;
    bottom:0;
    left:50%;
    width:3px;
    transform:translateX(-50%);
    background:var(--tw-line-neutral);
    overflow:hidden;
}
.tw-timeline-progress{
    display:block;
    width:100%;
    height:var(--tw-timeline-progress);
    background:linear-gradient(to bottom,var(--tw-timeline-accent),#4d8efa);
    box-shadow:0 0 24px color-mix(in srgb,var(--tw-timeline-accent) 42%, transparent);
    transition:height .12s linear;
}
.tw-timeline-item{
    position:relative;
    display:grid;
    grid-template-columns:minmax(0,1fr) 82px minmax(0,1fr);
    align-items:center;
    min-height:180px;
    margin:0 0 56px;
}
.tw-timeline-item:last-child{margin-bottom:0}
.tw-timeline-node{
    grid-column:2;
    grid-row:1;
    justify-self:center;
    position:relative;
    z-index:3;
    display:grid;
    place-items:center;
    width:28px;
    height:28px;
    border-radius:50%;
    background:color-mix(in srgb,var(--tw-milestone-accent) 16%, #fff);
    border:2px solid color-mix(in srgb,var(--tw-milestone-accent) 62%, #fff);
    box-shadow:0 0 0 7px rgba(255,255,255,.80);
    transition:transform .35s ease,box-shadow .35s ease,background .35s ease;
}
.tw-pb-timeline.is-timeline-bg-navy .tw-timeline-node{
    box-shadow:0 0 0 7px rgba(7,19,50,.88);
}
.tw-timeline-node > span{
    width:10px;
    height:10px;
    border-radius:50%;
    background:var(--tw-milestone-accent);
}
.tw-timeline-card{
    position:relative;
    min-width:0;
    padding:26px 28px 28px;
    border:1px solid rgba(148,163,184,.35);
    border-top:3px solid var(--tw-milestone-accent);
    background:rgba(255,255,255,.78);
    -webkit-backdrop-filter:blur(16px);
    backdrop-filter:blur(16px);
    box-shadow:0 18px 48px rgba(7,19,50,.08);
    transition:transform .45s cubic-bezier(.2,.7,.2,1),opacity .45s ease,box-shadow .45s ease;
}
.tw-pb-timeline.is-timeline-bg-navy .tw-timeline-card{
    background:rgba(12,27,58,.70);
    border-color:rgba(255,255,255,.13);
    border-top-color:var(--tw-milestone-accent);
    box-shadow:0 20px 50px rgba(0,0,0,.22);
}
.tw-timeline-item.is-left .tw-timeline-card{grid-column:1;grid-row:1}
.tw-timeline-item.is-right .tw-timeline-card{grid-column:3;grid-row:1}

.tw-timeline-date{
    margin:0 0 8px;
    color:var(--tw-milestone-accent);
    font-size:.82rem;
    font-weight:900;
    letter-spacing:.10em;
    text-transform:uppercase;
}
.tw-timeline-card h3{
    margin:0 0 10px;
    color:#071332;
    font-size:clamp(1.45rem,2.1vw,2rem);
    line-height:1.12;
    letter-spacing:-.02em;
}
.tw-pb-timeline.is-timeline-bg-navy .tw-timeline-card h3{color:#fff}
.tw-timeline-stat{
    margin:12px 0 14px;
    color:var(--tw-milestone-accent);
    font-size:clamp(1.55rem,2.6vw,2.35rem);
    line-height:1.05;
    font-weight:900;
    letter-spacing:-.025em;
}
.tw-timeline-card .tw-pb-richtext{
    font-size:1rem;
    line-height:1.65;
}
.tw-pb-timeline.is-timeline-bg-navy .tw-timeline-card .tw-pb-richtext{color:rgba(255,255,255,.76)}
.tw-timeline-link{
    display:inline-flex;
    gap:8px;
    margin-top:16px;
    color:var(--tw-milestone-accent);
    font-weight:800;
    text-decoration:none;
}
.tw-timeline-link:hover,.tw-timeline-link:focus-visible{text-decoration:underline}

.tw-timeline-item.is-style-featured .tw-timeline-card{
    border-top-width:5px;
    box-shadow:0 24px 68px color-mix(in srgb,var(--tw-milestone-accent) 14%, transparent);
}
.tw-timeline-item.is-style-featured .tw-timeline-node{
    width:34px;height:34px;
}
.tw-timeline-item.is-style-today .tw-timeline-card{
    background:linear-gradient(135deg,rgba(255,255,255,.94),rgba(238,244,255,.86));
    border-top-width:5px;
}
.tw-pb-timeline.is-timeline-bg-navy .tw-timeline-item.is-style-today .tw-timeline-card{
    background:linear-gradient(135deg,rgba(20,42,86,.94),rgba(10,24,54,.88));
}
.tw-timeline-item.is-style-today .tw-timeline-date{
    display:inline-flex;
    align-items:center;
    min-height:26px;
    padding:3px 9px;
    background:var(--tw-milestone-accent);
    color:#fff;
    letter-spacing:.08em;
}
.tw-timeline.is-enhanced .tw-timeline-item .tw-timeline-card{
    opacity:.48;
    transform:translateY(14px);
}
.tw-timeline.is-enhanced .tw-timeline-item.is-visible .tw-timeline-card{
    opacity:1;
    transform:translateY(0);
}
.tw-timeline.is-enhanced .tw-timeline-item.is-visible .tw-timeline-node{
    background:var(--tw-milestone-accent);
    transform:scale(1.12);
    box-shadow:0 0 0 7px rgba(255,255,255,.84),0 0 30px color-mix(in srgb,var(--tw-milestone-accent) 42%, transparent);
}
.tw-timeline.is-enhanced .tw-timeline-item.is-visible .tw-timeline-node > span{background:#fff}
.tw-pb-timeline.is-timeline-bg-navy .tw-timeline.is-enhanced .tw-timeline-item.is-visible .tw-timeline-node{
    box-shadow:0 0 0 7px rgba(7,19,50,.90),0 0 30px color-mix(in srgb,var(--tw-milestone-accent) 50%, transparent);
}

@media(max-width:820px){
    .tw-timeline-track{padding-left:22px}
    .tw-timeline-line{
        left:22px;
        transform:none;
    }
    .tw-timeline-item{
        grid-template-columns:46px minmax(0,1fr);
        min-height:0;
        margin-bottom:34px;
    }
    .tw-timeline-node{
        grid-column:1;
        grid-row:1;
        justify-self:start;
        margin-left:-13px;
    }
    .tw-timeline-item.is-left .tw-timeline-card,
    .tw-timeline-item.is-right .tw-timeline-card{
        grid-column:2;
        grid-row:1;
    }
    .tw-timeline-card{padding:22px}
}
@media(max-width:520px){
    .tw-timeline-card{padding:20px 18px}
    .tw-timeline-card h3{font-size:1.35rem}
    .tw-timeline-stat{font-size:1.65rem}
}

@media(prefers-reduced-motion:reduce){
    .tw-pb-timeline::before{animation:none!important}
    .tw-timeline-card,.tw-timeline-node,.tw-timeline-progress{transition:none!important}
    .tw-timeline.is-enhanced .tw-timeline-item .tw-timeline-card{
        opacity:1;
        transform:none;
    }
}


/* Mega-menu affordance + direct Give navigation — 2.5.39 */
.tw-mega-link-arrow{display:inline-block;margin-left:.28em;color:var(--tw-blue);font-weight:800;transition:transform .16s ease}
.tw-mega-column a:hover .tw-mega-link-arrow,.tw-mega-column a:focus-visible .tw-mega-link-arrow{transform:translateX(3px)}
.tw-mega-column a:hover,.tw-mega-column a:focus-visible{background:rgba(11,70,229,.045);outline-offset:2px}
.tw-mega-column a{padding-left:6px;padding-right:6px;margin-left:-6px;margin-right:-6px}
.tw-give-now-button{text-decoration:none}
\n\n/* Alternate Paths — 2.5.40 */\n.tw-pb-alternate_paths {\n    padding-top: 10px;\n    padding-bottom: 10px;\n}\n.tw-pb-alternate_paths .tw-page-shell {\n    max-width: 1180px;\n}\n.tw-alternate-paths {\n    display: flex;\n    align-items: center;\n    justify-content: center;\n    gap: 22px;\n    padding: 14px 22px;\n    border: 1px solid rgba(11,70,229,.12);\n}\n.tw-alternate-paths.is-theme-soft-blue {\n    background: #f2f6ff;\n}\n.tw-alternate-paths.is-theme-light {\n    background: #fff;\n}\n.tw-alternate-paths.is-align-left {\n    justify-content: flex-start;\n}\n.tw-alternate-paths-prompt {\n    flex: 0 0 auto;\n    color: #16233a;\n    font-size: 13px;\n    font-weight: 800;\n    letter-spacing: .055em;\n    text-transform: uppercase;\n}\n.tw-alternate-paths-links {\n    display: flex;\n    flex-wrap: wrap;\n    align-items: center;\n    justify-content: center;\n    gap: 10px 22px;\n}\n.is-align-left .tw-alternate-paths-links {\n    justify-content: flex-start;\n}\n.tw-alternate-paths-links a {\n    color: #0b46e5;\n    font-weight: 700;\n    text-decoration: none;\n    white-space: nowrap;\n}\n.tw-alternate-paths-links a span {\n    display: inline-block;\n    transition: transform .18s ease;\n}\n.tw-alternate-paths-links a:hover,\n.tw-alternate-paths-links a:focus-visible {\n    text-decoration: underline;\n}\n.tw-alternate-paths-links a:hover span,\n.tw-alternate-paths-links a:focus-visible span {\n    transform: translateX(3px);\n}\n@media (max-width: 760px) {\n    .tw-alternate-paths {\n        align-items: flex-start;\n        flex-direction: column;\n        gap: 10px;\n        padding: 14px 16px;\n    }\n    .tw-alternate-paths-links {\n        align-items: flex-start;\n        flex-direction: column;\n        gap: 8px;\n    }\n}\n

/* Alternate Paths buttons + direct floating Give — 2.5.41 */
.tw-alternate-paths{
    flex-direction:column;
    align-items:center;
    justify-content:center;
    gap:12px;
    padding:18px 22px;
}
.tw-alternate-paths.is-align-left{align-items:flex-start;justify-content:flex-start}
.tw-alternate-paths-links{
    display:flex;
    flex-wrap:wrap;
    align-items:center;
    justify-content:center;
    gap:12px;
}
.is-align-left .tw-alternate-paths-links{justify-content:flex-start}
.tw-alternate-paths-links a.tw-alternate-path-button{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:42px;
    padding:10px 18px;
    border:1px solid rgba(11,70,229,.18);
    border-radius:7px;
    background:#fff;
    color:#17345f;
    font-weight:750;
    line-height:1.2;
    text-decoration:none !important;
    white-space:nowrap;
    box-shadow:0 1px 2px rgba(11,23,53,.04);
    transition:border-color .16s ease, background .16s ease, color .16s ease, transform .16s ease;
}
.tw-alternate-paths-links a.tw-alternate-path-button:hover,
.tw-alternate-paths-links a.tw-alternate-path-button:focus-visible{
    border-color:rgba(11,70,229,.40);
    background:#f8faff;
    color:#0b46e5;
    text-decoration:none !important;
    transform:translateY(-1px);
}
.tw-needs-alternate-paths{padding:10px 0;background:#fff}
.tw-needs-alternate-paths .tw-alternate-paths{border:1px solid rgba(11,70,229,.12)}
.tw-persistent-tabs a.tw-persistent-direct{
    width:126px;
    box-sizing:border-box;
    padding:14px 16px;
    border:1px solid #cbd6e6;
    background:#fff;
    color:#0b1735;
    font:inherit;
    font-weight:800;
    text-align:left;
    text-decoration:none;
    cursor:pointer;
    box-shadow:0 10px 26px rgba(11,23,53,.10);
}
.tw-persistent-tabs a.tw-persistent-direct:hover,
.tw-persistent-tabs a.tw-persistent-direct:focus-visible{border-color:#0b46e5;color:#0b46e5}
@media(max-width:900px){
    .tw-persistent-tabs a.tw-persistent-direct{width:auto;text-align:center;padding:12px 8px}
}
@media(max-width:760px){
    .tw-alternate-paths{align-items:stretch;padding:16px}
    .tw-alternate-paths-prompt{text-align:center}
    .tw-alternate-paths-links{flex-direction:column;align-items:stretch;gap:9px;width:100%}
    .tw-alternate-paths-links a.tw-alternate-path-button{width:100%;white-space:normal}
}

/* Persistent action rail consistency — 2.5.43 */
.tw-persistent-tabs button,
.tw-persistent-tabs a.tw-persistent-direct{
    display:block;
    width:126px;
    box-sizing:border-box;
    min-height:48px;
    padding:14px 16px;
    border:1px solid #cbd6e6;
    border-radius:4px;
    background:#fff;
    color:#0b1735;
    font:inherit;
    font-weight:800;
    line-height:1.2;
    text-align:left;
    text-decoration:none;
    cursor:pointer;
    box-shadow:0 10px 26px rgba(11,23,53,.10);
}
.tw-persistent-tabs button:hover,
.tw-persistent-tabs button:focus-visible,
.tw-persistent-tabs button.is-active,
.tw-persistent-tabs a.tw-persistent-direct:hover,
.tw-persistent-tabs a.tw-persistent-direct:focus-visible{
    border-color:#0b46e5;
    color:#0b46e5;
    text-decoration:none;
}
@media(max-width:900px){
    .tw-persistent-tabs button,
    .tw-persistent-tabs a.tw-persistent-direct{width:auto;text-align:center;padding:12px 8px;}
}

/* Google Sheet needs notes — 2.5.44 */
.tw-needs-list .tw-need-item{font-weight:750;color:#0b1735}
.tw-needs-list .tw-need-note{display:block;margin-top:3px;font-size:.92rem;color:#5b6578;font-weight:500}
