/* Only generated content pages. Existing site styles remain unchanged. */
.page-content .content-body { min-width: 0; overflow-wrap: anywhere; line-height: 1.95; }
.page-content .content-body img { display: block; max-width: 100%; height: auto; margin: 2rem auto; }
.page-content .content-body h2 { margin: 2.5rem 0 1rem; }
.page-content .content-body h3 { margin: 2rem 0 1rem; }
.page-content .content-body ul, .page-content .content-body ol { padding-left: 1.5em; }
.page-content .content-body blockquote { border-left: 2px solid var(--blue, #498bff); margin: 2rem 0; padding-left: 1.5rem; }
.page-content .content-body pre { max-width: 100%; overflow-x: auto; padding: 1rem; background: #111827; }
.page-content .content-body table { display: block; max-width: 100%; overflow-x: auto; border-collapse: collapse; }
.page-content .content-body td, .page-content .content-body th { border: 1px solid #384151; padding: .7rem; }
.page-content .content-toc { padding-left: 1.2rem; line-height: 2.2; }
.page-content .insights-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 2rem; }
.page-content .insight-card { border-top: 1px solid #384151; padding: 1.5rem 0; overflow-wrap: anywhere; }
.page-content .insight-card h2 { margin: 1rem 0; }
.page-content .article-content { max-width: 860px; }
.page-content .related { border-top: 1px solid #384151; margin-top: 3rem; padding-top: 2rem; }
.page-content [id] { scroll-margin-top: 7rem; }
.page-content a:focus-visible { outline: 2px solid #82afff; outline-offset: 5px; }
@media (max-width: 700px) { .page-content .insights-grid { grid-template-columns: 1fr; } }

/* Company v1.4: corporate profile, not a second sales landing page. */
.page-content .company-hero { padding: 158px 0 86px; isolation: isolate; overflow: hidden; }
.page-content .company-hero::after {
  content: ""; position: absolute; pointer-events: none; z-index: 0;
  width: min(560px, 65vw); aspect-ratio: 1; right: 0; top: -50%;
  border: 1px solid rgba(135,168,225,.12); border-radius: 50%;
  background: radial-gradient(circle at 40% 45%, rgba(71,112,192,.15), rgba(19,39,72,.05) 45%, transparent 75%);
  filter: blur(8px);
}
.page-content .company-hero .wrap { position: relative; z-index: 1; }
.page-content .company-hero .breadcrumbs { margin-bottom: 38px; }
.page-content .company-hero .eyebrow { margin-bottom: 14px; color: #a4afc3; }
.page-content .company-hero h1 { font-family: Manrope, sans-serif; font-size: clamp(46px, 7vw, 94px); line-height: 1.08; letter-spacing: -.035em; font-weight: 500; margin: 0; }
.page-content .company-main { padding: 28px 0 100px; border-bottom: 0; }
.page-content .company-layout { max-width: 1100px; margin: 0 auto; }
.page-content .company-section { display: block; padding: 68px 0 76px; }
.page-content .company-section:last-child { border-bottom: 0; padding-bottom: 0; }
.page-content .company-section h2 { font-family: Manrope, 'Zen Kaku Gothic New', sans-serif; font-size: clamp(28px, 3vw, 44px); line-height: 1.25; letter-spacing: .01em; font-weight: 500; margin: 0 0 35px; }
.page-content .company-section-kicker { margin: -18px 0 34px !important; color: #aeb8c7; font-size: 14px !important; }
.page-content .company-section-body { min-width: 0; }
.page-content .company-copy { width: 100%; max-width: none; }
.page-content .company-copy p { width: 100%; max-width: none; white-space: normal; text-wrap: wrap; word-break: normal; overflow-wrap: normal; line-break: strict; margin: 0 0 1.45em; font-size: 16px; line-height: 2.15; letter-spacing: .025em; }
.page-content .company-copy p:last-child { margin-bottom: 0; }
.page-content .company-signature { width: 100%; max-width: none; text-align: right; margin: 32px 0 0; font-size: 15px; }
.page-content .company-signature span, .page-content .company-signature strong { display: block; font-weight: 500; }
.page-content .company-facts { width: 100%; max-width: none; }
.page-content .company-facts table { display: table; width: 100%; margin: 0; border-collapse: collapse; table-layout: fixed; font-size: 15px; }
.page-content .company-facts thead { display: none; }
.page-content .company-facts td { border: 0; padding: 19px 12px 19px 0; text-align: left; vertical-align: top; line-height: 1.85; }
.page-content .company-facts tbody tr { border-bottom: 1px solid #30394a; }
.page-content .company-facts td:last-child { padding-right: 0; }
.page-content .company-facts td:first-child { width: 34%; color: #aab5c8; }
.page-content .company-facts a { text-decoration: underline; text-decoration-color: #66778d; text-underline-offset: 4px; }

/* Company execution model adapted from RNF_Company_Execution_Model_A_Interactive_v2.html. */
.page-content .execution-model { --blue:#4d87ff; --line:rgba(207,224,255,.17); --ease:cubic-bezier(.2,.7,.2,1); margin:0 0 40px; }
.page-content .execution-model {position:relative;border:1px solid var(--line);background:linear-gradient(130deg,#121c2b,#0d1422 68%);padding:clamp(22px,3.8vw,50px) clamp(18px,3.6vw,46px) 32px;overflow:hidden}
.page-content .execution-model:before {content:"";position:absolute;left:0;top:0;height:2px;width:100%;background:linear-gradient(90deg,var(--blue),transparent 66%);opacity:.84}
.page-content .execution-model .section-head {display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:30px}
.page-content .execution-model .section-head strong {font-size:12px;font-weight:550;letter-spacing:.11em}
.page-content .execution-model .section-head span {font-size:11px;color:#7f92b5}
.page-content .execution-model .rnf-lead {position:relative;z-index:1;text-align:center;margin:0 auto;width:min(100%,490px);background:#224d9e;border:1px solid #487bdf;padding:19px 25px 17px}
.page-content .execution-model .rnf-lead .label {font-size:10px;letter-spacing:.19em;color:#c0d4ff;display:block;margin-bottom:4px}
.page-content .execution-model .rnf-lead .name {font-size:clamp(17px,2vw,23px);font-weight:600;display:block}
.page-content .execution-model .rnf-lead .sub {display:block;font-size:11px;color:#d1ddf6;margin-top:3px}
.page-content .execution-model .main-stem {width:1px;height:42px;background:linear-gradient(#6092ff,#85a6e8);margin:auto}
.page-content .execution-model .main-stem:after {content:"";display:block;width:5px;height:5px;transform:translate(-2px,39px);background:#a1beff;border-radius:50%}
.page-content .execution-model .mode-grid {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px}
.page-content .execution-model .mode {--hoverline:#5484eb;appearance:none;text-align:left;position:relative;min-height:172px;background:#152234;border:1px solid #35435c;padding:21px 20px 27px;color:#fff;cursor:pointer;display:flex;flex-direction:column;align-items:flex-start;justify-content:space-between}
.page-content .execution-model .mode:hover {background:#1c2e49;border-color:#688ee1;transform:translateY(-2px)}
.page-content .execution-model .mode[aria-expanded=true] {border-color:#6197ff;background:#1a335c;}
.page-content .execution-model .mode .index {font:400 12px Inter,Arial,sans-serif;letter-spacing:.08em;color:#84aaff}
.page-content .execution-model .mode .title {display:block;font-weight:570;font-size:clamp(15px,1.6vw,19px);line-height:1.5;margin:9px 0 7px}
.page-content .execution-model .mode .desc {display:block;font-size:12px;line-height:1.7;color:#bbc7d9}
.page-content .execution-model .mode .more {position:absolute;right:15px;top:14px;display:grid;place-items:center;width:25px;height:25px;border:1px solid #526987;border-radius:50%;color:#b9d2ff;font-size:18px;font-weight:300;line-height:1;}
.page-content .execution-model .mode[aria-expanded=true] .more {transform:rotate(45deg);border-color:#8bacf6}
.page-content .execution-model .ai-foundation {display:flex;align-items:center;justify-content:space-between;gap:18px;margin-top:19px;border:1px solid #2c405d;background:#111f34;padding:15px 20px}
.page-content .execution-model .ai-foundation .name {display:flex;align-items:center;gap:12px;color:#d8e6ff;font-size:12px;font-weight:550;letter-spacing:.04em}
.page-content .execution-model .spark {font-size:21px;line-height:1;color:#8eafff}
.page-content .execution-model .ai-foundation .note {color:#93a7c9;font-size:11px;text-align:right}
.page-content .execution-model .details-slot {display:grid;grid-template-rows:0fr;opacity:0;visibility:hidden}
.page-content .execution-model .details-slot.is-open {grid-template-rows:1fr;opacity:1;visibility:visible}
.page-content .execution-model .details-inner {min-height:0;overflow:hidden}
.page-content .execution-model .detail-shell {padding:32px 0 0}
.page-content .execution-model .detail-bar {border-top:1px solid #3c5176;padding:25px 4px 16px;display:flex;align-items:center;justify-content:space-between;gap:15px}
.page-content .execution-model .detail-label {font-size:11px;letter-spacing:.16em;color:#91b3ff}
.page-content .execution-model .detail-bar h2 {font-size:22px;font-weight:570;margin:6px 0 0}
.page-content .execution-model .close-detail {border:1px solid #4c5b76;color:#afbfda;background:transparent;padding:9px 14px;cursor:pointer;font-size:12px}
.page-content .execution-model .close-detail:hover {border-color:#99b4e5}
.page-content .execution-model .detail-view[hidden] {display:none}
.page-content .execution-model .detail-view {}
.page-content .execution-model .caption {color:#b2c1d6;font-size:13px;margin:8px 0 0}
.page-content .execution-model .diagram {border:1px solid #2d3c57;background:#111c2d;margin-top:18px;padding:31px 22px 25px;min-height:220px}
.page-content .execution-model .flow-row {display:flex;align-items:center;justify-content:center;gap:12px;flex-wrap:wrap}
.page-content .execution-model .flow-box {background:#203757;border:1px solid #5077bb;color:#e6eeff;padding:15px 18px;text-align:center;min-width:130px;font-size:14px;font-weight:550}
.page-content .execution-model .flow-box.dark {background:#172b49;border-color:#53698d}
.page-content .execution-model .flow-box.light {background:#e3eafa;color:#182b4a;border-color:#b8cff7}
.page-content .execution-model .flow-box small {display:block;font-size:10px;color:#a8bfdf;line-height:1.4;margin-top:5px;font-weight:400}
.page-content .execution-model .flow-box.light small {color:#5f7190}
.page-content .execution-model .chevron {color:#729ff0;font-size:22px;line-height:1}
.page-content .execution-model .diagram .flow-caption {font-size:12px;color:#a4b7d5;margin:17px 0 0;text-align:center}
.page-content .execution-model .specialist-map {display:grid;grid-template-columns:1fr 1fr 1fr;gap:10px;max-width:790px;margin:auto}
.page-content .execution-model .specialist-map .mini {background:#1f3452;border:1px solid #47668f;padding:16px 12px;font-size:13px;text-align:center}
.page-content .execution-model .specialist-map .mini b {display:block;font-weight:500}
.page-content .execution-model .specialist-map .mini small {display:block;font-size:10px;color:#9cafc7;margin-top:4px}
.page-content .execution-model .vertical-line {height:23px;width:1px;background:#608ad2;margin:0 auto}
.page-content .execution-model .mini-bar {max-width:650px;height:1px;background:#4a6b9c;margin:auto}
.page-content .execution-model .micro-note {text-align:center;font-size:12px;color:#819abf;margin:0 0 12px}
.page-content .execution-model .department-grid {display:grid;grid-template-columns:repeat(3,1fr);gap:14px;max-width:760px;margin:auto}
.page-content .execution-model .dept {display:flex;flex-direction:column;align-items:stretch;text-align:center;gap:12px}
.page-content .execution-model .dept .role {background:#263e62;border:1px solid #5b82b7;padding:12px 8px;font-size:12px}
.page-content .execution-model .dept .client {background:#e6edf9;color:#162944;padding:12px 7px;font-size:14px;font-weight:600}
.page-content .execution-model .dept .line {height:27px;border-left:1px solid #779ddd;margin-left:50%}
.page-content .execution-model .long-line {height:24px;border-left:1px solid #7e9acb;margin-left:50%}
.page-content .execution-model .header-team {max-width:370px;margin:auto;text-align:center;background:#204a99;border:1px solid #638be8;padding:12px 9px;font-weight:550;font-size:14px}
.page-content .execution-model .detail-foot {font-size:11px;color:#8296b5;margin-top:24px;border-top:1px solid #273e5c;padding-top:16px}
.page-content .execution-model button { font:inherit; }
.page-content .execution-model button:focus-visible { outline:2px solid #a1bdff; outline-offset:4px; }
.page-content .execution-model .execution-panel[hidden] { display:none; }
.page-content .execution-model:not([data-enhanced]) .execution-tabs,
.page-content .execution-model:not([data-enhanced]) .close-detail { display:none; }
.page-content .execution-model:not([data-enhanced]) .details-slot { display:block; opacity:1; visibility:visible; }
.page-content .execution-model .execution-foundation strong { white-space:nowrap; }
.page-content .execution-model .caption { max-width:none; }
@media(max-width:800px) {
 .page-content .execution-model { padding:22px 18px; }
 .page-content .execution-model .section-head { flex-direction:column; align-items:flex-start; gap:4px; }
 .page-content .execution-model .mode-grid { grid-template-columns:1fr; }
 .page-content .execution-model .mode { min-height:106px; padding:18px; }
 .page-content .execution-model .mode .title { margin:3px 0; font-size:16px; }
 .page-content .execution-model .ai-foundation { flex-direction:column; align-items:flex-start; gap:8px; }
 .page-content .execution-model .ai-foundation .note { text-align:left; }
 .page-content .execution-model .flow-row { flex-direction:column; }
 .page-content .execution-model .flow-box { width:100%; min-width:0; }
 .page-content .execution-model .chevron { transform:rotate(90deg); }
 .page-content .execution-model .diagram { padding:22px 12px; min-height:0; }
 .page-content .execution-model .specialist-map,
 .page-content .execution-model .department-grid { grid-template-columns:1fr; gap:12px; }
 .page-content .execution-model .detail-bar h2 { font-size:18px; }
 .page-content .execution-model .close-detail { white-space:nowrap; }
}
