/* Brandwings360 — service page design system */
:root{
  --bw-forest:#0F3D2E;
  --bw-green:#1E7F4E;
  --bw-bright:#3CB878;
  --bw-charcoal:#141A18;
  --bw-paper:#F6F8F6;
  --bw-white:#FFFFFF;
  --bw-line:#E1E7E3;
  --bw-muted:#5A655F;
  --radius-card:14px;
  --radius-pill:999px;
  --maxw:1180px;
}

*{box-sizing:border-box;}
html{scroll-behavior:smooth;}
body{
  margin:0;
  font-family:'Inter',system-ui,-apple-system,Segoe UI,sans-serif;
  color:var(--bw-charcoal);
  background:var(--bw-white);
  line-height:1.55;
}
h1,h2,h3,h4{
  font-family:'Space Grotesk',system-ui,sans-serif;
  color:var(--bw-charcoal);
  margin:0 0 .5em;
  line-height:1.12;
  letter-spacing:-0.01em;
}
h1{font-size:clamp(2.2rem,4.6vw,3.6rem);}
h2{font-size:clamp(1.7rem,3vw,2.5rem);}
h3{font-size:1.15rem;}
p{margin:0 0 1em;color:var(--bw-charcoal);}
a{color:inherit;text-decoration:none;}
ul{margin:0;padding:0;}
img{max-width:100%;display:block;}

.wrap{max-width:var(--maxw);margin:0 auto;padding:0 28px;}
section{padding:88px 0;}
@media (max-width:720px){section{padding:56px 0;}}

/* stat strip — mirrors homepage's "8 capabilities / 1 connected strategy / 360° execution" badges */
.stat-strip{
  display:flex;gap:14px;flex-wrap:wrap;margin-top:30px;
}
.stat-pill{
  display:flex;align-items:baseline;gap:8px;
  border:1px solid var(--bw-line);background:var(--bw-white);
  padding:10px 16px;border-radius:var(--radius-pill);font-size:.85rem;color:var(--bw-muted);
}
.stat-pill b{font-family:'Space Grotesk';font-size:1.15rem;color:var(--bw-forest);}

/* floating 360 badge, echoes homepage's circular "360° All in one" mark */
.badge-360{
  position:absolute;top:16px;right:16px;
  width:74px;height:74px;border-radius:50%;
  background:rgba(255,255,255,.14);border:1px solid rgba(255,255,255,.4);
  display:flex;align-items:center;justify-content:center;flex-direction:column;
  color:#fff;text-align:center;font-family:'Space Grotesk';backdrop-filter:blur(3px);
}
.badge-360 .num{font-weight:700;font-size:1.05rem;line-height:1;}
.badge-360 .lbl{font-size:.5rem;letter-spacing:.03em;color:#DCEEE3;margin-top:2px;}


/* header */
header.site{
  position:sticky;top:0;z-index:50;
  background:rgba(255,255,255,.92);
  backdrop-filter:blur(8px);
  border-bottom:1px solid var(--bw-line);
}
.nav-row{
  max-width:var(--maxw);margin:0 auto;padding:16px 28px;
  display:flex;align-items:center;justify-content:space-between;gap:24px;
}
.logo{display:flex;align-items:center;gap:10px;font-family:'Space Grotesk';font-weight:600;font-size:1.05rem;}
.logo .mark{
  width:34px;height:34px;border-radius:50%;
  background:conic-gradient(from 180deg,var(--bw-green),var(--bw-bright),var(--bw-green));
}
nav.links{display:flex;gap:28px;align-items:center;}
nav.links > a{font-size:.94rem;font-weight:500;color:var(--bw-charcoal);}
.dropdown{position:relative;}
.dropdown-panel{
  display:none;position:absolute;top:calc(100% + 14px);left:50%;transform:translateX(-50%);
  background:var(--bw-white);border:1px solid var(--bw-line);border-radius:var(--radius-card);
  box-shadow:0 18px 40px rgba(15,61,46,.12);padding:10px;min-width:280px;
}
.dropdown:hover .dropdown-panel{display:block;}
.dropdown-panel a{display:block;padding:10px 14px;border-radius:8px;font-size:.92rem;}
.dropdown-panel a:hover{background:var(--bw-paper);}
.dropdown-panel a.current{color:var(--bw-green);font-weight:600;}
.btn{
  display:inline-flex;align-items:center;gap:8px;
  background:var(--bw-charcoal);color:var(--bw-white);
  padding:12px 22px;border-radius:var(--radius-pill);
  font-weight:600;font-size:.94rem;border:none;cursor:pointer;
  transition:background .18s ease, transform .18s ease;
}
.btn:hover{background:var(--bw-green);}
.btn.outline{background:transparent;color:var(--bw-charcoal);border:1.5px solid var(--bw-charcoal);}
.btn.outline:hover{border-color:var(--bw-green);color:var(--bw-green);background:transparent;}
.btn.on-dark{background:var(--bw-bright);color:var(--bw-forest);}
.btn.on-dark:hover{background:var(--bw-white);}

/* eyebrow / breadcrumb */
.crumb{font-size:.85rem;color:var(--bw-muted);margin-bottom:18px;}
.crumb a{color:var(--bw-green);font-weight:600;}

/* hero 
.hero{
  background:linear-gradient(180deg,var(--bw-paper) 0%, var(--bw-white) 78%);
  padding:70px 0 60px;
}*/
.hero-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:56px;align-items:center;}
@media (max-width:860px){.hero-grid{grid-template-columns:1fr;}}
.hero p.lead{font-size:1.14rem;color:var(--bw-muted);max-width:46ch;}
.hero-ctas{display:flex;gap:14px;margin-top:26px;flex-wrap:wrap;}
.hero-art{
  aspect-ratio:1/1;border-radius:20px;
  background:radial-gradient(circle at 30% 30%, var(--bw-bright), var(--bw-forest) 72%);
  position:relative;overflow:visible;
}
.hero-art .ring{
  position:absolute;border:1.5px solid rgba(255,255,255,.35);border-radius:50%;
}
.hero-art .ring.r1{inset:14%;}
.hero-art .ring.r2{inset:30%;}
.hero-art .tag{
  position:absolute;bottom:22px;left:22px;right:22px;
  background:rgba(20,26,24,.55);color:#fff;padding:14px 16px;border-radius:12px;
  font-size:.85rem;backdrop-filter:blur(4px);
}

