
/* THERO | Executive design system 2026 | applied consistently to the whole HTML website */
:root { --tx-ink:#112c33; --tx-teal:#075954; --tx-gold:#cca667; --tx-line:#dce6e4; --tx-paper:#fbfdfc; --tx-halo:#7ce6e0; }
html{scroll-behavior:smooth;scroll-padding-top:100px}
body{color:var(--tx-ink);-webkit-font-smoothing:antialiased}
.site-header{border-bottom:1px solid rgba(8,54,51,.1);box-shadow:0 4px 26px rgba(5,26,28,.055)}
.desktop-nav{font-size:13.5px;gap:clamp(13px,1.4vw,28px)}
.desktop-nav>a,.desktop-nav .nav-menu-trigger{font-weight:800;transition:color .2s}
.desktop-nav>a[aria-current='page']{color:#087e79}
.nav-contact{border-radius:9px;font-size:13px;font-weight:850;box-shadow:0 9px 22px rgba(2,47,44,.13)}
.footer-slogan{letter-spacing:.08em}
.site-footer{border-top:4px solid #caa462}
.section-intro h2{font-size:clamp(34px,3vw,47px);letter-spacing:-1.25px;line-height:1.13}
.section-intro p,.section-intro>p{font-size:16px;line-height:1.75}
.site-header .brand img{max-height:73px}
body[data-page='energy']{--tx-context:#a46b18}
body[data-page='water']{--tx-context:#1c82ab}
body[data-page='transportation']{--tx-context:#b94b51}
body[data-page='mining']{--tx-context:#a6622d}
body[data-page='social-infrastructure']{--tx-context:#9b773e}
body[data-page='bankability']{--tx-context:#53677c}
body[data-page='projects']{--tx-context:#0f7973}
body[data-page='models'],body[data-page='compliance'],body[data-page='updates'],body[data-page='home']{--tx-context:#0d7a75}
body:not([data-page='about-executive']) .sector-hero .hero-copy h1,
body:not([data-page='about-executive']) .archive-hero h1 {text-wrap:balance}
body:not([data-page='about-executive']) .sector-hero .hero-actions .btn,
body:not([data-page='about-executive']) .archive-action{border-radius:9px}
body:not([data-page='about-executive']) .thero-register .thero-register-title{font-size:15px}
body:not([data-page='about-executive']) .thero-register .thero-register-item{transition:box-shadow .22s,transform .22s,border-color .22s}
body:not([data-page='about-executive']) .thero-register .thero-register-item:hover{transform:translateY(-1px);box-shadow:0 10px 24px rgba(11,47,48,.065)}

/* About THERO executive page */
body[data-page='about-executive']{--tx-context:#0e877e;background:#fbfdfc}
.about-page{font-family:'DM Sans',Arial,sans-serif}
.about-page h1,.about-page h2,.about-page h3,.about-page h4{font-family:Manrope,'DM Sans',Arial,sans-serif}
.about-page *{box-sizing:border-box}
.about-page .shell{max-width:1260px;width:calc(100% - 64px);margin:0 auto}
.about-page .tx-kicker{font-size:11px;text-transform:uppercase;letter-spacing:.17em;font-weight:900;color:#9a7541}
.about-page .tx-lead{font-size:clamp(17px,1.45vw,21px);line-height:1.75;color:#425a5c}
.about-page .tx-section-heading{font-size:clamp(34px,3.25vw,51px);line-height:1.10;letter-spacing:-1.85px;font-weight:900;color:#153539;margin:13px 0 18px;text-wrap:balance}
.about-page .tx-section-heading em{font-style:normal;color:#087b73}
.about-page p{max-width:74ch}
.about-page .tx-cta{display:inline-flex;align-items:center;justify-content:center;gap:10px;text-decoration:none;border-radius:9px;padding:15px 20px;min-height:50px;font-size:14px;line-height:1.25;font-weight:850;transition:transform .18s,box-shadow .18s}
.about-page .tx-cta:hover{transform:translateY(-2px);box-shadow:0 13px 25px rgba(0,0,0,.13)}
.about-page .tx-cta.primary{background:#d2a45e;color:#102d32;border:1px solid #d2a45e}
.about-page .tx-cta.outline{border:1px solid rgba(255,255,255,.5);color:#fff;background:rgba(255,255,255,.065)}
.about-page .tx-cta.dark{background:#075954;color:white;border:1px solid #075954}

.tx-hero{overflow:hidden;position:relative;background:radial-gradient(ellipse at 74% 10%,rgba(24,121,132,.35),transparent 32%),linear-gradient(125deg,#072729 0%,#0a363a 48%,#0b242d 100%);color:#fff;min-height:660px}
.tx-hero::after{content:'';position:absolute;inset:0;pointer-events:none;background-image:radial-gradient(rgba(234,255,255,.11) .8px,transparent .8px);background-size:19px 19px;opacity:.5;mask-image:linear-gradient(90deg,transparent 30%,#000 100%)}
.tx-hero-inner{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(320px,.85fr);align-items:center;gap:58px;padding:90px 0 84px;position:relative;z-index:1}
.tx-eyebrow{font-size:13px;font-weight:850;letter-spacing:.105em;text-transform:uppercase;color:#bceeed;display:inline-block;line-height:1.5;position:relative;padding-bottom:18px;margin:0 0 25px}
.tx-eyebrow::after{content:'';display:block;position:absolute;bottom:0;left:0;width:min(98%,440px);height:6px;border-radius:99px;background:linear-gradient(90deg,#82f4f4,#98baff 34%,#dfbaff 65%,#71ead7);box-shadow:0 0 16px rgba(114,236,235,.55),0 0 38px rgba(187,153,255,.25);animation:tx-shimmer 6s ease-in-out infinite alternate}
@keyframes tx-shimmer{from{filter:brightness(.9)}to{filter:brightness(1.4)}}
.tx-hero h1{font-size:clamp(46px,4.65vw,76px);line-height:1.045;letter-spacing:-2.7px;font-weight:900;margin:0 0 24px;max-width:12.8ch;text-wrap:balance;color:#fff}
.tx-hero h1 em{font-style:normal;background:linear-gradient(90deg,#baf7f1 2%,#d6cef9 49%,#f3d5a4 100%);-webkit-background-clip:text;background-clip:text;color:transparent}
.tx-hero .tx-lead{color:#d5e6e5;max-width:63ch;font-size:18.5px}
.tx-hero-actions{display:flex;flex-wrap:wrap;gap:13px;margin-top:28px}
.tx-hero-note{font-size:12px;letter-spacing:.05em;color:#b2cecb;margin-top:23px;line-height:1.6}
.tx-hero-schematic{border:1px solid rgba(198,243,242,.25);border-radius:24px;background:linear-gradient(135deg,rgba(255,255,255,.1),rgba(255,255,255,.035));box-shadow:0 30px 80px rgba(0,0,0,.18);backdrop-filter:blur(9px);padding:25px}
.tx-schematic-title{font-size:12px;letter-spacing:.14em;color:#bad7d4;text-transform:uppercase;font-weight:850}
.tx-path{display:grid;gap:12px;margin-top:22px}
.tx-path-step{display:grid;grid-template-columns:46px 1fr;gap:15px;align-items:center;border:1px solid rgba(255,255,255,.17);border-radius:12px;background:rgba(255,255,255,.06);padding:14px 16px}
.tx-path-number{font-size:13px;font-weight:900;color:#07262a;background:#bce7df;border-radius:12px;width:42px;height:42px;display:flex;align-items:center;justify-content:center}
.tx-path-step strong{display:block;font-size:17px;line-height:1.2;color:#fff;margin-bottom:4px}
.tx-path-step small{display:block;font-size:12px;line-height:1.4;color:#d0e0dd}
.tx-path-arrow{text-align:center;color:#d2b77c;line-height:1;font-size:21px}
.tx-schematic-foot{border-top:1px solid rgba(255,255,255,.15);margin-top:21px;padding-top:16px;color:#c7e3df;font-size:12px;line-height:1.5}

.tx-proof-strip{background:#eaf3f0;border-bottom:1px solid #d7e6e0}
.tx-proof-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0;padding:25px 0}
.tx-proof{border-right:1px solid #c9d9d3;padding:8px 24px}
.tx-proof:first-child{padding-left:0}
.tx-proof:last-child{border-right:0}
.tx-proof strong{display:block;font-size:clamp(28px,2.8vw,40px);color:#075954;line-height:1.1;font-weight:900;letter-spacing:-1.4px}
.tx-proof span{display:block;color:#526b69;font-size:13px;font-weight:750;line-height:1.45;margin-top:9px}

.tx-section{padding:92px 0}
.tx-section.alt{background:#f1f7f4}
.tx-intro-layout{display:grid;grid-template-columns:1.02fr .98fr;gap:68px;align-items:start}
.tx-intro-layout p{font-size:17px;line-height:1.84;color:#425c60;margin:0 0 18px}
.tx-quote-card{background:#0d3e40;border-radius:22px;color:#fff;padding:33px 32px;border:1px solid #1e6260;box-shadow:0 24px 60px rgba(15,52,52,.12)}
.tx-quote-card blockquote{margin:0;font:900 clamp(25px,2.6vw,37px)/1.24 Manrope,'DM Sans',Arial,sans-serif;letter-spacing:-1.2px;color:#fff}
.tx-quote-card p{margin:18px 0 0;color:#bbd6d3;font-size:13px!important;line-height:1.65}
.tx-divider-list{margin:24px 0 0;display:grid;gap:0}
.tx-divider-list div{padding:15px 0;border-top:1px solid rgba(255,255,255,.17);display:grid;grid-template-columns:36px 1fr;gap:12px;align-items:start}
.tx-divider-list strong{color:#f1d49e;font-weight:900}
.tx-divider-list span{color:#d3e8e4;font-size:13px;line-height:1.6}

.tx-benefit-head{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:end;margin-bottom:27px}
.tx-benefit-head p{font-size:16px;line-height:1.75;color:#4b6363;margin-bottom:5px}
.tx-benefits{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
.tx-benefit{position:relative;background:#fff;border:1px solid #dbe6e2;border-radius:19px;padding:24px;box-shadow:0 12px 32px rgba(16,53,52,.045)}
.tx-benefit::before{content:'';position:absolute;left:23px;right:23px;top:0;height:4px;background:linear-gradient(90deg,#0a7871,#d2a45e);border-radius:0 0 5px 5px}
.tx-benefit .num{display:inline-flex;align-items:center;justify-content:center;background:#e6f3ef;border-radius:12px;color:#0a6c66;width:43px;height:43px;font-size:15px;font-weight:900;margin-bottom:22px}
.tx-benefit h3{font-size:19px;line-height:1.34;letter-spacing:-.35px;margin:0 0 10px;color:#123a3d}
.tx-benefit p{font-size:14px;line-height:1.75;color:#617578;margin:0}

.tx-journey-grid{display:grid;grid-template-columns:minmax(240px,.37fr) 1fr;gap:24px;margin-top:26px}
.tx-journey-tabs{display:grid;gap:11px}
.tx-journey-tabs button{text-align:left;cursor:pointer;border:1px solid #d3e0dc;background:#fff;color:#153d3c;border-radius:14px;padding:17px 19px;font-size:14px;font-weight:850;transition:.2s}
.tx-journey-tabs button[aria-selected='true']{background:#0b5553;color:#fff;border-color:#0b5553;box-shadow:0 14px 25px rgba(8,86,82,.18)}
.tx-journey-tabs button span{display:inline-block;font-size:12px;color:#8ba29e;margin-right:10px}
.tx-journey-tabs button[aria-selected='true'] span{color:#c9e5dd}
.tx-journey-content{background:#fff;border:1px solid #d9e6e1;border-radius:22px;padding:35px 38px;min-height:320px;box-shadow:0 14px 40px rgba(13,53,53,.06)}
.tx-journey-content [role='tabpanel']{display:none}
.tx-journey-content [role='tabpanel'].active{display:block;animation:tx-panel-in .3s ease-out}
@keyframes tx-panel-in{from{opacity:.4;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}
.tx-journey-content h3{font-size:clamp(26px,2.4vw,36px);letter-spacing:-1px;margin:8px 0 13px;color:#133b3e;line-height:1.15}
.tx-journey-content p{font-size:16px;line-height:1.78;color:#486363;max-width:67ch}
.tx-tagline{font-weight:900;color:#a1773d;font-size:11px;letter-spacing:.14em;text-transform:uppercase}
.tx-output{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:23px}
.tx-output div{border:1px solid #deebe6;border-radius:12px;background:#f5faf8;padding:15px;font-size:13px;line-height:1.55;font-weight:750;color:#275250}

.tx-standards-layout{display:grid;grid-template-columns:1fr .9fr;gap:42px;align-items:start}
.tx-cert-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:22px}
.tx-cert{background:#fff;border:1px solid #dbe8e3;border-radius:16px;padding:19px 14px;text-align:center;box-shadow:0 10px 30px rgba(12,52,52,.045)}
.tx-cert strong{display:block;color:#0a615d;font-size:21px;font-weight:900}
.tx-cert span{display:block;color:#647677;font-size:12px;line-height:1.55;margin-top:7px}
.tx-standards-info{background:#102f37;color:#eff8f6;border-radius:22px;padding:30px;box-shadow:0 24px 55px rgba(14,45,51,.12)}
.tx-standards-info h3{font-size:clamp(25px,2.45vw,34px);margin:0 0 16px;color:#fff;letter-spacing:-.8px}
.tx-standards-info p{font-size:15px;line-height:1.75;color:#d2e3e0}
.tx-standards-info ul{margin:18px 0 0;padding-left:20px;color:#dceae7}
.tx-standards-info li{font-size:14px;line-height:1.75;padding:3px 0}
.tx-standards-note{font-size:12px;color:#71827f;margin-top:13px;line-height:1.6}
.tx-country-strip{margin-top:32px;padding:20px 24px;border-radius:15px;border:1px solid #d4e4df;background:#e9f4f0;color:#315b58;font-size:14px;line-height:1.75}
.tx-country-strip strong{display:block;color:#124d49;font-size:16px;margin-bottom:5px}

.tx-sector-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px;margin-top:29px}
.tx-sector-link{border:1px solid #dce8e4;background:#fff;border-radius:17px;padding:23px;text-decoration:none;transition:transform .18s,box-shadow .18s;display:block}
.tx-sector-link:hover{transform:translateY(-3px);box-shadow:0 16px 38px rgba(0,0,0,.07)}
.tx-sector-link:focus-visible{outline:3px solid #0d8b83;outline-offset:3px}
.tx-sector-link strong{display:block;font-size:17px;line-height:1.3;color:#163e3e;margin:14px 0 8px}
.tx-sector-link small{display:block;font-size:13px;line-height:1.65;color:#617a79}
.tx-sector-link b{display:block;margin-top:17px;color:#246b64;font-size:12px}
.tx-sector-link[data-sector='energy']{border-top:5px solid #c48a34}
.tx-sector-link[data-sector='water']{border-top:5px solid #2482aa}
.tx-sector-link[data-sector='transport']{border-top:5px solid #c64f58}
.tx-sector-link[data-sector='mining']{border-top:5px solid #9f5a23}
.tx-sector-link[data-sector='social']{border-top:5px solid #a27e3f}
.tx-sector-link[data-sector='bankability']{border-top:5px solid #587287}
.tx-sector-emoji{font-size:24px;line-height:1}

.tx-clients{padding:82px 0 86px;background:#fff}
.tx-marquee{position:relative;overflow:hidden;background:#f4f9f7;border:1px solid #dce9e4;border-radius:21px;padding:18px 0;margin-top:23px}
.tx-marquee::before,.tx-marquee::after{content:'';position:absolute;z-index:2;top:0;bottom:0;width:90px;pointer-events:none}
.tx-marquee::before{left:0;background:linear-gradient(90deg,#f4f9f7,transparent)}
.tx-marquee::after{right:0;background:linear-gradient(270deg,#f4f9f7,transparent)}
.tx-marquee-track{display:flex;align-items:center;gap:12px;width:max-content;animation:tx-client-scroll 52s linear infinite}
.tx-marquee:hover .tx-marquee-track{animation-play-state:paused}
.tx-client-pill{white-space:nowrap;padding:15px 23px;border-radius:12px;border:1px solid #dce8e4;background:#fff;font-size:14px;font-weight:800;color:#295051;box-shadow:0 6px 20px rgba(5,49,49,.04)}
@keyframes tx-client-scroll{to{transform:translateX(-50%)}}
.tx-client-disclaimer{font-size:12px;color:#728481;line-height:1.65;margin-top:14px}

.tx-final{background:radial-gradient(circle at 82% 0%,rgba(104,176,173,.18),transparent 34%),linear-gradient(120deg,#072c32,#0b4745);color:#fff;padding:80px 0}
.tx-final-inner{display:grid;grid-template-columns:1.1fr .75fr;gap:45px;align-items:center}
.tx-final h2{font-size:clamp(34px,3.4vw,53px);font-weight:900;letter-spacing:-1.7px;line-height:1.12;margin:0 0 20px;color:#fff}
.tx-final p{color:#cee2df;font-size:17px;line-height:1.7}
.tx-final-actions{display:flex;flex-wrap:wrap;gap:12px;justify-content:flex-start}
@media(max-width:1050px){
 .tx-hero-inner,.tx-intro-layout,.tx-standards-layout,.tx-final-inner{grid-template-columns:1fr}
 .tx-benefits{grid-template-columns:repeat(2,minmax(0,1fr))}
 .tx-sector-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
 .tx-hero h1{max-width:16ch}
}
@media(max-width:650px){
 .about-page .shell{width:calc(100% - 36px)}
 .tx-hero-inner{padding:67px 0 62px;gap:35px}
 .tx-hero h1{font-size:clamp(38px,10vw,52px);letter-spacing:-1.55px}
 .tx-hero .tx-lead{font-size:16px}
 .tx-proof-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px 0}
 .tx-proof{padding:8px 16px;border-right:0}
 .tx-proof:nth-child(odd){border-right:1px solid #c9d9d3}
 .tx-section{padding:60px 0}
 .tx-benefit-head,.tx-journey-grid{grid-template-columns:1fr}
 .tx-benefits,.tx-sector-grid,.tx-cert-grid{grid-template-columns:1fr}
 .tx-benefit{padding:21px}
 .tx-journey-content,.tx-quote-card,.tx-standards-info{padding:25px 22px}
 .tx-output{grid-template-columns:1fr}
 .tx-final{padding:60px 0}
 .tx-clients{padding:59px 0}
 .tx-marquee::before,.tx-marquee::after{width:40px}
}
@media(prefers-reduced-motion:reduce){
 html{scroll-behavior:auto!important}
 .tx-eyebrow::after{animation:none}
 .tx-marquee-track{animation:none}
 .tx-journey-content [role='tabpanel'].active{animation:none}
}

.tx-home-about-link{display:inline-flex;align-items:center;gap:10px;margin-top:9px;padding:13px 18px;border-radius:10px;text-decoration:none;background:#0d5d58;color:#fff;font-size:14px;font-weight:850}.tx-home-about-link:hover{background:#087a74;color:#fff}
