:root{
  --paper:#f5f5f0;
  --ink:#172a29;
  --muted:#5b6b65;
  --line:#d9dfd8;
  --lime:#d6f46a;
  --green:#203e38;
  --deep:#263a48;
  --warm:#f1b36b;
  --white:#fff;
  --serif:Georgia,'Times New Roman',serif;
  --sans:'Montserrat',Arial,sans-serif;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:78px}
body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.55 var(--sans)}
a,button{touch-action:manipulation;-webkit-tap-highlight-color:transparent}
a{color:inherit}
button{cursor:pointer;font:inherit}
a:focus-visible,button:focus-visible{outline:3px solid #597b2b;outline-offset:5px}
.topline{background:var(--ink);color:#e4ecdd;display:flex;justify-content:space-between;gap:16px;padding:9px 6%;font-size:12px;letter-spacing:.04em}
.topline strong{color:var(--lime)}
.site-header{align-items:center;background:var(--paper);border-bottom:1px solid var(--line);display:flex;height:78px;justify-content:space-between;padding:0 6%;position:sticky;top:0;z-index:3}
.brand{font-size:31px;font-weight:800;letter-spacing:-2px;line-height:1;text-decoration:none}
.brand span{font-size:12px;font-weight:400;letter-spacing:-.3px;margin-left:5px}
.header-tag{font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}
.page{overflow:hidden}
.hero,.section{margin:0 auto;max-width:1180px;padding-left:6%;padding-right:6%}
.hero{align-items:center;display:grid;gap:36px;grid-template-columns:1fr;padding-bottom:62px;padding-top:56px}
.eyebrow{font-size:11px;font-weight:700;letter-spacing:.13em;margin:0 0 20px;text-transform:uppercase}
.eyebrow:before{background:var(--lime);border-radius:50%;content:"";display:inline-block;height:7px;margin-right:8px;width:7px}
h1,h2,h3,p{margin-top:0}
h1{font-size:clamp(43px,9vw,78px);font-weight:500;letter-spacing:-.065em;line-height:1.01;margin-bottom:24px;max-width:700px}
h1 em,h2 em{color:#4f6552;font-family:var(--serif);font-weight:400}
.deep-page h1 em,.deep-page h2 em{color:#a46335}
.hero-copy>p:not(.eyebrow){color:var(--muted);font-size:17px;max-width:560px}
.hero-actions{align-items:center;display:flex;flex-wrap:wrap;gap:18px;margin-top:30px}
.button,.text-button{align-items:center;border:0;display:inline-flex;justify-content:space-between;text-decoration:none}
.button{gap:28px;min-height:54px;padding:14px 20px}
.button.primary{background:var(--ink);color:var(--white)}
.deep-page .button.primary{background:var(--deep)}
.button.accent{background:var(--lime);color:var(--ink)}
.button span{font-size:20px}
.text-button{background:none;border-bottom:1px solid currentColor;color:var(--ink);font-size:14px;padding:2px 0}
.hero-note{color:var(--muted);font-size:12px;margin:13px 0 0}
.hero-visual{background:#e5eee0;border:1px solid #d2dfce;border-radius:8px;min-height:340px;padding:23px;position:relative}
.deep-page .hero-visual{background:#e9e6dc;border-color:#ded5c5}
.visual-label{font-size:10px;letter-spacing:.12em;text-transform:uppercase}
.tap-scene{background:#ffffff8c;border:1px solid #d2dfce;border-radius:5px;margin:20px auto 0;max-width:440px;padding:15px 15px 13px}
.tap-copy{align-items:baseline;display:flex;gap:9px;justify-content:space-between;margin-bottom:15px}
.tap-copy strong{font-size:17px;font-weight:500;letter-spacing:-.04em}
.tap-copy span{color:var(--muted);font-size:11px;line-height:1.25;text-align:right}
.tap-stage{align-items:center;display:flex;gap:9px;justify-content:center;min-height:116px;overflow:hidden;padding:2px 0}
.infinity-card-mock{background:var(--ink);border-radius:5px;box-shadow:0 9px 16px #173c2930;color:var(--white);display:flex;flex:0 0 126px;flex-direction:column;height:78px;justify-content:space-between;padding:9px 10px;transform:rotate(-7deg) translateY(4px)}
.mock-mark{color:var(--lime);font-size:23px;line-height:.8}
.infinity-card-mock small{color:#cbdac8;font-size:6px;letter-spacing:.08em}
.infinity-card-mock strong{font-size:10px;font-weight:500;letter-spacing:-.02em;line-height:1.05}
.infinity-card-mock i{color:#b9d29f;font-size:5px;font-style:normal;letter-spacing:.06em}
.nfc-signal{align-items:center;display:flex;flex:0 0 25px;flex-direction:column;gap:3px;justify-content:center}
.nfc-signal i{border:1px solid #8eae83;border-left-color:transparent;border-radius:50%;display:block;height:8px;transform:rotate(-45deg);width:8px}
.nfc-signal i:nth-child(2){height:14px;width:14px}.nfc-signal i:nth-child(3){height:21px;width:21px}
.phone-mock{background:#142c2b;border:3px solid #aabda7;border-radius:13px;box-shadow:0 10px 18px #173c2930;flex:0 0 83px;height:132px;padding:7px 5px 5px;transform:rotate(5deg)}
.phone-speaker{background:#aabda7;border-radius:4px;height:3px;margin:0 auto 7px;width:22px}
.phone-screen{background:#eff4e8;border-radius:7px;height:108px;padding:9px 7px;position:relative}
.phone-screen small{color:#6a7d6a;display:block;font-size:6px;letter-spacing:.07em}
.phone-screen strong{color:var(--ink);display:block;font-size:12px;font-weight:500;letter-spacing:-.04em;line-height:1.05;margin-top:20px}
.phone-screen span{background:var(--lime);bottom:9px;color:var(--ink);display:block;font-size:6px;font-weight:800;left:7px;padding:5px 4px;position:absolute;right:7px;text-align:center}
.tap-scene + .route{margin-top:20px}
.route{align-items:center;display:flex;flex-direction:column;gap:13px;margin:34px auto 0;max-width:330px}
.node{background:var(--white);border:1px solid #d6e0d4;border-radius:5px;box-shadow:0 12px 25px #173c2910;padding:15px 18px;width:100%}
.node small{color:var(--muted);display:block;font-size:10px;letter-spacing:.1em;margin-bottom:4px;text-transform:uppercase}
.node strong{font-size:19px;font-weight:500;letter-spacing:-.03em}
.node.company{background:var(--green);border-color:var(--green);color:var(--white);transform:rotate(-1deg)}
.node.company small{color:#c5d4c1}
.node.company strong{color:var(--lime)}
.connector{border-left:1px dashed #7b9872;height:22px}
.deep-page .node.company{background:var(--deep);border-color:var(--deep)}
.deep-page .node.company strong{color:var(--warm)}
.section{border-top:1px solid var(--line);padding-bottom:70px;padding-top:70px}
.section.tinted{background:#eaf0e6;max-width:none}
.section-inner{margin:0 auto;max-width:1060px}
.section-grid{display:grid;gap:32px;grid-template-columns:1fr}
h2{font-size:clamp(35px,7vw,57px);font-weight:400;letter-spacing:-.06em;line-height:1.06;margin-bottom:19px;max-width:650px}
.section-lede{color:var(--muted);font-size:17px;max-width:540px}
.signal-list{display:grid;gap:12px;margin-top:28px}
.signal{border-left:3px solid #b4ca91;padding:5px 0 5px 17px}
.deep-page .signal{border-left-color:var(--warm)}
.signal strong{display:block;font-size:15px;margin-bottom:3px}
.signal span{color:var(--muted);font-size:14px}
.role-grid{display:grid;gap:14px;grid-template-columns:1fr}
.role-card{background:var(--white);border:1px solid var(--line);border-radius:5px;display:block;padding:21px;text-align:left;width:100%}
.role-card:hover{border-color:#9fb67d;transform:translateY(-2px)}
.deep-page .role-card:hover{border-color:#cf9863}
.role-card span{color:var(--muted);display:block;font-size:11px;letter-spacing:.1em;text-transform:uppercase}
.role-card strong{display:block;font-size:20px;font-weight:500;letter-spacing:-.03em;margin:8px 0}
.role-card small{color:var(--muted);font-size:14px}
.steps{display:grid;gap:14px;margin-top:26px}
.step{background:var(--green);color:var(--white);padding:22px}
.deep-page .step{background:var(--deep)}
.step-number{color:var(--lime);font-size:11px;font-weight:700;letter-spacing:.1em}
.deep-page .step-number{color:var(--warm)}
.step h3{font-size:22px;font-weight:500;letter-spacing:-.035em;margin:10px 0 6px}
.step p{color:#d5e0d3;font-size:14px;margin-bottom:0}
.dashboard-preview{align-self:start;background:var(--ink);border-radius:7px;box-shadow:0 18px 40px #173c2914;color:var(--white);padding:22px}
.dashboard-preview-top{align-items:center;border-bottom:1px solid #ffffff2b;display:flex;font-size:10px;justify-content:space-between;letter-spacing:.1em;padding-bottom:16px}
.dashboard-preview-top b{background:var(--lime);border-radius:3px;color:var(--ink);font-size:9px;letter-spacing:.06em;padding:5px 7px}
.dashboard-metrics{display:grid;gap:8px;grid-template-columns:repeat(2,1fr);margin:18px 0}
.dashboard-metrics div{background:#ffffff12;border:1px solid #ffffff1c;border-radius:4px;padding:13px}
.dashboard-metrics span{color:#bfd0bf;display:block;font-size:9px;letter-spacing:.1em}
.dashboard-metrics strong{display:block;font-size:29px;font-weight:500;letter-spacing:-.06em;line-height:1.1;margin-top:8px}
.dashboard-metrics small{color:#d5e0d3;display:block;font-size:10px;margin-top:4px}
.dashboard-funnel{align-items:center;color:#d5e0d3;display:flex;font-size:10px;gap:7px;justify-content:space-between;margin-top:20px}
.dashboard-funnel i{border-top:1px dashed #b4ca91;flex:1;height:1px}
.dashboard-note{border-top:1px solid #ffffff2b;color:#b9cdb9;font-size:12px;margin:21px 0 0;padding-top:16px}
.summary{background:var(--green);color:var(--white);max-width:none}
.summary .section-inner{max-width:1060px}
.summary h2{color:var(--white)}
.summary h2 em{color:var(--lime)}
.summary p{color:#d2ded0;max-width:560px}
.summary .button.primary{background:var(--lime);color:var(--ink)}
.summary .button.secondary{border-bottom-color:#d2ded0;color:var(--white);margin-left:18px}
.deep-page .summary{background:var(--deep)}
.deep-page .summary h2 em{color:var(--warm)}
.deep-page .summary .button.primary{background:var(--warm)}
.deep-page .summary .button.secondary{border-bottom-color:#d6dddf}
.footer{align-items:center;display:flex;gap:20px;justify-content:space-between;padding:32px 6%}
.footer p{color:var(--muted);font-size:12px;margin-bottom:0}
dialog{background:var(--paper);border:0;border-radius:7px;color:var(--ink);max-height:90dvh;max-width:560px;overflow:auto;padding:28px;width:calc(100% - 30px)}
dialog::backdrop{backdrop-filter:blur(5px);background:#102723b8}
.dialog-top{align-items:center;display:flex;justify-content:space-between}
.dialog-top span{font-size:10px;letter-spacing:.12em;text-transform:uppercase}
.close{background:none;border:1px solid var(--line);border-radius:50%;font-size:24px;height:38px;line-height:1;width:38px}
.dialog-content{padding:20px 7px 5px}
.dialog-content h2{font-size:36px}
.dialog-content p{color:var(--muted);font-size:16px}
.dialog-content ul{color:var(--muted);padding-left:21px}
.dialog-content li{margin:8px 0}
.dialog-content .dialog-cta{margin-top:18px}
.cal-note{color:var(--muted);font-size:12px;margin-top:11px}
@media(min-width:720px){
  .hero{gap:8%;grid-template-columns:1.04fr .96fr;padding-bottom:85px;padding-top:80px}
  .section-grid{gap:8%;grid-template-columns:.9fr 1.1fr}
  .role-grid{grid-template-columns:repeat(2,1fr)}
  .steps{grid-template-columns:repeat(4,1fr)}
}
@media(max-width:719px){
  .topline{font-size:10px}
  .topline span:last-child{display:none}
  .header-tag{font-size:10px}
  .hero-visual{min-height:310px}
  .tap-copy{align-items:flex-start;display:block}.tap-copy span{display:block;margin-top:4px;text-align:left}.tap-stage{transform:scale(.92);transform-origin:center}
  .summary .secondary{margin-left:0;margin-top:14px}
  .footer{align-items:flex-start;flex-direction:column}
  dialog{border-radius:0;height:100dvh;margin:0;max-height:100dvh;width:100%}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.role-card{transition:none}}
