/* Shared presentation layer. Forms, routing and service behavior are unchanged. */
:root{--site-ink:#18212b;--site-muted:#586573;--site-line:#dfe5e8;--site-surface:#f6f8f9}
body{font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;-webkit-font-smoothing:antialiased}
main{min-width:0}main img{max-width:100%}main h1,main h2,main h3{text-wrap:balance}main p,main li{text-wrap:pretty}
body .brand-main,body .ir-main{max-width:1280px;margin-inline:auto;padding:48px 32px 64px}
body .page-intro-brand{width:100%;max-width:none;margin-bottom:36px}
body .page-intro-brand h1,body .diligence-page>.editorial-section>h1{font-size:clamp(34px,4vw,52px);line-height:1.1;letter-spacing:-.035em;max-width:1050px;margin:0 0 22px}
body .page-intro-brand>p:last-child{max-width:940px;font-size:18px;line-height:1.65}
body.trust-page .page-intro-brand h1,body.trust-page .page-intro-brand>p:last-child{max-width:none}
body .diligence-page>.editorial-section{max-width:1280px;margin-inline:auto;padding:48px 32px 64px}
body .diligence-page>.editorial-section>p{max-width:960px;line-height:1.7}
body .ir-hero h1{font-size:clamp(34px,3.5vw,46px);line-height:1.12;letter-spacing:-.035em}
body .ir-section{padding:44px 0}body .ir-main h2{font-size:clamp(25px,2.6vw,32px);letter-spacing:-.025em;line-height:1.18}
body :is(.vertical-card,.new-solutions article,.security-grid article,.guide-card,.ir-three article,.decisions article,.sample-evidence){border:1px solid var(--site-line);border-radius:18px;background:#fff;box-shadow:none}
body :is(.vertical-card,.security-grid article,.ir-three article,.decisions article){padding:26px}
body .illustrated-pages .team-panel{background:var(--site-surface);border:1px solid var(--site-line);border-radius:18px;padding:28px}
body .team-details>div{border-top:1px solid var(--site-line);padding-top:16px}
body .new-solutions{gap:24px}body .vertical-grid{gap:24px}
body .risk-reasons{grid-template-columns:repeat(2,minmax(0,1fr));gap:28px}
body .risk-reasons article{padding:24px;border:1px solid var(--site-line);border-radius:18px;background:#fff}
body .risk-guide h1{max-width:900px}body .risk-source{font-size:13px}
body .review-table-wrap{max-width:100%;overflow-x:auto;border-radius:14px}
body .sample-evidence{padding:28px}body .sample-evidence dt{font-size:13px;font-weight:650;margin-bottom:6px}body .sample-evidence dd{font-size:15px;line-height:1.65;margin-left:0;margin-bottom:20px}
.record-wordmark{display:block;width:116px;height:auto;margin:0 0 18px}
body .report-heading .record-wordmark{margin:0;width:110px}
body .brand-eyebrow,body .ir-eyebrow{font-size:11px;letter-spacing:.13em;line-height:1.5}
body .trial{gap:48px}body .trial input:not([type=checkbox]):not([type=radio]),body .trial textarea,body .trial select{border-radius:10px;font:inherit;min-width:0;max-width:100%}
body .trial label{line-height:1.5}body .trial textarea{min-height:120px}
body :is(a,button,input,select,textarea):focus-visible{outline:3px solid #00867d;outline-offset:4px}
body :is(a.button,a.secondary-button,a.clearance-secondary,a.homepage-secondary,a.portal-contact-button){display:inline-flex;align-items:center;justify-content:center;min-height:34px;padding:6px 13px;font-size:12px;line-height:1.25;text-align:center}
body .ir-small,body .record-disclosure{font-size:12px;line-height:1.6}
@media(max-width:800px){body .brand-main,body .ir-main,body .diligence-page>.editorial-section{padding:32px 24px 48px}body .trial{gap:28px}body .risk-reasons{gap:20px}}
@media(max-width:600px){body .brand-main,body .ir-main,body .diligence-page>.editorial-section{padding:28px 20px 40px}body .page-intro-brand h1,body .diligence-page>.editorial-section>h1,body .ir-hero h1{font-size:34px;letter-spacing:-.03em}body .page-intro-brand>p:last-child{font-size:17px}body .risk-reasons{grid-template-columns:1fr}body .ir-section{padding:30px 0}body :is(.vertical-card,.security-grid article,.ir-three article,.decisions article,.sample-evidence){padding:22px}body .illustrated-pages .team-panel{padding:22px}body .page-intro-brand{margin-bottom:28px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}body *,body *::before,body *::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}

/* Approved homepage artwork: proportional page-width presentation, no crop. */
body.executive-site .approved-defense-hero{width:100%;max-width:none;margin:0;padding:0;background:#03090c;color:#fff}
.defense-hero-image{position:relative;width:100%;max-width:1920px;margin-inline:auto}
body.executive-site .defense-hero-image>img{display:block;width:100%;height:auto;max-height:none;object-fit:contain}
.defense-mobile-copy{display:none}
@media(max-width:900px){.defense-mobile-copy{display:block;padding:24px 20px 32px;text-align:center}.defense-mobile-heading{font-size:clamp(26px,5vw,36px);font-weight:700;line-height:1.15;letter-spacing:-.025em;margin:0 0 16px}.defense-mobile-copy>p:not(.defense-mobile-heading){color:#c6d1d7;font-size:16px;line-height:1.6;max-width:600px;margin-inline:auto}.defense-mobile-copy .homepage-actions{justify-content:center}body:not(#button-theme-override) .defense-mobile-copy .homepage-actions>a{color:#ff7185!important;border-color:#ff7185!important;min-height:48px}}

/* Real calls to action beside the service introduction. */
.executive-site .homepage-services-heading{display:flex;align-items:center;justify-content:space-between;gap:28px}
.executive-site .homepage-services-heading h2{flex:1;min-width:0;margin:12px 0 24px;font-size:clamp(28px,3vw,40px)}
.executive-site .homepage-services-heading .decision-actions{flex:0 0 auto;display:flex;flex-wrap:wrap;justify-content:flex-end;gap:12px;margin:0 0 12px}
.executive-site .decision-actions>a{font-size:12px;padding:6px 13px}
@media(max-width:1100px){.executive-site .homepage-services-heading{align-items:flex-start;flex-direction:column;gap:0}.executive-site .homepage-services-heading .decision-actions{justify-content:flex-start;margin-bottom:24px}}
@media(max-width:480px){.executive-site .homepage-services-heading .decision-actions{width:100%;align-items:stretch}.executive-site .decision-actions>a{width:100%}}

/* Company introduction follows the full page content width. */
body .company-refresh .company-opening,
body .company-refresh .company-intro-copy{width:100%;max-width:none}
body .company-refresh .company-intro-copy>p,
body .company-refresh .company-intro-copy>ul{max-width:none}

/* Product introduction: readable paragraphs and explicit scope/workflow lists. */
body.product-page .product-introduction{width:100%;max-width:none;margin-bottom:32px}
body.product-page .product-introduction p,body.product-page .product-introduction li{line-height:1.7;color:#52606e}
body.product-page .product-introduction ul,body.product-page .product-introduction ol{padding-left:24px;margin:18px 0 24px}
body.product-page .product-introduction li{padding-left:4px;margin-bottom:10px}
body.product-page .product-introduction strong{color:#18212b}
body.product-page .product-introduction h2{font-size:26px;line-height:1.25;margin:30px 0 18px}

/* Product copy spans the available page content width. */
body.product-page .product-introduction :is(p,ul,ol,li,h2){max-width:none}
body.product-page .product-introduction>p{width:100%}
body.product-page .diligence-page>.editorial-section>h1{max-width:none}

/* Operating modes follow the full-width product copy. */
body.product-page .product-modes{width:100%;max-width:none;margin:32px 0}
body.product-page .product-modes :is(p,ul,li,h2){max-width:none}
body.product-page .product-modes p,body.product-page .product-modes li{line-height:1.7;color:#52606e}
body.product-page .product-modes ul{padding-left:24px;margin:18px 0 24px}
body.product-page .product-modes li{padding-left:4px;margin-bottom:12px}
body.product-page .product-modes strong{color:#18212b}

/* Product page: a consistent full-width editorial layout. */
body.product-page .diligence-page>.editorial-section{padding-top:44px}
body.product-page .product-introduction .diligence-lead{font-size:19px;line-height:1.65;margin:0 0 26px}
body.product-page .product-introduction p,body.product-page .product-modes p{margin:0 0 22px;font-size:17px}
body.product-page .product-introduction li,body.product-page .product-modes li{font-size:16px}
body.product-page .product-permissions,body.product-page .product-mode-list{list-style:none;padding:0;margin:24px 0 28px;border-top:1px solid #dfe5e8}
body.product-page .product-permissions li,body.product-page .product-mode-list li{margin:0;padding:18px 0;border-bottom:1px solid #dfe5e8}
body.product-page .product-permissions strong,body.product-page .product-mode-list strong{font-weight:650}
body.product-page .product-process{margin-top:38px;padding-top:32px;border-top:1px solid #dfe5e8}
body.product-page .product-process h2{margin:0 0 24px}
body.product-page .product-process-list{padding-left:30px;margin:0 0 26px}
body.product-page .product-process-list li{padding:12px 0 12px 12px;margin:0;border-bottom:1px solid #edf0f2}
body.product-page .product-process-list li::marker{color:#087f78;font-weight:650;font-variant-numeric:tabular-nums}
body.product-page .product-process>p:last-child{padding:18px 22px;background:#f5f7f8;border-left:3px solid #b91028;border-radius:0 10px 10px 0;font-size:16px;margin-bottom:0}
body.product-page .work-motion{margin:40px 0 48px;padding:28px;border-radius:20px;background:#f6f8f9;box-shadow:none}
body.product-page .work-heading h2{font-size:32px;margin:8px 0 16px}
body.product-page .work-brand img{display:block;width:180px;height:auto;margin:0 auto 8px}
body.product-page .work-scene{gap:20px;grid-template-columns:minmax(0,.85fr) minmax(0,1.65fr) minmax(0,1fr)}
body.product-page .work-core{min-width:0;box-shadow:none}
body.product-page .product-modes,body.product-page .support-review{border-top:1px solid #dfe5e8;padding-top:36px;margin:40px 0}
body.product-page .product-modes h2,body.product-page .support-review>h2{font-size:30px;line-height:1.2;margin:0 0 22px;letter-spacing:-.025em;text-wrap:pretty}
body.product-page .product-shared-rules{padding-left:22px;margin-bottom:0}
body.product-page .support-review>p,body.product-page .product-deployment p{max-width:none;font-size:16px;line-height:1.7}
body.product-page .review-table{width:100%;border-collapse:collapse;font-size:15px;line-height:1.6}
body.product-page .review-table th,body.product-page .review-table td{padding:16px 18px;vertical-align:top;text-align:left;border-bottom:1px solid #dfe5e8}
body.product-page .review-table thead{background:#f5f7f8}
body.product-page .review-table caption{text-align:left;padding:16px 18px;color:#586573;font-size:13px}
body.product-page .product-deployment{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:32px;margin:40px 0 28px}
body.product-page .product-deployment article{border-top:1px solid #dfe5e8;padding-top:24px}
body.product-page .product-deployment h2{font-size:23px;line-height:1.3;margin:0 0 14px}
body.product-page .product-reading{display:flex;flex-wrap:wrap;gap:16px 32px;border-top:1px solid #dfe5e8;padding-top:24px}
body.product-page .product-reading a{color:#a91027;font-size:15px;text-underline-offset:4px}
@media(max-width:800px){body.product-page .work-scene{grid-template-columns:1fr}body.product-page .work-results{grid-template-columns:1fr 1fr}body.product-page .work-network{flex-wrap:wrap}body.product-page .work-network span{flex:1 1 26%}}
@media(max-width:600px){body.product-page .diligence-page>.editorial-section{padding-top:28px}body.product-page .product-introduction .diligence-lead{font-size:18px}body.product-page .work-motion{padding:22px 16px;margin:30px 0}.product-page .review-table{min-width:640px}body.product-page .product-deployment{grid-template-columns:1fr;gap:20px}body.product-page .product-modes h2,body.product-page .support-review>h2,body.product-page .work-heading h2{font-size:26px}body.product-page .product-process{padding-top:26px;margin-top:28px}body.product-page .product-modes,body.product-page .support-review{padding-top:28px;margin:30px 0}}

/* Assessment introduction follows the page content width. */
body.assessment-page .assessment-introduction{width:100%;max-width:none;margin-bottom:32px}
body.assessment-page .assessment-introduction :is(p,li,ul,ol,h2){max-width:none}
body.assessment-page .assessment-introduction p,body.assessment-page .assessment-introduction li{color:#52606e;line-height:1.7}
body.assessment-page .assessment-introduction .diligence-lead{font-size:19px;margin:0 0 28px}
body.assessment-page .assessment-introduction h2{font-size:26px;line-height:1.25;margin:30px 0 18px}
body.assessment-page .assessment-introduction ul,body.assessment-page .assessment-introduction ol{padding-left:24px;margin:18px 0 26px}
body.assessment-page .assessment-introduction li{padding-left:4px;margin-bottom:12px}
body.assessment-page .assessment-introduction strong{color:#18212b}
@media(max-width:600px){body.assessment-page .assessment-introduction .diligence-lead{font-size:17px}body.assessment-page .assessment-introduction h2{font-size:23px}}

/* Four solution choices; procurement remains a supporting buyer guide. */
body .nav-submenu .solutions-buyer-guide{border-top:0;margin-top:0}
body.solutions-review .new-solutions article .solution-detail.button{margin-top:auto;padding-top:6px}
body.solutions-review .new-solutions article>div>p:last-of-type{margin-bottom:24px}
body.solutions-review .industry-heading>p:last-child:not(.brand-eyebrow){font-size:15px;line-height:1.65;color:#586573;max-width:960px;margin:0 0 24px}

/* Direct navigation, with support and search available in the footer. */
body .footer-links{display:flex;align-items:center;flex-wrap:wrap;gap:14px 24px}
body .footer-links a{font-size:13px;text-underline-offset:4px}
body.resources-page #more-guides .guide-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
body.solutions-review .procurement-guide-link{margin-top:auto;padding-top:14px}
body.solutions-review .procurement-guide-link a{color:#a9142c;font-size:14px;text-underline-offset:4px}
@media(max-width:700px){body.resources-page #more-guides .guide-grid{grid-template-columns:1fr}body .footer-links{gap:12px 20px}}

/* Dropdown group headings share the brand accent. */
body .nav-solutions .nav-submenu .nav-group-label{color:#982137}
