@font-face {
  font-family: Recoleta;
  src: url("https://cdn.prod.website-files.com/691b94a518664e13feebd656/6923a37adf44a64f77907e42_Recoleta-Medium.woff2") format("woff2");
  font-weight: 500;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: Recoleta;
  src: url("https://cdn.prod.website-files.com/691b94a518664e13feebd656/6923a37f561abff5f6f32678_Recoleta-Regular.woff2") format("woff2");
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: Ag;
  src: url("https://cdn.prod.website-files.com/691b94a518664e13feebd656/692b994154a3097b3db80ce5_AG-Normal.woff2") format("woff2");
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: Ag;
  src: url("https://cdn.prod.website-files.com/691b94a518664e13feebd656/692b9941f6dc5195ae583857_AG-Semibold.woff2") format("woff2");
  font-weight: 600;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: Ag;
  src: url("https://cdn.prod.website-files.com/691b94a518664e13feebd656/692b99416752e547e4bd1c22_AG-Medium.woff2") format("woff2");
  font-weight: 500;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: Ag;
  src: url("https://cdn.prod.website-files.com/691b94a518664e13feebd656/692b994121f5389dbef83b91_AG-NormalItalics.woff2") format("woff2");
  font-weight: 400;
  font-style: italic;
  font-display: swap;
}
@font-face {
  font-family: Calluna;
  src: url("https://cdn.prod.website-files.com/691b94a518664e13feebd656/6923a4a9e0254e76a6dbe094_Calluna-Regular.woff") format("woff");
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: Calluna;
  src: url("https://cdn.prod.website-files.com/691b94a518664e13feebd656/6923a4b9b88ca105a992ddc3_Calluna-Regular-Italics.woff") format("woff");
  font-weight: 400;
  font-style: italic;
  font-display: swap;
}
/* Moligo layout using the supplied Ginkgo typography, palette and spacing. */
.hero-image video{width:100%;height:100%;object-fit:cover;object-position:center;display:block}
.video-toggle{position:absolute;right:6%;bottom:25px;z-index:4;border:1px solid #ffffff90;border-radius:3px;padding:9px 15px;background:#0b1f3080;color:white;font-size:14px}
:root,:root[data-theme="dark"]{color-scheme:light;--bg:#fcfcfc;--surface:#f2eeeb;--ink:#0b1f30;--text:#0b1f30;--muted:#52606a;--rule:#14141426;--link:#0b1f30;--cyan:#056b39;--night:#141414}
body{background:fixed linear-gradient(180deg,#f2eeeb 11%,#f9f9f9 30%,#f7f0f0 75%,#f2f2f1 84%);font-family:Ag,Arial,sans-serif;font-size:18px;line-height:1.52;color:var(--text);-webkit-font-smoothing:antialiased}
h1,h2,h3,h4{font-family:Recoleta,'Palatino Linotype',Palatino,Georgia,serif;font-weight:400;letter-spacing:-.015em;line-height:1.06;text-wrap:balance}
h1{font-size:clamp(46px,5.1vw,80px)}h2{font-size:clamp(38px,4.45vw,64px)}h3{font-size:32px}h4{font-size:28px}
p{max-width:64ch}.container{width:88%;max-width:1440px}.copy{max-width:850px}.stack{gap:26px}.lead{font-size:22px;letter-spacing:-.02em;line-height:1.52}.label{font-family:Ag,Arial,sans-serif;font-size:14px;text-transform:uppercase;letter-spacing:.1em;color:inherit;font-weight:500}.note,.caption{font-size:15px;line-height:1.6}
.header{background:#fcfcfcf0;backdrop-filter:blur(16px);border-bottom:1px solid var(--rule)}.header-inner{height:88px}.brand{color:#0b1f30;width:145px}.wordmark{font-family:Ag,Arial,sans-serif;font-weight:600;font-size:45px}.wordmark b{color:inherit}.brand-label{font-size:11px;letter-spacing:.15em}.official-logo{filter:brightness(0) saturate(100%)}.nav{gap:30px}.nav a{font-size:16px;color:#0b1f30}.nav a:hover,.nav a[aria-current="page"]{color:#056b39;border-color:currentColor}.button{background:transparent;border:1px solid currentColor;color:inherit;border-radius:3px;padding:19px 27px;font-size:16px;font-weight:400;letter-spacing:.02em;transition:background .25s,color .25s}.button:hover{background:#0b1f30;border-color:#0b1f30;color:#fcfcfc}.header .button{background:#0b1f30;color:#fcfcfc;font-size:16px;padding:13px 18px}.text-link{font-size:17px;text-decoration:none;border-bottom:1px solid currentColor;padding-block:8px;transition:opacity .2s}.text-link:hover{opacity:.7}.actions{gap:32px}.menu-toggle{color:#0b1f30;border-color:#0b1f3040;border-radius:2px}
body.home .header{position:absolute;inset:0 0 auto;background:transparent;border-color:#ffffff30;color:white;backdrop-filter:none}body.home .header .brand,body.home .nav a{color:#fcfcfc}body.home .official-logo{filter:brightness(0) invert(1)}body.home .header .button,body.home .menu-toggle{background:transparent;border-color:#fcfcfc80;color:#fcfcfc}
.hero{background:#0b1f30;min-height:100svh;color:#fcfcfc;display:flex;align-items:center}.hero-image{inset:0;opacity:1}.hero-image img{object-position:72% center}.hero:after{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(11,31,48,.94),rgba(11,31,48,.55) 53%,rgba(11,31,48,.12))}.hero .container{min-height:100svh;padding:180px 0 110px;justify-content:center;gap:30px}.hero h1{font-size:clamp(48px,5.1vw,80px);line-height:.98;letter-spacing:-.015em;max-width:950px;font-weight:400}.hero h1 span{color:#fcfcfc}.hero p{font-size:20px;line-height:1.52;max-width:590px;letter-spacing:-.02em}.hero .label{font-size:14px;letter-spacing:.12em;color:#fcfcfc}.hero .button{background:transparent;color:white;border-color:#ffffff90}.hero .button:hover{background:#fcfcfc;color:#0b1f30}.hero .text-link{color:#fcfcfc}.hero .art-note{color:#d4dce1;font-size:12px}
.section,.home-intro,.home-paper{padding:0;border-bottom:1px solid var(--rule);background:transparent}.section>.container,.home-intro>.container,.home-paper>.container{border-left:1px solid var(--rule);padding:110px 0 110px 64px}.home-intro .copy{margin:0;text-align:left;max-width:1000px}.home-intro p{font-size:25px;line-height:1.5}.split,.home-paper .split{gap:6vw;grid-template-columns:1fr 1fr}.split>*{min-width:0}.surface{background:transparent}.feature-links{gap:64px}.feature-link{padding:0}.feature-link+ .feature-link{border-left:1px solid var(--rule);padding-left:60px}.feature-link h2{font-size:48px}.home-paper{background:#141414;color:#fcfcfc}.home-paper h2,.home-paper .label,.home-paper .text-link{color:#fcfcfc}.home-paper .note{color:#c8c8c8}.home-paper>.container{border-color:#ffffff26}.team-preview{gap:28px}.team-preview img{border-radius:50%;aspect-ratio:1;height:auto;object-fit:cover}.team-preview figcaption{color:#0b1f30;font-size:16px}
.page-intro{padding:100px 0 80px;background:transparent}.page-intro .stack{max-width:1040px}.page-intro p{font-size:22px;max-width:760px}.subnav{gap:24px;font-size:16px}.subnav a{text-decoration:none;border-bottom:1px solid #0b1f3050;padding:6px 0}.service{padding:65px 0;gap:6vw}.service h2{font-size:44px}.service-meta{font-size:16px}.simple-columns{gap:40px}.simple-columns article{padding-top:30px}.wide-note{background:#ffedde60;border-left:1px solid #0b1f30;padding:28px 32px}.wide-note h3{font-size:28px}.comparison-visual{background:transparent;border:1px solid var(--rule);border-radius:3px}.research-block{padding:55px 0}.research-block h2{font-size:42px}.research-block h3{font-size:32px}
table{border-collapse:collapse;width:100%;font-size:16px;line-height:1.5}th,td{padding:20px 18px;text-align:left;vertical-align:top;border-bottom:1px solid var(--rule)}th{font-weight:500}thead{background:#0b1f30;color:#fcfcfc}.results thead{background:#0b1f30}.results thead th{color:#fcfcfc}.results th,.results td{padding:20px 18px}.results td:last-child{white-space:normal}.results .emphasis{color:#056b39}.table-wrap{width:100%;overflow-x:auto}.table-wrap table{min-width:620px}.table-wrap:focus-visible{outline:2px solid #056b39}.science-table{min-width:800px}
.people-grid{gap:70px 55px}.portrait{height:auto;aspect-ratio:1;border-radius:3px;background:#e5e5e3}.person-info{padding-top:30px}.person h4{font-size:34px}.person .role{font-size:16px}.person-bio p{font-size:18px}.company-photo{height:auto;aspect-ratio:3/2;border-radius:3px}.news-row{padding:45px 0;grid-template-columns:160px 1fr}.news-row h2{font-size:38px}.contact-box h2{font-size:40px}.call-to-action{background:#ffedde80;color:#0b1f30;padding:85px 0}.call-to-action h2{color:#0b1f30}.cta-inner .button{background:transparent;color:#0b1f30;border-color:#0b1f30}.cta-inner .button:hover{background:#0b1f30;color:#fcfcfc}.footer{background:#141414;color:#fcfcfc;padding:85px 0 30px}.footer-grid{gap:45px}.footer h2{font-family:Ag,Arial,sans-serif;color:#fcfcfc;font-size:18px}.footer a,.footer p{color:#e4e4e4;font-size:16px}.footer .official-logo{filter:brightness(0) invert(1)}.footer .brand{color:#fcfcfc}.footer-bottom{border-color:#ffffff30;font-size:14px;margin-top:65px}.footer-bottom a{font-size:14px}
@media(max-width:991px){.container{width:90%}.section>.container,.home-intro>.container,.home-paper>.container{padding:70px 0 70px 35px}.split,.home-paper .split{grid-template-columns:1fr;gap:40px}.hero .container{padding:150px 0 85px}.hero h1{font-size:62px}.feature-link h2{font-size:38px}.feature-links{gap:35px}.feature-link+.feature-link{padding-left:35px}.nav,.header .button{display:none}.menu-toggle{display:block}.mobile-nav:not([hidden]){background:#fcfcfc;top:78px;border-color:var(--rule)}.mobile-nav a{color:#0b1f30;border-color:var(--rule)}.header-inner{height:78px}.page-intro{padding:75px 0 55px}.team-preview{max-width:660px}.team-preview img{height:auto}.service{gap:35px}.hero-image{opacity:1}.portrait{height:auto}.feature-links{grid-template-columns:1fr 1fr}}
@media(max-width:600px){body{font-size:17px}.container{width:100%;padding-inline:24px}.header-inner{height:76px}.brand{width:120px}.brand-label{font-size:10px}.mobile-nav:not([hidden]){top:76px;padding-inline:24px}.hero .container{padding:145px 24px 95px;min-height:850px;min-height:100svh;gap:25px}.hero h1{font-size:clamp(43px,10.9vw,64px);max-width:100%;line-height:1.04}.hero p{font-size:18px;max-width:100%}.hero .label{font-size:13px}.hero-image{inset:0;opacity:1}.hero-image img{object-position:65% center}.hero:after{background:linear-gradient(90deg,#0b1f30e8,#0b1f3070)}.hero .actions{gap:20px}.hero .button,.hero .text-link{font-size:16px}.section>.container,.home-intro>.container,.home-paper>.container{width:calc(100% - 24px);margin-left:24px;padding:58px 24px 58px 20px}.home-intro p{font-size:21px}.feature-links{grid-template-columns:1fr;gap:45px}.feature-link+.feature-link{border-left:0;border-top:1px solid var(--rule);padding:40px 0 0}.feature-link h2,h2{font-size:38px}.page-intro{padding:65px 0 45px}.page-intro h1{font-size:46px}.page-intro p{font-size:19px}.service{grid-template-columns:1fr;padding:40px 0;gap:25px}.service h2{font-size:38px}.team-preview{gap:18px}.team-preview img{height:auto}.team-preview figcaption{font-size:15px}.people-grid{gap:50px}.portrait{height:auto}.news-row{grid-template-columns:1fr;gap:15px}.news-row h2{font-size:32px}.research-block h2{font-size:34px}.call-to-action{padding:60px 0}.footer{padding-top:60px}.footer-grid{gap:35px 20px}.footer a,.footer p{font-size:15px}.footer-bottom{margin-top:45px}.subnav{gap:12px 20px}.company-photo{height:auto}.wide-note{padding:24px}.results{font-size:16px}.results td,.results th{padding:16px}.hero .art-note{bottom:18px;right:24px;font-size:12px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition:none!important}}

/* --- native enquiry forms, pull quotes, role cards --- */
.enquiry-form{max-width:620px;margin-top:28px;display:grid;gap:22px}
.enquiry-form .field{display:grid;gap:8px}
.enquiry-form label{font-size:16px;color:#0b1f30}
.enquiry-form input,.enquiry-form select,.enquiry-form textarea{
  font:inherit;font-size:17px;color:#0b1f30;background:#fff;
  border:1px solid var(--rule);border-radius:3px;padding:13px 14px;width:100%}
.enquiry-form textarea{resize:vertical;min-height:92px}
.enquiry-form input:focus-visible,.enquiry-form select:focus-visible,.enquiry-form textarea:focus-visible{
  outline:2px solid #056b39;outline-offset:1px;border-color:#056b39}
.enquiry-form button{justify-self:start;margin-top:4px;cursor:pointer}
.pull-quote{margin:26px 0 0;padding:0 0 0 24px;border-left:2px solid #0b1f30;
  font-size:21px;line-height:1.5;color:#0b1f30}
.pull-quote cite{display:block;margin-top:12px;font-size:15px;font-style:normal;color:var(--muted)}
.leadership-grid .leadership-card h3{font-size:26px}
.leadership-grid .leadership-card p{font-size:17px;color:var(--muted);margin-top:10px}
@media(max-width:991px){.enquiry-form{max-width:100%}.pull-quote{font-size:19px}}

