/* Denser reading rhythm and a stronger navy / blue colour system. */
.services .team-card p{color:#d3def0}.services .team-card .eyebrow{color:#aac9ff}.services .team-card h3{color:#fff}
.brand-photo{max-width:1120px;margin:0 auto 55px;padding:0 6%}.brand-photo img{width:100%;height:auto;display:block}.brand-photo figcaption{font:14px Arial,sans-serif;text-align:right;margin-top:10px;color:#6a7890}
body{font-size:18px;line-height:1.85}
.section{padding:70px 7%}.intro{padding-top:78px;padding-bottom:52px;column-gap:8%;row-gap:42px}.intro-body{padding-top:35px}
.intro-body p,.intro p,.vision p,.company-summary,.detail-intro p,.detail-card p,.page-hero p,.team-card p{font-size:18px;line-height:1.95}
.intro .intro-opening{font-size:24px}.intro h2{font-size:42px;line-height:1.75}.intro-heading .eyebrow{font-size:16px;margin-bottom:22px}
.text-link,.button{font-size:17px}.name-note p,.name-note>span{font-size:16px}.name-note{padding-top:22px}
.section-heading{margin-bottom:32px}.section-heading h2{font-size:16px}.section-heading p{font-size:36px}.eyebrow{font-size:14px}
.hero-lead{font-size:21px}.hero-caption,.scroll-link{font-size:16px}.hero .eyebrow{font-size:15px}
.header nav{font-size:16px;gap:22px}.header nav>a span{font-size:14px}.brand-name{font-size:14px}.header{padding-left:3%;padding-right:3%;height:110px}
.intro{background:#edf2f9}.services{background:#192b50;color:#fff}.services .section-heading h2{color:#9bbcf6}.services .section-heading p{color:#fff}
.service-list{border:0;display:grid;grid-template-columns:1fr 1fr;gap:25px}.service-tile{display:block;background:#fff;color:var(--ink);overflow:hidden}.service-tile .tile-image{height:220px;width:100%;object-fit:cover;display:block;transition:transform .6s}.service-tile:hover .tile-image{transform:scale(1.025)}.tile-body{padding:25px 28px;position:relative}.tile-body .en{font:14px Arial,sans-serif;color:#49658b}.tile-body h3{font-size:27px;line-height:1.55;font-weight:500;margin:9px 34px 13px 0}.tile-body p{font-size:18px;color:#5e6b7e;line-height:1.8;margin:0}.tile-body .round-arrow{position:absolute;right:25px;top:34px;border:0;color:var(--blue);font-size:27px}
.vision{background:#dfe9f7;color:var(--ink);border:0;gap:7%;padding-top:65px;padding-bottom:65px}.vision h2{font-size:39px}.vision .eyebrow{font-size:16px}.vision-label>p:last-child{font-size:17px}
.company-preview{padding-top:65px;padding-bottom:65px;gap:8%}.home-person small{font-size:15px}.home-person h3{font-size:25px}.company-preview .section-heading{margin-bottom:24px}
.contact-band{background:#1553b5;margin:0;padding:45px 7%}.contact-band h2{font-size:32px}.contact-band .eyebrow{font-size:16px}
footer{background:#12203a;color:#fff;padding:45px 7% 28px}.footer-links{font-size:16px}.footer-top p{color:#b7c4d8;font-size:16px}.footer-bottom{color:#b7c4d8;border-color:#ffffff26;font-size:14px}.footer-bottom button{font-size:14px}.mock-label{color:#a6b5cb}.footer-brand{font-size:40px}
.page-hero{background:#1e345b;color:#fff;margin:0;padding:42px 7%}.page-hero .eyebrow{color:#a3c3ff;font-size:16px}.page-hero h1{font-size:43px}.page-hero p{color:#d8e2f2}.breadcrumb{font-size:15px;color:#b8c9e3;margin-bottom:23px}.breadcrumb a{text-decoration:underline;text-underline-offset:4px}
.category-intro{display:grid;grid-template-columns:1.1fr 1fr;gap:50px;align-items:center}.category-intro img{display:block;width:100%;height:300px;object-fit:cover}.category-intro h2{margin:0 0 20px;font-size:34px}.category-intro p{margin:0}.detail-grid{gap:22px;margin-top:40px}.detail-card{background:#edf2f9;border-top:3px solid #1b58b2;padding:27px}.detail-card h3{font-size:27px}.detail-card small{font-size:14px;color:#4e6485}.detail-card a.text-link{margin-top:16px}.detail-card:hover{background:#e2eaf6}.detail-card p{line-height:1.8}
.company-table{margin-top:35px}.company-table dt,.company-table dd{font-size:18px;padding:18px 0}.team-card .eyebrow{font-size:14px}.team-card h3{font-size:28px}
.service-detail-hero{position:relative;isolation:isolate;overflow:hidden;padding:40px 7% 55px;color:white;background:#142a4c}.service-detail-hero:before{position:absolute;content:'';inset:0;background:linear-gradient(90deg,#102443f5 15%,#102443c9 60%,#10244338);z-index:-1}.service-detail-hero>img{position:absolute;inset:0;z-index:-2;width:100%;height:100%;object-fit:cover}.service-detail-hero h1{font-size:clamp(32px,3.4vw,49px);line-height:1.5;margin:20px 0;font-weight:500}.service-detail-hero .eyebrow{color:#aac9ff;font-size:16px}.service-detail-hero p{font-size:20px;color:#e0e9f7;max-width:760px;line-height:1.9;margin:0}
.service-summary{display:grid;grid-template-columns:1fr 1.6fr;gap:6%}.service-summary h2{font-family:var(--serif);font-size:32px;line-height:1.7;margin:0}.service-summary p{font-size:19px;line-height:2;margin:0}.subsection-title{margin:0 0 26px;font-size:32px;font-weight:500}.area-section{background:#e9f0fa}.capability-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.capability-block{padding:26px;background:white;border-top:3px solid #235caf}.capability-block h3{font-size:23px;margin:0 0 16px;font-weight:500}.capability-block ul{padding:0;list-style:none;margin:0}.capability-block li{font-size:17px;line-height:1.8;padding:9px 0;border-top:1px solid #e3e8ef}.capability-block li:first-child{border:0;padding-top:0}
.steps-grid{list-style:none;display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin:0;padding:0}.steps-grid li{border-left:2px solid #185cbd;padding:0 0 0 22px}.steps-grid span{font:15px Arial,sans-serif;color:#1560cc}.steps-grid h3{font-size:24px;margin:9px 0 13px;font-weight:500}.steps-grid p{font-size:18px;line-height:1.85;margin:0;color:#53637a}.feature-band{background:#1c355c;color:white}.feature-band>p{font-size:19px;line-height:1.9;max-width:1000px}.feature-band h2{font-size:33px;margin-top:0}.feature-band .feature-points{display:grid;grid-template-columns:1fr 1fr;gap:20px}.feature-points>div{border-top:1px solid #ffffff45;padding-top:20px}.feature-points h3{font-size:24px;font-weight:500;margin:0 0 10px}.feature-points p{font-size:18px;color:#d3def0;line-height:1.9;margin:0}
.case-section{background:#f2f5f9}.case-section details{background:#fff;border-bottom:1px solid #cdd7e6;padding:0 24px}.case-section summary{cursor:pointer;font-size:20px;font-weight:500;padding:23px 0;line-height:1.7}.case-section details p{font-size:18px;color:#586981;padding-bottom:22px;margin:0}.related-links{display:flex;gap:15px;flex-wrap:wrap}.related-links a{font-size:17px;border:1px solid #bac8dc;padding:14px 20px;background:#fff}.related-links a:hover{border-color:#135bca;color:#135bca}.source-link{font-size:14px;color:#6b7890;margin-top:25px}.source-link a{text-decoration:underline;text-underline-offset:4px}
.philosophy-lead{max-width:980px;margin:0 auto}.philosophy-lead h2{font-family:var(--serif);font-size:36px;line-height:1.75;margin:0 0 22px}.philosophy-lead p{font-size:20px;line-height:2}
.diagram-section{background:#eaf0f8}.diagram-section:nth-of-type(even){background:#dce7f5}.diagram-section h2{font-size:32px;font-weight:500;line-height:1.6;margin:0 0 12px}.diagram-section>.diagram-description{font-size:18px;margin:0 0 28px;color:#50627d}.diagram{margin:0;background:white;padding:36px}.diagram figcaption{font-size:16px;line-height:1.8;color:#63728a;text-align:center;margin-top:23px}
.cross-diagram{display:grid;grid-template-columns:1fr 90px 1fr;align-items:center;max-width:850px;margin:auto}.diagram-circle{border-radius:50%;aspect-ratio:1;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;padding:25px;color:white}.diagram-circle.politics{background:#a43850}.diagram-circle.economics{background:#16518b}.diagram-circle small{font-size:16px;letter-spacing:.08em}.diagram-circle h3{font-size:44px;line-height:1.3;font-weight:500;margin:12px 0}.diagram-circle p{font-size:19px;line-height:1.8;margin:0}.cross-symbol{font:90px Arial,sans-serif;text-align:center;color:#1459c7;line-height:1}.stakeholders{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-top:30px}.stakeholders>div{text-align:center;background:#eaf0f8;padding:16px 10px;border-top:3px solid #5482bd}.stakeholders strong{font-size:22px;font-weight:500;display:block}.stakeholders small{font-size:15px}
.scope-map{display:grid;grid-template-columns:1fr 1fr;gap:20px}.scope-column{padding:26px;background:#edf2f9}.scope-column:first-child{background:#f7e9ee}.scope-column h3{font-size:27px;margin:0 0 18px;font-weight:500}.scope-tags{display:flex;flex-wrap:wrap;gap:10px}.scope-tags span{background:white;padding:10px 15px;font-size:18px}.scope-bottom{padding:23px 15px;background:#1e3760;color:white;margin-top:22px;text-align:center;font-size:23px}.scope-bottom small{font-size:16px;display:block;margin-top:8px;color:#d7e3f4}
.cycle-map{display:grid;grid-template-columns:1fr 55px 1fr 55px 1fr;align-items:stretch;gap:0}.cycle-node{background:#e9eff8;padding:24px 20px;border-top:4px solid #3067ae}.cycle-node>span{font:14px Arial,sans-serif;color:#557197}.cycle-node h3{font-size:24px;line-height:1.6;margin:12px 0;font-weight:500}.cycle-node p{font-size:17px;color:#53667f;line-height:1.85}.cycle-node.focus{background:#1d4f92;color:white}.cycle-node.focus>span,.cycle-node.focus p{color:#d7e6ff}.cycle-arrow{font-size:38px;color:#3067ae;display:grid;place-items:center}.feedback-loop{margin:22px 20px 0;border:2px solid #5180b8;border-top:0;border-radius:0 0 18px 18px;text-align:center;padding:0 15px 15px;color:#1e508c;font-size:19px}.feedback-loop>span{background:white;padding:0 18px}.diagram-source{font-size:14px;color:#6b7b93;margin:18px 0 0}
@media(max-width:1200px){.header nav{font-size:14px;gap:16px}.header nav>a span{font-size:13px}.capability-grid{grid-template-columns:1fr 1fr}.category-intro{gap:30px}.cycle-map{grid-template-columns:1fr 35px 1fr 35px 1fr}.cycle-node{padding:20px 15px}.cycle-node h3{font-size:22px}}
@media(max-width:1000px){.header{height:90px}.header nav{top:89px}.header nav>a{font-size:17px}.header nav>a span{font-size:15px}.hero{height:calc(100svh - 90px)}.intro h2{font-size:34px}.section{padding:58px 6%}.intro-body{padding-top:25px}.service-tile .tile-image{height:185px}.tile-body{padding:22px}.tile-body h3{font-size:24px}.tile-body p{font-size:17px}.tile-body .round-arrow{right:14px}.category-intro{grid-template-columns:1fr}.category-intro img{height:260px}.service-summary{gap:35px}.cycle-map{grid-template-columns:1fr}.cycle-arrow{transform:rotate(90deg);height:45px}.cycle-node{padding:23px}.cycle-node p{margin:0}.feedback-loop{margin:22px 0 0}.cross-diagram{grid-template-columns:1fr 55px 1fr}.diagram-circle h3{font-size:34px}.diagram-circle p{font-size:17px}.cross-symbol{font-size:60px}.diagram{padding:28px}}
@media(max-width:650px){body{font-size:18px}.section{padding:45px 6%}.intro{gap:25px}.intro-body{padding-top:0}.intro-body p,.intro p,.vision p,.company-summary,.detail-intro p,.detail-card p,.team-card p{font-size:18px;line-height:1.9}.intro .intro-opening{font-size:23px}.intro h2{font-size:32px}.name-note p{font-size:16px}.name-note>span{font-size:14px}.hero h1{font-size:clamp(26px,7.3vw,38px)}.hero-lead{font-size:18px;max-width:300px}.hero-caption,.scroll-link{font-size:14px}.section-heading p{font-size:31px}.section-heading h2{font-size:16px}.service-list{grid-template-columns:1fr;gap:22px}.service-tile .tile-image{height:195px}.tile-body h3{font-size:25px}.tile-body p{font-size:18px}.vision h2{font-size:29px}.home-person small{font-size:14px}.home-person h3{font-size:23px}.contact-band{padding:32px 6%}.contact-band h2{font-size:27px}.footer-links{font-size:16px}.footer-top p{font-size:16px}.page-hero{padding:30px 6%}.page-hero h1{font-size:30px}.page-hero p{font-size:18px}.breadcrumb{font-size:14px}.detail-grid{grid-template-columns:1fr;gap:20px;margin-top:30px}.detail-card{padding:23px}.detail-card h3{font-size:25px}.category-intro h2{font-size:29px}.category-intro img{height:220px}.service-detail-hero{padding:28px 6% 38px}.service-detail-hero h1{font-size:32px;overflow-wrap:anywhere}.service-detail-hero p{font-size:19px}.service-summary{grid-template-columns:1fr;gap:22px}.service-summary h2{font-size:29px}.service-summary p{font-size:18px}.subsection-title{font-size:28px}.capability-grid,.steps-grid,.feature-band .feature-points{grid-template-columns:1fr}.capability-block{padding:24px}.capability-block h3{font-size:24px}.capability-block li{font-size:18px}.steps-grid{gap:27px}.steps-grid h3{font-size:24px}.steps-grid p{font-size:18px}.feature-band h2{font-size:29px}.feature-points h3{font-size:23px}.case-section details{padding:0 18px}.case-section summary{font-size:19px}.company-table{grid-template-columns:85px 1fr;column-gap:12px}.company-table dt,.company-table dd{font-size:16px;padding:15px 0}.team-card{grid-template-columns:1fr}.team-card img{width:130px;height:130px}.philosophy-lead h2{font-size:29px}.philosophy-lead p{font-size:19px}.diagram-section h2{font-size:28px}.diagram{padding:22px 15px}.cross-diagram{grid-template-columns:1fr 36px 1fr}.diagram-circle{padding:14px 6px}.diagram-circle small{font-size:12px;letter-spacing:0}.diagram-circle h3{font-size:27px;margin:8px 0}.diagram-circle p{font-size:14px;line-height:1.7}.cross-symbol{font-size:40px}.stakeholders{grid-template-columns:1fr 1fr;gap:10px;margin-top:22px}.stakeholders strong{font-size:21px}.stakeholders small{font-size:15px}.scope-map{grid-template-columns:1fr;gap:14px}.scope-column{padding:20px}.scope-column h3{font-size:25px}.scope-tags span{font-size:17px}.scope-bottom{font-size:20px}.diagram figcaption{font-size:16px}.cycle-node h3{font-size:24px}.cycle-node p{font-size:18px}.feedback-loop{font-size:18px}.diagram-source{font-size:14px}}
