/* TCS Widgets — exact CSS from trinity-carbon-credits-light.html */

:root {
  --r:#7d1128; --rd:#5c0d1e;
  --o:#f58000; --ol:#fff3e0;
  --cr:#f9f5f0; --crd:#f0e8df;
  --w:#ffffff;
  --ink:#1a1010; --ink2:#3a2a2a;
  --mu:#8a7a72;
  --border:#e8ddd6;
  --se:'Cormorant Garamond',Georgia,serif;
  --sa:'Jost',system-ui,sans-serif;
}

/* ── VARIABLE SHIELD — redefine at section scope so theme :root overrides cannot reach inside ── */
/* Theme may define :root{--w:...; --mu:...; --o:...} — class selectors (0,1,0) beat :root (0,0,0) */
.hero,.ticker,.intro,.opps,.services-section,
.split,.africa,.esg-band,.process,.cta{
  --r:#7d1128;--rd:#5c0d1e;
  --o:#f58000;--ol:#fff3e0;
  --cr:#f9f5f0;--crd:#f0e8df;
  --w:#ffffff;
  --ink:#1a1010;--ink2:#3a2a2a;
  --mu:#8a7a72;
  --border:#e8ddd6;
  --se:'Cormorant Garamond',Georgia,serif;
  --sa:'Jost',system-ui,sans-serif;
}

/* ── SCOPED RESETS — replicate HTML global *, body{}, a{}, img{} rules ──────── */

/* Matches: *,*::before,*::after{box-sizing:border-box;margin:0;padding:0} */
.hero,.hero *,.hero ::before,.hero ::after,
.ticker,.ticker *,.ticker ::before,.ticker ::after,
.intro,.intro *,.intro ::before,.intro ::after,
.opps,.opps *,.opps ::before,.opps ::after,
.services-section,.services-section *,.services-section ::before,.services-section ::after,
.split,.split *,.split ::before,.split ::after,
.africa,.africa *,.africa ::before,.africa ::after,
.esg-band,.esg-band *,.esg-band ::before,.esg-band ::after,
.process,.process *,.process ::before,.process ::after,
.cta,.cta *,.cta ::before,.cta ::after{
  box-sizing:border-box;
  margin:0;
  padding:0;
}

/* Matches: body{font-family:var(--sa);font-weight:300;line-height:1.6;color:var(--ink)} */
.hero,.ticker,.intro,.opps,.services-section,
.split,.africa,.esg-band,.process,.cta{
  font-family:var(--sa);
  font-weight:300;
  line-height:1.6;
  color:var(--ink);
}

/* Matches: a{text-decoration:none;color:inherit} */
.hero a,.ticker a,.intro a,.opps a,.services-section a,
.split a,.africa a,.esg-band a,.process a,.cta a{
  text-decoration:none;
  color:inherit;
}

/* Matches: img{display:block;width:100%;height:100%;object-fit:cover} */
.hero img,.intro img,.opps img,.split img,.esg-band img{
  display:block;width:100%;height:100%;object-fit:cover;
}

/* Prevent theme from overriding .btn to display:block / width:100% */
.hero .btn,.intro .btn,.split .btn,.africa .btn,
.esg-band .btn,.process .btn,.services-section .btn,.cta .btn{
  display:inline-block;
  width:auto;
  max-width:none;
  min-height:auto;
  height:auto;
  border-radius:0;
}

/* CTA bare .ew uses a <span> for the line — suppress the ::before pseudo-element */
.cta .ew::before{display:none}

