:root{--navy:#1c2d43;--ink:#0e1322;--blue:#3e5d75;--text:#eeeee9;--muted:#d2d8dc;--orange:#e48252;--rule:#b6c2ca;--gutter:clamp(24px,4.45vw,72px)}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:70px}
body{margin:0;background:var(--navy);color:var(--text);font-family:"Segoe UI",Arial,sans-serif;font-size:clamp(17px,1.45vw,23px);line-height:1.4;font-weight:400}
img{display:block;max-width:100%}
a{color:inherit;text-decoration:none}
a:hover{text-decoration:underline;text-underline-offset:5px}
a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible{outline:3px solid var(--orange);outline-offset:5px}
em{color:var(--orange);font-style:normal}
h1,h2,h3,p{margin:0}
h2{font-size:clamp(32px,4.25vw,68px);font-weight:350;line-height:1.38;text-transform:uppercase;letter-spacing:-.025em}
p+p{margin-top:30px}
.skip-link{position:fixed;top:8px;left:12px;z-index:30;padding:10px 16px;background:var(--text);color:var(--navy);transform:translateY(-180%)}
.skip-link:focus{transform:translateY(0)}
.site-header{height:54px;background:var(--navy);position:sticky;top:0;z-index:20;display:flex;align-items:center;padding:0 var(--gutter)}
.brand{display:block;width:46px;height:48px}
.brand img{width:46px;height:48px}
.hero{position:relative;min-height:528px;display:grid;place-items:center;text-align:center;background:linear-gradient(#10132666,#10132666),#101326 url("assets/hero-data-original.png") center/cover no-repeat;padding:75px 24px}
.hero h1{font-family:Arial,sans-serif;font-size:clamp(42px,5.35vw,86px);font-weight:400;line-height:1.12;letter-spacing:.005em;text-transform:uppercase;max-width:1120px}
.intro{background:linear-gradient(100deg,var(--blue),var(--ink));min-height:590px;display:grid;place-items:center;text-align:center;padding:110px var(--gutter)}
.intro-inner{max-width:1300px}
.intro p{margin-bottom:12px;font-size:clamp(16px,1.43vw,23px)}
.intro h2{line-height:1.4}
.business{position:relative;background:var(--blue);min-height:680px;padding:50px var(--gutter) 82px;overflow:hidden}
.business-art{position:absolute;left:0;bottom:0;width:34%;height:80%;object-fit:fill;opacity:.38}
.business-content{position:relative;text-align:right;margin-left:30%}
.business h2{margin-bottom:42px}
.lead{font-size:clamp(22px,2.15vw,34px);line-height:1.4}
.business .lead{white-space:normal;margin-left:-50px;margin-bottom:38px}
.business-copy{max-width:800px;margin-left:auto;color:var(--muted)}
.closing-line{font-size:clamp(22px,2.1vw,34px);text-transform:uppercase;padding-top:16px;color:var(--text)}
.section-pad{padding:58px var(--gutter) 80px}
.ruled{border-bottom:1px solid var(--rule);padding-bottom:12px;margin-bottom:20px}
.right-title{width:59%;margin-left:auto;text-align:right;font-size:clamp(34px,4.8vw,76px)}
.capabilities{background:linear-gradient(105deg,var(--ink),var(--blue))}
.capabilities-grid{display:grid;grid-template-columns:1.9fr 1fr;align-items:center;gap:30px;margin-top:60px}
.chart{width:100%;height:auto}
.capability-list{list-style:none;margin:0;padding:0;text-align:right;color:var(--muted)}
.capability-list li+li{margin-top:18px}
.about{text-align:center;background:var(--navy);padding-top:56px;padding-bottom:76px}
.centered-title{max-width:770px;margin-left:auto;margin-right:auto;font-size:clamp(38px,4.8vw,76px)}
.about-copy{max-width:960px;margin:auto;color:var(--muted)}
.about-copy p+p{margin-top:30px}
.more{position:relative;min-height:535px;background:var(--blue);overflow:hidden;display:flex;justify-content:flex-end;padding:60px var(--gutter) 58px}
.more-art{position:absolute;left:0;bottom:0;width:42%;height:100%;object-fit:cover;object-position:right center}
.more-content{position:relative;width:59%;text-align:right}
.more h2{white-space:nowrap}
.more .lead{margin-bottom:24px}
.more-content>p:not(.lead){max-width:690px;margin-left:auto;color:var(--muted)}
.principles{text-align:center;padding-top:96px;padding-bottom:76px}
.principles-inner{max-width:770px;margin:auto}
.principles p{color:var(--muted)}
.principles .approach-title{margin-top:62px}
.principles .approach-steps{font-size:clamp(24px,2.6vw,40px);margin-top:-7px}
.principles .approach-steps+p{margin-top:20px;max-width:710px;margin-left:auto;margin-right:auto}
.principles .promise{margin-top:30px}
.contact{background:linear-gradient(105deg,var(--ink),var(--navy));padding-top:76px;padding-bottom:54px}
.contact-title{width:59%;margin-bottom:32px}
.contact-grid{display:grid;grid-template-columns:1fr 1.1fr;gap:15%;align-items:start}
.field{margin-bottom:30px}
.field label{display:block;color:var(--muted);margin-bottom:7px}
input,textarea{display:block;width:100%;font:inherit;color:var(--text);border:1px solid transparent;border-radius:10px;background:var(--blue);padding:9px 12px}
input{min-height:40px}
textarea{resize:vertical;min-height:128px}
button{font:inherit;font-size:18px;background:var(--navy);border:1px solid transparent;border-radius:9px;color:var(--text);padding:8px 30px;min-width:132px;min-height:42px;cursor:pointer}
button:hover{background:var(--blue);border-color:var(--rule)}
button:disabled{opacity:.65;cursor:wait}
.form-note,.form-status{font-size:14px;line-height:1.5;margin-top:12px;color:var(--muted)}
.form-status:empty{display:none}
.contact-details{padding-top:44px}
.contact-details h3{font-size:clamp(38px,4.25vw,68px);font-weight:350;line-height:1.2}
.contact-invitation{margin-top:10px;margin-bottom:30px;font-size:clamp(17px,1.4vw,23px)}
.contact-row{display:flex;gap:26px;align-items:center;min-height:48px;color:var(--muted);margin:14px 0;overflow-wrap:anywhere}
.contact-row svg{width:46px;height:38px;flex-shrink:0;color:var(--blue)}
.linkedin-icon{height:46px;width:46px;flex-shrink:0;border-radius:8px;background:var(--blue);color:var(--navy);font-family:Arial,sans-serif;font-weight:800;font-size:37px;text-align:center;line-height:49px}
@media(min-width:1600px){.hero{min-height:36.7vw}.intro{min-height:41vw}.business{min-height:47vw}.section-pad{padding-top:4vw;padding-bottom:5.5vw}.more{min-height:37vw}}
@media(max-width:1000px){h2{font-size:clamp(32px,4.5vw,48px)}.hero{min-height:450px}.intro{min-height:420px;padding:90px var(--gutter)}.business{min-height:auto;padding:55px var(--gutter)}.business-content{margin-left:20%}.business .lead{margin-left:0}.business-art{width:32%;height:76%;opacity:.25}.capabilities-grid{grid-template-columns:1.3fr 1fr;gap:25px;margin-top:36px}.capability-list li+li{margin-top:13px}.more-art{width:32%;opacity:.7}.more-content{width:72%}.more h2{white-space:normal}.contact-grid{gap:8%}.contact-details{padding-top:45px}}
@media(max-width:680px){body{font-size:17px}.site-header{height:58px}.brand,.brand img{height:46px;width:44px}.hero{min-height:440px;padding:70px 20px;background-position:48% center}.hero h1{font-size:clamp(32px,7.7vw,50px);line-height:1.2}.intro{min-height:360px;padding:70px 24px}.intro p{font-size:16px;margin-bottom:20px}.intro h2{font-size:31px;line-height:1.35}.desktop-break{display:none}.business{padding:58px 24px}.business-content{margin-left:0;text-align:left}.business h2{font-size:33px;margin-bottom:28px}.business .lead{font-size:23px;margin-bottom:26px}.business-copy{position:relative}.business-art{width:70%;opacity:.12}.closing-line{font-size:22px}.section-pad{padding:54px 24px}.right-title,.contact-title{width:100%;text-align:left}.right-title,.centered-title{font-size:36px}.capabilities-grid{grid-template-columns:1fr;gap:32px;margin-top:30px}.capability-list{text-align:left}.capability-list li{padding-bottom:11px;border-bottom:1px solid #b6c2ca26}.capability-list li+li{margin-top:11px}.about-copy p+p{margin-top:24px}.more{padding:54px 24px;min-height:auto}.more-content{width:100%;text-align:left}.more h2{font-size:33px}.more-art{width:100%;opacity:.1}.more .lead{font-size:23px}.principles .approach-title{margin-top:50px}.principles h2{font-size:34px}.principles .approach-steps{font-size:25px}.contact-grid{grid-template-columns:1fr;gap:36px}.contact-details{padding-top:0}.contact-details h3{font-size:43px}.contact-row{gap:18px}.field{margin-bottom:24px}input{min-height:46px}.contact-title{font-size:36px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

/* Header navigation and expanding brand. Keyboard focus also reveals the name. */
.site-header{justify-content:space-between;gap:24px;background:#1d2d43}
.brand{display:flex;align-items:center;gap:10px;width:auto;flex-shrink:0;text-decoration:none}
.brand:hover{text-decoration:none}
.brand img{width:48px;height:48px;flex-shrink:0;object-fit:contain;transition:transform .2s ease}
.brand-name{display:block;max-width:0;opacity:0;overflow:hidden;white-space:nowrap;font-size:20px;transition:max-width .25s ease,opacity .2s ease}
.site-header:hover .brand-name,.site-header:focus-within .brand-name{max-width:230px;opacity:1}
.site-header:hover .brand img,.site-header:focus-within .brand img{transform:scale(1.06)}
.section-nav{display:flex;align-items:center;gap:clamp(20px,3vw,48px);font-size:18px}
.section-nav a{padding:12px 0;white-space:nowrap}
.section-nav a:hover,.section-nav a:focus-visible{color:var(--orange)}
@media(max-width:760px){
  html{scroll-padding-top:115px}
  .site-header{height:auto;min-height:100px;flex-wrap:wrap;gap:0;padding:0 24px 4px}
  .brand{height:52px;width:100%}
  .brand-name{max-width:230px;opacity:1;font-size:19px}
  .section-nav{width:100%;justify-content:space-between;gap:12px;font-size:15px}
  .section-nav a{padding:10px 0}
}
@media(hover:none){.brand-name{max-width:230px;opacity:1}}
@media(prefers-reduced-motion:reduce){.brand img,.brand-name{transition:none}}
/* Updated Figma capabilities composition, reviewed October 1, 2026. */
.capabilities{position:relative;overflow:hidden;min-height:680px;padding:80px 11% 74px}
.capabilities-title{position:relative;z-index:1;width:69%;text-align:left;font-size:clamp(34px,4.8vw,76px)}
.capabilities-grid{display:block;margin-top:70px}
.capability-list{position:relative;z-index:1;text-align:left;width:65%}
.capability-list li+li{margin-top:22px}
.capabilities-art{position:absolute;right:0;bottom:0;width:37%;height:auto;max-height:86%}
@media(max-width:1000px){.capabilities{min-height:560px;padding:58px 8% 64px}.capabilities-grid{margin-top:45px}.capability-list{width:64%}.capability-list li+li{margin-top:16px}.capabilities-art{width:37%}}
@media(max-width:680px){.capabilities{min-height:0;padding:54px 24px 0}.capabilities-title{width:100%;font-size:36px}.capabilities-grid{margin-top:30px}.capability-list{width:100%}.capabilities-art{position:relative;width:78%;max-height:none;margin:25px -24px 0 auto}.capability-list li+li{margin-top:11px}}
