/* Bdeo Design System v2 — layout, themes, home components */

:root {
--v2-dark: #141416;
--v2-light: #FAFAFA;
--v2-white: #FFFFFF;
--v2-footer: #0E0E10;
--v2-heading: #282828;
--v2-body: #6B6B6B;
--v2-muted: #8C8C8C;
--v2-border: #E3E3E3;
--v2-maxw: 1400px;
--v2-ease: cubic-bezier(.16, 1, .3, 1);
}

body {
background: var(--v2-dark);
font-size: 16px;
}

.wrap {
max-width: var(--v2-maxw) !important;
padding-left: 24px !important;
padding-right: 24px !important;
}

/* ---------- SECTION THEMES ---------- */
section {
padding: clamp(64px, 9vw, 116px) 0 !important;
border: 0 !important;
}

.sec-light {
background: var(--v2-light);
color: var(--v2-heading);
}

.sec-dark {
background: var(--v2-dark);
color: #fff;
}

.sec-white {
background: var(--v2-white);
color: var(--v2-heading);
border-top: 1px solid var(--v2-border);
}

.sec-light .eyebrow,
.sec-white .eyebrow {
color: var(--v2-muted) !important;
}

.sec-dark .eyebrow {
color: rgba(255, 255, 255, .55) !important;
}

.sec-light .shead h2,
.sec-white .shead h2 {
color: var(--v2-heading);
}

.sec-light .shead .lead,
.sec-light .prose,
.sec-white .shead .lead {
color: var(--v2-body);
}

.sec-dark .shead .lead,
.sec-dark .prose {
color: rgba(255, 255, 255, .68);
}

.sec-light .prose b,
.sec-white .prose b {
color: var(--v2-heading);
}

/* ---------- HEADER ---------- */
header {
background: rgba(20, 20, 22, .55) !important;
backdrop-filter: blur(14px);
-webkit-backdrop-filter: blur(14px);
border-bottom: 1px solid rgba(255, 255, 255, .1) !important;
}

.nav {
height: 64px !important;
gap: 32px !important;
}

.logo img {
height: 22px !important;
}

.nav-link {
font-size: 14px !important;
color: rgba(255, 255, 255, .85) !important;
border-radius: 2px !important;
}

.nav-link:hover,
.nav-link.active {
color: #fff !important;
background: rgba(255, 255, 255, .05) !important;
}

.dropdown {
background: rgba(24, 24, 27, .72) !important;
backdrop-filter: blur(14px);
-webkit-backdrop-filter: blur(14px);
border: 1px solid rgba(255, 255, 255, .14) !important;
border-radius: 4px !important;
min-width: 300px !important;
}

.dd-item {
border-radius: 2px !important;
}

.dd-item .d {
color: rgba(255, 255, 255, .55) !important;
}

/* ---------- BUTTONS ---------- */
.btn {
border-radius: 2px !important;
transition: transform .35s var(--v2-ease), background .35s var(--v2-ease), border-color .35s var(--v2-ease), color .35s var(--v2-ease) !important;
}

.btn-white {
background: #fff !important;
color: var(--v2-dark) !important;
font-weight: 400;
font-size: 15px;
padding: 13px 26px;
border: 0;
}

.btn-white:hover {
transform: translateY(-2px);
}

/* ---------- HERO v2 ---------- */
.hero-v2 {
background: var(--bd-hero-gradient) !important;
min-height: calc(100vh - 64px);
display: flex;
flex-direction: column;
padding: 0 !important;
overflow: hidden;
}

.hero-v2__main {
flex: 1;
display: flex;
align-items: center;
width: 100%;
}

.hero-v2__grid {
display: grid;
grid-template-columns: repeat(auto-fit, minmax(340px, 1fr));
gap: 56px;
align-items: center;
width: 100%;
padding: clamp(48px, 6vw, 80px) 0;
}

.hero-v2 h1 {
font-size: clamp(32px, 4.5vw, 58px);
font-weight: 500;
line-height: 1.08;
letter-spacing: -.015em;
margin: 20px 0 0;
}

.hero-v2 .sub {
margin-top: 24px;
max-width: 52ch;
font-size: 17px;
color: rgba(255, 255, 255, .68);
}