/* ── HERO ── */
.hero{position:relative;height:100vh;min-height:680px;overflow:hidden;display:flex;align-items:center}
.hero-photo{position:absolute;inset:0}
.hero-photo img{object-position:center 40%}
.hero-photo::after{
  content:'';position:absolute;inset:0;
  background:linear-gradient(to right,rgba(249,245,240,.97) 0%,rgba(249,245,240,.85) 42%,rgba(249,245,240,.2) 100%)
}
.hero-body{position:relative;z-index:2;padding:0 5vw;max-width:680px}
.hero-tag{
  font-size:.58rem;letter-spacing:.28em;text-transform:uppercase;
  color:var(--o);font-weight:500;
  display:flex;align-items:center;gap:.9rem;margin-bottom:2rem
}
.hero-tag::before{content:'';width:32px;height:1px;background:var(--o)}
.hero h1{
  font-family:var(--se);
  font-size:clamp(3rem,6vw,5.5rem);
  font-weight:300;line-height:1.04;
  letter-spacing:-.02em;color:var(--ink);
  margin-bottom:.8rem
}
.hero h1 em{font-style:italic;color:var(--r)}
.hero-unlock{
  font-family:var(--se);
  font-size:clamp(.95rem,1.8vw,1.25rem);
  font-style:italic;font-weight:300;
  color:var(--mu);letter-spacing:.01em;
  margin-bottom:2.5rem;
  border-left:2px solid var(--o);padding-left:1.2rem;
  max-width:500px;line-height:1.55
}
.hero-btns{display:flex;gap:1rem;flex-wrap:wrap;margin-bottom:3.5rem}
.btn{
  display:inline-block;
  font-family:var(--sa);
  font-size:.6rem;letter-spacing:.18em;text-transform:uppercase;font-weight:400;
  padding:.9rem 2.4rem;line-height:1;
  transition:.2s;cursor:pointer;
  border:none;
  border-radius:0;
  text-decoration:none;
  box-shadow:none;
}
.btn-red{background:var(--r);color:var(--w)}.btn-red:hover{background:var(--rd);color:var(--w);text-decoration:none}
.btn-line{border:1px solid rgba(26,16,16,.18);color:var(--ink)}.btn-line:hover{border-color:var(--r);color:var(--r);text-decoration:none}
.btn-orange{background:var(--o);color:var(--w)}.btn-orange:hover{opacity:.9;color:var(--w);text-decoration:none}
.btn-line-r{border:1px solid var(--r);color:var(--r)}.btn-line-r:hover{background:var(--r);color:var(--w);text-decoration:none}
.hero-services{display:flex;gap:.8rem;flex-wrap:wrap}
.hs-pill{display:flex;align-items:center;gap:.7rem;padding:.55rem 1.1rem;border:1px solid var(--border);background:var(--w);transition:border-color .2s,box-shadow .2s}
.hs-pill:hover{border-color:var(--o);box-shadow:0 2px 12px rgba(245,128,0,.1)}
.hs-pill svg{width:13px;height:13px;stroke:var(--r);fill:none;stroke-width:1.5;flex-shrink:0}
.hs-pill span{font-size:.56rem;letter-spacing:.14em;text-transform:uppercase;color:var(--mu);font-weight:400}
.hero-scroll{position:absolute;bottom:4vh;right:5vw;z-index:2;display:flex;flex-direction:column;align-items:center;gap:.6rem}
.hero-scroll span{font-size:.5rem;letter-spacing:.22em;text-transform:uppercase;color:rgba(26,16,16,.25)}
.scroll-line{width:1px;height:50px;background:linear-gradient(to bottom,rgba(26,16,16,.2),transparent);animation:sc 2s ease-in-out infinite}
@keyframes sc{0%,100%{opacity:.25}50%{opacity:.85}}

/* ── TICKER ── */
.ticker{background:var(--r);height:46px;overflow:hidden;display:flex;align-items:center}
.ticker-track{display:flex;animation:tick 35s linear infinite;white-space:nowrap}
.ti{font-size:.55rem;letter-spacing:.26em;text-transform:uppercase;color:rgba(255,255,255,.55);padding:0 3rem;flex-shrink:0}
.ti-dot{color:var(--o)}
@keyframes tick{to{transform:translateX(-50%)}}

/* ── EYEBROW ── */
.ew{font-size:.57rem;letter-spacing:.26em;text-transform:uppercase;font-weight:500;display:flex;align-items:center;gap:.8rem;margin-bottom:1.8rem}
.ew::before{content:'';width:24px;height:1px;flex-shrink:0}
.ew-r{color:var(--r)}.ew-r::before{background:var(--r)}
.ew-o{color:var(--o)}.ew-o::before{background:var(--o)}
.ew-mu{color:var(--mu)}.ew-mu::before{background:var(--border)}