/* problem section */
.problem{background:var(--bw-charcoal);color:#fff;}
.problem h2{color:#fff;}
.problem p{color:#C9D3CD;}
.problem-grid{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:start;}
@media (max-width:860px){.problem-grid{grid-template-columns:1fr;}}
.pain-list{display:flex;flex-direction:column;gap:14px;margin-top:20px;}
.pain-item{
  display:flex;gap:12px;padding:14px 16px;border:1px solid rgba(255,255,255,.14);
  border-radius:12px;background:rgba(255,255,255,.04);
}
.pain-item .x{color:var(--bw-bright);font-weight:700;}

/* cards / what we do */
.card-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin-top:36px;}
@media (max-width:900px){.card-grid{grid-template-columns:repeat(2,1fr);}}
@media (max-width:620px){.card-grid{grid-template-columns:1fr;}}
.svc-card{
  border:1px solid var(--bw-line);border-radius:var(--radius-card);
  padding:26px 22px;background:var(--bw-white);
  transition:border-color .18s ease, transform .18s ease;
}
.svc-card:hover{border-color:var(--bw-green);transform:translateY(-3px);}
.svc-card .ic{
  width:42px;height:42px;border-radius:10px;
  background:linear-gradient(135deg,var(--bw-green),var(--bw-bright));
  margin-bottom:16px;
}
.svc-card p{font-size:.94rem;color:var(--bw-muted);margin:0;}

/* approach steps */
.approach{background:var(--bw-paper);}
.step-row{display:grid;grid-template-columns:repeat(5,1fr);gap:16px;margin-top:40px;}
@media (max-width:900px){.step-row{grid-template-columns:repeat(2,1fr);}}
@media (max-width:560px){.step-row{grid-template-columns:1fr;}}
.step{position:relative;padding-top:44px;}
.step .num{
  font-family:'Space Grotesk';font-size:.85rem;font-weight:700;color:var(--bw-green);
  position:absolute;top:0;left:0;
}
.step::before{
  content:"";position:absolute;top:26px;left:0;width:28px;height:2px;background:var(--bw-green);
}
.step h3{font-size:1rem;margin-bottom:6px;}
.step p{font-size:.9rem;color:var(--bw-muted);margin:0;}

/* why / 360 ecosystem 
.why-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:52px;align-items:center;}*/
@media (max-width:860px){.why-grid{grid-template-columns:1fr;}}
.ring-diagram{
  aspect-ratio:1/1;border-radius:50%;
  background:conic-gradient(from -90deg,var(--bw-forest),var(--bw-green),var(--bw-bright),var(--bw-green),var(--bw-forest));
  display:flex;align-items:center;justify-content:center;position:relative;
}
.ring-diagram .core{
  width:46%;height:46%;border-radius:50%;background:var(--bw-white);
  display:flex;align-items:center;justify-content:center;text-align:center;
  font-family:'Space Grotesk';font-weight:700;color:var(--bw-forest);font-size:1.1rem;padding:14px;
}
.ecosystem-links{display:flex;flex-wrap:wrap;gap:10px;margin-top:22px;}
.ecosystem-links a{
  border:1px solid var(--bw-line);padding:9px 16px;border-radius:var(--radius-pill);
  font-size:.88rem;font-weight:500;
}
.ecosystem-links a:hover{border-color:var(--bw-green);color:var(--bw-green);}
.ecosystem-links a.self{background:var(--bw-charcoal);color:#fff;border-color:var(--bw-charcoal);}

/* results */
.results-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:36px;}
@media (max-width:860px){.results-grid{grid-template-columns:1fr;}}
.result-card{
  border:1px solid var(--bw-line);border-radius:var(--radius-card);padding:24px;
  background:var(--bw-paper);
}
.result-card .metric{font-family:'Space Grotesk';font-size:1.8rem;font-weight:700;color:var(--bw-green);}
.result-card p{font-size:.88rem;color:var(--bw-muted);margin-top:8px;}
.placeholder-note{font-size:.82rem;color:var(--bw-muted);margin-top:18px;font-style:italic;}

/* faq */
.faq-item{border-bottom:1px solid var(--bw-line);padding:20px 0;}
.faq-item h3{font-size:1.02rem;margin-bottom:8px;}
.faq-item p{color:var(--bw-muted);font-size:.95rem;margin:0;}

/* final cta */
.final-cta{
  background:linear-gradient(135deg,var(--bw-forest),var(--bw-green));
  color:#fff;border-radius:24px;text-align:left;
  padding:56px;margin:0 28px 90px;max-width:calc(var(--maxw) - 56px);
  margin-left:auto;margin-right:auto;
}
.final-cta h2{color:#fff;max-width:20ch;}
.final-cta p{color:#DCEEE3;max-width:52ch;}
@media (max-width:620px){.final-cta{padding:34px 24px;border-radius:18px;}}

/* footer */
footer.site{background:var(--bw-charcoal);color:#B8C3BD;padding:60px 0 28px;}
.footer-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr 1.2fr;gap:32px;}
@media (max-width:780px){.footer-grid{grid-template-columns:1fr 1fr;}}
footer.site h4{color:#fff;font-size:.85rem;text-transform:none;margin-bottom:14px;}
footer.site a{display:block;font-size:.88rem;color:#B8C3BD;margin-bottom:10px;}
footer.site a:hover{color:var(--bw-bright);}
.footer-bottom{border-top:1px solid rgba(255,255,255,.1);margin-top:40px;padding-top:22px;font-size:.82rem;display:flex;justify-content:space-between;flex-wrap:wrap;gap:10px;color:#8B968F;}

.section-label{font-size:.85rem;font-weight:600;color:var(--bw-green);margin-bottom:10px;}


/* =========================================================
   HOMEPAGE VISUAL SYSTEM
   Inner pages inherit the visual language of index.html.
   Layout/content are intentionally preserved.
   ========================================================= */
:root{
  --bw-forest:#0B0F0D;
  --bw-green:#1FA766;
  --bw-bright:#3FE28C;
  --bw-lime:#B7FF6E;
  --bw-charcoal:#F3F4EF;
  --bw-paper:#121613;
  --bw-white:#0B0F0D;
  --bw-line:#242C27;
  --bw-muted:rgba(255,255,255,0.75);
  --radius-card:14px;
  --radius-pill:999px;
  --maxw:1180px;
}

body{
  font-family:'Inter',sans-serif;
  color:#F3F4EF;
  background:#0B0F0D;
  line-height:1.55;
  -webkit-font-smoothing:antialiased;
  overflow-x:hidden;
}

h1,h2,h3,h4{
  font-family:'Sora',sans-serif;
  color:#F3F4EF;
  font-weight:700;
  letter-spacing:-0.02em;
}
p{color:rgba(255,255,255,0.85);}

/* Header */
header.site{
  background:rgba(11,15,13,0.82);
  backdrop-filter:blur(10px);
  border-bottom:1px solid #242C27;
}
.logo{
  font-family:'Sora',sans-serif;
  font-weight:700;
  color:#F3F4EF;
}
.logo .mark{
  width:28px;
  height:28px;
  background:conic-gradient(from -40deg,#1FA766 0deg,#3FE28C 250deg,transparent 250deg 360deg);
  position:relative;
}
.logo .mark::after{
  content:"";
  position:absolute;
  inset:6px;
  border-radius:50%;
  background:#0B0F0D;
}
nav.links > a{color:rgba(255,255,255,0.85);}
.dropdown-panel{
  background:#151A17;
  border-color:#242C27;
  box-shadow:0 18px 40px rgba(0,0,0,.35);
}
.dropdown-panel a:hover{background:#121613;}
.dropdown-panel a.current{color:#3FE28C;}

/* Buttons */
.btn{
  background:#3FE28C;
  color:#0B0F0D;
  border:1px solid #1FA766;
  font-family:'Inter',sans-serif;
}
.btn:hover{
  background:#3FE28C;
  color:#0B0F0D;
  box-shadow:0 10px 30px -10px rgba(63,226,140,.5);
}
.btn.outline{
  background:transparent;
  color:#F3F4EF;
  border:1px solid #242C27;
}
.btn.outline:hover{
  border-color:#3FE28C;
  color:#3FE28C;
  background:transparent;
}
.btn.on-dark{
  background:#3FE28C;
  color:#0B0F0D;
}

/* Breadcrumb / labels */
.crumb{color:rgba(255,255,255,.75);}
.crumb a{color:#3FE28C;}
.section-label{color:#3FE28C;}

/* Hero
.hero{
  background:linear-gradient(180deg,#121613 0%,#0B0F0D 78%);
} */
.hero p.lead{color:rgba(255,255,255,.85);}
.hero-art{
  background:radial-gradient(circle at 30% 30%,#3FE28C,#0E6B3E 72%);
}
.hero-art .ring{border-color:rgba(255,255,255,.25);}
.hero-art .tag{
  background:rgba(11,15,13,.62);
  color:#F3F4EF;
}
.badge-360{
  font-family:'Sora',sans-serif;
  background:rgba(11,15,13,.25);
  border-color:rgba(255,255,255,.3);
}
.trusted-by {
  width: 100%;
  overflow: hidden;
  background: #0b0f0d;
  color: #f4f7f5;
  padding: 0 0 72px;
}

.trusted-by__container {
  width: min(1200px, calc(100% - 48px));
  margin: 0 auto;
}

.trusted-by__label {
  display: inline-block;
  margin-bottom: 28px;
  color: #3fe28c;
  font-family: "Inter", sans-serif;
  font-size: 12px;
  font-weight: 600;
  letter-spacing: 0.12em;
  line-height: 1;
  text-transform: uppercase;
}

.trusted-by__viewport {
  position: relative;
  width: 100vw;
  margin-left: calc(50% - 50vw);
  overflow: hidden;
}

.trusted-by__viewport::before,
.trusted-by__viewport::after {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  z-index: 2;
  width: 80px;
  pointer-events: none;
}

.trusted-by__viewport::before {
  left: 0;
  background: linear-gradient(90deg, #0b0f0d, transparent);
}

.trusted-by__viewport::after {
  right: 0;
  background: linear-gradient(270deg, #0b0f0d, transparent);
}

.trusted-by__track {
  display: flex;
  width: max-content;
  will-change: transform;
}

.trusted-by__group {
  display: flex;
  flex-shrink: 0;
  align-items: center;
  gap: 28px;
  padding-right: 28px;
}

.trusted-by__logo {
  display: flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 180px;
  width: 180px;
  height: 100px;
  padding: 14px 18px;
  border: 1px solid #242c27;
  border-radius: 14px;
  background: #121613;
  box-sizing: border-box;
}

.trusted-by__logo img {
  display: block;
  width: auto;
  max-width: 144px;
  height: auto;
  max-height: 68px;
  object-fit: contain;
}

.problem{
  background:#121613;
  color:#F3F4EF;
  border-top:1px solid #242C27;
  border-bottom:1px solid #242C27;
}
.problem h2{color:#F3F4EF;}
.problem p{color:rgba(255,255,255,.75);}
.pain-item{
  border-color:#242C27;
  background:rgba(255,255,255,.035);
}
.pain-item .x{color:#3FE28C;}

/* Service cards */
.svc-card{
  border-color:#242C27;
  background:#151A17;
}
.svc-card:hover{border-color:#1FA766;}
.svc-card p{color:rgba(255,255,255,.75);}
.svc-card .ic{
  background:linear-gradient(135deg,#1FA766,#3FE28C);
}

/* Approach / ecosystem / results */
.approach{background:#121613;}
.step .num{font-family:'Sora',sans-serif;color:#3FE28C;}
.step::before{background:#1FA766;}
.step p{color:rgba(255,255,255,.75);}

.ring-diagram{
  background:conic-gradient(from -90deg,#0E6B3E,#1FA766,#3FE28C,#1FA766,#0E6B3E);
}
.ring-diagram .core{
  background:#0B0F0D;
  font-family:'Sora',sans-serif;
  color:#3FE28C;
}
.ecosystem-links a{border-color:#242C27;}
.ecosystem-links a:hover{border-color:#3FE28C;color:#3FE28C;}
.ecosystem-links a.self{background:#3FE28C;color:#0B0F0D;border-color:#3FE28C;}

.result-card{
  border-color:#242C27;
  background:#151A17;
}
.result-card .metric{
  font-family:'Sora',sans-serif;
  color:#3FE28C;
}
.result-card p,.placeholder-note{color:rgba(255,255,255,.75);}

/* FAQ */
.faq-item{border-color:#242C27;}
.faq-item p{color:rgba(255,255,255,.75);}

/* Final CTA */
.final-cta{
  background:linear-gradient(135deg,#0E6B3E,#1FA766);
}
.final-cta p{color:rgba(255,255,255,.85);}

/* Footer */
footer.site{
  background:#0B0F0D;
  color:rgba(255,255,255,.75);
  border-top:1px solid #242C27;
}
footer.site h4{color:#F3F4EF;}
footer.site a{color:rgba(255,255,255,.75);}
footer.site a:hover{color:#3FE28C;}
.footer-bottom{border-color:#242C27;color:rgba(255,255,255,.55);}

/* Typography used in numeric / mono-style elements */
.stat-pill b,.step .num,.result-card .metric,.ring-diagram .core{
  font-family:'Sora',sans-serif;
}
.stat-pill{
  border-color:#242C27;
  background:#151A17;
  color:rgba(255,255,255,.75);
}
.stat-pill b{color:#3FE28C;}

/* =========================================================
   HOMEPAGE CSS MOVED FROM index.html
   Scoped to .homepage so inner pages remain unaffected.
   ========================================================= */
:root{
    --bg:#0B0F0D;
    --bg-raise:#121613;
    --card:#151A17;
    --line:#242C27;
    --ink:#F3F4EF;
    --ink-dim:rgba(255,255,255,0.85);
    --ink-faint:rgba(255,255,255,0.75);
    --green:#1FA766;
    --green-bright:#3FE28C;
    --lime:#B7FF6E;
    --radius:14px;
    --wrap:1180px;
  }
  .homepage *{box-sizing:border-box;}
  html{scroll-behavior:smooth;}
  .homepage{
    margin:0;
    background:var(--bg);
    color:var(--ink);
    font-family:'Inter',sans-serif;
    -webkit-font-smoothing:antialiased;
    overflow-x:hidden;
  }
  .homepage h1,.homepage h2,.homepage h3,.homepage .display{
    font-family:'Sora',sans-serif;
    font-weight:700;
    letter-spacing:-0.02em;
    margin:0;
  }
  .homepage .mono{
    font-family:'Sora',sans-serif;
    font-weight:500;
    letter-spacing:0.08em;
    text-transform:uppercase;
    font-size:12px;
    color:var(--green-bright);
  }
  .homepage a{color:inherit;text-decoration:none;}
  .homepage .wrap{max-width:var(--wrap);margin:0 auto;padding:0 32px;}
  .homepage img{max-width:100%;display:block;}
  .homepage::selection{background:var(--green);color:#04140B;}

  /* background texture */
  .homepage .grain{
    position:fixed;inset:0;pointer-events:none;z-index:1;opacity:0.035;
    background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='120' height='120'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='2'/%3E%3C/filter%3E%3Crect width='120' height='120' filter='url(%23n)'/%3E%3C/svg%3E");
  }

  /* ---------- NAV ---------- 
  .homepage header{
    position:sticky;top:0;z-index:50;
    background:rgba(11,15,13,0.82);
    backdrop-filter:blur(10px);
    border-bottom:1px solid var(--line);
  }
  .homepage nav{
    display:flex;align-items:center;justify-content:space-between;
    padding:18px 32px;max-width:var(--wrap);margin:0 auto;
  }
  .homepage .logo{display:flex;align-items:center;gap:10px;font-family:'Sora';font-weight:700;font-size:19px;}
  .homepage .logo .mark{
    width:28px;height:28px;border-radius:50%;
    background:conic-gradient(from -40deg, var(--green) 0deg, var(--green-bright) 250deg, transparent 250deg 360deg);
    position:relative;
  }
  .homepage .logo .mark::after{content:"";position:absolute;inset:6px;border-radius:50%;background:var(--bg);}
  .homepage .navlinks{display:flex;gap:34px;font-size:14.5px;color:var(--ink-dim);}
  .homepage .navlinks a{position:relative;padding:4px 0;transition:color .2s;}
  .homepage .navlinks a:hover{color:var(--ink);}
  .homepage .navlinks a::after{content:"";position:absolute;left:0;bottom:-2px;width:0;height:1px;background:var(--green-bright);transition:width .25s;}
  .homepage .navlinks a:hover::after{width:100%;}
  .homepage .navcta{display:flex;align-items:center;gap:22px;}
  .homepage .btn{
    display:inline-flex;align-items:center;gap:8px;
    padding:12px 22px;border-radius:999px;font-size:14px;font-weight:600;
    border:1px solid var(--green);color:var(--bg);background:var(--green-bright);
    cursor:pointer;transition:transform .2s, box-shadow .2s;white-space:nowrap;
  }
  .homepage .btn:hover{transform:translateY(-2px);box-shadow:0 10px 30px -10px rgba(63,226,140,0.5);}
  .homepage .btn.ghost{background:transparent;color:var(--ink);border:1px solid var(--line);}
  .homepage .btn.ghost:hover{border-color:var(--green-bright);color:var(--green-bright);box-shadow:none;}
  @media(max-width:900px){.homepage .navlinks{display:none;}}*/

  /* ---------- HERO ---------- */
  .homepage .hero{
    position:relative;padding:110px 32px 60px;max-width:var(--wrap);margin:0 auto;
    display:grid;grid-template-columns:1.05fr 0.95fr;gap:40px;align-items:center;
  }
  .homepage .hero-glow{
    position:absolute;top:-160px;right:-160px;width:520px;height:520px;border-radius:50%;
    background:radial-gradient(circle,rgba(31,167,102,0.35),transparent 70%);filter:blur(10px);z-index:0;
  }
  .homepage .eyebrow{display:flex;align-items:center;gap:10px;margin-bottom:22px;}
  .homepage .eyebrow .dot{width:6px;height:6px;border-radius:50%;background:var(--green-bright);box-shadow:0 0 12px var(--green-bright);}
  .homepage .hero h1{font-size:clamp(40px,5.6vw,68px);line-height:1.02;}
  .homepage .hero h1 .accent{color:var(--green-bright);}
  .homepage .hero p.lead{
    margin-top:22px;font-size:18px;line-height:1.6;color:var(--ink-dim);max-width:490px;
  }
  .homepage .hero-ctas{display:flex;gap:16px;margin-top:34px;flex-wrap:wrap;}
  .homepage .hero-stats{display:flex;gap:34px;margin-top:52px;}
  .homepage .hero-stats div{border-left:1px solid var(--line);padding-left:16px;}
  .homepage .hero-stats b{display:block;font-family:'Sora';font-size:22px;}
  .homepage .hero-stats span{font-size:12.5px;color:var(--ink-faint);}

  /* hero orbit visual */
  .homepage .hero-visual{position:relative;height:440px;z-index:1;}
  .homepage .ring{
    position:absolute;border-radius:50%;border:1px solid var(--line);
    top:50%;left:50%;transform:translate(-50%,-50%);
  }
  .homepage .ring.r1{width:420px;height:420px;}
  .homepage .ring.r2{width:320px;height:320px;border-color:rgba(31,167,102,0.35);}
  .homepage .ring.r3{width:220px;height:220px;border:1px dashed rgba(183,255,110,0.25);animation:spin 40s linear infinite;}
  @keyframes spin{to{transform:translate(-50%,-50%) rotate(360deg);}}
  .homepage .core{
    position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);
    width:126px;height:126px;border-radius:50%;
    background:radial-gradient(circle at 35% 30%, #2CD37F, #0E6B3E 70%);
    display:flex;flex-direction:column;align-items:center;justify-content:center;
    box-shadow:0 0 60px rgba(63,226,140,0.35);
  }
  .homepage .core b{font-family:'Sora';font-size:26px;color:#04140B;}
  .homepage .core span{font-family:'Sora',sans-serif;font-weight:500;font-size:9.5px;letter-spacing:.1em;color:#04140B;text-transform:uppercase;}
  .homepage .hero-node{
    position:absolute;width:9px;height:9px;border-radius:50%;background:var(--lime);
    box-shadow:0 0 10px var(--lime);
  }

  /* ---------- SECTION GENERIC ---------- */
  .homepage section{padding:100px 0;}
  .homepage .section-head{max-width:640px;margin:0 auto 56px;text-align:left;}
  .homepage .section-head h2{font-size:clamp(30px,3.6vw,44px);line-height:1.08;margin-top:14px;}
  .homepage .section-head p{color:var(--ink-dim);font-size:16px;line-height:1.6;margin-top:16px;}

  /* ---------- ECOSYSTEM (signature) ---------- */
  .homepage .ecosystem{background:var(--bg-raise);border-top:1px solid var(--line);border-bottom:1px solid var(--line);}
  .homepage .eco-grid{display:grid;grid-template-columns:520px 1fr;gap:60px;align-items:center;}
  @media(max-width:980px){.homepage .eco-grid{grid-template-columns:1fr;}}

  .homepage .orbit-wrap{position:relative;width:520px;height:520px;margin:0 auto;}
  @media(max-width:600px){.homepage .orbit-wrap{width:100%;height:400px;}}
  .homepage .orbit-center{
    position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);
    width:150px;height:150px;border-radius:50%;
    background:radial-gradient(circle at 35% 30%, #2CD37F, #0E6B3E 75%);
    display:flex;flex-direction:column;align-items:center;justify-content:center;
    box-shadow:0 0 70px rgba(63,226,140,0.32);z-index:3;
  }
  .homepage .orbit-center b{font-family:'Sora';font-size:34px;color:#04140B;}
  .homepage .orbit-center span{font-family:'Sora',sans-serif;font-weight:500;font-size:9px;letter-spacing:.1em;color:#0A2E19;text-align:center;padding:0 14px;margin-top:2px;}
  .homepage .orbit-track{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);border:1px solid var(--line);border-radius:50%;width:460px;height:460px;}
  @media(max-width:600px){.homepage .orbit-track{width:340px;height:340px;}}
  .homepage .node{
    position:absolute;width:96px;transform:translate(-50%,-50%);
    text-align:center;cursor:pointer;z-index:4;
  }
  .homepage .node .dot{
    width:14px;height:14px;border-radius:50%;background:var(--card);border:2px solid var(--green);
    margin:0 auto 8px;transition:all .25s;
  }
  .homepage .node .lbl{font-size:11.5px;line-height:1.25;color:var(--ink-dim);font-weight:500;transition:color .2s;}
  .homepage .node.active .dot{background:var(--lime);border-color:var(--lime);box-shadow:0 0 16px var(--lime);transform:scale(1.25);}
  .homepage .node.active .lbl{color:var(--ink);}
  .homepage .node:hover .dot{border-color:var(--green-bright);}

  .homepage .eco-panel{
    background:var(--card);border:1px solid var(--line);border-radius:var(--radius);
    padding:36px;min-height:280px;
  }
  .homepage .eco-panel .num{
    font-family:'Sora',sans-serif;font-weight:500;color:var(--green-bright);font-size:13px;margin-bottom:14px;display:block;}
  .homepage .eco-panel h3{font-size:26px;margin-bottom:16px;}
  .homepage .eco-panel ul{margin:0;padding:0;list-style:none;display:grid;grid-template-columns:1fr 1fr;gap:10px 20px;}
  .homepage .eco-panel li{font-size:14.5px;color:var(--ink-dim);padding-left:16px;position:relative;}
  .homepage .eco-panel li::before{content:"";position:absolute;left:0;top:9px;width:6px;height:1px;background:var(--green-bright);}
  @media(max-width:520px){.homepage .eco-panel ul{grid-template-columns:1fr;}}

  /* ---------- JOURNEY ---------- */
  .homepage .journey-path{
    position:relative;display:flex;justify-content:space-between;align-items:flex-start;
    margin-top:20px;padding-top:10px;
  }
  .homepage .journey-path::before{
    content:"";position:absolute;top:15px;left:0;right:0;height:1px;
    background:linear-gradient(90deg, var(--line), var(--green) 20%, var(--lime) 80%, var(--line));
  }
  .homepage .jstep{position:relative;flex:1;text-align:center;padding:0 6px;}
  .homepage .jstep .pip{
    width:30px;height:30px;border-radius:50%;background:var(--bg-raise);border:1px solid var(--green);
    margin:0 auto 18px;display:flex;align-items:center;justify-content:center;position:relative;z-index:2;
    font-family:'IBM Plex Mono';font-size:12px;color:var(--green-bright);
  }
  .homepage .jstep b{display:block;font-family:'Sora';font-size:15px;margin-bottom:6px;}
  .homepage .jstep span{font-size:12.5px;color:var(--ink-faint);}
  @media(max-width:900px){
    .homepage .journey-path{flex-direction:column;gap:28px;}
    .homepage .journey-path::before{display:none;}
    .homepage .jstep{text-align:left;display:flex;gap:16px;align-items:flex-start;}
    .homepage .jstep .pip{margin:0;flex-shrink:0;}
  }

  /* ---------- WHY ---------- */
  .homepage .why-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:1px;background:var(--line);border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;}
  @media(max-width:980px){.homepage .why-grid{grid-template-columns:repeat(2,1fr);}}
  @media(max-width:560px){.homepage .why-grid{grid-template-columns:1fr;}}
  .homepage .why-card{background:var(--card);padding:30px 24px;}
  .homepage .why-card .mono{display:block;margin-bottom:26px;}
  .homepage .why-card h3{font-size:18px;margin-bottom:10px;}
  .homepage .why-card p{font-size:14px;color:var(--ink-dim);line-height:1.55;}

  /* ---------- INDUSTRIES ---------- */
  .homepage .ind-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;}
  @media(max-width:900px){.homepage .ind-grid{grid-template-columns:1fr 1fr;}}
  @media(max-width:560px){.homepage .ind-grid{grid-template-columns:1fr;}}
  .homepage .ind-card{
    border:1px solid var(--line);border-radius:var(--radius);padding:28px 24px;
    transition:border-color .2s, transform .2s;background:var(--bg-raise);
  }
  .homepage .ind-card:hover{border-color:var(--green);transform:translateY(-4px);}
  .homepage .ind-card h3{font-size:17px;margin-bottom:10px;}
  .homepage .ind-card p{font-size:13.5px;color:var(--ink-dim);line-height:1.55;}

  /* ---------- ABOUT / WHY WE EXIST ---------- */
  .homepage .about{background:var(--bg-raise);border-top:1px solid var(--line);border-bottom:1px solid var(--line);}
  .homepage .about-grid{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center;}
  @media(max-width:900px){.homepage .about-grid{grid-template-columns:1fr;gap:40px;}}
  .homepage .frag-list{display:flex;flex-wrap:wrap;gap:10px;margin:24px 0 28px;}
  .homepage .frag-chip{
    font-size:13px;color:var(--ink-faint);border:1px solid var(--line);border-radius:999px;
    padding:8px 16px;text-decoration:line-through;text-decoration-color:rgba(233,90,90,0.5);
  }
  .homepage .about p{color:var(--ink-dim);font-size:16px;line-height:1.7;}
  .homepage .about .conclusion{
    margin-top:24px;font-family:'Sora';font-size:21px;color:var(--ink);line-height:1.4;
  }
  .homepage .about .conclusion .accent{color:var(--green-bright);}

 @media (max-width: 767px) {
  .trusted-by {
    padding-bottom: 48px;
  }

  .trusted-by__container {
    width: min(100% - 32px, 1200px);
  }

  .trusted-by__label {
    margin-bottom: 20px;
  }

  .trusted-by__viewport::before,
  .trusted-by__viewport::after {
    width: 40px;
  }

  .trusted-by__group {
    gap: 16px;
    padding-right: 16px;
  }

  .trusted-by__logo {
    flex-basis: 140px;
    width: 140px;
    height: 84px;
    padding: 10px 14px;
    border-radius: 12px;
  }

  .trusted-by__logo img {
    max-width: 112px;
    max-height: 56px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .trusted-by__track {
    transform: none !important;
  }
}
  /* ---------- CTA BANNER ---------- */
  .homepage .cta-banner{
    max-width:var(--wrap);margin:0 auto;border-radius:24px;
    background:linear-gradient(135deg, #0E3A24, #0B0F0D 70%);
    border:1px solid var(--green);padding:64px 56px;text-align:center;position:relative;overflow:hidden;
  }
  .homepage .cta-banner::before{
    content:"";position:absolute;width:400px;height:400px;border-radius:50%;
    background:radial-gradient(circle,rgba(63,226,140,0.25),transparent 70%);
    top:-180px;right:-100px;
  }
  .homepage .cta-banner h2{font-size:clamp(28px,4vw,42px);position:relative;}
  .homepage .cta-banner p{color:var(--ink-dim);margin-top:16px;font-size:16px;position:relative;}
  .homepage .cta-banner .hero-ctas{justify-content:center;position:relative;}

  /* ---------- FOOTER ---------- */
  footer{border-top:1px solid var(--line);padding:70px 0 30px;}
  footer .foot-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:40px;padding-bottom:50px;}
  @media(max-width:800px){footer .foot-grid{grid-template-columns:1fr 1fr;}}
  footer .foot-grid h4{font-size:13px;color:var(--ink-faint);text-transform:uppercase;letter-spacing:.08em;margin-bottom:18px;font-weight:600;}
  footer .foot-grid a,footer .foot-grid p{display:block;font-size:14.5px;color:var(--ink-dim);margin-bottom:12px;line-height:1.5;}
  footer .foot-grid .info p{display: flex;align-items: flex-start;}
    footer .foot-grid .info a{display: contents;}
    footer .foot-grid .info img{margin-right:10px;}
  footer .foot-grid a:hover{color:var(--green-bright);}
  footer .foot-bottom{
    display:flex;justify-content:space-between;align-items:center;padding-top:24px;
    border-top:1px solid var(--line);font-size:13px;color:var(--ink-faint);flex-wrap:wrap;gap:12px;
  }
  footer .foot-social{display:flex;gap:16px;}


/* Homepage styles moved from inline HTML attributes */
.nav-talk{padding:10px 18px;}
.problem-title{margin-top:14px;font-size:clamp(28px,3.4vw,38px);}
.ink-strong{color:var(--ink);}
.problem-cta{margin-top:28px;}
.section-wrap-spaced{margin-bottom:20px;}
.cta-title{margin-top:16px;}
.footer-description{max-width:280px;}
