@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;500;600;700;800&display=swap');:root{--ink:#16273b;--teal:#006b68;--mint:#b4e4d1;--paper:#f5f6f2;--orange:#db8753;--line:#d2ddd9}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);font-family:'DM Sans',Arial,sans-serif;background:#fff}a{color:inherit}img{max-width:100%;display:block}button{font:inherit}.skip{position:absolute;top:-100px;left:20px;background:white;padding:12px;z-index:100}.skip:focus{top:0}.site-header{height:90px;padding:0 6%;display:flex;align-items:center;justify-content:space-between;background:white;position:relative;z-index:3}.brand img{width:185px;height:auto}nav{display:flex;align-items:center;gap:36px}nav a{text-decoration:none;font-size:14px;font-weight:600}nav a:hover{color:var(--teal)}.nav-contact{padding:13px 19px;border:1px solid var(--teal);color:var(--teal)}.nav-contact span,.button span{margin-left:20px}.menu-toggle{display:none}.hero{min-height:640px;background:#113438;color:white;display:grid;grid-template-columns:1fr 47%;position:relative}.hero-text{align-self:center;padding:90px 12% 100px 13%;position:relative;z-index:1}.eyebrow{text-transform:uppercase;font-size:11px;letter-spacing:.2em;font-weight:700;color:var(--teal);margin:0 0 25px}.eyebrow span{display:block;margin-top:10px;color:#89a9a0}.eyebrow.light{color:#a8dfcd}.hero h1,.section h2{font-family:Manrope,Arial,sans-serif;font-weight:600;letter-spacing:-.045em;line-height:1.08;margin:0}.hero h1{font-size:clamp(44px,5.4vw,78px);max-width:690px}.lead{font-size:20px;line-height:1.6;color:#d3e7df;max-width:610px;margin:30px 0}.hero-art{overflow:hidden;min-height:450px}.hero-art img{width:100%;height:100%;object-fit:cover}.hero-index{position:absolute;bottom:26px;left:6%;font-size:10px;letter-spacing:.18em;color:#a2c9ba}.button{display:inline-flex;justify-content:space-between;align-items:center;padding:16px 20px;text-decoration:none;font-weight:700;font-size:13px;gap:20px}.button-white{background:white;color:var(--ink)}.button-outline{border:1px solid #c4e1d7;color:white}.button:hover{opacity:.83}.section{padding:105px 7%}.section-head{display:grid;grid-template-columns:24% 1fr;gap:5%;margin-bottom:60px}.section h2{font-size:clamp(35px,4.5vw,61px);max-width:870px}.intro{font-size:19px;line-height:1.7;max-width:740px;color:#526667;margin:25px 0 0}.info-grid,.science-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:30px}.info-card{border-top:1px solid #a8bbb5;padding:24px 0}.number{font-size:11px;color:var(--teal);font-weight:700}.info-card h3{font-size:21px;letter-spacing:-.03em;margin:35px 0 15px}.info-card p,.person p{font-size:15px;line-height:1.65;color:#586b68}.statement{margin-top:65px;padding:55px;background:#e5efea;display:grid;grid-template-columns:1fr .7fr;gap:70px;align-items:end}.statement h2{font-size:clamp(30px,3.6vw,48px)}.statement .eyebrow{color:var(--teal)}.statement p:last-child{line-height:1.7;color:#506762}.science{background:var(--paper)}.science-grid .info-card{border-top:3px solid var(--teal)}.science-note{display:flex;gap:20px;margin-top:35px;color:#667a73;border-top:1px solid var(--line);font-size:13px;line-height:1.5;padding-top:22px}.science-note span{color:var(--teal);font-size:22px}.programs{background:#173e3e;color:white}.programs .intro{color:#d3e7e1}.areas{display:grid;grid-template-columns:repeat(3,1fr);gap:25px}.areas article{border-top:1px solid #83a9a0;padding:25px 0 30px}.areas span{font-size:11px;color:#a8dfcd}.areas h3{font-family:Manrope,Arial,sans-serif;font-weight:500;font-size:31px;letter-spacing:-.04em;margin:48px 0 10px}.areas p{color:#b8d5cb;font-size:15px}.people-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:50px 28px}.person{border-top:1px solid var(--line);padding-top:20px}.portrait{width:100%;height:220px;object-fit:cover;object-position:top;margin-bottom:20px}.portrait-placeholder{background:linear-gradient(140deg,#e4efea,#cfddd9);display:flex;align-items:center;justify-content:center}.portrait-placeholder span{font:600 34px Manrope,Arial,sans-serif;color:#a1bab1}.person .person-role{color:var(--teal);font-size:11px;font-weight:700;letter-spacing:.09em;text-transform:uppercase;margin:0}.person h3{font:600 22px Manrope,Arial,sans-serif;letter-spacing:-.03em;margin:9px 0}.linkedin{display:inline-flex;align-items:center;justify-content:center;width:35px;height:35px;background:#0a66c2;color:white;border-radius:3px;margin-top:8px}.linkedin svg{width:19px;height:19px}.contact{background:#0a6966;color:white}.contact h2{max-width:800px}.contact>p:not(.eyebrow){font-size:18px;color:#d6ebe3;line-height:1.6}.contact-actions{display:flex;flex-wrap:wrap;gap:14px;margin-top:30px}.site-footer{padding:50px 7%;display:flex;justify-content:space-between;gap:30px;font-size:12px;color:#6c7c77}.site-footer img{width:160px}.site-footer p{margin-top:25px}.foot-links{display:flex;align-items:center;gap:22px;flex-wrap:wrap}.foot-links .linkedin{margin:0}@media(max-width:850px){.site-header{height:72px}.brand img{width:145px}.menu-toggle{display:block;background:none;border:0;color:var(--ink);font-weight:700}.menu-toggle span{margin-left:10px}nav{display:none;position:absolute;top:72px;left:0;right:0;background:white;padding:25px 6%;align-items:stretch;flex-direction:column;gap:20px;box-shadow:0 15px 25px #0001}nav.open{display:flex}.hero{display:flex;flex-direction:column-reverse;min-height:0}.hero-art{height:280px;min-height:0}.hero-text{padding:55px 7% 80px}.hero-index{bottom:20px;left:7%}.section{padding:70px 7%}.section-head{grid-template-columns:1fr;gap:8px;margin-bottom:40px}.info-grid,.science-grid,.areas{grid-template-columns:1fr;gap:10px}.info-card h3{margin-top:20px}.statement{grid-template-columns:1fr;gap:10px;padding:35px;margin-top:35px}.areas h3{margin-top:22px}.people-grid{grid-template-columns:1fr 1fr;gap:35px 18px}.portrait{height:170px}.site-footer{flex-direction:column}}@media(max-width:480px){.people-grid{grid-template-columns:1fr}.portrait{height:200px}.contact-actions{flex-direction:column;align-items:flex-start}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
.policy-placeholder{max-width:290px}.policy-placeholder summary{cursor:pointer;text-decoration:underline;text-underline-offset:3px}.policy-placeholder p{font-size:12px;line-height:1.5;margin:10px 0}.policy-placeholder a{color:#006b68}

/* Original slide graphics, adapted for responsive website use. */
.visual-story{margin-top:12px}.figure-tabs{display:flex;gap:6px;flex-wrap:wrap;border-bottom:1px solid var(--line);padding-bottom:12px;margin-bottom:32px}.figure-tabs button{font:600 14px 'DM Sans',Arial,sans-serif;background:transparent;border:1px solid transparent;padding:13px 20px;cursor:pointer;color:var(--ink)}.figure-tabs button[aria-selected=true]{color:white;background:var(--teal);border-color:var(--teal)}.figure-tabs button:hover{border-color:var(--teal)}.figure-heading{font:600 clamp(24px,3vw,35px) Manrope,Arial,sans-serif;letter-spacing:-.035em;margin:0 0 25px}.science-figure{margin:0;min-width:0}.figure-open{display:block;position:relative;cursor:zoom-in;width:100%;background:white;border:1px solid #dce5df;padding:20px 20px 45px;line-height:0;border-radius:2px}.figure-open img{display:block;width:100%;height:auto}.enlarge-label{position:absolute;right:18px;bottom:17px;line-height:1;font:500 12px 'DM Sans',Arial,sans-serif;color:#316459;display:flex;gap:15px;align-items:center}.science-figure figcaption{font-size:12px;line-height:1.6;color:#627770;margin:14px 0 0;max-width:1100px}.learning-split{display:grid;grid-template-columns:.8fr 1fr;gap:65px;align-items:center;margin-top:70px}.learning-copy h3{font:600 clamp(28px,3.5vw,46px) Manrope,Arial,sans-serif;letter-spacing:-.04em;line-height:1.15;margin:0 0 22px}.learning-copy>p:not(.eyebrow){font-size:17px;line-height:1.7;color:#536d65}.learning-split .figure-open{padding:20px 20px 40px}.programs .science-figure figcaption{color:#c0d6ce}.focus-visual>h3,.expansion-visual>h3{font:500 clamp(26px,3.3vw,43px) Manrope,Arial,sans-serif;letter-spacing:-.04em;margin:0 0 30px}.expansion-visual{padding-top:65px;margin-top:65px;border-top:1px solid #557673}.figure-dialog{max-width:1440px;width:calc(100vw - 42px);max-height:94vh;border:0;padding:28px;background:#fff;color:var(--ink);box-shadow:0 20px 100px #0005}.figure-dialog::backdrop{background:#102f31d9;backdrop-filter:blur(4px)}.figure-dialog-head{display:flex;gap:20px;align-items:center;justify-content:space-between}.figure-dialog-head h2{font:600 23px Manrope,Arial,sans-serif;margin:0}.figure-dialog button,.figure-dialog-controls a{font:600 13px 'DM Sans',Arial,sans-serif;padding:10px 14px;background:white;border:1px solid #adbfb8;color:var(--ink);cursor:pointer;white-space:nowrap}.figure-dialog-controls{display:flex;gap:10px;padding:18px 0}.figure-dialog-controls a{text-decoration:none}.figure-dialog-scroll{overflow:auto;max-height:65vh;background:#fff;border:1px solid var(--line)}.figure-dialog-scroll img{width:100%;max-width:none;height:auto}.figure-dialog-scroll img.zoomed{width:1800px;max-width:none}.figure-dialog>p{font-size:12px;line-height:1.5;color:#526b63;margin-bottom:0}button:focus-visible,a:focus-visible{outline:3px solid #db8753;outline-offset:4px}[hidden]{display:none!important}@media(max-width:850px){.learning-split{grid-template-columns:1fr;gap:25px}.learning-split>div:first-child{max-width:470px;margin:auto}.figure-tabs{gap:6px}.figure-tabs button{padding:10px 12px;font-size:12px}.figure-open{padding:8px 8px 34px}.enlarge-label{font-size:11px;bottom:12px;right:10px}.figure-dialog{padding:15px;width:calc(100vw - 20px)}.figure-dialog-head h2{font-size:18px}.figure-dialog-head{gap:12px}.figure-dialog-scroll{max-height:65vh}.figure-dialog-scroll img{min-width:780px}.figure-dialog-scroll img.zoomed{width:1600px}.science-figure figcaption{font-size:11px}.expansion-visual{margin-top:45px;padding-top:45px}}

/* 1.1.1: isolate heading colors from WordPress global theme styles. */
#cfb-root{color:var(--ink);font-family:'DM Sans',Arial,sans-serif;line-height:1.5}
#cfb-root .hero h1,#cfb-root .programs h2,#cfb-root .programs h3,#cfb-root .contact h2{color:#fff}
#cfb-root .button-white{color:var(--ink)}
#cfb-root .button-outline,#cfb-root .linkedin{color:#fff}
.pathway-layout{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(250px,1fr);gap:38px;align-items:start}
#cfb-root .pathway-points{list-style:none;padding:0;margin:0;display:grid;gap:28px}
#cfb-root .pathway-points li{display:grid;grid-template-columns:27px minmax(0,1fr);gap:12px;margin:0;padding:0}
#cfb-root .pathway-number{font:600 21px/1.3 Manrope,Arial,sans-serif;color:#a8dfcd}
#cfb-root .pathway-points h4{font:600 21px/1.3 Manrope,Arial,sans-serif;color:#fff;letter-spacing:-.02em;margin:0 0 10px;overflow-wrap:break-word}
#cfb-root .pathway-points p{font-size:16px;line-height:1.6;color:#d3e7e1;margin:0;overflow-wrap:break-word}
@media(max-width:1000px){.pathway-layout{grid-template-columns:minmax(0,1fr);gap:32px}#cfb-root .pathway-points{grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}}
@media(max-width:650px){#cfb-root .pathway-points{grid-template-columns:minmax(0,1fr);gap:26px}}

/* Supplied square headshots: retain the original composition at all sizes. */
#cfb-root .person img.portrait{width:100%;height:auto;aspect-ratio:1 / 1;object-fit:cover;object-position:center;display:block;background:#e4efea}

/* 1.1.4: clearer foundry label and more compact team portraits. */
#cfb-root .hero .eyebrow{font-size:clamp(18px,1.65vw,24px);line-height:1.35;letter-spacing:.12em;margin-bottom:28px}
#cfb-root .person img.portrait{width:85%;max-width:300px;height:auto;aspect-ratio:1 / 1;margin-bottom:20px}

/* 1.1.5: the complete corporate data flywheel needs a full-width figure. */
#cfb-root .flywheel-section{margin-top:65px;padding-top:50px;border-top:1px solid var(--line)}
#cfb-root .flywheel-section>h3{font:600 clamp(28px,3.3vw,44px)/1.18 Manrope,Arial,sans-serif;letter-spacing:-.035em;color:var(--ink);margin:0 0 18px}
#cfb-root .flywheel-intro{font-size:18px;line-height:1.65;color:#536d65;max-width:940px;margin:0 0 30px}
#cfb-root .flywheel-figure .figure-open{padding:22px 18px 44px}
@media(max-width:650px){#cfb-root .flywheel-section{margin-top:40px;padding-top:32px}#cfb-root .flywheel-intro{font-size:16px}#cfb-root .flywheel-figure .figure-open{padding:10px 6px 34px}}