/* ── INTRO ── */
.intro{display:grid;grid-template-columns:1fr 1fr;min-height:85vh}
.intro-img{position:relative;overflow:hidden}
.intro-img img{object-position:center 30%;transition:transform .9s cubic-bezier(.25,.46,.45,.94)}
.intro-img:hover img{transform:scale(1.04)}
.intro-img::after{content:'';position:absolute;inset:0;background:linear-gradient(to top,rgba(249,245,240,.5) 0%,transparent 50%)}
.intro-img-tag{position:absolute;bottom:2.5rem;left:2.5rem;font-family:var(--se);font-size:1.1rem;font-style:italic;color:var(--w);opacity:.8;z-index:2}
.intro-body{background:var(--cr);display:flex;flex-direction:column;justify-content:center;padding:7rem 4vw 7rem 3.5rem}
.intro-body h2{font-family:var(--se);font-size:clamp(2rem,3vw,2.8rem);font-weight:300;line-height:1.15;color:var(--ink);margin-bottom:1.5rem}
.intro-body h2 em{font-style:italic;color:var(--r)}
.intro-body p{font-size:.86rem;color:var(--mu);line-height:1.92;margin-bottom:1rem;max-width:500px}
.intro-body p:last-of-type{margin-bottom:2.5rem}

/* ── OPPORTUNITY PANELS ── */
.opps{display:grid;grid-template-columns:repeat(3,1fr);height:80vh;min-height:500px}
.opp{position:relative;overflow:hidden;cursor:default}
.opp-img{position:absolute;inset:0;transition:transform .8s cubic-bezier(.25,.46,.45,.94)}
.opp:hover .opp-img{transform:scale(1.07)}
.opp-shade{position:absolute;inset:0}
.opp-1 .opp-shade{background:linear-gradient(to top,rgba(26,16,16,.93) 0%,rgba(26,16,16,.25) 100%)}
.opp-2 .opp-shade{background:linear-gradient(to top,rgba(125,17,40,.93) 0%,rgba(125,17,40,.25) 100%)}
.opp-3 .opp-shade{background:linear-gradient(to top,rgba(245,128,0,.93) 0%,rgba(245,128,0,.2) 100%)}
.opp-body{position:absolute;inset:0;display:flex;flex-direction:column;justify-content:flex-end;padding:3rem 2.5rem}
.opp-n{font-family:var(--se);font-size:5.5rem;font-weight:300;color:rgba(255,255,255,.06);line-height:1;margin-bottom:auto}
.opp-tag{font-size:.52rem;letter-spacing:.22em;text-transform:uppercase;color:var(--o);margin-bottom:.7rem;font-weight:500}
.opp-2 .opp-tag{color:var(--cr)}
.opp-3 .opp-tag{color:var(--ink)}
.opp-body h3{font-family:var(--se);font-size:1.7rem;font-weight:300;color:var(--w);line-height:1.1;margin-bottom:.4rem}
.opp-body p{font-size:.74rem;color:rgba(255,255,255,.48);line-height:1.72;max-height:0;overflow:hidden;opacity:0;transition:max-height .55s ease,opacity .4s}
.opp:hover .opp-body p{max-height:140px;opacity:1}
.opp+.opp{border-left:1px solid rgba(255,255,255,.08)}

/* ── SERVICES ── */
.services-section{background:var(--w);padding:9rem 5vw}
.services-header{display:grid;grid-template-columns:1fr 1fr;gap:4rem;align-items:end;margin-bottom:6rem}
.services-header h2{font-family:var(--se);font-size:clamp(2.2rem,4vw,3.4rem);font-weight:300;color:var(--ink);line-height:1.08}
.services-header h2 em{font-style:italic;color:var(--r)}
.services-header p{font-size:.86rem;color:var(--mu);line-height:1.9}
.svc-icons{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--border);margin-bottom:1px}
.svc-ic{background:var(--w);padding:2.5rem 2rem;position:relative;overflow:hidden;cursor:default;transition:background .25s}
.svc-ic::before{content:'';position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(to right,var(--r),var(--o));transform:scaleX(0);transform-origin:left;transition:transform .4s cubic-bezier(.25,.46,.45,.94)}
.svc-ic:hover{background:var(--cr)}
.svc-ic:hover::before{transform:scaleX(1)}
.svc-ic-icon{width:52px;height:52px;border:1px solid var(--border);background:var(--cr);display:flex;align-items:center;justify-content:center;margin-bottom:1.8rem;transition:border-color .3s,background .25s}
.svc-ic:hover .svc-ic-icon{border-color:rgba(125,17,40,.25);background:var(--w)}
.svc-ic-icon svg{width:22px;height:22px;stroke:var(--r);fill:none;stroke-width:1.4}
.svc-ic h3{font-family:var(--se);font-size:1.2rem;font-weight:400;color:var(--ink);line-height:1.2;margin-bottom:.5rem}
.svc-ic p{font-size:.74rem;color:var(--mu);line-height:1.72}
.svc-list-wrap{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:var(--border)}
.svc-list-col{background:var(--cr);padding:3.5rem 3rem}
.svc-list-col h4{font-family:var(--se);font-size:1.1rem;font-weight:400;color:var(--ink);margin-bottom:2rem;padding-bottom:1rem;border-bottom:1px solid var(--border);display:flex;align-items:center;gap:.8rem}
.svc-list-col h4 span{font-size:.54rem;letter-spacing:.2em;text-transform:uppercase;color:var(--o);font-weight:500;font-family:var(--sa)}
.svc-line{display:flex;align-items:flex-start;gap:.9rem;padding:.9rem 0;border-bottom:1px solid rgba(232,221,214,.7);font-size:.8rem;color:var(--mu);line-height:1.6;transition:color .2s,padding-left .2s;cursor:default}
.svc-line:last-child{border-bottom:none}
.svc-line:hover{color:var(--ink);padding-left:.4rem}
.svc-line::before{content:'→';color:var(--r);opacity:.4;flex-shrink:0;font-size:.7rem;margin-top:.1rem;transition:opacity .2s}
.svc-line:hover::before{opacity:1}