.hero-v2 .hero-cta {
margin-top: 36px;
}

.hero-v2 .eyebrow {
color: rgba(255, 255, 255, .55) !important;
}

/* forensic card v2 */
.fcard-v2 {
background: rgba(10, 10, 20, .65);
border: 1px solid rgba(255, 255, 255, .16);
border-radius: 4px;
padding: clamp(28px, 3vw, 44px);
font-family: var(--font-mono);
box-shadow: none !important;
}

.fcard-v2__head {
display: flex;
align-items: center;
justify-content: space-between;
gap: 16px;
}

.fcard-v2__head .ttl {
font-size: 13px;
letter-spacing: .14em;
text-transform: uppercase;
color: #fff !important;
}

.fcard-v2__live {
font-size: 10px;
letter-spacing: .14em;
text-transform: uppercase;
color: rgba(255, 255, 255, .85);
border: 1px solid rgba(255, 255, 255, .65);
border-radius: 2px;
padding: 3px 8px;
animation: liveBorder 2.4s var(--v2-ease) infinite;
}

@keyframes liveBorder {
0%, 100% { border-color: rgba(255, 255, 255, .65); }
50% { border-color: rgba(255, 255, 255, .25); }
}

.fcard-v2__status {
margin-top: 20px;
font-size: 12.5px;
color: rgba(255, 255, 255, .6);
display: flex;
flex-direction: column;
gap: 4px;
}

.fcard-v2__block {
margin-top: 24px;
}

.fcard-v2__label {
margin: 0;
font-size: 11px;
letter-spacing: .14em;
text-transform: uppercase;
color: rgba(255, 255, 255, .45) !important;
}

.fcard-v2__narr {
margin: 8px 0 0;
font-family: var(--font-sans);
font-size: 14.5px;
line-height: 1.55;
color: rgba(255, 255, 255, .85);
background: none;
border: 0;
padding: 0;
}

.fcard-v2__evidence {
display: flex;
flex-direction: column;
gap: 8px;
margin-top: 10px;
}

.fcard-v2__evi {
display: flex;
align-items: center;
justify-content: space-between;
gap: 12px;
border: 1px solid rgba(255, 255, 255, .12);
border-radius: 2px;
padding: 10px 12px;
font-size: 12.5px;
}

.fcard-v2__evi--flag {
border-color: rgba(255, 255, 255, .28);
}

.fcard-v2__evi span:first-child {
color: rgba(255, 255, 255, .85);
}

.fcard-v2__evi-meta {
display: inline-flex;
align-items: center;
gap: 6px;
color: rgba(255, 255, 255, .65);
white-space: nowrap;
}

.fcard-v2__evi--flag .fcard-v2__evi-meta {
color: #fff;
}

.fcard-v2__delta {
margin-top: 20px;
border: 1px solid rgba(255, 255, 255, .28);
border-radius: 2px;
padding: 16px;
background: none;
}

.fcard-v2__delta .fcard-v2__label {
color: #fff !important;
}

.fcard-v2__delta p:last-child {
margin: 8px 0 0;
font-family: var(--font-sans);
font-size: 14px;
line-height: 1.55;
color: rgba(255, 255, 255, .75);
}

.fcard-v2__score {
margin-top: 20px;
display: flex;
align-items: baseline;
gap: 20px;
border-top: 1px solid rgba(255, 255, 255, .12);
padding-top: 20px;
}

.fcard-v2__score-val {
font-size: 34px;
font-weight: 500;
color: #fff;
line-height: 1;
}

.fcard-v2__verdict {
font-size: 13px;
color: #fff;
}

.fcard-v2__foot {
margin: 20px 0 0;
font-size: 11px;
color: rgba(255, 255, 255, .4);
}

/* hero logos marquee */
.hero-logos {
border-top: 1px solid rgba(255, 255, 255, .12);
padding: 24px 0 28px;
}

.hero-logos__lab {
margin: 0 0 18px;
text-align: center;
font-size: 13.5px;
color: rgba(255, 255, 255, .55);
}

