/* Fallschmiede design system — shared by every static page. */
:root  {

  --bg:#25221f;
   --panel:#292521;
   --paper:#f4f2ed;
   --ink:#f5f2ed;

  --dark:#28241f;
   --muted:#c1b6a8;
   --muted-light:#6b6054;

  --orange:#ff582c;
   --orange-light:#ba3b12;
   --line:#ffffff29;

  --gutter:max(6%,calc((100vw - 1520px)/2));
   --header-height:88px;

  font-family:Arial,Helvetica,sans-serif;
   color:var(--ink);
   background:var(--bg);

  font-synthesis:none;
   scroll-behavior:smooth;


}

* {
  box-sizing:border-box
}
body {
  margin:0
}
a {
  color:inherit;
  text-decoration:none
}
button,input,textarea {
  font:inherit
}
button {
  cursor:pointer
}
p {
  line-height:1.75;
  text-wrap:pretty
}
img,svg {
  max-width:100%
}
button,a,summary,input,textarea {
  -webkit-tap-highlight-color:transparent
}

a:focus-visible,button:focus-visible,summary:focus-visible,input:focus-visible,textarea:focus-visible {
  outline:2px solid var(--orange);
  outline-offset:5px
}

[hidden] {
  display:none!important
}
[id] {
  scroll-margin-top:calc(var(--header-height) + 24px)
}
::selection {
  background:var(--orange);
  color:var(--dark)
}

h1,h2,h3 {
  font-weight:400;
  margin:0
}
h1 {
  font-size:clamp(48px,5.1vw,80px);
  line-height:1.04;
  letter-spacing:-3px
}
h2 {
  font-size:clamp(32px,3.2vw,50px);
  line-height:1.15;
  letter-spacing:-1.7px
}
h3 {
  font-size:26px;
  line-height:1.3;
  letter-spacing:-.6px
}
em {
  font-style:normal;
  color:var(--orange)
}

.skip {
  position:fixed;
  top:-100px;
  left:20px;
  background:var(--orange);
  color:var(--dark);
  padding:14px;
  z-index:120
}
.skip:focus {
  top:10px
}

.header {
  height:var(--header-height);
  position:sticky;
  top:0;
  z-index:100;
  background:var(--bg);
  border-bottom:1px solid var(--line);
  padding:0 var(--gutter);
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:24px
}
.header.is-scrolled {
  box-shadow:0 8px 32px #0002
}
.brand {
  display:block;
  flex:none
}
.brand img {
  display:block;
  width:auto;
  height:30px
}
.header nav {
  display:flex;
  gap:26px;
  align-items:center;
  font-size:14px
}
.header nav a {
  padding:12px 0
}
.header nav a:hover {
  color:var(--orange)
}
.nav-cta {
  border:1px solid #a8998266;
  border-radius:3px;
  padding:12px 20px!important
}
.menu-toggle {
  display:none;
  color:var(--ink);
  border:1px solid var(--line);
  background:none;
  padding:10px 14px
}

