@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600&family=Libre+Caslon+Display&display=swap');
:root{--paper:#faf9f6;--ink:#09202b;--muted:#59656a;--gold:#b68a49;--navy:#071a24;--line:#d8dcd9;--display:'Libre Caslon Display',Georgia,serif;--body:'DM Sans',Arial,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:80px}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.65 var(--body)}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit;cursor:pointer}a{color:inherit;text-decoration:none}button:focus-visible,a:focus-visible{outline:3px solid #648fac;outline-offset:5px}.shell{width:min(1200px,calc(100% - 112px));margin-inline:auto}.review{background:#e8ecee;color:#20333d;padding:9px 28px;display:flex;align-items:center;justify-content:center;gap:26px;font-size:12px}.review nav{display:flex;gap:4px}.review button{border:0;background:transparent;padding:8px 14px;font-size:12px}.review button[aria-pressed=true]{background:#fff;border-radius:4px}.masthead{height:124px;display:flex;align-items:center;justify-content:space-between;gap:32px}.brand{display:grid;text-align:center;line-height:1.15;flex-shrink:0}.brand>span{font:30px Georgia,serif;letter-spacing:4px}.brand small{font-size:11px;color:#8e672e;margin:4px 0}.brand em{font-size:10px;font-style:normal;letter-spacing:.3px}.main-nav,.access{display:flex;align-items:center;gap:25px;font-size:13px}.access>button{background:none;border:0;color:inherit;font-size:13px}.button{display:inline-flex;align-items:center;justify-content:center;background:var(--ink);color:#fff;padding:14px 24px;border:0;font-size:14px;font-weight:500}.hero{text-align:center;padding-top:64px}.intro{font-size:14px;margin:0 0 24px;color:var(--muted)}h1,h2{font-family:var(--display);font-weight:400;line-height:1.03;letter-spacing:-1.6px;margin:0}h1{font-size:clamp(52px,6.2vw,88px)}.lead{font-size:18px;line-height:1.7;color:var(--muted);margin:27px auto 30px;max-width:650px}.hero-screen{margin:60px 0 0}.image-open{display:block;border:0;background:var(--navy);padding:0;width:100%;line-height:0}.image-open img{width:100%;height:auto;display:block}.hero-screen .image-open{box-shadow:0 24px 64px #0819231c}figcaption{display:flex;justify-content:space-between;gap:18px;text-align:left;font-size:12px;color:var(--muted);padding:15px 0}figure{margin:0}.audiences{display:none}.product-section{padding-top:125px}.section-title{text-align:center;max-width:730px;margin:0 auto 42px}.section-title>p:first-child{font-size:14px;color:var(--muted);margin:0 0 22px}h2{font-size:56px}.description{max-width:600px;margin:25px auto;color:var(--muted)}.product-tabs{display:grid;grid-template-columns:repeat(3,1fr);border-bottom:1px solid var(--line);margin-bottom:25px}.product-tabs button{color:var(--muted);border:0;background:transparent;padding:18px 8px;border-bottom:2px solid transparent;font-size:15px}.product-tabs button[aria-selected=true]{color:var(--ink);border-color:var(--gold)}.product-screen .image-open{aspect-ratio:1586/992;display:flex;align-items:center}.product-screen img{max-height:100%;object-fit:contain}.verticals{display:grid;grid-template-columns:1fr 1fr;gap:100px;padding-top:104px;padding-bottom:110px}.verticals h2{font-size:44px;line-height:1.13;letter-spacing:-1px}.sector{font-size:15px;margin:0 0 24px;color:#8e672e}.verticals article>p:not(.sector){color:var(--muted);margin-top:24px}.verticals ul{padding:0;list-style:none;color:var(--muted);font-size:14px;margin:26px 0}.verticals li{margin:10px 0}.text-link{border:0;padding:0 0 4px;background:none;color:inherit;border-bottom:1px solid var(--gold);font-size:14px}.method{background:var(--navy);color:#f5f3ed;padding:85px 0}.method-inner{display:grid;grid-template-columns:1fr 1fr;gap:100px;align-items:center}.method h2{font-size:50px}.method p{color:#b8c4cb;margin:0 0 20px}.closing{text-align:center;padding-block:105px}.closing>p:first-child{font-size:14px;color:var(--muted);margin-bottom:24px}.closing>.text-link{display:block;margin:26px auto 0}footer{border-top:1px solid var(--line);display:flex;justify-content:space-between;gap:24px;padding-block:28px;font-size:12px;color:var(--muted)}dialog{border:0;padding:28px;background:var(--paper);color:var(--ink);max-width:min(1500px,96vw);max-height:94vh}dialog::backdrop{background:#021018df}dialog img{display:block;max-width:100%;max-height:78vh;object-fit:contain;margin:auto}dialog p{font-size:14px}dialog .close{display:block;margin:0 0 18px auto;background:none;border:0;color:inherit}#contact{width:540px;padding:40px}#contact h2{font-size:36px}.direction-b{background:#071a24;color:#f6f5ef;--ink:#f6f5ef;--muted:#aebfc7;--line:#29404b}.direction-b .button{background:#c5a16b;color:#071a24}.direction-b .brand small,.direction-b .sector{color:#c5a16b}.direction-b .hero{padding-top:42px}.direction-b h1{font-family:var(--body);font-size:72px;line-height:1.09;letter-spacing:-3px;font-weight:500}.direction-b .hero-screen{margin-top:48px}.direction-b .product-section{padding-top:100px}.direction-b .method{background:#122d3a}.direction-b .closing{background:transparent}.direction-b dialog{background:#102b38}.direction-c .hero{padding-top:46px}.direction-c h1{font-size:78px}.direction-c .hero-cta{display:none}.direction-c .audiences{display:grid;grid-template-columns:1fr 1fr;gap:32px;max-width:900px;margin:38px auto 0;text-align:left}.direction-c .audiences a{padding:25px 28px;background:#e9edf0}.direction-c .audiences span{display:block;font-size:13px}.direction-c .audiences strong{display:block;font-family:var(--display);font-size:29px;font-weight:400;line-height:1.2;margin:9px 0 15px}.direction-c .hero-screen{margin-top:42px}.direction-c .product-section{padding-top:90px}.direction-c .verticals{border-top:1px solid var(--line);margin-top:70px;padding-top:65px}.direction-c .button{background:#a77b3d}.direction-c .method{background:#e9edf0;color:var(--ink)}.direction-c .method p{color:var(--muted)}
@media(max-width:1000px){.shell{width:calc(100% - 64px)}.main-nav{gap:16px}.access{gap:12px}.masthead{gap:20px}.verticals,.method-inner{gap:48px}.main-nav a:last-child{display:none}.verticals h2{font-size:38px}}
@media(max-width:700px){.shell{width:calc(100% - 36px)}.review{padding:7px 8px;gap:5px}.review>span{display:none}.review button{padding:10px 9px;font-size:11px}.masthead{height:auto;padding-block:25px;flex-wrap:wrap;gap:20px}.brand>span{font-size:23px}.brand em{font-size:9px}.main-nav{order:3;width:100%;justify-content:space-between;font-size:13px}.main-nav a:last-child{display:block}.access>button{display:none}.access .button{padding:11px 14px;font-size:12px}.hero{padding-top:36px}h1,.direction-b h1,.direction-c h1{font-size:48px;letter-spacing:-1.5px}.intro{font-size:12px}.lead{font-size:16px}.lead br{display:none}.hero-screen{margin-top:36px}.product-section{padding-top:65px}h2{font-size:40px}.section-title{margin-bottom:25px}.description{font-size:16px}figcaption{font-size:10px}.product-tabs button{font-size:12px;min-height:48px}.verticals,.method-inner{grid-template-columns:1fr;gap:54px}.verticals{padding-block:62px}.method{padding-block:58px}.method h2{font-size:42px}.closing{padding-block:65px}footer{flex-direction:column;gap:8px}.direction-c .audiences{gap:12px}.direction-c .audiences a{padding:18px 14px}.direction-c .audiences strong{font-size:24px}.direction-c .audiences span{font-size:11px}.direction-c .audiences span:last-child{display:none}}
.masthead{height:104px}.hero{padding-top:24px}.intro{margin-bottom:16px}h1{font-size:clamp(48px,5.5vw,74px)}.lead{margin:20px auto 22px;max-width:720px;font-size:17px}.hero-screen{margin-top:36px}.direction-b .hero,.direction-c .hero{padding-top:24px}.direction-b h1{font-size:64px}.direction-c h1{font-size:72px}
@media(max-width:700px){.masthead{height:auto}.hero{padding-top:24px}h1,.direction-b h1,.direction-c h1{font-size:45px}.lead{font-size:16px}.hero-screen{margin-top:28px}}
.vertical-preview,.extended-verticals{display:none}.vertical-copy>p:not(.sector){color:var(--muted);margin-top:24px}.direction-c .verticals{display:block;border:0;margin-top:0;padding-top:80px;padding-bottom:0}.direction-c .verticals article,.extended-verticals article{padding-bottom:90px;scroll-margin-top:30px}.direction-c .vertical-copy{display:grid;grid-template-columns:1fr 1fr;column-gap:80px;align-items:start;margin-bottom:32px}.direction-c .vertical-copy .sector{grid-column:1 / -1;margin-bottom:16px}.direction-c .vertical-copy h2{grid-column:1;grid-row:2 / span 3;font-size:48px;line-height:1.1}.direction-c .vertical-copy>p:not(.sector){grid-column:2;margin:0 0 15px}.direction-c .vertical-copy ul{grid-column:2;margin:0 0 18px;list-style:none;padding:0;font-size:14px;color:var(--muted)}.direction-c .vertical-copy li{margin:8px 0}.direction-c .vertical-copy .text-link{display:none}.direction-c .vertical-preview{display:block}.direction-c .extended-verticals{display:block;padding-top:20px}.application-nav{display:flex;justify-content:center;gap:35px;margin:35px 0 65px;font-size:14px}.application-nav a{padding-bottom:6px;border-bottom:1px solid var(--gold)}.extended-verticals .section-title{margin-bottom:0}
@media(max-width:700px){.direction-c .vertical-copy{display:block;margin-bottom:24px}.direction-c .vertical-copy h2{font-size:38px;margin-bottom:22px}.direction-c .verticals article,.extended-verticals article{padding-bottom:55px}.application-nav{gap:16px;flex-wrap:wrap;margin-bottom:42px;font-size:13px}.direction-c .verticals{padding-top:55px}}
.genealogy-copy{margin:55px auto 28px;text-align:center;max-width:700px}.genealogy-copy h3{font:400 36px/1.15 var(--display);margin:0 0 16px}.genealogy-copy p{color:var(--muted);margin:0}.application-nav{flex-wrap:wrap}.direction-c #product>.product-tabs,.direction-c #product>.product-screen{display:none}.concept-note{color:var(--muted);font-size:13px;margin:0}
.review[hidden]{display:none}
/* C fine tuning: preserve the composition and all approved screenshot assets. */
.direction-c h1,.direction-c h2,.direction-c h3{text-wrap:balance}
.direction-c .lead,.direction-c .description{text-wrap:pretty}
.direction-c .main-nav a:hover,.direction-c .access>button:hover{color:#8e672e}
.direction-c .audiences a{display:flex;flex-direction:column}
.direction-c .audiences strong{flex:1}
.direction-c .audiences a:hover{background:#e1e7eb}
.direction-c .button:hover{filter:brightness(.94)}
.direction-c figcaption{line-height:1.5;padding-top:14px;padding-bottom:0}
.direction-c .vertical-copy>p:not(.sector){max-width:54ch;line-height:1.75}
.direction-c .vertical-copy li{line-height:1.6;margin:9px 0}
.direction-c .method-inner{gap:80px}
.direction-c .method p{max-width:55ch}
@media(min-width:701px) and (max-width:1100px){.direction-c .masthead{height:auto;min-height:112px;flex-wrap:wrap;padding-block:22px;gap:16px}.direction-c .main-nav{order:3;width:100%;justify-content:center;gap:28px}.direction-c .main-nav a:last-child{display:block}}
@media(max-width:700px){.direction-c .audiences strong{min-height:0}.direction-c .method-inner{gap:28px}.direction-c .main-nav{justify-content:space-between;column-gap:12px}.direction-c .main-nav a{font-size:12px}.direction-c .section-title h2{font-size:38px}.direction-c .intro{max-width:30ch;margin-inline:auto}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
/* C refinement: shared frames, quieter spacing, existing palette and type retained. */
.direction-c .image-open{border-radius:4px;overflow:hidden;box-shadow:0 12px 32px #071a2412}
.direction-c .audiences a{border-radius:3px}
.direction-c .main-nav a{padding-block:10px}
.case-study{padding-top:88px;padding-bottom:0}
.force-workspace{background:var(--navy);color:#edf1ef;border-radius:4px;overflow:hidden;box-shadow:0 12px 32px #071a2412}
.force-workspace>header{padding:28px 32px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #29404b;gap:20px}
.force-workspace small{color:#c7a66e;font-size:12px}.force-workspace h3{font:400 38px/1.2 var(--display);margin:8px 0}.force-workspace header p{margin:0;color:#adbdc4;font-size:13px}
.source-visual{display:grid;grid-template-columns:1.35fr 1fr;gap:32px;padding:32px;align-items:start}.source-visual img{width:100%;height:auto;display:block}.source-visual h4{font-size:18px;font-weight:500;margin:0 0 18px}.source-visual p{font-size:14px;color:#b9c6cd}.source-visual a{color:#b0d9e5;font-size:12px;text-decoration:underline}
@media(max-width:700px){.source-visual{grid-template-columns:1fr;padding:22px;gap:24px}}
.force-status{font-size:12px;color:#c7a66e}.force-grid{display:grid;grid-template-columns:1fr 1fr;gap:48px;padding:32px}.force-grid h4{font-size:15px;margin:0 0 22px;font-weight:500}.movement{margin-bottom:26px}.movement span{color:#c7a66e;font-size:12px;display:block}.movement strong{display:block;font-size:17px;line-height:1.5;font-weight:500;margin:6px 0}.movement p,.force-reading p{font-size:14px;color:#b9c6cd;margin:8px 0}.force-grid a{font-size:12px;color:#b0d9e5;text-decoration:underline;text-underline-offset:4px}.force-reading{margin-top:32px;padding-top:22px;border-top:1px solid #29404b}.force-reading h4{margin-bottom:12px}.force-workspace footer{border-color:#29404b;padding:20px 32px;color:#adbdc4;font-size:11px}
@media(max-width:700px){.force-grid{grid-template-columns:1fr;padding:22px;gap:22px}.force-workspace>header{padding:22px;align-items:flex-start}.force-status{max-width:80px}.force-workspace footer{padding:20px 22px}.movement strong{font-size:16px}}
.case-study .section-title{max-width:810px}
.case-disclosure{font-size:13px;color:var(--muted);max-width:630px;margin:24px auto 0}
.case-nav{display:flex;justify-content:center;gap:36px;flex-wrap:wrap;margin:36px 0 70px}
.case-nav a{padding:9px 0;color:var(--ink);border-bottom:1px solid var(--gold);font-size:14px}
.case-chapter{scroll-margin-top:32px;margin-bottom:80px}.case-chapter:last-child{margin-bottom:0}
.case-heading{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center;margin-bottom:30px}
.case-date{font-size:14px;color:#8e672e;margin:0 0 16px}
.case-heading h3,.case-conclusion h3{font:400 46px/1.1 var(--display);letter-spacing:-.7px;margin:0}
.case-heading>p{color:var(--muted);margin:0;max-width:540px}
.case-evidence{display:grid;grid-template-columns:1fr 1fr;gap:64px;margin-top:18px}
.case-evidence h4{font-size:14px;font-weight:500;margin:0 0 10px}
.case-evidence p{font-size:14px;color:var(--muted);margin:0;line-height:1.75}
.case-sources{display:flex;flex-wrap:wrap;gap:8px 20px;margin-top:16px}
.case-sources a{font-size:12px;text-decoration:underline;text-underline-offset:4px;color:var(--ink)}
.case-conclusion{max-width:800px;margin:0 auto 44px;text-align:center}
.case-conclusion p{color:var(--muted);max-width:640px;margin:24px auto 0}
.case-coverage{background:#edf0f0;padding:22px 28px;border-radius:4px;font-size:14px}
.case-coverage summary{cursor:pointer;font-weight:500;min-height:28px}
.coverage-table{overflow-x:auto;margin-top:22px}
.coverage-table table{border-collapse:collapse;width:100%;text-align:left;font-size:13px}
.coverage-table th,.coverage-table td{padding:12px 16px 12px 0;vertical-align:top;border-bottom:1px solid var(--line)}
.coverage-table td{color:var(--muted)}
@media(max-width:1000px){.main-nav{gap:12px}.masthead{gap:16px}.case-heading{gap:40px}.case-evidence{gap:36px}}
@media(max-width:700px){.main-nav{flex-wrap:wrap;justify-content:flex-start;column-gap:22px;row-gap:0}.case-study{padding-top:56px;padding-bottom:40px}.case-heading,.case-evidence{grid-template-columns:1fr;gap:22px}.case-heading h3,.case-conclusion h3{font-size:36px}.case-chapter{margin-bottom:58px}.case-nav{gap:12px 22px;margin:26px 0 40px}.case-nav a{font-size:13px}.case-coverage{padding:20px}.coverage-table table{min-width:580px}.case-disclosure{font-size:12px}}