.hero-logos__track-wrap {
overflow: hidden;
position: relative;
mask-image: linear-gradient(90deg, transparent 0%, #000 8%, #000 92%, transparent 100%);
-webkit-mask-image: linear-gradient(90deg, transparent 0%, #000 8%, #000 92%, transparent 100%);
}

.hero-logos__track {
display: flex;
align-items: center;
gap: 72px;
width: max-content;
animation: marqueeX 55s linear infinite;
}

.hero-logos__track img {
height: 36px;
width: auto;
filter: grayscale(1);
opacity: .6;
object-fit: contain;
}

@keyframes marqueeX {
from { transform: translateX(0); }
to { transform: translateX(-50%); }
}

/* ---------- HOW IT WORKS v2 ---------- */
.how-v2 {
margin-top: 64px;
display: grid;
grid-template-columns: repeat(auto-fit, minmax(320px, 1fr));
gap: 64px;
align-items: start;
}

.how-v2__agents {
position: sticky;
top: 96px;
align-self: start;
max-width: 420px;
}

.agents-card {
background: var(--v2-dark);
color: #fff;
border-radius: 4px;
padding: clamp(28px, 3vw, 40px);
position: relative;
overflow: hidden;
}

.agents-card__bg {
position: absolute;
right: 16px;
top: -10px;
font-family: var(--font-mono);
font-size: 96px;
font-weight: 500;
line-height: 1;
color: rgba(255, 255, 255, .06);
pointer-events: none;
}

.agents-card__tags {
display: flex;
align-items: center;
gap: 12px;
}

.agents-card__new {
font-family: var(--font-mono);
font-size: 10px;
letter-spacing: .14em;
text-transform: uppercase;
color: var(--v2-dark);
background: #fff;
border-radius: 2px;
padding: 2px 7px;
}

.agents-card__flow {
font-family: var(--font-mono);
font-size: 12px;
letter-spacing: .14em;
text-transform: uppercase;
color: rgba(255, 255, 255, .55) !important;
}

.agents-card h3 {
margin: 16px 0 0;
font-size: 24px;
font-weight: 500;
color: #fff;
}

.agents-card p {
margin: 10px 0 0;
font-size: 15.5px;
line-height: 1.6;
color: rgba(255, 255, 255, .68);
}

.agents-card__rail {
margin-top: 24px;
display: flex;
align-items: center;
gap: 0;
}

.agents-card__rail span:first-child,
.agents-card__rail span:last-child {
width: 8px;
height: 8px;
border-radius: 9999px;
background: #fff;
flex: none;
}

.agents-card__rail-line {
flex: 1;
height: 1px;
background: repeating-linear-gradient(90deg, rgba(255, 255, 255, .5) 0 5px, transparent 5px 11px);
}

.agents-card__rail-label {
font-family: var(--font-mono);
font-size: 11px;
letter-spacing: .14em;
color: rgba(255, 255, 255, .55);
padding: 0 10px;
flex: none;
}

.how-timeline {
position: relative;
padding-left: 40px;
}

.how-timeline__line {
position: absolute;
left: 7px;
top: 8px;
bottom: 8px;
width: 2px;
background: var(--v2-border);
}

.how-timeline__fill {
position: absolute;
left: 7px;
top: 8px;
width: 2px;
height: 0;
max-height: calc(100% - 16px);
background: var(--v2-dark);
transition: height .5s var(--v2-ease);
}

.how-timeline__dash {
position: absolute;
left: -33px;
top: 0;
bottom: 0;
width: 1px;
background: repeating-linear-gradient(180deg, #C4C4C4 0 5px, transparent 5px 12px);
animation: dashFlow 1.8s linear infinite;
}

@keyframes dashFlow {
from { background-position: 0 0; }
to { background-position: 0 12px; }
}

.how-step {
position: relative;
padding-left: 40px;
overflow: visible;
}

.how-step + .how-step {
margin-top: 56px;
}

.how-step__connector {
position: absolute;
left: -33px;
top: 12px;
width: 34px;
border-top: 1px dashed #C4C4C4;
}

.how-step__dot {
position: absolute;
left: 1px;
top: 6px;
width: 12px;
height: 12px;
border-radius: 9999px;
border: 2px solid var(--v2-dark);
background: var(--v2-light);
}

.how-step__num {
position: absolute;
right: 0;
top: -14px;
font-family: var(--font-mono);
font-size: clamp(64px, 7vw, 104px);
font-weight: 500;
line-height: 1;
color: rgba(20, 20, 22, .05);
pointer-events: none;
}

.how-step .sn {
color: var(--v2-muted) !important;
}

.how-step h3 {
margin: 8px 0 0;
font-size: 22px;
font-weight: 500;
color: var(--v2-heading);
}

.how-step p {
margin: 8px 0 0;
max-width: 52ch;
font-size: 15.5px;
color: var(--v2-body);
}

.audit-v2 {
margin-top: 72px;
border-top: 1px solid var(--v2-border);
padding-top: 40px;
display: grid;
grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
gap: 32px;
align-items: start;
background: none !important;
border-left: 0 !important;
border-right: 0 !important;
border-bottom: 0 !important;
border-radius: 0 !important;
padding-left: 0 !important;
padding-right: 0 !important;
}

.audit-v2__title {
margin: 0;
font-family: var(--font-mono);
font-size: clamp(24px, 2.6vw, 34px);
font-weight: 500;
color: var(--v2-heading);
}

.audit-v2 p {
margin: 0;
font-size: 15.5px;
line-height: 1.65;
color: var(--v2-body);
}

.audit-v2 b {
font-weight: 600;
color: var(--v2-heading);
}

/* ---------- PROBLEM v2 ---------- */
.problem-grid {
display: grid;
grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
gap: 16px;
margin-top: 56px;
}

.problem-card {
border: 1px solid rgba(255, 255, 255, .14);
border-radius: 4px;
padding: 36px;
background: rgba(255, 255, 255, .02);
}

.problem-card__svg {
display: block;
width: 100%;
height: 120px;
}

.problem-card__n {
margin: 28px 0 0;
font-family: var(--font-mono);
font-size: 12px;
letter-spacing: .14em;
color: rgba(255, 255, 255, .45) !important;
}

.problem-card h3 {
margin: 10px 0 0;
font-size: 19px;
font-weight: 500;
line-height: 1.3;
}

.problem-card p {
margin: 12px 0 0;
font-size: 15px;
line-height: 1.6;
color: rgba(255, 255, 255, .68);
}

@keyframes clockHand {
from { transform: rotate(0deg); }
to { transform: rotate(360deg); }
}

@keyframes chartDraw {
from { stroke-dashoffset: 100; }
to { stroke-dashoffset: 0; }
}

@keyframes packetGo {
0% { transform: translateX(26px); opacity: 0; }
15% { opacity: 1; }
85% { opacity: 1; }
100% { transform: translateX(176px); opacity: 0; }
}

.problem-card .clock-hand {
transform-origin: 156px 64px;
animation: clockHand 9s linear infinite;
}

.problem-card .clock-hand--slow {
animation-duration: 36s;
}

.problem-card .chart-line {
stroke-dasharray: 100;
animation: chartDraw 4s var(--v2-ease) infinite alternate;
}

.problem-card .packet {
animation: packetGo 3.4s var(--v2-ease) infinite;
}

/* ---------- SOLUTIONS LIST v2 ---------- */
.sol-list {
margin-top: 12px;
border-top: 1px solid var(--v2-border);
}

.sol-row {
display: flex;
flex-wrap: wrap;
align-items: baseline;
gap: 8px 32px;
padding: 28px 0;
border-bottom: 1px solid var(--v2-border);
cursor: pointer;
text-decoration: none;
color: inherit;
transition: transform .35s var(--v2-ease);
}

.sol-row:hover {
transform: translateY(-2px);
}

.sol-row h3 {
margin: 0;
flex: 1;
min-width: 220px;
font-family: var(--font-mono);
font-size: 11px;
font-weight: 500;
letter-spacing: .14em;
text-transform: uppercase;
color: var(--v2-muted) !important;
}

.sol-row__desc {
flex: 1.3;
min-width: 260px;
font-size: 15px;
line-height: 1.6;
color: var(--v2-body);
}

.sol-row__arrow {
font-size: 18px;
color: var(--v2-heading);
}

.vcat-lab {
margin: 64px 0 0 !important;
color: var(--v2-muted) !important;
}

.vcat-lab:first-of-type {
margin-top: 64px !important;
}

/* ---------- IMPACT v2 ---------- */
.impact-v2 {
position: relative;
overflow: hidden;
}

.impact-v2__grid-bg {
position: absolute;
inset: 0;
background: repeating-linear-gradient(90deg, rgba(255, 255, 255, .035) 0 1px, transparent 1px 120px);
pointer-events: none;
}

.impact-v2__curve {
position: absolute;
left: 0;
right: 0;
bottom: 0;
width: 100%;
height: 78%;
pointer-events: none;
}

.impact-v2__curve path {
stroke: rgba(255, 255, 255, .35);
stroke-width: 1.5;
fill: none;
stroke-dasharray: 100;
stroke-dashoffset: 100;
transition: stroke-dashoffset 1.8s var(--v2-ease);
}

.impact-v2.in-view .impact-v2__curve path {
stroke-dashoffset: 0;
}

.impact-v2__inner {
position: relative;
z-index: 1;
}

.impact-v2__grid {
margin-top: 80px;
display: grid;
grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
gap: 56px 48px;
}

.impact-v2__grid--sm {
margin-top: 64px;
}

.impact-v2__cell {
max-width: 340px;
}

.impact-v2__cell--sm {
display: flex;
flex-direction: column;
gap: 12px;
}

.impact-v2__cat {
margin: 0;
font-family: var(--font-mono);
font-size: 11px;
letter-spacing: .14em;
color: rgba(255, 255, 255, .45) !important;
border-bottom: 1px solid rgba(255, 255, 255, .12);
padding-bottom: 14px;
}

.impact-v2__cat--sm {
border-bottom-color: rgba(255, 255, 255, .18);
}

.impact-v2__num {
margin: 24px 0 0;
font-family: var(--font-mono);
font-size: clamp(52px, 5.5vw, 84px);
font-weight: 500;
line-height: 1;
}

.impact-v2__num--sm {
margin: 0;
font-size: clamp(24px, 2.4vw, 32px);
line-height: 1.15;
color: #fff;
}

.impact-v2__num.grad {
background: var(--bd-gradient);
-webkit-background-clip: text;
background-clip: text;
color: transparent;
}

.impact-v2__num--sm.grad {
color: transparent;
}

.impact-v2__lbl {
margin: 16px 0 0;
font-size: 15px;
color: rgba(255, 255, 255, .68);
}

.impact-v2__lbl--sm {
margin: 0;
font-size: 14.5px;
}

/* ---------- TRUST v2 ---------- */
.trust-v2 {
display: grid;
grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
gap: 16px;
margin-top: 56px;
}

.trust-v2__cell {
background: var(--v2-white);
border: 1px solid var(--v2-border);
border-radius: 4px;
padding: 28px;
}

.trust-v2__cell svg {
display: block;
width: 28px;
height: 28px;
stroke: var(--v2-heading);
}

.trust-v2__cell h3 {
margin: 20px 0 0;
font-size: 17px;
font-weight: 500;
color: var(--v2-heading);
}

.trust-v2__cell p {
margin: 8px 0 0;
font-size: 14px;
line-height: 1.55;
color: var(--v2-body);
}

/* ---------- FAQ v2 ---------- */
.faq-v2 {
margin-top: 48px;
border-top: 1px solid var(--v2-border);
max-width: 900px;
}

.faq-v2__item {
border-bottom: 1px solid var(--v2-border);
}

.faq-v2__trigger {
display: flex;
align-items: center;
justify-content: space-between;
gap: 24px;
padding: 22px 4px;
cursor: pointer;
width: 100%;
background: none;
border: 0;
text-align: left;
font: inherit;
color: inherit;
transition: transform .35s var(--v2-ease);
}

.faq-v2__trigger:hover {
transform: translateY(-2px);
}

.faq-v2__trigger h3 {
margin: 0;
font-size: 17px;
font-weight: 500;
color: var(--v2-heading);
}

.faq-v2__chev {
font-family: var(--font-mono);
font-size: 18px;
color: var(--v2-muted);
transition: transform .4s var(--v2-ease);
flex: none;
}

.faq-v2__item.is-open .faq-v2__chev {
transform: rotate(45deg);
}

.faq-v2__body {
max-height: 0;
opacity: 0;
overflow: hidden;
transition: max-height .5s var(--v2-ease), opacity .5s var(--v2-ease);
}

.faq-v2__item.is-open .faq-v2__body {
opacity: 1;
}

.faq-v2__body p {
margin: 0;
padding: 0 4px 24px;
max-width: 68ch;
font-size: 15px;
line-height: 1.65;
color: var(--v2-body);
}

/* ---------- HOME CTA v2 ---------- */
.home-cta-v2__grid {
display: grid;
grid-template-columns: minmax(300px, 1.1fr) minmax(420px, 1fr);
gap: 56px;
align-items: center;
}

.home-cta-v2__stats {
display: grid;
grid-template-columns: repeat(3, 1fr);
gap: 32px;
width: 100%;
}

.home-cta-v2__stat {
border-top: 0;
padding-top: 0;
}

.home-cta-v2__perks {
margin-top: 28px;
display: flex;
flex-direction: column;
gap: 12px;
}

.home-cta-v2__perk {
display: flex;
align-items: center;
gap: 10px;
font-size: 15px;
color: rgba(255, 255, 255, .8);
}

.home-cta-v2__perk svg {
flex: none;
}

.home-cta-v2__stat-num {
margin: 0;
font-family: var(--font-mono);
font-size: 26px;
font-weight: 500;
color: #fff;
}

.home-cta-v2__stat-lbl {
margin: 6px 0 0;
font-size: 13.5px;
color: rgba(255, 255, 255, .6);
}

.home-cta-v2__action {
margin-top: 36px;
}

.home-cta-v2__copy h2 {
margin-top: 16px;
}

/* ---------- INNER PAGE ADAPTATIONS ---------- */
.psub-hero,
.demo-hero {
padding: clamp(48px, 6vw, 80px) 0 clamp(40px, 5vw, 64px) !important;
}

.psub-hero .eyebrow,
.demo-hero .eyebrow,
.hero-v2 .eyebrow {
color: rgba(255, 255, 255, .55) !important;
}

.section-sm {
padding: clamp(40px, 5vw, 72px) 0 !important;
}

.sec-light .pcard,
.sec-light .step,
.sec-light .vcard,
.sec-light .tcell,
.sec-light .acard,
.sec-light .ucard,
.sec-light .fstage,
.sec-light .wcard,
.sec-light .mcard,
.sec-light .hyper,
.sec-light .copilot-callout,
.sec-light .arch-wrap,
.sec-light .outcomes {
background: var(--v2-white);
border-color: var(--v2-border);
color: var(--v2-heading);
}

.sec-light .impact-grid {
background: transparent;
border: 0;
}

.sec-light .pcard p,
.sec-light .step p,
.sec-light .vcard p,
.sec-light .tcell p,
.sec-light .acard p,
.sec-light .ucard p,
.sec-light .fstage p,
.sec-light .wcard p,
.sec-light .mcard p,
.sec-light .hyper p,
.sec-light .copilot-callout p,
.sec-light .ocol,
.sec-light .impact-cell {
color: var(--v2-body);
background: var(--v2-white);
}

.sec-light .step .sn,
.sec-light .vcard .tag,
.sec-light .ucard .tag,
.sec-light .fstage .st,
.sec-light .wcard .r,
.sec-light .mcard .n,
.sec-light .acard .h .badge,
.sec-light .outcomes-head,
.sec-light .ocol .cat {
color: var(--v2-muted) !important;
}

.sec-light .step-icon {
background: rgba(20, 20, 22, .06);
border-color: var(--v2-border);
color: var(--v2-heading);
}

.sec-light .point .k {
color: var(--v2-muted);
border-color: var(--v2-border);
}

.sec-light .point p {
color: var(--v2-body);
}

.sec-dark .pcard,
.sec-dark .step,
.sec-dark .vcard,
.sec-dark .acard,
.sec-dark .ucard,
.sec-dark .fstage,
.sec-dark .wcard,
.sec-dark .mcard {
background: rgba(255, 255, 255, .02);
border-color: rgba(255, 255, 255, .14);
}

.ctaband {
background: rgba(255, 255, 255, .04) !important;
border: 1px solid rgba(255, 255, 255, .14) !important;
border-radius: 4px !important;
text-align: left !important;
padding: clamp(36px, 4vw, 56px) !important;
}

.ctaband p {
color: rgba(255, 255, 255, .68) !important;
font-size: 16px !important;
}

.sec-light .ctaband {
background: var(--v2-white) !important;
border-color: var(--v2-border) !important;
}

.sec-light .ctaband p {
color: var(--v2-body) !important;
}

footer {
background: var(--v2-footer) !important;
border-top: 1px solid rgba(255, 255, 255, .1) !important;
color: rgba(255, 255, 255, .75);
padding: clamp(48px, 6vw, 80px) 0 40px !important;
}

.fcol h4 {
color: rgba(255, 255, 255, .45) !important;
}

.fcol a {
color: rgba(255, 255, 255, .75) !important;
}

.fbottom {
border-top-color: rgba(255, 255, 255, .1) !important;
color: rgba(255, 255, 255, .45);
}

.fbottom-links a {
color: rgba(255, 255, 255, .55) !important;
}

.fbottom-links a:hover {
color: rgba(255, 255, 255, .9) !important;
}

.sec-light .legal-doc h2,
.sec-light .legal-doc h3,
.sec-light .legal-doc h4,
.sec-light .legal-doc strong,
.sec-light .legal-doc b,
.sec-light .status-label,
.sec-light .cert-card h3,
.sec-light .feat h3 {
color: var(--v2-ink, #0E0E10) !important;
}

.sec-light .legal-doc p,
.sec-light .legal-doc li,
.sec-light .feat p {
color: var(--v2-body, #3a3a40) !important;
}

.sec-light .cert-card,
.sec-light .feat,
.sec-light .status-embed {
background: #fff !important;
border-color: rgba(0, 0, 0, .08) !important;
}

/* stagger reveal */
[data-stagger] > .reveal,
[data-stagger] > .how-step,
[data-stagger] > .problem-card,
[data-stagger] > .impact-v2__cell {
opacity: 0;
transform: translateY(18px);
transition: opacity .6s var(--v2-ease), transform .6s var(--v2-ease);
}

[data-stagger].in-view > .reveal,
[data-stagger].in-view > .how-step,
[data-stagger].in-view > .problem-card,
[data-stagger].in-view > .impact-v2__cell {
opacity: 1;
transform: none;
}

[data-stagger].in-view > *:nth-child(1) { transition-delay: 0ms; }
[data-stagger].in-view > *:nth-child(2) { transition-delay: 80ms; }
[data-stagger].in-view > *:nth-child(3) { transition-delay: 160ms; }
[data-stagger].in-view > *:nth-child(4) { transition-delay: 240ms; }
[data-stagger].in-view > *:nth-child(5) { transition-delay: 320ms; }
[data-stagger].in-view > *:nth-child(6) { transition-delay: 400ms; }

.shead h2 {
font-size: clamp(26px, 3.2vw, 38px) !important;
font-weight: 500 !important;
line-height: 1.15 !important;
letter-spacing: -.01em !important;
margin-top: 16px !important;
}

@media (max-width: 960px) {
.how-v2__agents {
position: static;
max-width: none;
}

.hero-v2__grid {
gap: 40px;
}

.home-cta-v2__grid {
grid-template-columns: 1fr;
}

.home-cta-v2__stats {
grid-template-columns: repeat(3, 1fr);
gap: 24px;
}
}

@media (max-width: 640px) {
.home-cta-v2__stats {
grid-template-columns: 1fr;
}
}

@media (prefers-reduced-motion: reduce) {
.hero-logos__track,
.problem-card .clock-hand,
.problem-card .chart-line,
.problem-card .packet,
.how-timeline__dash,
.fcard-v2__live {
animation: none !important;
}

[data-stagger] > * {
opacity: 1 !important;
transform: none !important;
transition: none !important;
}
}
