/* ECOTECH CLEAN CSS BUNDLE — generated from the final approved cascade */


/* ===== SOURCE: home-v3.css ===== */


/* =========================================================
   ECOTECH HOMEPAGE V3 — LIVING ECOSYSTEM
   Fully scoped. Explicitly neutralizes legacy global rules.
   ========================================================= */
.home-page-v3,.home-page-v3 *{box-sizing:border-box}
.home-page-v3{--n:#17252B;--paper:#E9E7DF;--muted:#3E524E;--blue:#3E7D82;--teal:#3E7D82;--violet:#625C70;--orange:#B66F52;background:var(--paper);color:#17252B;overflow-x:hidden}
.home-page-v3 p{display:block;float:none;position:static;max-width:none;margin-block-start:0;margin-block-end:0;line-height:inherit;flex:none}
.home-page-v3 a,.home-page-v3 button{font-family:inherit;text-transform:none;letter-spacing:normal}
/* Link reset only for main content, not chrome */
.home-page-v3 main a{
  text-decoration:none;
}
/* Restore primary nav visibility on dark topbar (homepage was forcing color:inherit) */
.home-page-v3 .topbar a,
.home-page-v3 .nav a,
.home-page-v3 .nav-parent{
  color:rgba(255,255,255,0.88)!important;
  background:none!important;
  box-shadow:none!important;
}
.home-page-v3 .nav a:hover,
.home-page-v3 .nav-parent:hover,
.home-page-v3 .nav a.active{
  color:#fff!important;
}
.home-page-v3 .mega a,
.home-page-v3 .mega-link{
  color:var(--n,#17252B)!important;
  background:none!important;
  padding:inherit;
}
.home-page-v3 .mega-col-title{
  color:var(--muted,#3E524E)!important;
}
.home-page-v3 .footer a{
  color:inherit!important;
}
.home-page-v3 button{appearance:none;-webkit-appearance:none;border:0;background:none;padding:0;color:inherit}
.home-page-v3 h1,.home-page-v3 h2,.home-page-v3 h3{position:static;float:none;max-width:none;margin-block-start:0;margin-block-end:0;line-height:normal}
.v3-hero{min-height:clamp(320px,42vh,480px);display:grid;place-items:center;text-align:center;padding:56px 22px 70px;position:relative;background:radial-gradient(circle at 50% 58%,rgba(255,255,255,.96),transparent 50%),var(--paper)}
.v3-hero:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 15% 38%,rgba(63,114,239,.10),transparent 24%),radial-gradient(circle at 85% 30%,rgba(141,73,214,.08),transparent 24%),radial-gradient(circle at 56% 88%,rgba(22,167,143,.08),transparent 25%);pointer-events:none}
.v3-hero__content{position:relative;max-width:940px}.v3-eyebrow,.v3-kicker{font-size:10px!important;font-weight:800!important;letter-spacing:.17em!important;text-transform:uppercase;color:#718197}.v3-eyebrow{display:inline-flex;align-items:center;gap:8px;padding:8px 15px;border-radius:999px;background:#e4f3f7;border:1px solid rgba(24,169,214,.14);color:#3E7D82}.v3-eyebrow span{width:7px;height:7px;border-radius:50%;background:#8CC5C4;box-shadow:0 0 0 4px rgba(24,169,214,.1)}
.v3-hero h1{margin:22px auto 16px!important;color:var(--n);font-size:clamp(48px,7.2vw,96px)!important;line-height:.94!important;letter-spacing:-.06em!important}.v3-hero h1 em{font-style:normal;color:#3E7D82}.v3-hero p{max-width:700px!important;margin:0 auto!important;color:#637286;font-size:clamp(15px,1.5vw,18px);line-height:1.55!important}.v3-actions{display:flex;justify-content:center;gap:12px;margin-top:30px}.v3-btn{display:inline-flex!important;align-items:center;justify-content:center;gap:10px;padding:13px 18px!important;border-radius:999px!important;font-size:11px!important;font-weight:800!important;transition:transform .2s ease,box-shadow .2s ease,background .2s ease!important}.v3-btn--dark{background:var(--n)!important;color:#fff!important;box-shadow:0 12px 25px rgba(7,23,47,.16)!important}.v3-btn--light{background:rgba(255,255,255,.68)!important;color:#496077!important;border:1px solid rgba(19,48,76,.12)!important}.v3-btn:hover{transform:translateY(-2px)}.v3-btn span{font-size:15px}
.v3-signal{padding:48px 20px 40px;background:linear-gradient(180deg,#eef2ee,#E9E7DF)}.v3-intro{width:min(760px,100%);margin:0 auto 38px;text-align:center}.v3-intro h2,.v3-start__head h2,.v3-depth__head h2,.v3-industries h2,.v3-final h2{margin:9px 0 11px!important;color:var(--n);font-size:clamp(33px,4.4vw,56px)!important;line-height:1.03!important;letter-spacing:-.05em!important}.v3-intro p,.v3-start__head p,.v3-depth__head p,.v3-industries p,.v3-final p{color:var(--muted);font-size:14px;line-height:1.6!important}
.v3-system{position:relative;width:min(1200px,100%);height:650px;margin:auto;overflow:hidden;border:1px solid rgba(255,255,255,.96);border-radius:34px;background:radial-gradient(circle at 50% 50%,rgba(255,255,255,.96),rgba(233,239,237,.78));box-shadow:0 25px 70px rgba(12,39,60,.10)}
.v3-system__wash{position:absolute;border-radius:50%;pointer-events:none;filter:blur(2px)}.v3-wash-a{width:420px;height:420px;left:-170px;top:145px;background:radial-gradient(circle,rgba(63,114,239,.13),transparent 68%)}.v3-wash-b{width:480px;height:480px;left:30%;top:70px;background:radial-gradient(circle,rgba(22,167,143,.075),transparent 70%)}.v3-wash-c{width:420px;height:420px;right:-130px;top:155px;background:radial-gradient(circle,rgba(141,73,214,.11),transparent 68%)}
.v3-connections{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}.v3-connection{fill:none;stroke-linecap:round}.v3-connection--base{stroke:rgba(31,104,155,.13);stroke-width:2}.v3-connection--quiet{stroke:rgba(95,101,175,.07);stroke-width:1.3;stroke-dasharray:5 12}.v3-connection--signal{stroke:url(#v3Flow);stroke-width:3;stroke-dasharray:10 18;opacity:.48;animation:v3Signal 7s linear infinite}@keyframes v3Signal{to{stroke-dashoffset:-140}}.v3-particle{fill:#fff;filter:drop-shadow(0 0 7px rgba(31,140,190,.75))}.v3-particle--two{filter:drop-shadow(0 0 7px rgba(141,73,214,.65))}
.v3-node{position:absolute;z-index:5;width:128px;height:128px;border-radius:50%;display:flex!important;flex-direction:column;align-items:center;justify-content:center;cursor:pointer;background:rgba(255,255,255,.82)!important;border:1px solid rgba(255,255,255,.95)!important;box-shadow:0 10px 28px rgba(12,39,60,.08)!important;transition:transform .28s ease,box-shadow .28s ease,opacity .28s ease,filter .28s ease!important}.v3-node:focus-visible{outline:2px solid #3E7D82;outline-offset:4px}.v3-node__orbit{position:absolute;inset:-7px;border-radius:50%;border:1px solid transparent;transition:inset .28s ease,box-shadow .28s ease}.v3-node b{position:relative;font-size:10px!important;letter-spacing:.13em!important;color:var(--n)}.v3-node small{position:relative;margin-top:7px!important;font-size:8px!important;color:#748398}.v3-node--data{left:8%;top:39%}.v3-node--insight{left:28%;top:10%}.v3-node--intelligence{right:27%;top:9%}.v3-node--people{right:7%;top:39%}.v3-node--outcome{left:43%;bottom:7%}.v3-node--data .v3-node__orbit{border-color:rgba(63,114,239,.23)}.v3-node--insight .v3-node__orbit{border-color:rgba(22,167,143,.23)}.v3-node--intelligence .v3-node__orbit{border-color:rgba(141,73,214,.23)}.v3-node--people .v3-node__orbit{border-color:rgba(239,138,36,.23)}.v3-node--outcome .v3-node__orbit{border-color:rgba(24,169,214,.23)}.v3-node.is-active,.v3-node:hover{transform:scale(1.09);box-shadow:0 22px 44px rgba(12,39,60,.16)!important}.v3-node.is-active .v3-node__orbit,.v3-node:hover .v3-node__orbit{inset:-14px;box-shadow:0 0 0 5px rgba(255,255,255,.5)}
.v3-core{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);z-index:6;width:154px;height:154px;border-radius:50%;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;background:rgba(7,23,47,.96);color:#fff;box-shadow:0 0 0 11px rgba(255,255,255,.5),0 25px 55px rgba(7,23,47,.20)}.v3-core__ring{position:absolute;inset:-20px;border-radius:50%;border:1px dashed rgba(47,133,176,.26);animation:v3Ring 28s linear infinite}@keyframes v3Ring{to{transform:rotate(360deg)}}.v3-core strong{font-size:17px;letter-spacing:.14em}.v3-core span{margin-top:6px;color:#b8c5d3;font-size:8px}
.v3-detail{position:absolute;right:20px;bottom:20px;z-index:10;width:300px;min-height:185px;padding:16px 17px;border-radius:18px;background:rgba(7,23,47,.94);color:#fff;box-shadow:0 20px 45px rgba(7,23,47,.20);backdrop-filter:blur(12px);opacity:0;transform:translateY(10px);pointer-events:none;transition:opacity .25s ease,transform .25s ease}.v3-detail.is-visible{opacity:1;transform:none;pointer-events:auto}.v3-detail__top{display:flex;align-items:center;justify-content:space-between}.v3-detail__top>span{font-size:8px;font-weight:800;letter-spacing:.14em;color:#75c8d5}.v3-detail__top button{width:24px;height:24px;border-radius:50%;background:rgba(255,255,255,.08)!important;color:#c7d2dc!important;font-size:17px;line-height:1;cursor:pointer}.v3-detail h3{margin:7px 0 5px!important;font-size:17px!important;color:#fff!important}.v3-detail p{color:#afbdcc!important;font-size:9px!important;line-height:1.45!important}.v3-detail__services,.v3-detail__logos{display:flex;flex-wrap:wrap;gap:5px;margin-top:10px}.v3-detail__services span{padding:5px 7px;border-radius:999px;background:rgba(255,255,255,.08);font-size:8px;color:#d5dfe8}.v3-detail__logos span{display:inline-flex;align-items:center;justify-content:center;min-width:31px;height:30px;padding:4px 7px;border-radius:8px;background:#fff}.v3-detail__logos img{max-width:58px;max-height:20px;width:auto;height:auto;display:block;object-fit:contain}.v3-detail__links{display:flex;gap:12px;margin-top:12px}.v3-detail__links a{color:#75d0d8!important;font-size:9px!important;font-weight:800!important}.v3-detail__links a:last-child{color:#c8a5ef!important}.v3-detail__links b{font-size:12px;margin-left:3px}.v3-system__hint{position:absolute;left:21px;bottom:24px;color:#7d8b9b;font-size:8px;font-weight:800;letter-spacing:.15em}.v3-system__hint span{margin:0 5px;color:#4f8aa1}.v3-counts{width:min(850px,100%);margin:24px auto 0;display:flex;justify-content:center;align-items:center;gap:18px;color:#718095}.v3-counts div{display:flex;gap:6px;align-items:baseline}.v3-counts strong{font-size:19px;color:var(--n)}.v3-counts span{font-size:9px}.v3-counts i{width:1px;height:18px;background:rgba(19,48,76,.13)}
.v3-start{padding:48px 22px;background:#fff}.v3-start__head{width:min(1180px,100%);margin:0 auto 32px;display:flex;align-items:end;justify-content:space-between;gap:30px}.v3-start__head h2{max-width:760px}.v3-start__head p{max-width:620px}.v3-inline-link{white-space:nowrap;color:#3E7D82!important;font-size:10px!important;font-weight:800!important}.v3-inline-link span{font-size:14px;margin-left:5px}.v3-problems{width:min(1180px,100%);margin:auto;display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.v3-problem{display:grid;grid-template-columns:30px 1fr 20px;gap:14px;align-items:center;padding:21px!important;border-radius:19px;background:#fafbfb!important;border:1px solid rgba(19,48,76,.08)!important;text-decoration:none!important;transition:transform .22s ease,box-shadow .22s ease,background .22s ease!important}.v3-problem:hover{transform:translateY(-4px);background:#fff!important;box-shadow:0 18px 38px rgba(12,39,60,.10)!important}.v3-problem>span{font:800 8px JetBrains Mono,monospace;color:#7c8a9b}.v3-problem h3{margin:0 0 5px!important;color:var(--n)!important;font-size:15px!important}.v3-problem p{color:#718095!important;font-size:10px!important;line-height:1.4!important}.v3-problem>b{font-size:17px;color:#637487}.v3-problem--blue{border-top:2px solid var(--blue)!important}.v3-problem--teal{border-top:2px solid var(--teal)!important}.v3-problem--violet{border-top:2px solid var(--violet)!important}.v3-problem--orange{border-top:2px solid var(--orange)!important}
.v3-depth{padding:48px 22px;background:#f7f7f4}.v3-depth__head{width:min(760px,100%);margin:0 auto 35px;text-align:center}.v3-depth__cards{width:min(980px,100%);margin:auto;display:grid;grid-template-columns:1fr 1fr;gap:14px}.v3-depth-card{position:relative;min-height:245px;padding:30px!important;border-radius:24px;background:#fff!important;text-decoration:none!important;border-top:3px solid var(--teal)!important;transition:transform .22s ease,box-shadow .22s ease!important}.v3-depth-card--tech{border-top-color:var(--violet)!important}.v3-depth-card:hover{transform:translateY(-5px);box-shadow:0 20px 42px rgba(12,39,60,.11)!important}.v3-depth-card>span{font-size:9px;font-weight:900;letter-spacing:.15em;color:#718095}.v3-depth-card h3{margin:15px 0 9px!important;font-size:30px!important;letter-spacing:-.04em!important;color:var(--n)!important}.v3-depth-card p{max-width:390px;color:#718095!important;font-size:11px!important;line-height:1.55!important}.v3-depth-card strong{position:absolute;left:30px;bottom:25px;color:#3E7D82;font-size:9px}.v3-depth-card strong b{font-size:14px;margin-left:5px}
.v3-industries{padding:48px max(22px,calc((100vw - 1180px)/2));display:flex;align-items:center;justify-content:space-between;gap:40px;background:#fff;border-top:1px solid rgba(19,48,76,.06)}.v3-industries>div{max-width:780px}.v3-industries h2{font-size:clamp(30px,4vw,49px)!important}.v3-industries p{max-width:620px}.v3-industries>a{white-space:nowrap;background:var(--n)!important;color:#fff!important;padding:13px 17px!important;border-radius:999px!important;font-size:10px!important;font-weight:800!important}.v3-industries>a span{font-size:14px;margin-left:7px}
.v3-final{position:relative;display:flex;align-items:center;justify-content:space-between;gap:30px;padding:82px max(22px,calc((100vw - 1180px)/2));background:#fff}.v3-final__bar{position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,var(--blue),var(--teal),var(--violet),var(--orange))}.v3-final h2{font-size:clamp(33px,4vw,54px)!important;margin-bottom:6px!important}.v3-final>a{display:inline-flex!important;align-items:center;gap:11px;white-space:nowrap;background:var(--n)!important;color:#fff!important;padding:15px 19px!important;border-radius:999px!important;font-size:11px!important;font-weight:800!important;box-shadow:0 12px 25px rgba(7,23,47,.16)!important}.v3-final>a span{font-size:16px}
@media(max-width:900px){.v3-system{height:700px}.v3-node{width:116px;height:116px}.v3-node--data{left:6%;top:39%}.v3-node--insight{left:25%;top:8%}.v3-node--intelligence{right:24%;top:8%}.v3-node--people{right:5%;top:39%}.v3-node--outcome{left:42%;bottom:10%}.v3-detail{right:15px;bottom:15px;width:285px}.v3-system__hint{left:15px;bottom:20px}.v3-start__head{display:block}.v3-inline-link{display:inline-block;margin-top:13px}.v3-depth__cards{max-width:800px}}
@media(max-width:700px){.v3-hero{min-height:520px}.v3-actions{flex-direction:column;align-items:stretch}.v3-btn{justify-content:center}.v3-signal{padding:78px 13px 65px}.v3-system{height:auto;max-height:520px;border-radius:24px}.v3-node{width:104px;height:104px}.v3-node b{font-size:9px!important}.v3-node small{font-size:7px!important}.v3-node--data{left:3%;top:33%}.v3-node--insight{left:19%;top:5%}.v3-node--intelligence{right:18%;top:5%}.v3-node--people{right:3%;top:33%}.v3-node--outcome{left:38%;bottom:21%}.v3-core{width:126px;height:126px}.v3-detail{left:14px;right:14px;bottom:14px;width:auto;min-height:155px}.v3-system__hint{display:none}.v3-counts{gap:8px}.v3-counts strong{font-size:15px}.v3-counts span{font-size:7px}.v3-counts i{height:14px}.v3-problems{grid-template-columns:1fr}.v3-depth__cards{grid-template-columns:1fr}.v3-depth-card{min-height:215px}.v3-industries{padding:75px 20px;display:block}.v3-industries>a{display:inline-flex;margin-top:20px}.v3-final{padding:72px 20px;display:block}.v3-final>a{display:inline-flex;margin-top:20px}}
@media(max-width:430px){.v3-hero h1{font-size:45px!important}.v3-intro h2,.v3-start__head h2,.v3-depth__head h2,.v3-industries h2,.v3-final h2{font-size:33px!important}.v3-system{height:735px}.v3-node{width:92px;height:92px}.v3-node b{font-size:8px!important}.v3-node small{font-size:6.5px!important}.v3-node--data{left:2%;top:31%}.v3-node--insight{left:16%;top:5%}.v3-node--intelligence{right:15%;top:5%}.v3-node--people{right:2%;top:31%}.v3-node--outcome{left:36%;bottom:22%}.v3-core{width:112px;height:112px}.v3-core strong{font-size:13px}.v3-detail{min-height:152px;padding:13px}.v3-detail h3{font-size:14px!important}}
@media(prefers-reduced-motion:reduce){.v3-connection--signal,.v3-core__ring{animation:none}.v3-particle{display:none}.v3-btn,.v3-node,.v3-problem,.v3-depth-card{transition:none}}

/* --- Visual richness + path (replaces broken signal diagram) --- */
.home-page-v3{
  --n:#17252B;
  --paper:#E9E7DF;
  --muted:#3E524E;
  --blue:#3E7D82;
  --teal:#3E7D82;
  --violet:#625C70;
  --orange:#B66F52;
  --rose:#e11d48;
  background:var(--paper);
  color:#17252B;
}

/* Don't strip designed link colors on interactive chrome */
.home-page-v3 a.v3-btn,
.home-page-v3 a.v3-problem,
.home-page-v3 a.v3-depth-card,
.home-page-v3 a.v3-path-step,
.home-page-v3 a.v3-inline-link,
.home-page-v3 .v3-final a,
.home-page-v3 .v3-industries a{
  color:inherit;
}

.v3-hero h1{
  color:var(--n)!important;
  max-width:16ch;
  margin-left:auto;margin-right:auto;
}
.v3-hero h1 em{
  font-style:normal;
  background:linear-gradient(120deg,var(--blue),var(--teal),var(--violet));
  -webkit-background-clip:text;
  background-clip:text;
  color:transparent;
  -webkit-text-fill-color:transparent;
}
.v3-hero p{color:var(--muted)!important;max-width:46ch;margin-left:auto;margin-right:auto}

/* Stronger problem cards */
.v3-start{background:linear-gradient(180deg,#fff 0%,#f7f8fa 100%)}
.v3-problem--blue{background:linear-gradient(180deg,#f7faff,#fff)!important;border-color:rgba(63,114,239,.18)!important}
.v3-problem--teal{background:linear-gradient(180deg,#f3fbf9,#fff)!important;border-color:rgba(22,167,143,.18)!important}
.v3-problem--violet{background:linear-gradient(180deg,#f8f5fc,#fff)!important;border-color:rgba(141,73,214,.18)!important}
.v3-problem--orange{background:linear-gradient(180deg,#fff8f2,#fff)!important;border-color:rgba(239,138,36,.2)!important}
.v3-problem h3{font-size:16px!important}
.v3-problem p{font-size:12.5px!important;line-height:1.5!important;color:#5c6b7e!important}

/* Connection path — colorful, static, clickable */
.v3-signal{
  padding:48px 20px 40px!important;
  background:
    radial-gradient(ellipse at 20% 0%,rgba(63,114,239,.08),transparent 50%),
    radial-gradient(ellipse at 80% 100%,rgba(141,73,214,.07),transparent 45%),
    linear-gradient(180deg,#eef2ee,#E9E7DF)!important;
}
.v3-path{
  width:min(1100px,100%);
  margin:0 auto 28px;
  display:flex;
  flex-wrap:wrap;
  align-items:stretch;
  justify-content:center;
  gap:0;
}
.v3-path-step{
  flex:1 1 140px;
  max-width:180px;
  min-width:130px;
  display:flex;
  flex-direction:column;
  gap:6px;
  padding:22px 16px!important;
  border-radius:20px;
  text-decoration:none!important;
  background:#fff!important;
  border:1px solid rgba(19,48,76,.08)!important;
  box-shadow:0 8px 28px rgba(12,39,60,.06);
  transition:transform .3s cubic-bezier(.22,1,.36,1),box-shadow .3s;
  position:relative;
  overflow:hidden;
}
.v3-path-step::before{
  content:"";
  position:absolute;left:0;top:0;right:0;height:3px;
}
.v3-path-step--data::before{background:var(--blue)}
.v3-path-step--insight::before{background:var(--teal)}
.v3-path-step--intel::before{background:var(--violet)}
.v3-path-step--people::before{background:var(--orange)}
.v3-path-step--outcome::before{background:linear-gradient(90deg,var(--violet),var(--orange))}
.v3-path-step:hover{
  transform:translateY(-5px);
  box-shadow:0 18px 40px rgba(12,39,60,.12);
}
.v3-path-num{
  font:800 10px JetBrains Mono,ui-monospace,monospace;
  letter-spacing:.08em;
  opacity:.55;
}
.v3-path-step--data .v3-path-num,.v3-path-step--data .v3-path-label{color:var(--blue)}
.v3-path-step--insight .v3-path-num,.v3-path-step--insight .v3-path-label{color:var(--teal)}
.v3-path-step--intel .v3-path-num,.v3-path-step--intel .v3-path-label{color:var(--violet)}
.v3-path-step--people .v3-path-num,.v3-path-step--people .v3-path-label{color:var(--orange)}
.v3-path-step--outcome .v3-path-num,.v3-path-step--outcome .v3-path-label{color:#c2410c}
.v3-path-label{
  font-size:10px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;
}
.v3-path-title{
  font-size:17px;font-weight:800;color:var(--n)!important;letter-spacing:-.03em;line-height:1.15;
}
.v3-path-desc{
  font-size:12px;line-height:1.45;color:#3E524E!important;margin-top:2px;flex:1;
}
.v3-path-go{
  font-size:11px;font-weight:700;color:#3E7D82!important;margin-top:10px;
}
.v3-path-arrow{
  width:18px;flex:0 0 18px;
  align-self:center;
  height:2px;
  background:linear-gradient(90deg,rgba(63,114,239,.35),rgba(141,73,214,.35));
  border-radius:2px;
  position:relative;
}
.v3-path-arrow::after{
  content:"";
  position:absolute;right:-3px;top:-3px;
  border:4px solid transparent;border-left-color:rgba(141,73,214,.4);
}
.v3-path-note{
  width:min(640px,100%);
  margin:0 auto;
  text-align:center;
  font-size:13.5px;
  line-height:1.55;
  color:var(--muted);
  padding:14px 18px;
  border-radius:14px;
  background:rgba(255,255,255,.7);
  border:1px solid rgba(19,48,76,.06);
}

/* Depth cards more vivid */
.v3-depth{background:linear-gradient(180deg,#f0f2f5,#f7f7f4)!important}
.v3-depth-card--service{
  background:linear-gradient(165deg,#fff 40%,#eef4ff)!important;
  border-top-color:var(--blue)!important;
}
.v3-depth-card--tech{
  background:linear-gradient(165deg,#fff 40%,#f5f0fb)!important;
  border-top-color:var(--violet)!important;
}
.v3-depth-card h3{color:var(--n)!important}
.v3-depth-card--service strong{color:var(--blue)!important}
.v3-depth-card--tech strong{color:var(--violet)!important}

/* Final CTA more energy */
.v3-final{
  background:linear-gradient(120deg,#17252B 0%,#16221F 50%,#16221F 100%)!important;
  color:#fff!important;
}
.v3-final h2,.v3-final .v3-kicker{color:#fff!important}
.v3-final p{color:rgba(255,255,255,.7)!important}
.v3-final a{
  background:#fff!important;color:var(--n)!important;
  padding:14px 22px!important;border-radius:999px!important;
  font-weight:800!important;font-size:12px!important;
  display:inline-flex!important;align-items:center;gap:8px;
  box-shadow:0 12px 30px rgba(0,0,0,.25)!important;
}
.v3-final a:hover{transform:translateY(-2px)}

.v3-industries{
  background:
    radial-gradient(circle at 90% 20%,rgba(22,167,143,.08),transparent 40%),
    #fff!important;
}

@media(max-width:900px){
  .v3-path-arrow{display:none}
  .v3-path{gap:10px}
  .v3-path-step{flex:1 1 calc(50% - 10px);max-width:none}
}
@media(max-width:560px){
  .v3-path-step{flex:1 1 100%}
}
@media(prefers-reduced-motion:reduce){
  .v3-path-step{transition:none}
  .v3-path-step:hover{transform:none}
}

/* =========================================================
   Matte color system — soft, premium, non-neon
   ========================================================= */
.home-page-v3{
  --n:#17252B;
  --paper:#E9E7DF;          /* warm stone */
  --paper-2:#F2F0E9;        /* deeper clay */
  --mist:#F2F0E9;           /* cool mist */
  --sage:#E9E7DF;           /* soft sage */
  --sand:#F2F0E9;           /* warm sand */
  --muted:#3E524E;
  --blue:#3E7D82;           /* matte blue */
  --teal:#3E7D82;           /* matte teal */
  --violet:#625C70;         /* matte violet */
  --orange:#B66F52;         /* matte amber */
  --ink:#17252B;
  background:var(--paper);
  color:var(--ink);
}

.v3-kicker{color:#6a7a8c!important}

/* Section surfaces — alternating matte fields */
.v3-hero{
  background:
    radial-gradient(circle at 50% 60%,rgba(255,255,255,.9),transparent 52%),
    radial-gradient(circle at 12% 40%,rgba(58,111,216,.09),transparent 28%),
    radial-gradient(circle at 88% 28%,rgba(124,79,184,.07),transparent 26%),
    var(--paper)!important;
}
.v3-start{
  background:linear-gradient(180deg,#f7f5f1 0%,var(--mist) 100%)!important;
}
.v3-signal{
  background:
    radial-gradient(ellipse at 15% 10%,rgba(58,111,216,.07),transparent 45%),
    radial-gradient(ellipse at 85% 90%,rgba(124,79,184,.06),transparent 40%),
    var(--sage)!important;
}
.v3-depth{
  background:linear-gradient(180deg,var(--sand),#f3efe8)!important;
}
.v3-industries{
  background:
    radial-gradient(circle at 92% 18%,rgba(42,154,134,.08),transparent 42%),
    #f8f6f2!important;
}
.v3-final{
  background:linear-gradient(125deg,#17252B 0%,#16221F 48%,#1A2A26 100%)!important;
}

/* Problem cards — matte tints */
.v3-problem--blue{background:linear-gradient(180deg,#eef3fb,#faf9f7)!important;border-color:rgba(58,111,216,.16)!important}
.v3-problem--teal{background:linear-gradient(180deg,#eaf6f3,#faf9f7)!important;border-color:rgba(42,154,134,.16)!important}
.v3-problem--violet{background:linear-gradient(180deg,#f3eef8,#faf9f7)!important;border-color:rgba(124,79,184,.16)!important}
.v3-problem--orange{background:linear-gradient(180deg,#faf3ea,#faf9f7)!important;border-color:rgba(212,132,46,.18)!important}

/* Path steps on sage field */
.v3-path-step{
  background:rgba(255,255,255,.92)!important;
  border-color:rgba(11,28,51,.07)!important;
}
.v3-path-note{
  background:rgba(255,255,255,.75)!important;
  color:var(--muted)!important;
}

/* Depth cards */
.v3-depth-card--service{
  background:linear-gradient(165deg,#fffcf8 30%,#e8eef8)!important;
  border-top-color:var(--blue)!important;
}
.v3-depth-card--tech{
  background:linear-gradient(165deg,#fffcf8 30%,#efe8f6)!important;
  border-top-color:var(--violet)!important;
}

/* Hero gradient text — matte stops */
.v3-hero h1 em{
  background:linear-gradient(120deg,var(--blue),var(--teal) 45%,var(--violet));
  -webkit-background-clip:text;
  background-clip:text;
  color:transparent;
  -webkit-text-fill-color:transparent;
}

/* Buttons keep contrast */
.v3-btn--dark{background:var(--n)!important;color:#fff!important}
.v3-btn--light{
  background:rgba(255,255,255,.78)!important;
  color:#3d5168!important;
  border:1px solid rgba(19,48,76,.1)!important;
}


/* ===== SOURCE: home-v7.css ===== */


/* ECOTECH V7 — technology depth marquee */
.hp7-tech-depth{
  --hp7-navy:#07172f;
  position:relative;
  overflow:hidden;
  padding:48px 0 40px;
  background:
    radial-gradient(circle at 20% 50%,rgba(63,114,239,.12),transparent 30%),
    radial-gradient(circle at 82% 45%,rgba(141,73,214,.10),transparent 28%),
    var(--hp7-navy);
  color:#fff;
}
.hp7-tech-depth__head{
  width:min(1180px,calc(100% - 44px));
  margin:0 auto 42px;
  display:flex;
  align-items:end;
  justify-content:space-between;
  gap:30px;
}
.hp7-kicker{color:#7fc7d3;font-size:10px;font-weight:800;letter-spacing:.17em;text-transform:uppercase}
.hp7-tech-depth h2{max-width:760px;margin:10px 0 0;font-size:clamp(31px,4vw,51px);line-height:1.04;letter-spacing:-.045em;color:#fff}
.hp7-tech-depth__stats{display:flex;align-items:baseline;gap:7px;white-space:nowrap;color:#8ea3b6;font-size:9px}
.hp7-tech-depth__stats strong{font-size:22px;color:#fff}
.hp7-tech-depth__stats i{width:1px;height:16px;margin:0 8px;background:rgba(255,255,255,.18)}
.hp7-marquee{position:relative;width:100%;padding:12px 0 37px;overflow:hidden;border-top:1px solid rgba(255,255,255,.12);border-bottom:1px solid rgba(255,255,255,.12);background:rgba(255,255,255,.018)}
.hp7-marquee__row{position:relative;width:100%;overflow:hidden}
.hp7-marquee__row+.hp7-marquee__row{margin-top:10px}
.hp7-marquee__track{width:max-content;display:flex;align-items:center;gap:10px;padding:8px 0;will-change:transform}
.hp7-marquee__row--forward .hp7-marquee__track{animation:hp7-forward 75s linear infinite}
.hp7-marquee__row--reverse .hp7-marquee__track{animation:hp7-reverse 88s linear infinite}
@keyframes hp7-forward{from{transform:translateX(0)}to{transform:translateX(-50%)}}
@keyframes hp7-reverse{from{transform:translateX(-50%)}to{transform:translateX(0)}}
.hp7-logo{flex:0 0 auto;width:126px;height:74px;display:flex;align-items:center;justify-content:center;gap:7px;padding:12px 14px;border:1px solid rgba(255,255,255,.10);border-radius:14px;background:rgba(255,255,255,.045);text-decoration:none;transition:transform .2s ease,background-color .2s ease,border-color .2s ease}
.hp7-logo img{display:block;width:42px;height:42px;max-width:42px;max-height:42px;object-fit:contain;flex:0 0 42px}
.hp7-logo span{max-width:64px;overflow:hidden;color:#d6e0e8;font-size:8px;line-height:1.15;font-weight:700;text-align:left}
.hp7-logo:hover{transform:translateY(-3px);border-color:rgba(117,208,216,.35);background:rgba(255,255,255,.09)}
.hp7-logo--text strong{color:#dbe6ee;font-size:11px;letter-spacing:-.01em}
.hp7-marquee__fade{position:absolute;top:0;bottom:0;z-index:5;width:130px;pointer-events:none}
.hp7-marquee__fade--left{left:0;background:linear-gradient(90deg,#07172f,rgba(7,23,47,0))}
.hp7-marquee__fade--right{right:0;background:linear-gradient(270deg,#07172f,rgba(7,23,47,0))}
.hp7-marquee__hint{position:absolute;z-index:6;left:50%;bottom:9px;transform:translateX(-50%);padding:5px 10px;border-radius:999px;background:rgba(7,23,47,.82);color:#71889c;font-size:7px;font-weight:800;letter-spacing:.14em;white-space:nowrap;backdrop-filter:blur(5px)}
.hp7-marquee__hint span{margin-left:5px;color:#70cbd4;font-size:11px}
.hp7-tech-depth__footer{width:min(1180px,calc(100% - 44px));margin:27px auto 0;display:flex;align-items:center;justify-content:space-between;gap:25px}
.hp7-tech-depth__footer p{margin:0;color:#8fa1b1;font-size:11px}
.hp7-tech-depth__footer a{display:inline-flex;align-items:center;gap:8px;flex:0 0 auto;padding:12px 16px;border:1px solid rgba(255,255,255,.15);border-radius:999px;color:#fff;text-decoration:none;font-size:10px;font-weight:800;transition:.2s}
.hp7-tech-depth__footer a:hover{transform:translateY(-2px);border-color:rgba(117,208,216,.42);background:rgba(255,255,255,.06)}
.hp7-tech-depth__footer a span{font-size:14px;color:#72cbd4}
.hp7-marquee:hover .hp7-marquee__track,.hp7-marquee:focus-within .hp7-marquee__track{animation-play-state:paused}
@media(max-width:760px){
  .hp7-tech-depth{padding:78px 0 68px}
  .hp7-tech-depth__head{width:min(100% - 34px,1180px);display:block;margin-bottom:30px}
  .hp7-tech-depth__stats{margin-top:18px}
  .hp7-logo{width:112px;height:66px;padding:10px 11px}
  .hp7-logo img{width:36px;height:36px;max-width:36px;max-height:36px;flex-basis:36px}
  .hp7-logo span{max-width:57px;font-size:7px}
  .hp7-marquee__fade{width:70px}
  .hp7-tech-depth__footer{width:min(100% - 34px,1180px);display:block}
  .hp7-tech-depth__footer a{margin-top:15px}
}
@media(prefers-reduced-motion:reduce){
  .hp7-marquee__row--forward .hp7-marquee__track,.hp7-marquee__row--reverse .hp7-marquee__track{animation:none}
  .hp7-logo,.hp7-tech-depth__footer a{transition:none}
}


/* ===== SOURCE: home-v9-palette.css ===== */


/* =========================================================
   ECOTECH HOMEPAGE V9 — MATTE MINERAL / FOREST / INK
   Alternative palette:
   Warm Mineral #E9E7DF
   Soft Stone   #F2F0E9
   Limestone    #F7F5EF
   Charcoal Ink #17252B
   Muted Forest #426B5A
   Sage         #789486
   Dusty Teal  #3E7D82
   Terracotta   #B66F52
   ========================================================= */

.home-page-v2,
.home-page-v3,
.home-page-v4,
.home-page-v5,
.home-page-v6,
.home-page-v7 {
  --v9-mineral:#E9E7DF;
  --v9-stone:#F2F0E9;
  --v9-limestone:#F7F5EF;
  --v9-ink:#17252B;
  --v9-forest:#426B5A;
  --v9-sage:#789486;
  --v9-teal:#3E7D82;
  --v9-terracotta:#B66F52;
  --v9-muted:#3E524E;
  --v9-line:rgba(23,37,43,.12);

  background:var(--v9-mineral);
  color:var(--v9-ink);
}

/* Hero */
.home-page-v2 .hp2-hero,
.home-page-v3 .hp3-hero,
.home-page-v4 .hp4-hero,
.home-page-v5 .hp5-hero,
.home-page-v6 .hp6-hero,
.home-page-v7 .hp7-hero{
  background:
    radial-gradient(circle at 14% 38%,rgba(62,125,130,.10),transparent 25%),
    radial-gradient(circle at 85% 28%,rgba(182,111,82,.07),transparent 23%),
    var(--v9-mineral);
}
.home-page-v2 .hp2-hero h1,
.home-page-v3 .hp3-hero h1,
.home-page-v4 .hp4-hero h1,
.home-page-v5 .hp5-hero h1,
.home-page-v6 .hp6-hero h1,
.home-page-v7 .hp7-hero h1{
  color:var(--v9-ink);
}
.home-page-v2 .hp2-hero h1 em,
.home-page-v3 .hp3-hero h1 em,
.home-page-v4 .hp4-hero h1 em,
.home-page-v5 .hp5-hero h1 em,
.home-page-v6 .hp6-hero h1 em,
.home-page-v7 .hp7-hero h1 em{
  color:var(--v9-forest);
}
.home-page-v2 .hp2-eyebrow,
.home-page-v3 .hp3-eyebrow,
.home-page-v4 .hp4-eyebrow,
.home-page-v5 .hp5-eyebrow,
.home-page-v6 .hp6-eyebrow,
.home-page-v7 .hp7-eyebrow{
  background:rgba(62,125,130,.09);
  border-color:rgba(62,125,130,.16);
  color:var(--v9-teal);
}
.home-page-v2 .hp2-eyebrow span,
.home-page-v3 .hp3-eyebrow span,
.home-page-v4 .hp4-eyebrow span,
.home-page-v5 .hp5-eyebrow span,
.home-page-v6 .hp6-eyebrow span,
.home-page-v7 .hp7-eyebrow span{
  background:var(--v9-teal);
  box-shadow:0 0 0 4px rgba(62,125,130,.10);
}
.home-page-v2 .hp2-btn--dark,
.home-page-v3 .hp3-btn--dark,
.home-page-v4 .hp4-btn--dark,
.home-page-v5 .hp5-btn--dark,
.home-page-v6 .hp6-btn--dark,
.home-page-v7 .hp7-btn--dark{
  background:var(--v9-ink);
}
.home-page-v2 .hp2-btn--light,
.home-page-v3 .hp3-btn--light,
.home-page-v4 .hp4-btn--light,
.home-page-v5 .hp5-btn--light,
.home-page-v6 .hp6-btn--light,
.home-page-v7 .hp7-btn--light{
  background:rgba(247,245,239,.78);
  color:var(--v9-ink);
  border-color:rgba(23,37,43,.13);
}

/* Signal */
.home-page-v2 .hp2-signal,
.home-page-v3 .hp3-signal,
.home-page-v4 .hp4-signal,
.home-page-v5 .hp5-signal,
.home-page-v6 .hp6-signal,
.home-page-v7 .hp7-signal{
  background:linear-gradient(180deg,var(--v9-stone),var(--v9-mineral));
}
.home-page-v2 .hp2-network,
.home-page-v3 .hp3-network,
.home-page-v4 .hp4-network,
.home-page-v5 .hp5-network,
.home-page-v6 .hp6-network,
.home-page-v7 .hp7-network{
  background:radial-gradient(circle at 50% 50%,rgba(247,245,239,.96),rgba(226,224,215,.78));
  border-color:rgba(255,255,255,.90);
  box-shadow:0 25px 70px rgba(23,37,43,.10);
}
.home-page-v2 .hp2-core,
.home-page-v3 .hp3-core,
.home-page-v4 .hp4-core,
.home-page-v5 .hp5-core,
.home-page-v6 .hp6-core,
.home-page-v7 .hp7-core{
  background:var(--v9-ink);
}
.home-page-v2 .hp2-node--data,
.home-page-v3 .hp3-node--data{color:var(--v9-teal)}
.home-page-v2 .hp2-node--insight,
.home-page-v3 .hp3-node--insight{color:var(--v9-forest)}
.home-page-v2 .hp2-node--intelligence,
.home-page-v3 .hp3-node--intelligence{color:#625C70}
.home-page-v2 .hp2-node--people,
.home-page-v3 .hp3-node--people{color:var(--v9-terracotta)}
.home-page-v2 .hp2-node--outcome,
.home-page-v3 .hp3-node--outcome{color:var(--v9-sage)}
.home-page-v2 .hp2-line--active,
.home-page-v3 .hp3-line--active{stroke:var(--v9-teal)}
.home-page-v2 .hp2-particle,
.home-page-v3 .hp3-particle{
  fill:#F7F5EF;
  filter:drop-shadow(0 0 7px rgba(62,125,130,.72));
}

/* Problem / service entry section */
.home-page-v2 .hp2-start,
.home-page-v3 .hp3-start,
.home-page-v4 .hp4-start,
.home-page-v5 .hp5-start,
.home-page-v6 .hp6-start,
.home-page-v7 .hp7-start{
  background:var(--v9-limestone);
}
.home-page-v2 .hp2-problem,
.home-page-v3 .hp3-problem,
.home-page-v4 .hp4-problem,
.home-page-v5 .hp5-problem,
.home-page-v6 .hp6-problem,
.home-page-v7 .hp7-problem{
  background:rgba(255,255,255,.42);
  border-color:var(--v9-line);
}
.home-page-v2 .hp2-problem--blue,
.home-page-v3 .hp3-problem--blue{border-top-color:var(--v9-teal)}
.home-page-v2 .hp2-problem--teal,
.home-page-v3 .hp3-problem--teal{border-top-color:var(--v9-forest)}
.home-page-v2 .hp2-problem--violet,
.home-page-v3 .hp3-problem--violet{border-top-color:#6B6476}
.home-page-v2 .hp2-problem--orange,
.home-page-v3 .hp3-problem--orange{border-top-color:var(--v9-terracotta)}

/* Technology marquee */
.hp7-tech-depth{
  background:
    radial-gradient(circle at 18% 48%,rgba(62,125,130,.13),transparent 31%),
    radial-gradient(circle at 82% 46%,rgba(182,111,82,.09),transparent 28%),
    var(--v9-ink);
}
.hp7-tech-depth h2{color:var(--v9-limestone)}
.hp7-kicker{color:#8EAAA0}
.hp7-tech-depth__stats strong{color:var(--v9-limestone)}
.hp7-logo{
  background:rgba(247,245,239,.045);
  border-color:rgba(247,245,239,.11);
}
.hp7-logo:hover{
  background:rgba(247,245,239,.09);
  border-color:rgba(142,170,160,.42);
}
.hp7-marquee{border-color:rgba(247,245,239,.11)}
.hp7-marquee__fade--left{background:linear-gradient(90deg,var(--v9-ink),rgba(23,37,43,0))}
.hp7-marquee__fade--right{background:linear-gradient(270deg,var(--v9-ink),rgba(23,37,43,0))}
.hp7-marquee__hint{background:rgba(23,37,43,.91);color:#879D94}
.hp7-marquee__hint span{color:#8CC5C4}
.hp7-tech-depth__footer a{border-color:rgba(247,245,239,.16)}
.hp7-tech-depth__footer a:hover{
  border-color:rgba(142,170,160,.42);
  background:rgba(247,245,239,.06);
}
.hp7-tech-depth__footer a span{color:#8CC5C4}
.hp7-logo img{filter:none !important;opacity:1}

/* Depth / lower surfaces */
.home-page-v2 .hp2-depth,
.home-page-v3 .hp3-depth,
.home-page-v4 .hp4-depth,
.home-page-v5 .hp5-depth,
.home-page-v6 .hp6-depth,
.home-page-v7 .hp7-depth{
  background:var(--v9-mineral);
}
.home-page-v2 .hp2-depth-card,
.home-page-v3 .hp3-depth-card{
  background:rgba(247,245,239,.82);
  border-top-color:var(--v9-forest);
}
.home-page-v2 .hp2-depth-card--tech,
.home-page-v3 .hp3-depth-card--tech{
  border-top-color:var(--v9-teal);
}
.home-page-v2 .hp2-industries,
.home-page-v3 .hp3-industries,
.home-page-v4 .hp4-industries,
.home-page-v5 .hp5-industries,
.home-page-v6 .hp6-industries,
.home-page-v7 .hp7-industries,
.home-page-v2 .hp2-final,
.home-page-v3 .hp3-final,
.home-page-v4 .hp4-final,
.home-page-v5 .hp5-final,
.home-page-v6 .hp6-final,
.home-page-v7 .hp7-final{
  background:var(--v9-limestone);
}
.home-page-v2 .hp2-industries__link,
.home-page-v3 .hp3-industries__link,
.home-page-v2 .hp2-final a,
.home-page-v3 .hp3-final a{
  background:var(--v9-ink);
}
.home-page-v2 .hp2-final__bar,
.home-page-v3 .hp3-final__bar{
  background:linear-gradient(90deg,var(--v9-teal),var(--v9-forest),var(--v9-terracotta));
}

/* Preserve the authentic colors of all technology logos */
.hp7-logo img{filter:none !important;opacity:1}


/* ===== SOURCE: home-v13-transitions.css ===== */


/* =========================================================
   ECOTECH HOMEPAGE V13
   CLEAN PALETTE TRANSITIONS

   Design rule:
   Do NOT fade dark into light.
   Do NOT create gray/muddy transition bands.
   Do NOT use gradient pseudo-elements at section edges.

   Instead:
   - light sections use closely related matte neutrals
   - dark sections are uninterrupted solid ink fields
   - the boundary is clean and intentional
   - a very small radius/soft edge is used only where helpful
   ========================================================= */

.home-page-v3{
  --v13-mineral:#E9E7DF;
  --v13-stone:#F0EEE7;
  --v13-limestone:#F5F3EC;
  --v13-ink:#17252B;
  --v13-forest:#426B5A;
  --v13-teal:#3E7D82;
  --v13-copper:#B66F52;
}

/* ---------------------------------------------------------
   GLOBAL: no artificial vertical gaps between sections.
   Internal padding controls the rhythm.
   --------------------------------------------------------- */
.home-page-v3 > main > section{
  margin-top:0 !important;
  margin-bottom:0 !important;
}

/* ---------------------------------------------------------
   LIGHT FIELD
   Keep neighboring light surfaces close enough that they read
   as one continuous matte canvas.
   --------------------------------------------------------- */
.home-page-v3 .v3-hero{
  background:
    radial-gradient(circle at 14% 38%,rgba(62,125,130,.055),transparent 26%),
    radial-gradient(circle at 86% 28%,rgba(182,111,82,.045),transparent 24%),
    var(--v13-mineral) !important;
  padding-bottom:clamp(76px,7vw,104px);
}

.home-page-v3 .v3-signal{
  background:
    radial-gradient(circle at 18% 12%,rgba(62,125,130,.045),transparent 40%),
    var(--v13-stone) !important;
  padding-top:clamp(70px,6.2vw,92px) !important;
  padding-bottom:clamp(76px,6.5vw,100px) !important;
}

.home-page-v3 .v3-start{
  background:var(--v13-limestone) !important;
  padding-top:clamp(72px,6.2vw,98px) !important;
  padding-bottom:clamp(76px,6.2vw,100px) !important;
}

.home-page-v3 .v3-depth{
  background:var(--v13-mineral) !important;
  padding-top:clamp(76px,6.3vw,102px) !important;
  padding-bottom:clamp(76px,6.3vw,102px) !important;
}

.home-page-v3 .v3-industries{
  background:var(--v13-stone) !important;
  padding-top:clamp(70px,6vw,96px) !important;
  padding-bottom:clamp(74px,6.2vw,100px) !important;
}

/* ---------------------------------------------------------
   DARK TECHNOLOGY FIELD
   This is intentionally SOLID.
   No pseudo fade. No light gradient.
   --------------------------------------------------------- */
.home-page-v3 .hp7-tech-depth{
  position:relative;
  isolation:isolate;
  overflow:hidden;
  margin:0 !important;
  padding-top:clamp(86px,7vw,112px);
  padding-bottom:clamp(80px,6.5vw,100px);
  background:var(--v13-ink) !important;
  color:var(--v13-limestone);
  border-radius:0;
}

/* Atmospheric color is contained strictly inside the dark field. */
.home-page-v3 .hp7-tech-depth::before{
  content:"";
  position:absolute;
  inset:0;
  z-index:-1;
  pointer-events:none;
  background:
    radial-gradient(circle at 18% 45%,rgba(62,125,130,.085),transparent 29%),
    radial-gradient(circle at 82% 45%,rgba(182,111,82,.045),transparent 27%);
}

/* Explicitly neutralize every previous edge-fade pseudo-element. */
.home-page-v3 .hp7-tech-depth::after,
.home-page-v3 .v3-hero::after,
.home-page-v3 .v3-signal::after,
.home-page-v3 .v3-start::before,
.home-page-v3 .v3-final::before,
.home-page-v3 .v3-final::after{
  content:none !important;
  display:none !important;
}

/* Keep the marquee itself crisp and contained. */
.home-page-v3 .hp7-tech-depth > *{
  position:relative;
  z-index:1;
}

/* ---------------------------------------------------------
   DARK → LIGHT
   The light section begins immediately after the solid ink.
   No fade, no gray band.
   --------------------------------------------------------- */
.home-page-v3 .hp7-tech-depth + .v3-depth{
  margin-top:0 !important;
  background:var(--v13-mineral) !important;
  padding-top:clamp(76px,6.3vw,102px) !important;
}

/* ---------------------------------------------------------
   FINAL CTA
   Same clean logic: solid ink field, clean boundary.
   --------------------------------------------------------- */
.home-page-v3 .v3-final{
  position:relative;
  isolation:isolate;
  margin:0 !important;
  padding-top:clamp(88px,7vw,116px) !important;
  padding-bottom:clamp(88px,7vw,116px) !important;
  background:var(--v13-ink) !important;
  color:var(--v13-limestone);
}

/* No transitional glow attached to the CTA. */
.home-page-v3 .v3-final::before,
.home-page-v3 .v3-final::after{
  content:none !important;
  display:none !important;
}

/* ---------------------------------------------------------
   RHYTHM: consistent heading-to-content relationships.
   Avoid large arbitrary blank areas.
   --------------------------------------------------------- */
.home-page-v3 .v3-intro,
.home-page-v3 .v3-start__head,
.home-page-v3 .v3-depth__head{
  margin-top:0;
}

.home-page-v3 .v3-intro h2,
.home-page-v3 .v3-start__head h2,
.home-page-v3 .v3-depth__head h2,
.home-page-v3 .v3-industries h2,
.home-page-v3 .v3-final h2{
  margin-top:0 !important;
}

.home-page-v3 .v3-start__head p,
.home-page-v3 .v3-depth__head p{
  margin-bottom:0;
}

/* ---------------------------------------------------------
   MOBILE
   --------------------------------------------------------- */
@media(max-width:760px){
  .home-page-v3 .v3-hero{padding-bottom:64px}
  .home-page-v3 .v3-signal{
    padding-top:56px !important;
    padding-bottom:64px !important;
  }
  .home-page-v3 .v3-start{
    padding-top:58px !important;
    padding-bottom:64px !important;
  }
  .home-page-v3 .hp7-tech-depth{
    padding-top:72px;
    padding-bottom:68px;
  }
  .home-page-v3 .v3-depth{
    padding-top:62px !important;
    padding-bottom:66px !important;
  }
  .home-page-v3 .v3-industries{
    padding-top:58px !important;
    padding-bottom:64px !important;
  }
  .home-page-v3 .v3-final{
    padding-top:74px !important;
    padding-bottom:78px !important;
  }
}

/* No artificial motion introduced by this layer. */


/* ===== SOURCE: home-v15-spacing.css ===== */


/* =========================================================
   ECOTECH HOMEPAGE V15 — COMPACT RHYTHM CORRECTION
   Based on V13. V14 is intentionally not carried forward.
   Fixes:
   1. excessive hero breathing room below navigation
   2. double-padding between the technology marquee and the
      sections that follow it
   3. inconsistent vertical rhythm in the lower homepage
   ========================================================= */

.home-page-v3{
  --v15-section-pad:58px;
}

/* ---------- HERO / NAV RELATIONSHIP ----------
   The hero has no need to vertically center a small amount of
   content inside a very tall 76vh canvas. Make the opening
   immediately readable after the navigation.
*/
.home-page-v3 .v3-hero{
  min-height:0 !important;
  min-height:clamp(320px,42vh,480px) !important;
  display:flex !important;
  align-items:flex-start !important;
  justify-content:center !important;
  padding:72px 22px 64px !important;
  box-sizing:border-box;
}

/* Keep the hero copy centered while preventing the giant
   empty band directly below the navigation. */
.home-page-v3 .v3-hero__content{
  width:min(940px,100%);
  margin:0 auto;
}

/* ---------- FIRST THREE SECTIONS ----------
   Same compact vertical token on both sides so boundaries
   have predictable rhythm.
*/
.home-page-v3 .v3-signal{
  padding-top:var(--v15-section-pad) !important;
  padding-bottom:var(--v15-section-pad) !important;
}
.home-page-v3 .v3-start{
  padding-top:var(--v15-section-pad) !important;
  padding-bottom:var(--v15-section-pad) !important;
}

/* ---------- TECHNOLOGY MARQUEE ----------
   Give the logo field enough air above, but close it more
   tightly underneath so the next section does not feel
   detached from it.
*/
.home-page-v3 .hp7-tech-depth{
  padding-top:68px !important;
  padding-bottom:40px !important;
}

/* The marquee footer is the visual endpoint of this section.
   Keep its CTA close enough to the following section to avoid
   a second large blank band. */
.home-page-v3 .hp7-tech-depth__footer{
  margin-top:20px !important;
}

/* ---------- BELOW THE MARQUEE ----------
   The old combination of marquee bottom padding + depth top
   padding created a double gap. Use a compact 52px top edge.
*/
.home-page-v3 .v3-depth{
  padding-top:52px !important;
  padding-bottom:58px !important;
}

.home-page-v3 .v3-industries{
  padding-top:58px !important;
  padding-bottom:58px !important;
}

.home-page-v3 .v3-final{
  padding-top:64px !important;
  padding-bottom:72px !important;
}

/* ---------- INTERNAL HEADLINE RHYTHM ----------
   Prevent headings/paragraphs from adding unpredictable gaps.
*/
.home-page-v3 .v3-start__head,
.home-page-v3 .v3-depth__head{
  margin-top:0 !important;
  margin-bottom:26px !important;
}

.home-page-v3 .v3-start__head h2,
.home-page-v3 .v3-depth__head h2,
.home-page-v3 .v3-industries h2,
.home-page-v3 .v3-final h2{
  margin-top:0 !important;
}

.home-page-v3 .v3-start__head p,
.home-page-v3 .v3-depth__head p{
  margin-bottom:0 !important;
}

/* Do not let card containers add a hidden top/bottom margin. */
.home-page-v3 .v3-problems,
.home-page-v3 .v3-depth__cards{
  margin-top:0 !important;
  margin-bottom:0 !important;
}

/* ---------- MOBILE ----------
   Keep the same relationship, scaled down.
*/
@media(max-width:760px){
  .home-page-v3 .v3-hero{
    min-height:0 !important;
    padding:54px 18px 54px !important;
  }

  .home-page-v3 .v3-signal,
  .home-page-v3 .v3-start{
    padding-top:54px !important;
    padding-bottom:54px !important;
  }

  .home-page-v3 .hp7-tech-depth{
    padding-top:64px !important;
    padding-bottom:32px !important;
  }

  .home-page-v3 .hp7-tech-depth__footer{
    margin-top:16px !important;
  }

  .home-page-v3 .v3-depth{
    padding-top:46px !important;
    padding-bottom:54px !important;
  }

  .home-page-v3 .v3-industries{
    padding-top:52px !important;
    padding-bottom:54px !important;
  }

  .home-page-v3 .v3-final{
    padding-top:58px !important;
    padding-bottom:64px !important;
  }

  .home-page-v3 .v3-start__head,
  .home-page-v3 .v3-depth__head{
    margin-bottom:21px !important;
  }
}

/* Large desktop: don't reintroduce excessive vertical space. */
@media(min-width:1400px){
  .home-page-v3 .v3-hero{
    min-height:clamp(320px,42vh,480px) !important;
    padding-top:76px !important;
    padding-bottom:66px !important;
  }
}


/* ===== SOURCE: home-v17-accents.css ===== */


/* =========================================================
   ECOTECH HOMEPAGE V17 — CORRECTED TYPOGRAPHIC ACCENTS
   Fixes V16 by:
   - using real inline spans for colored words
   - removing pseudo-element chapter labels
   - preserving existing heading layout
   - keeping all palette/spacing/transitions from V15
   ========================================================= */

.home-page-v3{
  --v17-teal:#3E7D82;
  --v17-forest:#426B5A;
  --v17-violet:#625C70;
  --v17-copper:#B66F52;
  --v17-sage:#789486;
}

/* Deliberately colored words — no layout effect. */
.home-page-v3 .v17-accent{
  display:inline;
  font:inherit;
  line-height:inherit;
  letter-spacing:inherit;
}

.home-page-v3 .v17-teal{color:var(--v17-teal) !important}
.home-page-v3 .v17-forest{color:var(--v17-forest) !important}
.home-page-v3 .v17-violet{color:var(--v17-violet) !important}
.home-page-v3 .v17-copper{color:var(--v17-copper) !important}
.home-page-v3 .v17-sage{color:var(--v17-sage) !important}

/* Dark technology section: brighter versions maintain contrast. */
.home-page-v3 .hp7-tech-depth .v17-teal,
.home-page-v3 .v3-final .v17-teal{
  color:#8CC5C4 !important;
}

/* Remove V16's chapter pseudo-elements completely.
   They were being inserted as extra layout children and caused
   the apparent heading misalignment. */
.home-page-v3 .v3-start__head::before,
.home-page-v3 .v3-depth__head::before,
.home-page-v3 .v3-industries::before{
  content:none !important;
  display:none !important;
}

/* Preserve the original alignment of the heading containers. */
.home-page-v3 .v3-start__head,
.home-page-v3 .v3-depth__head{
  display:block;
}

.home-page-v3 .v3-start__head > div{
  width:100%;
}

/* Keep heading spacing clean and predictable. */
.home-page-v3 .v3-start__head h2,
.home-page-v3 .v3-depth__head h2,
.home-page-v3 .v3-industries h2,
.home-page-v3 .v3-final h2{
  margin-top:0 !important;
}

/* Optional accent treatment for existing emphasis in hero:
   preserve the existing hero em rather than recoloring it. */
.home-page-v3 .v3-hero h1 em{
  color:var(--v17-forest);
}

/* Mobile: no font-size or line-height changes; accents remain
   exactly aligned with the surrounding words. */
@media(max-width:760px){
  .home-page-v3 .v17-accent{
    font:inherit;
  }
}


/* ===== SOURCE: home-v18-story-spacing.css ===== */


/* =========================================================
   ECOTECH HOMEPAGE V18 — STORY ORDER + UNIFORM RHYTHM
   Order:
   Hero → Signal → Technology proof → Client problem →
   Capabilities → Industries → CTA

   This layer intentionally does NOT change palette.
   ========================================================= */

.home-page-v3{
  --v18-section-space:68px;
}

/* All non-hero chapters share exactly the same vertical
   breathing room. This fixes the cramped lower half. */
.home-page-v3 .v3-signal,
.home-page-v3 .hp7-tech-depth,
.home-page-v3 .v3-start,
.home-page-v3 .v3-depth,
.home-page-v3 .v3-industries,
.home-page-v3 .v3-final{
  margin-top:0 !important;
  margin-bottom:0 !important;
  padding-top:var(--v18-section-space) !important;
  padding-bottom:var(--v18-section-space) !important;
  box-sizing:border-box;
}

/* Hero remains a distinct opening composition; only its bottom
   breathing room participates in the same rhythm. */
.home-page-v3 .v3-hero{
  padding-bottom:var(--v18-section-space) !important;
}

/* Remove accumulated internal margins that make some chapters
   look farther apart than others. */
.home-page-v3 .v3-start__head,
.home-page-v3 .v3-depth__head{
  margin-top:0 !important;
  margin-bottom:26px !important;
}

.home-page-v3 .v3-start__head h2,
.home-page-v3 .v3-depth__head h2,
.home-page-v3 .v3-industries h2,
.home-page-v3 .v3-final h2{
  margin-top:0 !important;
}

.home-page-v3 .v3-start__head p,
.home-page-v3 .v3-depth__head p{
  margin-bottom:0 !important;
}

/* Technology proof is now early in the story. Give it the same
   top/bottom rhythm as every other chapter—no special oversized
   dark-band spacing. */
.home-page-v3 .hp7-tech-depth{
  padding-top:var(--v18-section-space) !important;
  padding-bottom:var(--v18-section-space) !important;
}

/* Keep the moving-logo footer close to its own content, not
   separated by an additional arbitrary margin. */
.home-page-v3 .hp7-tech-depth__footer{
  margin-top:20px !important;
}

/* Cards stay within the chapter's rhythm. */
.home-page-v3 .v3-problems,
.home-page-v3 .v3-depth__cards{
  margin-top:0 !important;
  margin-bottom:0 !important;
}

/* Dark sections remain clean solid fields from V13/V17. */
.home-page-v3 .hp7-tech-depth,
.home-page-v3 .v3-final{
  background-color:#17252B;
}

/* ---------------------------------------------------------
   MOBILE
   Same ratio, tighter absolute spacing.
   --------------------------------------------------------- */
@media(max-width:760px){
  .home-page-v3{
    --v18-section-space:54px;
  }

  .home-page-v3 .v3-hero{
    padding-bottom:54px !important;
  }

  .home-page-v3 .v3-signal,
  .home-page-v3 .hp7-tech-depth,
  .home-page-v3 .v3-start,
  .home-page-v3 .v3-depth,
  .home-page-v3 .v3-industries,
  .home-page-v3 .v3-final{
    padding-top:var(--v18-section-space) !important;
    padding-bottom:var(--v18-section-space) !important;
  }

  .home-page-v3 .v3-start__head,
  .home-page-v3 .v3-depth__head{
    margin-bottom:21px !important;
  }
}

/* Large desktop stays compact rather than expanding gaps with
   viewport height. */
@media(min-width:1400px){
  .home-page-v3{
    --v18-section-space:72px;
  }
}


/* ===== SOURCE: home-v19-wow.css ===== */


/* =========================================================
   ECOTECH HOMEPAGE V19 — LIGHTWEIGHT "WOW" LAYER
   Only three enhancements:
   1. hero ecosystem field
   2. interactive signal path
   3. refined technology proof wall
   No video, canvas, animation library, or heavy parallax.
   ========================================================= */

.home-page-v3{
  --v19-teal:#3E7D82;
  --v19-forest:#426B5A;
  --v19-copper:#B66F52;
  --v19-violet:#625C70;
  --v19-ink:#17252B;
}

/* ---------------------------------------------------------
   1. HERO — subtle living ecosystem
   --------------------------------------------------------- */
.v3-hero{
  overflow:hidden;
  isolation:isolate;
}

.v19-hero-field{
  position:absolute;
  inset:0;
  z-index:0;
  pointer-events:none;
  opacity:.9;
  mask-image:linear-gradient(180deg,transparent 0%,black 16%,black 76%,transparent 100%);
  -webkit-mask-image:linear-gradient(180deg,transparent 0%,black 16%,black 76%,transparent 100%);
}

.v19-hero-field svg{
  width:100%;
  height:100%;
  display:block;
}

.v19-field-lines{
  transform-origin:50% 50%;
  animation:v19-drift 18s ease-in-out infinite alternate;
}

.v19-field-points circle{
  fill:#F5F3EC;
  stroke:var(--v19-teal);
  stroke-width:1.4;
  opacity:.52;
  animation:v19-pulse 5.5s ease-in-out infinite;
}

.v19-field-points circle:nth-child(2),
.v19-field-points circle:nth-child(4){
  animation-delay:-2.3s;
  stroke:var(--v19-forest);
}

.v19-field-glow circle{
  fill:rgba(62,125,130,.10);
  opacity:.5;
  animation:v19-glow 7s ease-in-out infinite;
}

.v19-field-glow circle:nth-child(2){
  fill:rgba(182,111,82,.08);
  animation-delay:-3s;
}

.v3-hero__content{
  z-index:2;
}

@keyframes v19-drift{
  from{transform:translate3d(-6px,2px,0) scale(1)}
  to{transform:translate3d(7px,-3px,0) scale(1.012)}
}
@keyframes v19-pulse{
  0%,100%{transform:scale(.82);opacity:.32}
  50%{transform:scale(1.18);opacity:.82}
}
@keyframes v19-glow{
  0%,100%{opacity:.22;transform:scale(.86)}
  50%{opacity:.5;transform:scale(1.12)}
}

/* ---------------------------------------------------------
   2. SIGNAL — make the path feel responsive
   --------------------------------------------------------- */
.v3-path-step{
  position:relative;
  transition:
    transform .28s cubic-bezier(.2,.7,.2,1),
    box-shadow .28s ease,
    border-color .28s ease,
    background-color .28s ease;
}

.v3-path-step::after{
  content:"";
  position:absolute;
  inset:0;
  border-radius:inherit;
  pointer-events:none;
  opacity:0;
  transition:opacity .28s ease;
  box-shadow:inset 0 0 0 1px rgba(62,125,130,.18),0 14px 34px rgba(23,37,43,.07);
}

.v3-path-step:hover,
.v3-path-step.v19-active{
  transform:translateY(-5px);
  box-shadow:0 14px 30px rgba(23,37,43,.08);
}

.v3-path-step:hover::after,
.v3-path-step.v19-active::after{
  opacity:1;
}

.v3-path-arrow{
  transition:opacity .25s ease,transform .25s ease;
}

.v3-path-arrow.v19-active{
  opacity:1;
  transform:scaleX(1.12);
}

.v3-path-note{
  transition:color .25s ease;
}

/* ---------------------------------------------------------
   3. TECHNOLOGY — proof wall, not a catalogue
   --------------------------------------------------------- */
.hp7-tech-depth__head{
  position:relative;
}

.v19-proof-line{
  margin:9px 0 0;
  max-width:520px;
  color:rgba(245,243,236,.62);
  font-size:11px;
  line-height:1.55;
}

.hp7-logo{
  will-change:transform;
}

.hp7-logo:hover{
  transform:translateY(-4px) scale(1.025);
  border-color:rgba(140,197,196,.42);
  background:rgba(255,255,255,.075);
  box-shadow:0 10px 24px rgba(0,0,0,.12);
}

.hp7-logo:hover img{
  transform:scale(1.05);
}

.hp7-logo img{
  transition:transform .22s ease;
}

/* A more deliberate pause hint. */
.hp7-marquee__hint{
  transition:opacity .25s ease,transform .25s ease;
}
.hp7-marquee:hover .hp7-marquee__hint{
  opacity:.72;
}

/* Keep the technology field visually restrained on touch devices. */
@media (hover:none){
  .hp7-logo:hover{
    transform:none;
    box-shadow:none;
  }
}

/* Reduced motion: everything becomes static except normal hover. */
@media(prefers-reduced-motion:reduce){
  .v19-field-lines,
  .v19-field-points circle,
  .v19-field-glow circle{
    animation:none !important;
  }
  .v3-path-step,
  .hp7-logo{
    transition:none !important;
  }
}

/* Mobile: simplify the hero field so it never competes with copy. */
@media(max-width:760px){
  .v19-hero-field{
    opacity:.62;
  }
  .v19-proof-line{
    font-size:10px;
  }
}


/* ===== SOURCE: home-matte-text-v1.css ===== */


/* =========================================================
   ECOTECH HOMEPAGE — MATTE PUNCHY TYPOGRAPHIC ACCENTS
   Final layer only: typography, not backgrounds.
   ========================================================= */
.home-page-v3{
  --matte-forest:#2F8587;
  --matte-teal:#2F8587;
  --matte-copper:#B7654B;
  --matte-violet:#80607D;
  --matte-sage:#4F8175;
  --matte-ink:#30483F;
}

/* Main emphasized words: richer than the old pastel accents,
   but deliberately desaturated so they still read as matte. */
.home-page-v3 .v17-teal{color:var(--matte-teal)!important;}
.home-page-v3 .v17-forest{color:var(--matte-forest)!important;}
.home-page-v3 .v17-violet{color:var(--matte-violet)!important;}
.home-page-v3 .v17-copper{color:var(--matte-copper)!important;}
.home-page-v3 .v17-sage{color:var(--matte-sage)!important;}

/* The hero's single highlighted word should be the strongest accent,
   without using a glossy gradient. */
.home-page-v3 .v3-hero h1 em{
  color:var(--matte-teal)!important;
  background:none!important;
  -webkit-background-clip:initial!important;
  background-clip:initial!important;
  -webkit-text-fill-color:var(--matte-teal)!important;
  text-shadow:none!important;
}

/* Story/path labels: stronger color and better hierarchy. */
.home-page-v3 .v3-path-step--data .v3-path-num,
.home-page-v3 .v3-path-step--data .v3-path-label{
  color:var(--matte-teal)!important;
}
.home-page-v3 .v3-path-step--insight .v3-path-num,
.home-page-v3 .v3-path-step--insight .v3-path-label{
  color:var(--matte-forest)!important;
}
.home-page-v3 .v3-path-step--intel .v3-path-num,
.home-page-v3 .v3-path-step--intel .v3-path-label{
  color:var(--matte-violet)!important;
}
.home-page-v3 .v3-path-step--people .v3-path-num,
.home-page-v3 .v3-path-step--people .v3-path-label{
  color:var(--matte-copper)!important;
}
.home-page-v3 .v3-path-step--outcome .v3-path-num,
.home-page-v3 .v3-path-step--outcome .v3-path-label{
  color:var(--matte-forest)!important;
}

/* Section kickers become visible accents instead of pale grey labels. */
.home-page-v3 .v3-kicker,
.home-page-v3 .v17-accent{
  font-weight:800!important;
  letter-spacing:.16em!important;
}
.home-page-v3 .v3-kicker{
  color:var(--matte-teal)!important;
}

/* Colored micro-headings inside cards. */
.home-page-v3 .v3-depth-card--service strong{
  color:var(--matte-forest)!important;
}
.home-page-v3 .v3-depth-card--tech strong{
  color:var(--matte-violet)!important;
}

/* Buttons/links: accent remains matte and solid. */
.home-page-v3 .pill-link:hover{
  color:var(--matte-teal)!important;
  border-color:rgba(63,119,121,.48)!important;
}
.home-page-v3 .v3-path-go{
  color:var(--matte-teal)!important;
}

/* Keep the dark final CTA text intentionally neutral; don't introduce
   bright accents into the strongest structural area. */
.home-page-v3 .v3-final h2,
.home-page-v3 .v3-final .v3-kicker{
  color:#F6F5F1!important;
}

/* =========================================================
   V2 CREATIVE ACCENT DISTRIBUTION
   Matte jewel/earth accents — stronger chroma, restrained use.
   ========================================================= */

/* Ochre: reserved for numbers, small markers and moments of discovery. */
.home-page-v3 .v3-path-step--data .v3-path-num{
  color:#B08A3E!important;
}
.home-page-v3 .v3-path-step--outcome .v3-path-num{
  color:#B08A3E!important;
}

/* Indigo slate: technology/data-oriented micro accents. */
.home-page-v3 .v3-depth-card--tech strong{
  color:#536B8A!important;
}
.home-page-v3 .v3-path-step--intel .v3-path-label,
.home-page-v3 .v3-path-step--intel .v3-path-num{
  color:#536B8A!important;
}

/* Dusty plum: strategy / intelligence, used only in small quantities. */
.home-page-v3 .v17-violet{
  color:#80607D!important;
}

/* Terracotta: human/business/service moments. */
.home-page-v3 .v17-copper,
.home-page-v3 .v3-path-step--people .v3-path-label,
.home-page-v3 .v3-path-step--people .v3-path-num{
  color:#B7654B!important;
}

/* Burnished teal: the signature ECOTECH accent. */
.home-page-v3 .v17-teal,
.home-page-v3 .v3-path-step--data .v3-path-label,
.home-page-v3 .v3-path-go{
  color:#2F8587!important;
}

/* Sage teal: environmental/sustainability moments. */
.home-page-v3 .v17-forest{
  color:#4F8175!important;
}

/* Headings get a tiny chromatic punctuation rather than full gradients. */
.home-page-v3 .v3-section-title .accent,
.home-page-v3 .section-title .accent{
  color:#2F8587!important;
}

/* Hover states become noticeably richer without glow. */
.home-page-v3 .pill-link:hover{
  color:#2F8587!important;
  border-color:rgba(47,133,135,.52)!important;
}

/* Keep the hero emphasis unmistakable. */
.home-page-v3 .v3-hero h1 em{
  color:#2F8587!important;
  -webkit-text-fill-color:#2F8587!important;
}

/* A subtle warm interruption for selected CTA/link moments. */
.home-page-v3 .v3-final .v3-path-go:hover,
.home-page-v3 .v3-depth-card--service a:hover{
  color:#B7654B!important;
}

/* Do not introduce colored shadows or gradients. */
.home-page-v3 .v17-accent,
.home-page-v3 .v3-path-num,
.home-page-v3 .v3-path-label{
  text-shadow:none!important;
}

/* =========================================================
   V3 TYPOGRAPHY SPACING FIX
   Color must never change the geometry of a heading.
   ========================================================= */

/* Colored words are inline emphasis, not separate layout items. */
.home-page-v3 h1 em,
.home-page-v3 h2 em,
.home-page-v3 h3 em,
.home-page-v3 .v17-accent,
.home-page-v3 .v17-teal,
.home-page-v3 .v17-forest,
.home-page-v3 .v17-violet,
.home-page-v3 .v17-copper,
.home-page-v3 .v17-sage{
  display:inline!important;
  margin:0!important;
  padding:0!important;
  letter-spacing:inherit!important;
  word-spacing:inherit!important;
  line-height:inherit!important;
  vertical-align:baseline!important;
  transform:none!important;
}

/* Don't let accent utility classes alter typography metrics. */
.home-page-v3 .v17-accent{
  font-weight:inherit!important;
}

/* Preserve intentional heading line-height and prevent colored spans
   from creating artificial gaps or wrapping differently. */
.home-page-v3 h1,
.home-page-v3 h2,
.home-page-v3 h3{
  word-spacing:normal;
}

.home-page-v3 h1 em,
.home-page-v3 h2 em{
  white-space:normal!important;
}

/* Path labels/numbers are separate design elements and retain their
   intended spacing; only remove accidental character-spacing changes. */
.home-page-v3 .v3-path-num,
.home-page-v3 .v3-path-label{
  letter-spacing:inherit!important;
  line-height:inherit!important;
  margin-top:0;
  margin-bottom:0;
}


/* ===== SOURCE: home-tech-copy-contrast-v2.css ===== */


/* =========================================================
   HOMEPAGE TECHNOLOGY DEPTH — TYPOGRAPHY CONTRAST
   ========================================================= */

/* The technology marquee is intentionally dark. Keep its headline
   bright enough to read immediately, with the signature teal as the
   small kicker rather than coloring the entire heading. */
.home-page-v3 .hp7-tech-depth h2{
  color:#F6F5F1!important;
  opacity:1!important;
  text-shadow:none!important;
}

.home-page-v3 .hp7-kicker{
  color:#2F8587!important;
  opacity:1!important;
}

/* Stats remain bright and subordinate to the headline. */
.home-page-v3 .hp7-tech-depth__stats{
  color:rgba(246,245,241,.72)!important;
}
.home-page-v3 .hp7-tech-depth__stats strong{
  color:#B08A3E!important;
}
.home-page-v3 .hp7-tech-depth__stats span{
  color:rgba(246,245,241,.70)!important;
}

/* Supporting proof line should not disappear into the dark canvas. */
.home-page-v3 .v19-proof-line{
  color:rgba(246,245,241,.76)!important;
}

/* Technology logo labels need enough contrast without competing with
   the main headline. */
.home-page-v3 .hp7-logo span{
  color:#DDE5E0!important;
}
.home-page-v3 .hp7-logo--text strong{
  color:#F0F3EF!important;
}

/* Footer copy and navigation link remain readable. */
.home-page-v3 .hp7-tech-depth__footer p{
  color:rgba(246,245,241,.72)!important;
}
.home-page-v3 .hp7-tech-depth__footer a{
  color:#F6F5F1!important;
  border-color:rgba(246,245,241,.30)!important;
}
.home-page-v3 .hp7-tech-depth__footer a span{
  color:#2F8587!important;
}

/* Keep the fade edges dark, but never allow them to overlap the heading area. */
.home-page-v3 .hp7-marquee__fade{
  pointer-events:none;
}
