/* v25: Evidence Ledger. The homepage reads like the signed, traceable record the
   platform produces. Scoped to main[data-home-ledger]; the Webflow stylesheet,
   runtime, hero Spline scene and Lottie flow diagram are untouched. Tokens come
   from the shared stylesheet variables; gold matches the logo gradient. */
main[data-home-ledger]{--ledger-gold:#f1e298;--ledger-gold-deep:#d9a441;--ledger-line:var(--_colors---elevation--outline-1);--ledger-mute:var(--_colors---text--default--tertiary);--ledger-mono:var(--_typescale---font-family--family-secondary);position:relative;counter-reset:fig}

/* Mono utility vocabulary */
main[data-home-ledger] .ledger-mono,
main[data-home-ledger] .ledger-tag,
main[data-home-ledger] .ledger-trace-label,
main[data-home-ledger] .ledger-trace-head,
main[data-home-ledger] .ledger-trace-foot{font-family:var(--ledger-mono);font-size:12px;line-height:16px;letter-spacing:.08em;text-transform:uppercase}
main[data-home-ledger] .ledger-accent{color:var(--ledger-gold)}
main[data-home-ledger] .ledger-tags{display:flex;flex-wrap:wrap;gap:8px;margin-top:8px}
main[data-home-ledger] .ledger-tag{font-size:11px;line-height:14px;padding:5px 8px;border:1px solid var(--ledger-line);color:var(--_colors---text--default--secondary);white-space:nowrap}
main[data-home-ledger] .ledger-tag.is-gold{color:var(--ledger-gold);border-color:var(--ledger-gold)}
main[data-home-ledger] .ledger-tag.is-review{color:var(--_colors---informational--warning-outline);border-color:var(--_colors---informational--warning-outline)}

/* Margin ruler: a controlled-document rail in the left gutter, wide screens only. */
@media (min-width:1280px){
  main[data-home-ledger]::before{content:"";position:absolute;left:0;top:0;bottom:0;width:clamp(1rem,.0636rem + 3.6364vw,3.5rem);pointer-events:none;z-index:2;border-right:1px solid rgba(76,76,73,.35);background-image:linear-gradient(rgba(119,118,112,.5) 1px,transparent 1px);background-size:100% 120px}
  main[data-home-ledger]::after{content:"";position:absolute;left:calc(clamp(1rem,.0636rem + 3.6364vw,3.5rem) - 16px);top:0;bottom:0;width:1px;pointer-events:none;z-index:2;background:repeating-linear-gradient(to bottom,rgba(119,118,112,.45) 0 8px,transparent 8px 24px)}
  main[data-home-ledger] section[data-ledger]::before{content:"§" attr(data-ledger);position:absolute;left:8px;top:-8px;z-index:3;font-family:var(--ledger-mono);font-size:11px;line-height:16px;letter-spacing:.08em;color:var(--ledger-mute);background:var(--_colors---elevation--background);padding:0 2px}
}
main[data-home-ledger] section[data-ledger]{position:relative;border-top:1px solid var(--ledger-line)}
main[data-home-ledger] .mission_wrap{border-bottom:0}

/* Record line: the eyebrow chip becomes a mono index with a hairline rule. */
main[data-home-ledger] .eyebrow_label.u-text-overline{background:transparent;border-radius:0;padding:0;color:var(--ledger-gold);display:flex;align-items:center;gap:16px;align-self:stretch;width:100%;font-size:12px;line-height:16px;letter-spacing:.08em}
main[data-home-ledger] .eyebrow_label.u-text-overline::after{content:"";flex:1;height:1px;background:var(--ledger-line)}
main[data-home-ledger] .eyebrow_label.u-text-overline[data-count]::after{content:attr(data-count);flex:1;height:auto;background:none;text-align:right;color:var(--ledger-mute);background-image:linear-gradient(var(--ledger-line),var(--ledger-line));background-size:calc(100% - 9ch) 1px;background-repeat:no-repeat;background-position:0 50%}
main[data-home-ledger] .solution_content,
main[data-home-ledger] .benefits_content,
main[data-home-ledger] .testimonial_content{width:100%;max-width:none}
main[data-home-ledger] .benefits_content{align-items:flex-start}
main[data-home-ledger] .benefits_title.u-text-title-1{text-align:left;max-width:22ch;font-size:clamp(2.5rem,4.4vw,4rem);line-height:1.06;letter-spacing:-.03em}
main[data-home-ledger] .solution_title,
main[data-home-ledger] .solution_body{text-align:center}
main[data-home-ledger] .solution_title{max-width:900px;margin-inline:auto}
main[data-home-ledger] .solution_body{max-width:760px;margin-inline:auto}
main[data-home-ledger] .testimonial_title,
main[data-home-ledger] .testimonial_body{text-align:left;align-self:flex-start}
main[data-home-ledger] .testimonial_content{align-items:flex-start}

/* Section headings: tighter, larger, consistent. */
main[data-home-ledger] :is(.automate_title,.mission_title,.solution_title,.steps_title,.testimonial_title).u-text-title-1{letter-spacing:-.02em;line-height:1.15}
main[data-home-ledger] .automate_layout .automate_content:first-child{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:24px 64px;align-items:end;width:100%}
main[data-home-ledger] .automate_layout .automate_content:first-child .eyebrow_label{grid-column:1 / -1}
main[data-home-ledger] .automate_layout .automate_content:first-child .automate_title{max-width:640px}
main[data-home-ledger] .automate_layout .automate_content:first-child .automate_body{max-width:560px;justify-self:end}

/* Hero: copy on the left, the trace card on the right, the Spline scene and the
   Lottie flow diagram exactly where they were. */
main[data-home-ledger] .hero_layout{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,512px);grid-template-areas:"title trace" "content trace";gap:28px 64px;align-items:start}
main[data-home-ledger] .hero_layout > div:first-child{grid-area:title}
main[data-home-ledger] .hero_content{grid-area:content;align-items:flex-start;padding-top:0}
main[data-home-ledger] .hero_title{font-size:clamp(3rem,5.4vw,5rem);line-height:.98;letter-spacing:-.035em;max-width:none;color:var(--_colors---text--inverted--primary)}
main[data-home-ledger] .hero_title span{display:inline}
main[data-home-ledger] .hero_use_subtitle{opacity:1;color:var(--_colors---text--default--secondary);font-weight:300}
main[data-home-ledger] .hero_body{color:var(--_colors---text--default--secondary)}
main[data-home-ledger] .ledger-hero-mark{display:flex;align-items:center;gap:12px;color:var(--ledger-mute);margin-bottom:24px}
main[data-home-ledger] .ledger-hero-mark::before{content:"";width:8px;height:8px;background:var(--ledger-gold);flex:none}
main[data-home-ledger] .ledger-hero-cta{display:flex;align-items:center;gap:24px;flex-wrap:wrap}
main[data-home-ledger] .ledger-hero-cta .ledger-mono{color:var(--ledger-mute)}