/* ── SPLIT ── */
.split{display:grid;grid-template-columns:1fr 1fr;min-height:85vh}
.split-img{position:relative;overflow:hidden}
.split-img img{object-position:center 50%;transition:transform .9s cubic-bezier(.25,.46,.45,.94)}
.split-img:hover img{transform:scale(1.04)}
.split-img-caption{position:absolute;bottom:2.5rem;left:2.5rem;font-family:var(--se);font-size:1.1rem;font-style:italic;color:var(--w);opacity:.7;z-index:2}
.split-img::after{content:'';position:absolute;inset:0;background:linear-gradient(to top,rgba(26,16,16,.5) 0%,transparent 55%)}
.split-body{background:var(--cr);display:flex;flex-direction:column;justify-content:center;padding:6rem 4vw}
.split-body h2{font-family:var(--se);font-size:clamp(2rem,3.2vw,3rem);font-weight:300;color:var(--ink);line-height:1.12;margin-bottom:1.2rem}
.split-body h2 em{font-style:italic;color:var(--r)}
.split-body p{font-size:.85rem;color:var(--mu);line-height:1.92;margin-bottom:2.5rem;max-width:500px}
.stats-bar{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--border);border:1px solid var(--border);margin-bottom:2.5rem}
.sb{padding:1.8rem 1.5rem;background:var(--w);transition:background .2s}
.sb:hover{background:var(--cr)}
.sb-n{font-family:var(--se);font-size:2.2rem;font-weight:300;color:var(--ink);line-height:1}
.sb-n sup{font-size:.85rem;color:var(--o)}
.sb-l{font-size:.54rem;letter-spacing:.13em;text-transform:uppercase;color:var(--mu);margin-top:.35rem}

/* ── AFRICA ── */
.africa{background:var(--w);padding:9rem 5vw;display:grid;grid-template-columns:1fr 1fr;gap:6rem;align-items:start}
.africa-left h2{font-family:var(--se);font-size:clamp(2rem,3.5vw,3rem);font-weight:300;line-height:1.12;color:var(--ink);margin-bottom:1.5rem}
.africa-left h2 em{font-style:italic;color:var(--r)}
.africa-left p{font-size:.86rem;color:var(--mu);line-height:1.92;margin-bottom:1rem;max-width:490px}
.africa-facts{display:grid;grid-template-columns:1fr 1fr;gap:1.5px;background:var(--border);margin-top:2.5rem}
.af{background:var(--w);padding:2.2rem;transition:background .2s}
.af:hover{background:var(--cr)}
.af-n{font-family:var(--se);font-size:2.5rem;font-weight:300;color:var(--r);line-height:1;margin-bottom:.3rem}
.af-n em{font-size:1.1rem;color:var(--o);font-style:normal}
.af-l{font-size:.61rem;letter-spacing:.12em;text-transform:uppercase;color:var(--mu)}
.africa-right{display:flex;flex-direction:column;gap:1.5px;background:var(--border)}
.africa-approach{background:var(--cr);padding:2.8rem;transition:background .2s}
.africa-approach:hover{background:var(--w)}
.aa-num{font-size:.58rem;letter-spacing:.2em;text-transform:uppercase;color:var(--o);margin-bottom:.8rem;font-weight:500}
.africa-approach h4{font-family:var(--se);font-size:1.15rem;font-weight:400;color:var(--ink);margin-bottom:.5rem;line-height:1.2}
.africa-approach p{font-size:.78rem;color:var(--mu);line-height:1.78}

