*{box-sizing:border-box}:root{--ink: #1f2a30;--muted: #475760;--line: #e1e8ec;--blue: #10617b;--blue-2: #1879d5;--shadow: 0 2px 8px rgba(16, 97, 123, .06);--shadow-hover: 0 14px 34px rgba(16, 97, 123, .16)}html{-webkit-text-size-adjust:100%;text-size-adjust:100%;scroll-behavior:smooth;overflow-x:hidden}body{margin:0;min-height:100%;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;color:var(--ink);background:radial-gradient(1200px 600px at 50% -10%,#e8f0f4,#f6f8f9 55%,#f6f8f9);overflow-x:hidden}a{color:inherit}.story-page main>section{position:relative;scroll-margin-top:74px}.splash-hero{position:relative;display:grid;align-items:center;min-height:100svh;padding:112px 24px 104px;overflow:hidden;color:var(--ink);background:transparent;border-bottom:0}.hero-scroll-cue{position:absolute;left:50%;bottom:34px;z-index:2;width:44px;height:44px;border-radius:999px;transform:translate(-50%)}.hero-scroll-cue:before{content:"";position:absolute;left:50%;top:11px;width:18px;height:18px;border-right:2px solid rgba(16,97,123,.5);border-bottom:2px solid rgba(16,97,123,.5);transform:translate(-50%) rotate(45deg)}.hero-scroll-cue:hover:before,.hero-scroll-cue:focus-visible:before{border-color:var(--blue)}.hero-scroll-cue:focus-visible{outline:2px solid var(--blue-2);outline-offset:3px}.hero-content{position:relative;z-index:1;width:min(980px,calc(100% - 40px));margin:0 auto;text-align:center}.eyebrow{margin:0 0 12px;color:var(--blue-2);font-size:12px;font-weight:800;letter-spacing:.12em;text-transform:uppercase}h1,h2,h3,p{-webkit-hyphens:none;hyphens:none;overflow-wrap:normal;word-break:normal}h1{margin:0;font-size:clamp(38px,6.5vw,72px);line-height:1;letter-spacing:0;color:var(--blue)}h2{margin:0 0 18px;font-size:clamp(26px,3.4vw,44px);line-height:1.08;letter-spacing:0;color:var(--blue)}h3{margin:0 0 10px;font-size:19px;line-height:1.2;letter-spacing:0;color:var(--blue)}.hero-lede{max-width:820px;margin:16px auto 0;font-size:clamp(16px,1.7vw,20px);line-height:1.45;color:var(--muted)}.primary-link{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:10px 16px;border-radius:7px;color:#fff;background:var(--blue-2);border:1px solid var(--blue-2);font-size:14px;font-weight:800;text-decoration:none;white-space:nowrap;transition:transform .18s ease,background .18s ease,border-color .18s ease}.primary-link:hover{transform:translateY(-2px);background:var(--blue);border-color:var(--blue)}.intro-band,.story-band,.tools-band{width:min(1120px,calc(100% - 40px));margin:0 auto}.intro-band{padding:76px 0 38px}.section-copy{max-width:920px;margin:0 auto;text-align:center}.section-copy p:not(.eyebrow){margin:0;color:var(--muted);font-size:16px;line-height:1.65}.concept-grid,.insight-grid,.tool-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.concept-grid{margin-top:22px}.concept-tile,.insight-card{background:#ffffff94;border:1px solid rgba(183,205,213,.78);border-left:4px solid rgba(16,97,123,.36);border-radius:8px}.concept-tile{padding:18px}.concept-tile p,.insight-card p,.tool-card p,.cgfr-callout p{margin:0;color:var(--muted);font-size:14px;line-height:1.55}.story-band{padding:52px 0}.insight-grid{grid-template-columns:repeat(4,minmax(0,1fr));margin-top:22px}.insight-card{overflow:hidden;padding:18px}.insight-card h3,.insight-card p{padding-left:0;padding-right:0}.insight-card h3{padding-top:0}.insight-card p{padding-bottom:0}.tools-band{padding:76px 0 64px}.sci-story .intro-band,.cgfr-story .intro-band{padding:58px 0 30px}.sci-story .story-band{padding:42px 0}.sci-story .tools-band,.cgfr-story .single-cta{padding:30px 0 56px}.sci-story .concept-grid,.sci-story .insight-grid,.sci-story .tool-grid{margin-top:16px}.cgfr-story .insight-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.cgfr-tool-grid{grid-template-columns:minmax(0,calc((100% - 28px) / 3));justify-content:center}.tool-grid{margin-top:22px}.tool-card{display:flex;flex-direction:column;overflow:hidden;color:inherit;background:#fff;border:1px solid var(--line);border-radius:8px;box-shadow:var(--shadow);text-decoration:none;transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease}.tool-card:hover,.tool-card:focus-visible{transform:translateY(-3px);border-color:#b7cdd5;box-shadow:var(--shadow-hover);outline:none}.tool-card-body{padding:18px}.tool-card-art{height:108px;overflow:hidden;background-position:center;background-repeat:no-repeat;border-bottom:1px solid var(--line)}.art-explore{background-image:url(../img/explorer-card.jpg);background-size:cover}.art-generator{background-color:#fff;background-image:url(../img/generator-card.jpg);background-size:auto 108%;background-origin:content-box;padding:12px 18px}.art-cluster{background-color:#fff;background-image:url(../img/cluster-card.png);background-size:auto 86%}.art-cgfr{background-color:#fff;background-image:url(../img/cgfr-card.png);background-size:cover}.tool-card h3{color:var(--blue)}.tool-cta{display:inline-block;margin-top:10px;color:var(--blue-2);font-size:14px;font-weight:900}.cgfr-callout{margin-top:28px;padding:18px;display:flex;align-items:center;justify-content:space-between;gap:24px;color:var(--ink);background:#fff;border:1px solid var(--line);border-radius:8px;box-shadow:var(--shadow)}.cgfr-callout .eyebrow{color:var(--blue-2);font-size:10px}.cgfr-callout h3{margin-bottom:6px;font-size:23px}.cgfr-callout p{max-width:620px;color:var(--muted)}.citations-card{width:min(820px,100%);margin:28px auto 0;padding:18px 22px;background:#fff;border:1px solid var(--line);border-radius:8px;box-shadow:var(--shadow)}.citations-head{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:8px;margin:0 0 14px}.citations-intro{margin:0;color:var(--muted);font-size:15px;text-align:center}.citation-list{margin:0;padding-left:24px;display:flex;flex-direction:column;gap:10px}.citation{color:var(--ink);font-size:14.5px;line-height:1.45}.citation::marker{color:var(--blue);font-weight:700}.citation a,.data-source a{color:var(--blue-2);font-weight:700;text-decoration:none}.citation a:hover,.data-source a:hover{text-decoration:underline}.data-source{margin:14px 0 0;padding-top:12px;border-top:1px solid var(--line);color:var(--muted);font-size:14.5px;line-height:1.45;text-align:center}.bibtex-btn{display:inline-flex;align-items:center;gap:5px;min-height:28px;padding:3px 10px;color:var(--blue);background:#fff;border:1px solid #c8d4d9;border-radius:999px;font:inherit;font-size:12px;font-weight:800;cursor:pointer}.bibtex-btn:hover{color:#fff;background:var(--blue);border-color:var(--blue)}.ratio-demo{margin:22px auto 0;max-width:640px;padding:20px;background:#ffffff94;border:1px solid rgba(183,205,213,.78);border-radius:8px}.ratio-row,.ratio-result{display:flex;align-items:center;justify-content:space-between;gap:18px}.ratio-row span,.ratio-result span{color:var(--muted);font-size:14px;font-weight:800}.ratio-row strong{display:inline-flex;align-items:center;justify-content:flex-end;color:var(--blue);font-size:32px;line-height:1}.ratio-op{display:inline-block;min-width:44px;margin-right:10px;color:var(--muted);font-size:42px;line-height:1;text-align:center;transform-origin:center}.ratio-divide{transform:translateY(-1px) scale(1.32)}.ratio-rule{height:2px;margin:16px 0;background:var(--line)}.ratio-result strong{color:var(--blue);font-size:44px;line-height:1}.ratio-equals{transform:scale(1.42)}.reveal-ready .reveal{opacity:0;transform:translateY(28px);transition:opacity .7s ease,transform .7s ease}.reveal-ready .reveal.is-visible{opacity:1;transform:translateY(0)}@media (prefers-reduced-motion: reduce){html{scroll-behavior:auto}.reveal-ready .reveal{opacity:1;transform:none;transition:none}.primary-link,.tool-card{transition:none}}@media (max-width: 1000px){.concept-grid,.tool-grid,.insight-grid,.cgfr-story .insight-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.cgfr-tool-grid{grid-template-columns:minmax(0,calc((100% - 14px)/2))}}@media (max-width: 720px){.splash-hero{min-height:100svh;padding:88px 18px}.hero-scroll-cue{bottom:28px}.hero-scroll-cue:before{width:16px;height:16px}h1{font-size:clamp(36px,12vw,52px)}h2{font-size:clamp(25px,8vw,34px)}.intro-band,.story-band,.tools-band{width:min(100% - 28px,1120px)}.concept-grid,.insight-grid,.cgfr-story .insight-grid,.tool-grid{grid-template-columns:1fr}.hero-content{width:100%}.hero-lede{font-size:15px}.cgfr-callout{align-items:stretch;flex-direction:column}.ratio-demo{padding:22px}.ratio-row strong{font-size:28px}.ratio-result strong{font-size:38px}}@media (max-width: 420px){.primary-link{width:100%}}
