/* Unified shell: phone safety for every page, section nav, and a light skin for legacy templates. */
.rph-unified{overflow-x:clip}
.rph-unified img,.rph-unified video{max-width:100%;height:auto}
.rph-unified iframe,.rph-unified embed,.rph-unified object{max-width:100%}
.rph-unified pre{overflow-x:auto;white-space:pre-wrap}
.rph-unified :where(p,li,td,th,dd,h1,h2,h3,h4,h5,h6){overflow-wrap:break-word}
@media (max-width:767.98px){
  .rph-unified table:not(.rph-keep){display:block;max-width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}
  .rph-unified :where(input,select,textarea){font-size:16px;max-width:100%}
  .rph-unified :where([style*="width"]:not(img,iframe,ins,ins *)){max-width:100%!important}
  .rph-unified :where(.container,.container-fluid){padding-left:16px;padding-right:16px}
  .rph-unified :where(.card-body){padding:1rem}
}

.rph-subnav{background:#fff;border-bottom:1px solid #dbe4ee}
.rph-subnav__inner{max-width:1160px;margin:auto;padding:8px 16px;display:flex;gap:8px;overflow-x:auto;scrollbar-width:none}
.rph-subnav__inner::-webkit-scrollbar{display:none}
.rph-subnav a{flex:none;display:inline-flex;align-items:center;min-height:36px;padding:6px 14px;border-radius:999px;background:#f2f6fc;color:#185cb4;font:600 .875rem/1.2 system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;text-decoration:none;white-space:nowrap}
.rph-subnav a:hover{background:#185cb4;color:#fff}

/* Shared chrome must look the same on pages without a CSS reset. */
.rph-header,.rph-header *,.rph-subnav,.rph-subnav *,.rph-footer,.rph-footer *{box-sizing:border-box}
.rph-header a,.rph-footer a,.rph-subnav a{text-decoration:none}
.rph-header__inner{line-height:1.3}

/* Legacy skin: same light look as the homepage, whatever theme the old template set. */
body.rph-legacy{background:#f7f9fc!important;color:#14263c!important;font-family:system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif!important;line-height:1.55;max-width:none!important;margin:0!important;padding:0!important}
/* One content column, so pages that boxed or padded <body> line up with the shared header. */
body.rph-legacy>:where(:not(.rph-header,.rph-subnav,.rph-breadcrumb,.rph-footer,.rph-skip,.rph-sticky,.modal,.modal-backdrop,.fixed-top,.fixed-bottom,script,style,link,noscript,[style*="position:fixed"],[style*="position: fixed"])){max-width:1160px;margin-left:auto!important;margin-right:auto!important;padding-left:16px;padding-right:16px;box-sizing:border-box}
body.rph-legacy :where(.rph-bare){display:block;padding-top:24px;padding-bottom:24px;line-height:1.7}
body.rph-unified{font-family:system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif}
body.rph-unified :where(*:not([class*="fa-"],[class*="bi-"],.fa,.fas,.far,.fab,.material-icons,code,pre,kbd,.MathJax,.MathJax *,mjx-container,mjx-container *)){font-family:inherit!important}
/* Plain legacy form controls get the same fields and buttons as the rest of the site. */
body.rph-legacy :where(input:not([type=checkbox],[type=radio],[type=submit],[type=button],[type=hidden]),select,textarea){border:1px solid #c9d4e2;border-radius:8px;padding:8px 10px;min-height:40px;background:#fff;color:#14263c}
body.rph-legacy :where(button:not(.btn,.close,.navbar-toggler,[class*="rph"]),input[type=submit],input[type=button]){min-height:44px;padding:8px 18px;border:0;border-radius:10px;background:#185cb4;color:#fff;font-weight:600;cursor:pointer}
body.rph-legacy :where(*:not(.rph-header,.rph-header *,.rph-footer,.rph-footer *,.rph-subnav,.rph-subnav *,.rph-cta,.rph-cta *,.btn,.btn *,.badge,.alert,.alert *,.bg-primary,.bg-primary *,.bg-success,.bg-success *,.bg-info,.bg-info *,.bg-warning,.bg-warning *,.bg-danger,.bg-danger *,img,svg,svg *,video,iframe,ins,ins *,input,select,textarea,button,mark,code,[class*="fa-"],[class*="bi-"],.fa,.fas,.far,.fab,.material-icons,[class*="-icon"])){background-color:transparent!important;background-image:none!important;color:inherit!important;text-shadow:none!important;box-shadow:none!important;border-color:#dbe4ee!important;font-family:inherit!important}
body.rph-legacy :where(.card,.jumbotron,.list-group-item,.modal-content,.main-panel,.panel,.well,.dropdown-menu){background-color:#fff!important;border:1px solid #dbe4ee!important;border-radius:12px}
body.rph-legacy :where(.card-header,.card-footer,thead th,.table-dark th){background-color:#f2f6fc!important}
body.rph-legacy :where(h1,h2,h3,h4,h5,h6):not(:where(.bg-primary,.bg-success,.bg-info,.bg-danger,.alert,.rph-cta,.rph-footer) *){color:#14263c!important;font-weight:700;line-height:1.25}
body.rph-legacy :where(h1){font-size:clamp(1.45rem,1.1rem + 1.6vw,2rem)}
body.rph-legacy :where(h2){font-size:clamp(1.2rem,1rem + 1vw,1.6rem)}
body.rph-legacy :where(a:not(.btn,.badge)):not(:where(.rph-header,.rph-footer,.rph-subnav,.rph-cta,.bg-primary,.bg-success,.bg-info,.bg-warning,.bg-danger,.alert) *){color:#185cb4!important}
body.rph-legacy :where(.text-muted,small){color:#516175!important}
body.rph-legacy :where(hr){border-color:#dbe4ee!important;opacity:1}
body.rph-legacy .btn{border-radius:10px;font-weight:600;min-height:44px;display:inline-flex;align-items:center;justify-content:center;gap:.35rem;white-space:normal}
body.rph-legacy :where(.btn-outline-light,.btn-dark,.btn-secondary){background:#fff!important;color:#185cb4!important;border:1px solid #185cb4!important}
body.rph-legacy :where(.navbar-toggler){border:1px solid #dbe4ee!important}
body.rph-legacy :where(.navbar-toggler-icon){filter:invert(1) brightness(.3)}
@media (max-width:575.98px){body.rph-legacy :where(.card,.jumbotron,.main-panel){border-radius:10px}}

/* Site design system: every page uses the homepage's intro, buttons and cards. */
body.rph-unified:not(:has(.home-intro)){background:#f7f8fa!important;color:#182230}
.rph-unified h1.rph-page-title{color:#102a4c!important;font-size:clamp(1.75rem,1.2rem + 2.2vw,2.6rem)!important;line-height:1.12!important;letter-spacing:-.03em;font-weight:750!important;text-align:left!important;margin:0 0 .6rem!important}
.rph-unified h1.rph-page-title i,.rph-unified h1.rph-page-title .bi,.rph-unified h1.rph-page-title svg{display:none}
.rph-unified :where(.hero,.hero-panel,.archive-header,.page-hero,.jumbotron,.card-header:has(>h1),.card-header:has(.rph-page-title)){background:#fff!important;background-image:none!important;color:#526780!important;border:1px solid #e4e7ec!important;border-radius:12px!important;box-shadow:0 8px 22px rgba(28,56,88,.06)!important;padding:28px 24px!important;text-align:left!important;margin-bottom:20px}
.rph-unified :where(.hero,.hero-panel,.archive-header,.page-hero,.jumbotron,.card-header:has(>h1)) :where(p,.lead,li,span:not(.badge)){color:#526780!important}
.rph-unified :where(.hero,.hero-panel,.archive-header,.page-hero) :where(.badge,.hero-badge,.hero-stat,.pill){background:#eef4ff!important;color:#175cd3!important;border:1px solid #d2e0fb!important;border-radius:999px;font-weight:700}
.rph-unified :where(.btn-primary,.btn-success,.btn-brand,.btn-info,.btn-warning){background:#175cd3!important;border:1px solid #175cd3!important;color:#fff!important;border-radius:8px!important;font-weight:700!important;box-shadow:none!important}
.rph-unified :where(.btn-primary,.btn-success,.btn-brand,.btn-info,.btn-warning):hover{background:#134aa8!important;border-color:#134aa8!important}
.rph-unified :where(.btn-ghost,.btn-outline-primary,.btn-outline-success,.btn-outline-info,.btn-outline-light,.btn-light,.btn-outline-secondary){background:#fff!important;border:1px solid #175cd3!important;color:#175cd3!important;border-radius:8px!important;font-weight:700!important;box-shadow:none!important}
.rph-unified :where(.btn-ghost,.btn-outline-primary,.btn-outline-success,.btn-outline-info,.btn-outline-light,.btn-light,.btn-outline-secondary):hover{background:#f5f8ff!important}
.rph-unified :where(.btn){min-height:42px;display:inline-flex;align-items:center;justify-content:center;gap:.35rem}
.rph-unified :where(.card:not(.rph-cta)){background:#fff!important;border:1px solid #e4e7ec!important;border-radius:10px!important;box-shadow:0 4px 14px rgba(28,56,88,.05)!important}
.rph-unified :where(.card-header:not(:has(h1))){background:#f7f8fa!important;color:#182230!important;border-bottom:1px solid #e4e7ec!important}
.rph-unified :where(.card-header:not(:has(h1))) *{color:inherit!important}
.rph-unified :where(.text-primary):not(a){color:#102a4c!important}
.rph-unified :where(main,.container,.page-body) a:where(:not(.btn,.badge,.home-btn,.home-chip)){color:#175cd3}

/* Ad units placed by js/rph-ads.js: labelled, spaced from content, collapsed when unfilled. */
.rph-ad{clear:both;max-width:100%;margin:28px auto;padding:10px 0;border-block:1px solid #e4e7ec;text-align:center}
.rph-ad__label{display:block;margin-bottom:6px;color:#98a2b3;font:600 .68rem/1 system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;letter-spacing:.1em;text-transform:uppercase}
.rph-ad ins.adsbygoogle{min-height:100px}
.rph-ad:has(ins[data-ad-status="unfilled"]){display:none}
.rph-ad-item{list-style:none;margin:0;padding:0}
.rph-ad-item::marker{content:none}
