/* Purpose-led feature directory: same content and structure at every width. */
:root { --navy:#101f4c; --blue:#2058ce; --body:#47536a; }
body { background:#fff; }
html { scroll-padding-top:180px; }
.purpose-page { width:100%; }
.purpose-intro,.purpose-chapter { width:min(1050px,calc(100% - 64px)); margin-inline:auto; }
.purpose-intro { text-align:center; padding:64px 0 38px; }
.purpose-eyebrow { color:var(--blue); font-weight:700; font-size:16px; margin-bottom:18px; }
.purpose-intro h1 { font-size:clamp(28px,3vw,42px); line-height:1.55; letter-spacing:-.035em; margin-bottom:20px; }
.purpose-intro > p:last-child { max-width:840px; margin:auto; font-size:17px; line-height:1.9; }
.purpose-nav { position:sticky; top:84px; background:#fff; z-index:15; }
.purpose-nav > div { width:min(1050px,calc(100% - 64px)); margin:auto; display:grid; grid-template-columns:repeat(4,1fr); border-bottom:1px solid #dce4ef; }
.purpose-nav a { text-align:center; color:var(--navy); padding:22px 8px; font-size:17px; font-weight:700; border-bottom:3px solid transparent; }
.purpose-nav a:hover,.purpose-nav a:focus-visible { color:var(--blue); border-bottom-color:var(--blue); }
.purpose-chapter { padding:48px 0 56px; border-bottom:1px solid #dce4ef; scroll-margin-top:8px; }
.purpose-heading > span { color:#859cc6; font-size:17px; font-weight:700; }
.purpose-heading h2 { margin:10px 0 14px; font-size:38px; line-height:1.4; }
.purpose-heading p { font-size:18px; margin-bottom:28px; }
.purpose-layout { display:grid; grid-template-columns:40% minmax(0,1fr); gap:40px; align-items:start; }
.purpose-photo { margin:0; position:sticky; top:180px; }
.purpose-photo img { width:100%; height:510px; object-fit:cover; border-radius:16px; }
#insight .purpose-photo img { object-fit:contain; background:#f5f8fc; }
.purpose-item { padding:22px 0; border-bottom:1px solid #dce4ef; }
.purpose-item:first-child { padding-top:0; }
.purpose-item:last-child { border-bottom:0; }
.purpose-item h3 { font-size:21px; line-height:1.65; margin:0 0 10px; }
.purpose-item > p { font-size:17px; line-height:1.85; margin:0 0 12px; }
.purpose-detail .feature-card { margin-top:14px; padding:18px; border:0; box-shadow:none; background:#f5f8fc; border-radius:10px; min-height:0; }
.purpose-detail .feature-meta { margin-bottom:14px; }
.purpose-detail .feature-card > .demo,.purpose-detail .feature-card > .capability-card-demo { margin-top:12px; }
.purpose-detail .feature-card img { max-height:300px; object-fit:contain; }
.purpose-detail iframe { width:100%; max-width:100%; }
.purpose-page .bottom-cta { width:min(1050px,calc(100% - 64px)); margin:48px auto; }
:focus-visible { outline:3px solid var(--blue); outline-offset:4px; }
@media(max-width:1200px) { .purpose-nav { top:128px; } html { scroll-padding-top:210px; } .purpose-photo { top:210px; } }
@media(max-width:760px) {
 .purpose-intro,.purpose-chapter,.purpose-nav > div,.purpose-page .bottom-cta { width:calc(100% - 40px); }
 .purpose-intro { padding:36px 0 24px; }
 .purpose-intro h1 { font-size:28px; }
 .purpose-intro > p:last-child { font-size:16px; text-align:left; }
 .purpose-nav { top:114px; }
 .purpose-nav a { font-size:13px; padding:16px 2px; }
 .purpose-chapter { padding:34px 0; }
 .purpose-heading h2 { font-size:30px; }
 .purpose-heading p { font-size:16px; }
 .purpose-layout { grid-template-columns:minmax(0,1fr); gap:26px; }
 .purpose-photo { position:static; }
 .purpose-photo img { height:260px; object-position:center 40%; }
 .purpose-item h3 { font-size:20px; }
 .purpose-item > p { font-size:16px; }
 .purpose-detail .feature-card { padding:14px; }
 .purpose-page .bottom-cta { padding:24px; }
}
@media(prefers-reduced-motion:reduce) { html { scroll-behavior:auto; } }
.purpose-thumb { float:left; width:120px; height:118px; margin:0 20px 14px 0; object-fit:cover; border-radius:12px; }
.purpose-item { display:flow-root; }
.purpose-detail { clear:both; }
@media(max-width:760px) { .purpose-thumb { width:86px; height:88px; margin-right:14px; } }
.purpose-nav a[aria-current="location"] { color:var(--blue); border-bottom-color:var(--blue); }