/* Trace card */
main[data-home-ledger] .ledger-trace{grid-area:trace;position:relative;border:1px solid var(--ledger-line);background:rgba(12,12,12,.9);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);margin-top:12px;color:var(--_colors---text--inverted--primary)}
main[data-home-ledger] .ledger-trace-head,
main[data-home-ledger] .ledger-trace-foot{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:14px 20px;color:var(--_colors---text--default--secondary)}
main[data-home-ledger] .ledger-trace-head{border-bottom:1px solid var(--ledger-line)}
main[data-home-ledger] .ledger-trace-foot{border-top:1px solid var(--ledger-line);background:#0a0a0a;padding:12px 20px}
main[data-home-ledger] .ledger-trace-head span:last-child,
main[data-home-ledger] .ledger-trace-foot span:first-child{color:var(--ledger-mute)}
main[data-home-ledger] .ledger-trace-body{position:relative;padding:24px 20px 20px 56px;display:flex;flex-direction:column}
main[data-home-ledger] .ledger-trace-line{position:absolute;left:33px;top:36px;bottom:44px;width:1.5px;background:var(--ledger-gold);transform-origin:50% 0;transform:scaleY(0);animation:ledger-draw 2s cubic-bezier(.4,0,.2,1) .7s forwards}
main[data-home-ledger] .ledger-trace-row{position:relative}
main[data-home-ledger] .ledger-trace-row::before{content:"";position:absolute;left:-27px;top:4px;width:8px;height:8px;border-radius:50%;border:1.5px solid var(--ledger-gold);background:#0c0c0c;box-sizing:border-box;z-index:1}
main[data-home-ledger] .ledger-trace-row:last-child::before{background:var(--ledger-gold)}
main[data-home-ledger] .ledger-trace-row{display:flex;flex-direction:column;gap:8px;padding-bottom:28px}
main[data-home-ledger] .ledger-trace-row:last-child{padding-bottom:0}
main[data-home-ledger] .ledger-trace-label{color:var(--ledger-mute)}
main[data-home-ledger] .ledger-trace-text{font-size:17px;line-height:26px;color:var(--_colors---text--inverted--primary);margin:0}
main[data-home-ledger] .ledger-trace-code{font-family:var(--ledger-mono);font-size:13px;line-height:22px;color:var(--_colors---text--inverted--secondary);margin:0}
main[data-home-ledger] .ledger-trace-verdict{display:flex;align-items:baseline;gap:14px;flex-wrap:wrap}
main[data-home-ledger] .ledger-trace-verdict strong{font-size:32px;line-height:36px;letter-spacing:-.02em;font-weight:400;color:var(--ledger-gold)}
main[data-home-ledger] .ledger-trace-verdict .ledger-mono{color:var(--_colors---informational--warning-outline)}
@keyframes ledger-draw{to{transform:scaleY(1)}}
@keyframes ledger-rise{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}
main[data-home-ledger] .ledger-trace{animation:ledger-rise .9s cubic-bezier(.2,.7,.2,1) .35s both}
@media (prefers-reduced-motion:reduce){
  main[data-home-ledger] .ledger-trace{animation:none}
  main[data-home-ledger] .ledger-trace-line{animation:none;transform:none}
}

/* Flow diagram frame: the retained Lottie line treatment gets a hairline frame. */
main[data-home-ledger] .hero-diagram{border-top:1px solid rgba(76,76,73,.6);border-bottom:1px solid rgba(76,76,73,.6)}
main[data-home-ledger] .hero-diagram-caption{font-family:var(--ledger-mono);letter-spacing:.08em;text-transform:uppercase;font-size:.75rem!important;color:var(--ledger-mute)}

/* Plates: every illustration is a numbered figure in a hairline frame. */
main[data-home-ledger] .img_hover_wrap,
main[data-home-ledger] .visual_wrap{position:relative;border:1px solid var(--ledger-line);counter-increment:fig;overflow:hidden}
main[data-home-ledger] .img_hover_wrap::before,
main[data-home-ledger] .visual_wrap::before,
main[data-home-ledger] .stack_visual_wrap .ledger-fig{position:absolute;left:12px;top:10px;z-index:5;font-family:var(--ledger-mono);font-size:12px;line-height:16px;letter-spacing:.08em;text-transform:uppercase;color:var(--ledger-mute);pointer-events:none}
main[data-home-ledger] .img_hover_wrap::before,
main[data-home-ledger] .visual_wrap::before{content:"Fig. " counter(fig,decimal-leading-zero)}
main[data-home-ledger] .stack_visual_wrap{counter-increment:fig}
main[data-home-ledger] .stack_visual_wrap .ledger-fig{left:auto;right:0;top:auto;bottom:8px;z-index:11}
main[data-home-ledger] .card_simple_wrap{min-width:0}

/* 02 Evidence-Backed Outputs: a bordered ledger of four records. */
main[data-home-ledger] [data-ledger="02"] .automate_content:nth-child(2){gap:0;width:100%;margin-bottom:0;border-top:1px solid var(--ledger-line);border-left:1px solid var(--ledger-line);counter-reset:rec}
main[data-home-ledger] [data-ledger="02"] .cards_col_wrap{gap:0;width:100%}
main[data-home-ledger] [data-ledger="02"] .card_simple_wrap{counter-increment:rec;gap:16px;padding:32px 32px 36px;border-right:1px solid var(--ledger-line);border-bottom:1px solid var(--ledger-line);position:relative}
main[data-home-ledger] [data-ledger="02"] .card_simple_wrap::before{content:"02." counter(rec);font-family:var(--ledger-mono);font-size:12px;line-height:16px;letter-spacing:.08em;color:var(--ledger-mute)}
main[data-home-ledger] [data-ledger="02"] .card_divider{display:none}
main[data-home-ledger] [data-ledger="02"] .card_simple_title{margin-top:0}
main[data-home-ledger] .ledger-principle{display:grid;grid-template-columns:220px minmax(0,1fr);gap:48px;align-items:start;margin-top:64px;width:100%}
main[data-home-ledger] .ledger-principle::before{content:"Principle";font-family:var(--ledger-mono);font-size:12px;line-height:16px;letter-spacing:.08em;text-transform:uppercase;color:var(--ledger-gold);padding-top:12px;background:linear-gradient(var(--ledger-gold),var(--ledger-gold)) 0 19px / 40px 1px no-repeat;padding-left:52px}
main[data-home-ledger] .ledger-principle.u-text-body-3{font-size:clamp(1.5rem,2.2vw,2rem);line-height:1.3;font-weight:300;letter-spacing:-.015em;color:var(--_colors---text--inverted--primary);max-width:none}

/* 03 Know What to Fix First: ghost numerals behind the outcomes. */
main[data-home-ledger] .sticky_card{counter-increment:ghost}
main[data-home-ledger] .sticky_cards_wrap{counter-reset:ghost}
main[data-home-ledger] .sticky_card_contain{position:relative}
main[data-home-ledger] .sticky_card_contain::before{content:counter(ghost,decimal-leading-zero);position:absolute;left:calc(clamp(1rem,.0636rem + 3.6364vw,3.5rem) - 12px);top:-24px;font-family:var(--_typescale---font-family--family-primary);font-weight:300;font-size:220px;line-height:1;letter-spacing:-.04em;color:#fff;opacity:.055;pointer-events:none;user-select:none;z-index:0}
main[data-home-ledger] .txt_group_sticky{position:relative;z-index:1;padding-left:120px}
/* .step_number_text keeps its gradient text-clip from the steps section embed. */
main[data-home-ledger] .number_wrap .step_number_text{font-family:var(--ledger-mono)}
main[data-home-ledger] .sticky_card_title.u-text-title-2{font-size:clamp(1.75rem,2.5vw,2.25rem);letter-spacing:-.02em;line-height:1.2}

/* 04 Stack: layer indices beside the exploded HexReason stack. */
main[data-home-ledger] .accordion_stack_row{position:relative;padding-left:72px!important}
main[data-home-ledger] .accordion_stack_row::before{position:absolute;left:16px;top:26px;font-family:var(--ledger-mono);font-size:12px;line-height:16px;letter-spacing:.08em;color:var(--ledger-gold)}
main[data-home-ledger] .accordion_stack_row:first-child::before{top:4px}
main[data-home-ledger] .accordion_stack_row.is-feedback::before{content:"L4"}
main[data-home-ledger] .accordion_stack_row.is-reason::before{content:"L3"}
main[data-home-ledger] .accordion_stack_row.is-logic::before{content:"L2"}
main[data-home-ledger] .accordion_stack_row.is-semantic::before{content:"L1"}
main[data-home-ledger] .accordion_stack_title.u-text-title-4{color:var(--ledger-gold)}

/* 05 How It Works: step numbers in gold mono. */
main[data-home-ledger] .steps_table_wrap{border-radius:0}
main[data-home-ledger] .step_row_number .step_text{color:var(--ledger-mute);-webkit-text-fill-color:currentColor;background:none}
main[data-home-ledger] .step_row_number{background-color:var(--_colors---elevation--background)}

/* 06 What Sets Us Apart */
main[data-home-ledger] .cards_grid_wrap{border-radius:0}

/* 07 Customers: the quote card as a dotted record, placeholder called out. */
main[data-home-ledger] .swiper{border-radius:0;background-color:#0a0a0a;background-image:radial-gradient(rgba(255,255,255,.14) 1px,transparent 1.2px);background-size:12px 12px}
main[data-home-ledger] .slide_bg_img{display:none}
main[data-home-ledger] .eyebrow_label.u-text-overline[data-note]::after{content:attr(data-note);color:var(--_colors---informational--warning-outline);flex:1;height:auto;background:none;text-align:right}

/* CTA banner */
main[data-home-ledger] .cta_banner_layout{border-radius:0;border:1px solid var(--ledger-line);background-color:#0a0a0a}
main[data-home-ledger] .cta_banner_layout::after{content:"";position:absolute;left:0;right:0;bottom:0;height:320px;background:radial-gradient(50% 80% at 50% 100%,rgba(217,164,65,.22) 0%,rgba(217,164,65,0) 70%);pointer-events:none;z-index:0}
main[data-home-ledger] .cta_banner_title.u-text-title-1{font-size:clamp(2.5rem,3.9vw,3.5rem);line-height:1.06;letter-spacing:-.03em;max-width:520px}
main[data-home-ledger] .ledger-cta-tags{position:absolute;left:clamp(2.5rem,7.6923vw - 2.2692rem,5rem);bottom:32px;z-index:2}

/* Responsive */
@media (max-width:991px){
  main[data-home-ledger] .hero_layout{grid-template-columns:minmax(0,1fr);grid-template-areas:"title" "content" "trace";gap:28px}
  main[data-home-ledger] .ledger-trace{max-width:560px}
  main[data-home-ledger] .automate_layout .automate_content:first-child{grid-template-columns:minmax(0,1fr);align-items:start}
  main[data-home-ledger] .automate_layout .automate_content:first-child .automate_body{justify-self:start}
  main[data-home-ledger] .sticky_card_contain::before{font-size:160px;top:-8px;left:8px}
  main[data-home-ledger] .txt_group_sticky{padding-left:0;padding-top:72px}
  main[data-home-ledger] .ledger-principle{grid-template-columns:minmax(0,1fr);gap:16px;margin-top:40px}
  main[data-home-ledger] .accordion_stack_row{padding-left:48px!important}
  main[data-home-ledger] .accordion_stack_row::before{top:28px}
  main[data-home-ledger] .accordion_stack_row.is-semantic::before{top:4px}
  main[data-home-ledger] .ledger-cta-tags{position:static;margin-top:24px}
}
@media (max-width:767px){
  main[data-home-ledger] .hero_title{font-size:clamp(2.6rem,10.5vw,3.5rem);line-height:1}
  main[data-home-ledger] [data-ledger="02"] .cards_col_wrap{flex-direction:column;gap:0}
  main[data-home-ledger] [data-ledger="02"] .card_simple_wrap{padding:24px 20px 28px}
  main[data-home-ledger] .ledger-trace-body{padding:20px 16px 16px 44px}
  main[data-home-ledger] .ledger-trace-line{left:25px}
  main[data-home-ledger] .ledger-trace-row::before{left:-23px}
  main[data-home-ledger] .ledger-trace-row{padding-bottom:22px}
  main[data-home-ledger] .ledger-trace-head,
  main[data-home-ledger] .ledger-trace-foot{padding-left:16px;padding-right:16px;font-size:11px;gap:12px}
  main[data-home-ledger] .ledger-trace-head span,
  main[data-home-ledger] .ledger-trace-foot span{white-space:nowrap}
  main[data-home-ledger] .ledger-trace-text{font-size:15px;line-height:22px}
  main[data-home-ledger] .ledger-trace-verdict strong{font-size:26px;line-height:30px}
  main[data-home-ledger] .ledger-principle.u-text-body-3{font-size:1.375rem}
  main[data-home-ledger] .sticky_card_contain::before{font-size:120px}
  main[data-home-ledger] .txt_group_sticky{padding-top:56px}
}