/* ── ESG BAND ── */
.esg-band{position:relative;min-height:60vh;display:flex;align-items:center;overflow:hidden}
.esg-band-bg{position:absolute;inset:0}
.esg-band-bg img{object-position:center 30%}
.esg-band-bg::after{content:'';position:absolute;inset:0;background:linear-gradient(to right,rgba(249,245,240,.97) 0%,rgba(249,245,240,.88) 40%,rgba(249,245,240,.2) 100%)}
.esg-body{position:relative;z-index:2;padding:0 5vw;max-width:580px}
.esg-body h2{font-family:var(--se);font-size:clamp(2rem,4vw,3.4rem);font-weight:300;color:var(--ink);line-height:1.1;margin-bottom:1rem}
.esg-body h2 em{font-style:italic;color:var(--r)}
.esg-body p{font-size:.85rem;color:var(--mu);line-height:1.9;margin-bottom:2rem;max-width:490px}
.esg-pills{display:flex;gap:.7rem;flex-wrap:wrap;margin-bottom:2.5rem}
.ep{font-size:.54rem;letter-spacing:.16em;text-transform:uppercase;color:var(--mu);border:1px solid var(--border);padding:.38rem .9rem;transition:border-color .2s,color .2s,background .2s}
.ep:hover{border-color:var(--r);color:var(--r);background:rgba(125,17,40,.04)}

/* ── PROCESS ── */
.process{background:var(--cr);padding:9rem 5vw}
.process-header{display:grid;grid-template-columns:1fr 1fr;gap:4rem;align-items:end;margin-bottom:5rem}
.process-header h2{font-family:var(--se);font-size:clamp(2rem,3.8vw,3.2rem);font-weight:300;color:var(--ink);line-height:1.08}
.process-header h2 em{font-style:italic;color:var(--r)}
.process-header p{font-size:.85rem;color:var(--mu);line-height:1.9}
.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:1.5px;background:var(--border)}
.step{background:var(--w);padding:2.8rem 2rem;position:relative;overflow:hidden;transition:background .25s}
.step:hover{background:rgba(125,17,40,.03)}
.step::before{content:'';position:absolute;top:0;left:0;right:0;height:3px;background:var(--o);transform:scaleX(0);transform-origin:left;transition:transform .4s cubic-bezier(.25,.46,.45,.94)}
.step:hover::before{transform:scaleX(1)}
.step-ghost{position:absolute;top:.5rem;right:1rem;font-family:var(--se);font-size:5rem;font-weight:300;color:rgba(26,16,16,.04);line-height:1}
.step-badge{width:38px;height:38px;border:1px solid var(--border);display:flex;align-items:center;justify-content:center;margin-bottom:2rem;background:var(--cr);transition:border-color .3s}
.step:hover .step-badge{border-color:var(--o)}
.step-badge span{font-size:.55rem;letter-spacing:.14em;color:var(--r)}
.step h3{font-family:var(--se);font-size:1.1rem;font-weight:400;color:var(--ink);margin-bottom:.6rem;line-height:1.2}
.step p{font-size:.74rem;color:var(--mu);line-height:1.72}

/* ── CTA ── */
.cta{background:var(--r);padding:9rem 5vw;display:grid;grid-template-columns:1fr auto;gap:6rem;align-items:center}
.cta-left h2{font-family:var(--se);font-size:clamp(2.2rem,4.5vw,4rem);font-weight:300;color:var(--w);line-height:1.06;margin-bottom:1rem;letter-spacing:-.01em}
.cta-left h2 em{font-style:italic;color:var(--o)}
.cta-left p{font-size:.87rem;color:rgba(255,255,255,.55);line-height:1.9;max-width:560px}
.cta-right{display:flex;flex-direction:column;gap:1rem;align-items:flex-end;flex-shrink:0}
.cta-note{font-size:.68rem;color:rgba(255,255,255,.3);letter-spacing:.05em;text-align:right;margin-top:.5rem}
.cta-note a{color:rgba(255,255,255,.45);transition:color .2s}
.cta-note a:hover{color:var(--o)}