.hero {
  position:relative;
  isolation:isolate;
  overflow:hidden;
  padding:52px var(--gutter) 0
}
.hero-art {
  position:absolute;
  inset:0 0 0 20%;
  z-index:0;
  background:url('assets/glass.jpg') right center/cover no-repeat
}
.hero-art video {
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:right center;
  animation:glass-illumination 9s ease-in-out infinite
}
.hero-art::after {
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(90deg,var(--bg),#25221feb 15%,#25221f55 46%,transparent 70%)
}
.hero-art.is-paused video {
  animation-play-state:paused
}
.hero-content,.hero-bottom {
  position:relative;
  z-index:1
}
.hero-content {
  max-width:680px
}
.eyebrow {
  font-size:12px;
  line-height:1.7;
  letter-spacing:1.4px;
  font-weight:600;
  color:var(--muted);
  margin:0 0 24px
}
.hero h1 {
  margin-bottom:24px
}
.hero-copy {
  font-size:18px;
  max-width:540px;
  color:var(--muted);
  margin:0
}
.hero-copy sup {
  font-size:.6em;
  line-height:0
}
.hero-actions {
  display:flex;
  gap:28px;
  align-items:center;
  margin-top:26px
}
.button {
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:24px;
  padding:16px 20px;
  border:0;
  border-radius:3px;
  font-size:15px;
  font-weight:600;
  transition:transform .3s,background .3s
}
.primary {
  background:var(--orange);
  color:#201b18
}
.primary:hover {
  background:#ff754c;
  transform:translateY(-2px)
}
.text-link {
  display:inline-block;
  background:none;
  color:inherit;
  border:0;
  border-bottom:1px solid #9a8977;
  padding:8px 0;
  font-size:15px;
  line-height:1.5
}
.text-link:hover {
  color:var(--orange)
}
.hero-origin {
  font-size:14px;
  color:var(--muted);
  margin:18px 0 0;
  max-width:600px
}
.hero-bottom {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  max-width:650px;
  margin-top:36px;
  border-top:1px solid var(--line);
  padding:22px 0 26px;
  font-size:13px;
  color:var(--muted)
}
.hero-bottom strong {
  color:var(--orange);
  font-weight:400
}
.connection {
  height:1px;
  width:40px;
  background:#bc9175;
  position:relative
}
.connection::after {
  content:'›';
  position:absolute;
  right:0;
  top:-9px
}
.motion-toggle {
  position:absolute;
  z-index:2;
  right:3%;
  bottom:26px;
  width:36px;
  height:36px;
  border:1px solid #fff6;
  border-radius:50%;
  background:#25221faa;
  color:white
}

.proof,.workflow,.product-demo,.benefits,.integration,.impact,.roi-section,.practice,.faq,.closing {
  padding:64px var(--gutter)
}
.proof {
  padding-top:34px;
  padding-bottom:32px;
  background:#211e1b;
  border-top:1px solid var(--line)
}
.section-kicker {
  display:flex;
  justify-content:space-between;
  gap:24px;
  font-size:13px;
  line-height:1.7;
  letter-spacing:1px;
  color:var(--muted)
}
.section-kicker span:last-child {
  letter-spacing:0
}
.section-heading {
  display:grid;
  grid-template-columns:1.18fr 1fr;
  gap:8%;
  align-items:end;
  margin:34px 0 40px
}
.section-heading>p {
  margin:0;
  font-size:17px;
  max-width:490px;
  color:var(--muted)
}
.light-section {
  background:var(--paper);
  color:var(--dark)
}
.light-section em {
  color:var(--orange-light)
}
.light-section .eyebrow,.light-section .section-kicker,.light-section .section-heading>p {
  color:var(--muted-light)
}
.proof-grid {
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:30px;
  margin:26px 0
}
.proof-grid>div {
  border-right:1px solid var(--line)
}
.proof-grid>div:last-child {
  border:0
}
.proof-grid strong {
  display:block;
  font-size:clamp(38px,4.5vw,65px);
  font-weight:400;
  letter-spacing:-2px;
  margin-bottom:8px
}
.proof-grid span {
  font-size:16px;
  color:var(--muted)
}
.source {
  font-size:14px;
  line-height:1.7;
  color:var(--muted);
  max-width:1100px
}
.source a {
  text-decoration:underline;
  text-underline-offset:3px
}

.workflow {
  background:var(--panel)
}
.workflow-layout {
  display:grid;
  grid-template-columns:.8fr 1.4fr;
  gap:8%;
  align-items:start
}
.workflow-guide {
  position:sticky;
  top:calc(var(--header-height) + 26px)
}
.workflow-guide p {
  color:var(--muted);
  font-size:17px
}
.step-accordion details {
  border-top:1px solid var(--line)
}
.step-accordion details:last-child {
  border-bottom:1px solid var(--line)
}
summary {
  cursor:pointer;
  list-style:none
}
summary::-webkit-details-marker {
  display:none
}
.step-accordion summary {
  display:flex;
  align-items:center;
  gap:20px;
  padding:22px 0;
  font-size:22px
}
.step-index {
  font-size:14px;
  color:var(--muted)
}
.expand {
  margin-left:auto;
  color:var(--orange);
  font-size:24px;
  font-weight:400
}
details[open] .expand {
  transform:rotate(45deg)
}
.step-accordion details[open] summary,.step-accordion details[open] .step-index {
  color:#ff9976
}
.step-description {
  padding:0 0 26px 38px
}
.step-description h3 {
  font-size:25px;
  margin:6px 0 15px
}
.step-description>p {
  font-size:17px;
  color:var(--muted);
  margin:0
}
.step-description .step-result {
  border-left:2px solid var(--orange);
  background:#ff582c0c;
  padding:16px 20px;
  font-size:19px;
  color:var(--ink);
  margin-top:22px
}
.step-result span {
  display:block;
  font-size:14px;
  color:#ffad87;
  margin-bottom:8px
}
.function-footnote {
  display:grid;
  grid-template-columns:.7fr repeat(3,1fr);
  gap:24px;
  border-top:1px solid var(--line);
  padding-top:24px;
  margin-top:30px;
  font-size:15px;
  color:var(--muted)
}
.function-footnote p {
  margin:0
}
.function-footnote>span {
  font-size:14px
}

.demo-grid,.role-grid {
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:30px
}
.demo-grid article,.role-grid article {
  border-top:1px solid #c9c2b8;
  padding-top:24px;
  display:flex;
  flex-direction:column;
  min-width:0
}
.role-tag {
  font-size:12px;
  letter-spacing:.8px;
  color:#984321;
  line-height:1.7
}
.demo-grid h3,.role-grid h3 {
  margin:18px 0;
  font-size:25px
}
.demo-grid article>p,.role-grid p {
  font-size:16px;
  color:var(--muted-light);
  margin:0 0 22px
}
.role-feature {
  border-top:1px solid #c9c2b8;
  padding-top:16px;
  margin-top:auto;
  font-size:14px;
  color:#825134;
  line-height:1.7
}
.demo-screen {
  background:#fffaf2;
  border:1px solid #ccc0b1;
  border-radius:4px;
  padding:22px;
  margin:0 0 20px;
  min-height:315px;
  font-size:15px;
  color:var(--dark)
}
.demo-caption {
  font-size:11px;
  color:var(--muted-light);
  letter-spacing:1px;
  display:block;
  margin-bottom:20px
}
.demo-node {
  padding:12px;
  border:1px solid #c7b7a2;
  text-align:center
}
.demo-arrow {
  text-align:center;
  color:#984321
}
.demo-screen p {
  margin:16px 0 0;
  line-height:1.6
}
.demo-screen ol {
  padding-left:20px;
  line-height:1.8
}
.demo-screen .case-tests li + li {
  margin-top:16px
}
.product-demo .demo-screen {
  flex:1
}
.demo-stat strong {
  text-align:right
}
.case-note {
  margin:32px 0 0;
  padding-top:20px;
  border-top:1px solid #c9c2b8;
  color:var(--muted-light);
  font-size:14px;
  max-width:920px
}
.flagged {
  border-left:2px solid #ba3b12!important;
  background:#ba3b120a;
  padding:10px
}
.demo-stat {
  display:flex;
  justify-content:space-between;
  gap:15px;
  padding:15px 0;
  border-bottom:1px solid #d8cbbb
}
.demo-open {
  margin-top:auto;
  align-self:start
}
.demo-dialog {
  background:var(--paper);
  color:var(--dark);
  border:1px solid #a89982;
  border-radius:5px;
  padding:30px;
  width:min(680px,92vw);
  max-height:90vh
}
.demo-dialog::backdrop {
  background:#000b
}
.dialog-close {
  display:block;
  margin-left:auto;
  margin-bottom:20px;
  background:none;
  border:1px solid #aaa;
  padding:10px
}
.demo-dialog .demo-screen {
  font-size:20px;
  min-height:0
}
.demo-dialog>p {
  font-size:14px;
  color:var(--muted-light)
}

.integration {
  border-top:1px solid var(--line)
}
.integration-flow {
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  grid-template-rows:auto auto 1fr auto;
  border:1px solid var(--line);
  border-radius:4px;
  overflow:hidden
}
.integration-flow article {
  display:grid;
  grid-row:span 4;
  grid-template-rows:subgrid;
  row-gap:0;
  padding:28px;
  min-width:0
}
.integration-flow article+article {
  border-left:1px solid var(--line)
}
.integration-label {
  font-size:12px;
  letter-spacing:1px;
  color:var(--muted)
}
.integration-flow h3 {
  display:flex;
  align-items:center;
  gap:10px;
  font-size:25px;
  margin:24px 0 16px
}
.integration-flow p {
  font-size:16px;
  color:var(--muted);
  margin:0 0 24px
}
.integration-engine {
  background:linear-gradient(140deg,#ff582c12,transparent)
}
.integration-engine h3 {
  color:#ff9976
}
.integration-transfer {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  border-top:1px solid var(--line);
  padding-top:18px;
  font-size:14px;
  color:#dac8b6;
  line-height:1.6
}
.integration-transfer>span {
  font-size:22px;
  color:var(--orange);
  line-height:1
}
.integration-feedback {
  display:flex;
  align-items:center;
  gap:24px;
  margin:28px 0;
  border-left:2px solid var(--orange);
  padding-left:25px
}
.integration-feedback>span {
  color:var(--orange);
  font-size:32px
}
.integration-feedback p {
  margin:0;
  font-size:16px;
  color:var(--muted)
}
.integration-feedback strong {
  color:var(--ink);
  font-weight:400
}
.integration-foundation {
  display:flex;
  flex-wrap:wrap;
  justify-content:space-between;
  gap:24px;
  border-top:1px solid var(--line);
  padding-top:24px;
  font-size:14px;
  color:var(--muted)
}
.integration-foundation>span {
  display:flex;
  align-items:center;
  gap:12px
}
.detail-icon {
  width:25px;
  height:25px;
  flex:none
}
.system-icon {
  width:25px;
  height:25px;
  flex:none;
  color:var(--muted)
}
.icon-accent {
  stroke:#e68a60
}
.adoption {
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:8%;
  margin-top:40px;
  border-top:1px solid var(--line);
  padding-top:32px
}
.adoption h3 {
  font-size:25px
}
.adoption p,.adoption ol {
  color:var(--muted);
  font-size:16px;
  line-height:1.8
}
.adoption ol {
  padding-left:20px
}
.adoption li {
  margin-bottom:10px
}

.impact {
  position:relative;
  isolation:isolate;
  background:#25211e
}
.impact::before {
  content:"";
  position:absolute;
  inset:0;
  z-index:-1;
  background:linear-gradient(90deg,#25211e 30%,#25211ed9 70%,#25211e99),url('assets/glass.jpg') right center/cover no-repeat;
  opacity:.7
}
.impact-top {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:40px;
  margin:32px 0
}
.impact-intro {
  color:var(--muted);
  font-size:16px
}
.impact h2 {
  font-size:30px
}
.impact h2>span {
  font-size:clamp(70px,8vw,112px);
  letter-spacing:-4px
}
.impact-sub {
  font-size:23px;
  color:#d8cfc2;
  margin:12px 0
}
.roi {
  border-left:1px solid var(--line);
  padding-left:40px
}
.roi>span,.roi p,.roi small {
  font-size:15px;
  color:var(--muted);
  line-height:1.7
}
.roi strong {
  display:block;
  font-size:70px;
  color:var(--orange);
  font-weight:400;
  letter-spacing:-3px
}
.roi p {
  margin:8px 0
}
.comparison {
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:30px;
  border-top:1px solid var(--line);
  padding-top:28px
}
.comparison span {
  font-size:13px;
  color:var(--muted);
  line-height:1.6
}
.comparison strong {
  display:block;
  font-size:32px;
  font-weight:400;
  margin:14px 0
}
.comparison>div:last-child strong {
  color:#ff9976
}
.comparison p {
  font-size:16px;
  color:var(--muted);
  margin:0
}
.machine-time {
  font-size:16px;
  color:var(--muted);
  margin:28px 0
}
.machine-time strong {
  color:#ffc5a2;
  font-weight:400
}
.assumptions {
  border-top:1px solid var(--line)
}
.assumptions summary {
  display:flex;
  justify-content:space-between;
  padding:20px 0;
  font-size:16px;
  color:var(--muted)
}
.assumptions p {
  font-size:16px;
  color:var(--muted)
}

.roi-section {
  background:radial-gradient(ellipse at 95% 75%,#683f2728,transparent 55%),#211e1b;
  border-top:1px solid var(--line)
}
.roi-simple-layout {
  display:grid;
  grid-template-columns:1.5fr 1fr;
  gap:8%;
  align-items:center
}
.roi-simple-copy {
  font-size:18px;
  color:var(--muted);
  max-width:620px
}
.roi-simple-number {
  border-left:1px solid var(--line);
  padding-left:40px
}
.roi-simple-number>span {
  color:var(--muted);
  font-size:15px;
  line-height:1.7
}
.roi-simple-number strong {
  display:block;
  color:var(--orange);
  font-size:clamp(90px,10vw,130px);
  font-weight:400;
  letter-spacing:-5px
}
.roi-simple-number p {
  font-size:20px;
  margin:0;
  color:#f1ddc3
}
.roi-contact {
  margin-top:24px
}
.roi-simple-note {
  border-top:1px solid var(--line);
  padding-top:24px;
  margin:32px 0 0;
  font-size:14px;
  color:var(--muted)
}
.method-link {
  display:block;
  text-decoration:underline;
  text-underline-offset:4px;
  margin-top:12px
}

.practice {
  display:grid;
  grid-template-columns:1fr 1.8fr;
  gap:8%;
  border-top:1px solid var(--line);
  background:#211e1b
}
.practice-label p {
  font-size:16px;
  color:var(--muted)
}
.practice h2 {
  font-size:36px
}
.practice>div>p {
  font-size:17px;
  color:var(--muted)
}
.practice .practice-fine {
  font-size:14px
}
.faq {
  display:grid;
  grid-template-columns:1fr 1.4fr;
  gap:8%
}
.faq-list details {
  border-top:1px solid #c9c2b8
}
.faq-list details:last-child {
  border-bottom:1px solid #c9c2b8
}
.faq-list summary {
  display:flex;
  justify-content:space-between;
  gap:20px;
  padding:24px 0;
  font-size:17px;
  line-height:1.5
}
.faq-list summary span {
  color:#984321
}
.faq-list details>p {
  font-size:17px;
  color:var(--muted-light);
  margin:0 0 24px
}
.closing {
  text-align:center;
  background:radial-gradient(ellipse at 50% 125%,#76462870,transparent 64%),#29241f
}
.closing-logo {
  display:inline-block;
  margin-bottom:28px
}
.closing-logo img {
  width:310px;
  height:auto
}
.closing>p {
  color:var(--muted);
  font-size:17px
}
.contact-layout {
  display:grid;
  grid-template-columns:1fr 1.2fr;
  gap:8%;
  text-align:left;
  border-top:1px solid var(--line);
  margin-top:36px;
  padding-top:34px
}
.contact-intro p {
  font-size:17px;
  color:var(--muted)
}
.contact-form {
  display:grid;
  gap:20px
}
.contact-fields {
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:18px
}
.contact-form label {
  display:grid;
  gap:10px;
  font-size:15px
}
.contact-form label span {
  display:contents;
  color:var(--muted)
}
.contact-form input,.contact-form textarea {
  background:var(--bg);
  color:var(--ink);
  border:1px solid #ffffff50;
  border-radius:3px;
  padding:13px;
  width:100%
}
.contact-form textarea {
  resize:vertical
}
.contact-note {
  font-size:14px;
  color:var(--muted);
  margin:0
}
.contact-note a {
  text-decoration:underline;
  text-underline-offset:3px
}
.contact-form button {
  justify-self:start
}
.contact-status:empty {
  display:none
}

footer {
  display:flex;
  align-items:center;
  justify-content:space-between;
  flex-wrap:wrap;
  gap:25px;
  padding:35px var(--gutter);
  border-top:1px solid var(--line);
  color:var(--muted);
  font-size:14px
}
.footer-logo img {
  height:28px
}
.legal-links {
  display:flex;
  gap:20px
}
.legal-page {
  background:var(--paper);
  color:var(--dark);
  padding:35px var(--gutter) 65px;
  min-height:70vh
}
.legal-back {
  display:block;
  font-size:15px;
  color:#914221;
  margin-bottom:30px
}
.legal-page section {
  max-width:1000px
}
.legal-page h1 {
  font-size:42px;
  letter-spacing:-1px;
  margin-bottom:28px
}
.legal-page h2 {
  font-size:30px;
  margin:30px 0 15px
}
.legal-page h3 {
  font-size:24px;
  margin:28px 0 12px
}
.legal-page p,.legal-page li {
  font-size:16px;
  line-height:1.8;
  color:var(--muted-light)
}
.legal-page a {
  text-decoration:underline;
  text-underline-offset:3px
}
.legal-page table {
  width:100%;
  border-collapse:collapse;
  font-size:15px;
  margin:24px 0
}
.legal-page td,.legal-page th {
  text-align:left;
  padding:13px;
  border-bottom:1px solid #c9c2b8;
  vertical-align:top
}
.legal-page th {
  font-weight:600
}
.table-wrap {
  overflow-x:auto
}
.notice {
  border-left:3px solid var(--orange-light);
  padding:15px 20px;
  background:#ba3b1208
}

@keyframes glass-illumination {
  0%,100% {
  filter:brightness(.92) saturate(1.08)
}
50% {
  filter:brightness(1.48) saturate(1.25)
}

}

@media(min-width:761px) and (max-height:800px) {
  .hero {
  padding-top:28px
}
.hero h1 {
  font-size:clamp(45px,4.3vw,62px)
}
.hero .eyebrow {
  margin-bottom:14px
}
.hero-copy {
  font-size:17px;
  line-height:1.6
}
.hero h1 {
  margin-bottom:18px
}
.hero-actions {
  margin-top:20px
}
.hero-bottom {
  margin-top:24px
}

}

@media(max-width:1100px) {
  .header nav {
  gap:18px
}
.integration-flow article {
  padding:20px
}
.integration-flow h3 {
  font-size:22px
}
.demo-grid,.role-grid {
  gap:22px
}
.demo-screen {
  padding:17px
}
.demo-grid h3,.role-grid h3 {
  font-size:23px
}

}

@media(max-width:760px) {
  :root {
  --header-height:76px;
  --gutter:6%
}
.header .brand img {
  height:27px
}
.menu-toggle {
  display:block
}
.header nav {
  position:absolute;
  left:0;
  right:0;
  top:100%;
  background:var(--bg);
  display:none;
  padding:16px var(--gutter) 24px;
  box-shadow:0 12px 20px #0004;
  border-bottom:1px solid var(--line)
}
.header.menu-open nav {
  display:flex;
  flex-direction:column;
  align-items:stretch;
  gap:4px
}
.header nav a {
  padding:14px
}
.hero {
  padding-top:36px
}
.hero-art {
  inset:0 -32% 0 0;
  opacity:.48
}
.hero-art::after {
  background:linear-gradient(90deg,#25221fee,#25221f90)
}
h1 {
  font-size:clamp(41px,9.5vw,62px);
  letter-spacing:-2px
}
.hero-content {
  max-width:600px
}
.hero-copy {
  font-size:17px
}
.hero .eyebrow {
  font-size:11px
}
.hero-actions {
  flex-wrap:wrap;
  gap:14px 24px
}
.hero-origin {
  font-size:13px
}
.hero-bottom {
  font-size:11px;
  gap:8px;
  padding-right:28px
}
.connection {
  width:22px
}
.motion-toggle {
  right:2%;
  bottom:22px;
  width:29px;
  height:29px
}
.section-heading,.workflow-layout,.adoption,.roi-simple-layout,.contact-layout,.faq,.practice {
  grid-template-columns:1fr;
  gap:26px
}
.section-heading {
  margin:28px 0 32px
}
.section-kicker {
  flex-direction:column;
  gap:6px;
  font-size:12px
}
.proof,.workflow,.product-demo,.benefits,.integration,.impact,.roi-section,.practice,.faq,.closing {
  padding:45px var(--gutter)
}
.proof {
  padding-top:28px;
  padding-bottom:24px
}
.proof-grid {
  grid-template-columns:1fr 1fr;
  gap:24px
}
.proof-grid>div:nth-child(2) {
  border:0
}
.proof-grid strong {
  font-size:45px
}
.proof-grid span {
  font-size:15px
}
.workflow-guide {
  position:static
}
.workflow-guide .eyebrow {
  margin-bottom:14px
}
.workflow-guide p {
  margin:14px 0 0
}
.step-accordion summary {
  font-size:20px;
  gap:14px;
  padding:20px 0
}
.step-description {
  padding-left:0
}
.function-footnote {
  grid-template-columns:1fr;
  gap:12px
}
.demo-grid,.role-grid {
  grid-template-columns:1fr;
  gap:28px
}
.demo-screen {
  min-height:0
}
.integration-flow {
  grid-template-columns:1fr;
  grid-template-rows:none
}
.integration-flow article {
  display:block;
  grid-row:auto;
  padding:24px
}
.integration-flow article+article {
  border-left:0;
  border-top:1px solid var(--line)
}
.integration-transfer>span {
  transform:rotate(90deg)
}
.integration-foundation {
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:24px 16px;
  font-size:13px
}
.integration-foundation>span {
  gap:10px
}
.impact-top {
  flex-direction:column;
  align-items:start
}
.roi {
  border-left:0;
  border-top:1px solid var(--line);
  padding:20px 0 0;
  width:100%
}
.impact h2>span {
  font-size:76px
}
.impact h2 {
  font-size:24px
}
.impact-sub {
  font-size:21px
}
.roi strong {
  font-size:62px
}
.comparison {
  grid-template-columns:1fr;
  gap:22px
}
.comparison>div {
  border-bottom:1px solid var(--line);
  padding-bottom:18px
}
.comparison strong {
  margin:8px 0
}
.roi-simple-number {
  border-left:0;
  border-top:1px solid var(--line);
  padding:24px 0 0
}
.roi-simple-number strong {
  font-size:95px
}
.contact-fields {
  grid-template-columns:1fr
}
.closing-logo img {
  width:275px
}
.legal-page h1 {
  font-size:35px
}
.legal-page table {
  font-size:14px
}
.legal-page td,.legal-page th {
  padding:10px 6px
}
.legal-links {
  flex-wrap:wrap
}

}

@media(prefers-reduced-motion:reduce) {
  :root {
  scroll-behavior:auto
}
*,*::before,*::after {
  animation:none!important;
  transition:none!important
}
.hero-art video {
  filter:brightness(1.18) saturate(1.12)
}
.button:hover {
  transform:none
}

}


/* Alternating surfaces: benefits dark, integration light, glass/ROI dark, reference light. */
.benefits { background:var(--panel); color:var(--ink); }
.benefits .role-grid article,.benefits .role-feature { border-color:var(--line); }
.benefits .role-grid p,.benefits .role-feature { color:var(--muted); }
.benefits .role-tag { color:#ffad87; }
.integration.light-section,.practice.light-section { background:var(--paper); color:var(--dark); }
.integration.light-section .integration-flow,
.integration.light-section .integration-flow article,
.integration.light-section .integration-transfer,
.integration.light-section .integration-foundation { border-color:#c9c2b8; }
.integration.light-section .integration-label,
.integration.light-section .integration-flow p,
.integration.light-section .integration-transfer,
.integration.light-section .integration-feedback p,
.integration.light-section .integration-foundation,
.integration.light-section .system-icon,
.integration.light-section .detail-icon { color:var(--muted-light); }
.integration.light-section .integration-engine { background:linear-gradient(140deg,#ba3b120a,transparent); }
.integration.light-section .integration-engine h3,
.integration.light-section .integration-transfer>span,
.integration.light-section .integration-feedback>span { color:var(--orange-light); }
.integration.light-section .icon-accent { stroke:var(--orange-light); }
.integration.light-section .integration-feedback { border-color:var(--orange-light); }
.integration.light-section .integration-feedback strong { color:var(--dark); }
.practice.light-section .practice-label p,.practice.light-section>div>p { color:var(--muted-light); }

.faq { background:var(--panel); color:var(--ink); }
.faq-list details,.faq-list details:last-child { border-color:var(--line); }
.faq-list details>p { color:var(--muted); }
.faq-list summary span { color:#ffad87; }

/* Compact customer-facing economics. Signs carry meaning independently of color. */
.method-page .method-summary { max-width:1200px; }
.method-page .method-lead { font-size:20px; max-width:760px; }
.value-ledger { display:grid; grid-template-columns:1.2fr 1fr; gap:26px; margin:32px 0; }
.value-ledger article { border-radius:5px; padding:26px; display:flex; flex-direction:column; }
.value-benefits { background:#e6eee5; border:1px solid #bdcebb; color:#245536; }
.value-costs { background:#f1e7e0; border:1px solid #d8c4b6; color:#873b24; }
.method-page .value-ledger h2 { font-size:25px; margin:0 0 20px; letter-spacing:-.5px; }
.value-row,.value-total { display:flex; flex-direction:column; gap:7px; padding:16px 0; border-top:1px solid currentColor; }
.value-row { border-color:#00000017; }
.value-row span,.value-total span { font-size:16px; line-height:1.5; }
.value-row strong { font-size:25px; font-weight:500; }
.value-total { margin-top:auto; padding-bottom:0; }
.value-total strong { font-size:29px; font-weight:600; letter-spacing:-.7px; }
.method-page .value-costs p { font-size:13px; margin:16px 0 0; color:#754a38; }
.value-result { background:var(--bg); color:var(--ink); padding:30px; border-radius:5px; display:grid; grid-template-columns:.65fr 1fr; gap:35px; align-items:center; }
.value-result>div>span { font-size:15px; color:var(--muted); }
.value-result strong { display:block; color:var(--orange); font-size:90px; font-weight:400; letter-spacing:-4px; }
.method-page .value-result p { font-size:20px; line-height:1.65; color:var(--ink); margin:0; }
.value-result p span { font-size:15px; color:var(--muted); display:block; margin-top:12px; }
.method-page .method-note { font-size:15px; margin:22px 0; }
.method-assumptions { border-top:1px solid #c9c2b8; border-bottom:1px solid #c9c2b8; margin:26px 0; }
.method-assumptions summary { padding:20px 0; display:flex; justify-content:space-between; gap:20px; font-size:17px; }
.method-assumptions summary span { color:var(--orange-light); }
.method-page .button { text-decoration:none; }
@media(max-width:760px) { .value-ledger,.value-result { grid-template-columns:1fr; gap:20px; } .value-ledger article,.value-result { padding:23px; } .value-total strong { font-size:25px; } .value-result strong { font-size:76px; } }

/* Matched ledger rows, with explanations beside the amount they explain. */
.value-ledger { grid-template-columns:repeat(2,minmax(0,1fr)); grid-template-rows:auto auto auto auto auto; gap:0 26px; margin-bottom:12px; }
.value-ledger article { display:grid; grid-row:span 5; grid-template-rows:subgrid; row-gap:0; min-width:0; }
.value-row { display:block; padding:0; }
.value-row summary { display:grid; gap:8px; padding:18px 0; }
.value-label { font-size:16px; line-height:1.5; }
.value-help { display:flex; align-items:center; justify-content:space-between; font-size:13px; opacity:.9; }
.value-help>span { font-size:20px; line-height:1; }
.value-row[open] .value-help>span { transform:rotate(45deg); }
.method-page .value-explanation p { color:inherit; font-size:15px; line-height:1.65; margin:0 0 14px; }
.method-page .value-explanation .value-formula { font-size:14px; padding-top:12px; border-top:1px solid #0002; }
.value-row.extra-costs strong { font-size:21px; }
.value-total { margin-top:0; padding-top:20px; }
.method-page .rounding-note { font-size:13px; margin:0 0 26px; }
@media(max-width:760px) { .value-ledger { grid-template-columns:1fr; grid-template-rows:none; gap:20px; } .value-ledger article { display:flex; grid-row:auto; } .value-total { margin-top:6px; } }

.contact-trap { position: absolute; left: -10000px; width: 1px; height: 1px; overflow: hidden; }
.contact-form button:disabled { opacity: .65; cursor: default; }

/* Vector arrows cannot be substituted with mobile emoji glyphs. */
.link-arrow { display: inline-block; width: 20px; height: 20px; flex: 0 0 20px; vertical-align: -.2em; fill: none; stroke: currentColor; stroke-width: 1.35; stroke-linecap: round; stroke-linejoin: round; }
.button > span[aria-hidden="true"] { display: inline-flex; align-items: center; }

/* Consistent, compact disclosures keep their toggle next to the label. */
.inline-disclosure { border-top:1px solid var(--line); }
.inline-disclosure > summary { display:flex; justify-content:flex-start; align-items:center; gap:16px; padding:20px 0; font-size:16px; color:var(--ink); }
.inline-disclosure > summary > span { color:#ffad87; font-size:23px; line-height:1; transition:transform .2s; }
.inline-disclosure[open] > summary > span { transform:rotate(45deg); }
.inline-calculation { padding:8px 0 20px; }
.inline-calculation .value-ledger { margin-top:24px; }
.inline-calculation .value-ledger article { background:#ffffff04; border:1px solid var(--line); color:var(--ink); }
.inline-calculation .value-ledger h2 { font-size:23px; letter-spacing:-.5px; margin:0 0 20px; }
.inline-calculation .value-row { border-color:var(--line); }
.inline-calculation .value-benefits .value-total strong { color:#ffad87; }
.inline-calculation .value-help { justify-content:flex-start; gap:12px; color:var(--muted); }
.inline-calculation .value-explanation p,.inline-calculation .calculation-note { color:var(--muted); font-size:15px; line-height:1.65; }
.inline-calculation .value-formula { padding-top:12px; border-top:1px solid var(--line); }
.inline-calculation .calculation-intro { color:var(--muted); max-width:780px; }

/* Readable calculation details: quiet sections, aligned rhythm, clear results. */
.value-ledger { align-items:start; grid-template-rows:none; }
.value-ledger article { display:flex; grid-row:auto; }
.value-ledger .value-row { width:100%; }
.value-row > summary { position:relative; padding:22px 38px 22px 0; }
.value-row .value-help { justify-content:flex-start; gap:10px; font-size:13px; }
.value-row .value-help > span { display:grid; place-items:center; position:absolute; right:0; top:28px; width:26px; height:26px; border:1px solid currentColor; border-radius:50%; font-size:19px; opacity:.8; transition:transform .2s; }
.value-row[open] > summary .value-label { color:inherit; }
.value-row .value-explanation { padding:4px 0 26px; }
.value-row .value-explanation p { margin:0 0 16px; font-size:15px; line-height:1.75; }
.value-row .value-explanation strong { font-size:inherit; font-weight:600; letter-spacing:normal; }
.value-row .value-explanation .calc-block { margin:26px 0; padding-top:22px; border-top:1px solid #00000020; }
.value-row .value-explanation .calc-heading { font-size:18px; font-weight:500; line-height:1.4; letter-spacing:-.25px; margin:0 0 12px; }
.value-row .value-explanation .calc-lines p { margin:0; padding:9px 0; font-variant-numeric:tabular-nums; }
.value-row .value-explanation .calc-lines p + p { border-top:1px solid #00000012; }
.value-row .value-explanation .calc-result { margin:22px 0; padding:18px 20px; border:0; border-left:2px solid currentColor; background:#ffffff50; border-radius:0 5px 5px 0; font-variant-numeric:tabular-nums; }
.value-row .value-explanation .calc-result p { margin:0; }
.value-row .value-explanation .calc-source { font-size:12px; margin-top:22px; line-height:1.6; }
.calc-source a { text-underline-offset:4px; }
.inline-calculation .value-row .value-explanation .calc-block { border-color:var(--line); }
.inline-calculation .value-row .value-explanation .calc-heading { color:var(--ink); }
.inline-calculation .value-row .value-explanation strong { color:var(--ink); }
.inline-calculation .value-row .value-explanation .calc-lines p + p { border-color:#ffffff0d; }
.inline-calculation .value-row .value-explanation .calc-result { background:#ff783b0a; border-left-color:#ffad87; color:var(--ink); }
.inline-calculation .value-row .value-explanation .calc-result p { color:var(--ink); }
.inline-calculation .value-row .value-explanation .calc-source { color:var(--muted); }
@media(max-width:600px) {
 .value-ledger article { padding:20px; }
 .value-row > summary > strong { font-size:23px; }
 .value-row .value-explanation .calc-result { padding:15px; }
 .value-row .value-explanation .calc-heading { font-size:17px; }
}

/* The icon alone signals expandable calculation rows. */
.value-row > summary > .value-help { position:absolute; inset:0; pointer-events:none; }