/* ── REVEAL ── */
/* CSS-only fallback: after 1.5s elements become visible regardless of JS */
@keyframes tcs-rv-fallback{0%,60%{opacity:0;transform:translateY(22px)}100%{opacity:1;transform:none}}
.rv{opacity:0;transform:translateY(22px);transition:opacity .75s ease,transform .75s ease;animation:tcs-rv-fallback 1.8s forwards}
.rv.in{opacity:1;transform:none;animation:none}
.d1{transition-delay:.12s}.d2{transition-delay:.22s}.d3{transition-delay:.32s}.d4{transition-delay:.42s}
/* delay the fallback animation too */
.rv.d1{animation-delay:.12s}.rv.d2{animation-delay:.22s}.rv.d3{animation-delay:.32s}.rv.d4{animation-delay:.42s}

/* Elementor editor & preview: always show reveal elements immediately */
body.elementor-editor-active .rv,
body.elementor-page .rv.in{animation:none}
body.elementor-editor-active .rv{opacity:1!important;transform:none!important}

/* ── RESPONSIVE ── */
@media(max-width:1100px){
  .intro,.split,.africa{grid-template-columns:1fr}
  .intro-img,.split-img{height:55vw}
  .opps{grid-template-columns:1fr 1fr;height:auto}.opp{height:55vw}
  .services-header,.process-header,.cta{grid-template-columns:1fr;gap:3rem}
  .cta-right{align-items:flex-start}
  .svc-icons{grid-template-columns:1fr 1fr}
  .svc-list-wrap{grid-template-columns:1fr}
  .steps{grid-template-columns:1fr 1fr}
}
@media(max-width:680px){
  .opps{grid-template-columns:1fr}.opp{height:70vw}
  .svc-icons{grid-template-columns:1fr}
  .steps{grid-template-columns:1fr}
  .africa-facts{grid-template-columns:1fr 1fr}
  .stats-bar{grid-template-columns:1fr}
  .hero-body,.intro-body,.esg-body{padding-left:1.5rem;padding-right:1.5rem}
  .services-section,.africa,.process{padding:6rem 1.5rem}
  .split-body,.cta{padding:5rem 1.5rem}
}

/* ── HARD OVERRIDES — explicit hex for every var() color so theme cannot break them ────────── */

/* var(--mu) = #8a7a72 — muted warm gray, used as body/secondary text throughout */
.hero-unlock{color:#8a7a72!important}
.hs-pill span{color:#8a7a72!important}
.services-header p{color:#8a7a72!important}
.svc-ic p{color:#8a7a72!important}
.svc-line{color:#8a7a72!important}
.svc-line:hover{color:#1a1010!important}
.ep{color:#8a7a72!important}
.split-body p{color:#8a7a72!important}
.sb-l{color:#8a7a72!important}
.africa-left p{color:#8a7a72!important}
.af-l{color:#8a7a72!important}
.africa-approach p{color:#8a7a72!important}
.esg-body p{color:#8a7a72!important}
.process-header p{color:#8a7a72!important}
.step p{color:#8a7a72!important}
.intro-body p{color:#8a7a72!important}

/* var(--o) = #f58000 — orange, used for accents, tags, eyebrows */
.hero-tag{color:#f58000!important}
.ew-o{color:#f58000!important}
.opp-tag{color:#f58000!important}
.opp-2 .opp-tag{color:#f9f5f0!important}
.opp-3 .opp-tag{color:#1a1010!important}
.svc-list-col h4 span{color:#f58000!important}
.sb-n sup{color:#f58000!important}
.af-n em{color:#f58000!important;font-style:normal!important}
.aa-num{color:#f58000!important}
.btn-orange{background:#f58000!important;color:#ffffff!important}
.btn-orange:hover{background:#f58000!important;opacity:.9;color:#ffffff!important}

/* var(--r) = #7d1128 — dark red */
.btn-red{background:#7d1128!important;color:#ffffff!important}
.btn-red:hover{background:#5c0d1e!important;color:#ffffff!important}
.ew-r{color:#7d1128!important}
.svc-line::before{color:#7d1128!important}

/* var(--w) = #ffffff — white text on dark backgrounds */
.cta-left h2{color:#ffffff!important}
.cta-left h2 em{color:#f58000!important}
.cta-left p{color:rgba(255,255,255,.55)!important}
.opp-body h3{color:#ffffff!important}
