/* Direction B: warm paper sheets on a deep green stage make the action plan the focal point. */
@font-face {
  font-family: "Manrope"; font-style: normal; font-weight: 200 800; font-display: swap;
  src: url("/static/fonts/manrope-latin-wght-normal.woff2") format("woff2");
  unicode-range: U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;
}
@font-face {
  font-family: "Manrope"; font-style: normal; font-weight: 200 800; font-display: swap;
  src: url("/static/fonts/manrope-latin-ext-wght-normal.woff2") format("woff2");
  unicode-range: U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF;
}
@font-face {
  font-family: "IBM Plex Sans"; font-style: normal; font-weight: 400; font-display: swap;
  src: url("/static/fonts/ibm-plex-sans-latin-400-normal.woff2") format("woff2");
  unicode-range: U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;
}
@font-face {
  font-family: "IBM Plex Sans"; font-style: normal; font-weight: 400; font-display: swap;
  src: url("/static/fonts/ibm-plex-sans-latin-ext-400-normal.woff2") format("woff2");
  unicode-range: U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF;
}
@font-face {
  font-family: "IBM Plex Sans"; font-style: normal; font-weight: 500; font-display: swap;
  src: url("/static/fonts/ibm-plex-sans-latin-500-normal.woff2") format("woff2");
  unicode-range: U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;
}
@font-face {
  font-family: "IBM Plex Sans"; font-style: normal; font-weight: 500; font-display: swap;
  src: url("/static/fonts/ibm-plex-sans-latin-ext-500-normal.woff2") format("woff2");
  unicode-range: U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF;
}
@font-face {
  font-family: "IBM Plex Mono"; font-style: normal; font-weight: 400; font-display: swap;
  src: url("/static/fonts/ibm-plex-mono-latin-400-normal.woff2") format("woff2");
  unicode-range: U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;
}
@font-face {
  font-family: "IBM Plex Mono"; font-style: normal; font-weight: 400; font-display: swap;
  src: url("/static/fonts/ibm-plex-mono-latin-ext-400-normal.woff2") format("woff2");
  unicode-range: U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF;
}

body:has(.lp) {
  --bg: #18231F; --surface: #F5F2E9; --text: #F5F2E9;
  --muted: #B9C5BB; --accent: #D6EF78; --accent-text: #18231F;
  --border: #536158; --focus: #D6EF78;
  background: var(--bg); color: var(--text);
}
main#glowna:has(.lp) { max-width: none; padding: 0; }
body:has(.lp) .site-header { background: #18231F; border-color: #536158; }
body:has(.lp) .wrap.bar,
body:has(.lp) .site-footer .wrap { max-width: 1360px; padding-inline: 20px; }
body:has(.lp) .bar { gap: 0 20px; padding-block: 8px; }
body:has(.lp) .brand { display: inline-flex; align-items: center; min-height: 44px; font: 800 28px/1.2 Manrope, sans-serif; letter-spacing: -.05em; }
body:has(.lp) .nav { gap: 0 12px; }
body:has(.lp) .nav a { display: inline-flex; align-items: center; min-height: 44px; color: #F5F2E9; font-size: 14px; text-decoration: none; text-underline-offset: 6px; }
body:has(.lp) .nav a:hover { color: #D6EF78; text-decoration: underline; }
body:has(.lp) .site-footer { border-color: #536158; padding-block: 24px; }
body:has(.lp) .site-footer p { margin: 0; }
body:has(.lp) .site-footer a { display: inline-block; padding-block: 10px; color: #B9C5BB; }
body:has(.lp) .skip-link { background: #D6EF78; color: #18231F; min-height: 44px; }
body:has(.lp) :focus-visible { outline: 3px solid var(--focus); outline-offset: 4px; }
.lp { --paper-ink: #18231F; --paper-muted: #4D5A52; font: 400 18px/1.6 "IBM Plex Sans", sans-serif; overflow-wrap: anywhere; overflow: clip; }
.lp *, .lp *::before, .lp *::after { box-sizing: border-box; }
.lp h1, .lp h2, .lp h3 { font-family: Manrope, sans-serif; font-weight: 800; letter-spacing: -.035em; text-wrap: balance; }
.lp h1 { font-size: clamp(44px, 5.56vw, 80px); line-height: 1.05; margin: 0; }
.lp h2 { font-size: clamp(32px, 3.34vw, 48px); line-height: 1.13; margin: 0 0 28px; }
.lp h3 { font-size: 22px; line-height: 1.3; margin: 0 0 12px; }
.lp p { margin: 0 0 16px; }
.lp img { display: block; max-width: 100%; height: auto; }
.lp a { text-underline-offset: 5px; }
.lp button, .lp input { font-family: inherit; }
.lp code { font: 400 13px/1.6 "IBM Plex Mono", monospace; overflow-wrap: anywhere; }
.lp .ico { display: inline-block; width: 24px; height: 24px; flex: 0 0 auto; vertical-align: middle; }
.lp .container { width: 100%; max-width: 1360px; margin-inline: auto; }
.lp section[id], .lp .sheets { scroll-margin-top: 28px; }
.lp .hero { position: relative; isolation: isolate; padding: 48px 20px 0; margin-bottom: 24px; }
.lp .hero-bg { position: absolute; z-index: -3; inset: 0; width: 100%; height: min(100%, 1000px); object-fit: cover; object-position: center 65%; opacity: .85; }
.lp .hero::before { content: ""; position: absolute; z-index: -2; inset: 0; background: linear-gradient(180deg, rgb(24 35 31 / 70%), rgb(24 35 31 / 68%) 58%, rgb(24 35 31 / 38%) 75%, #18231F), radial-gradient(ellipse at 78% 38%, rgb(214 239 120 / 38%), transparent 55%); }
.lp .hero-inner { color: #F5F2E9; max-width: 900px; margin: 0 auto; text-align: center; padding-bottom: 96px; }
.lp .eyebrow { color: #F5F2E9; font-size: 12px; font-weight: 500; text-transform: uppercase; letter-spacing: .16em; margin-bottom: 20px; }
.lp .lead { max-width: 720px; margin: 24px auto; font-size: clamp(18px, 1.6vw, 23px); line-height: 1.5; color: #F5F2E9; }
.lp .hero h1, .lp .hero .eyebrow, .lp .hero .lead { animation: lp-text-in 600ms ease-out both; }
.lp .scan-form { max-width: 760px; margin: 28px auto 0; text-align: left; }
.lp .scan-form label { font-size: 14px; font-weight: 400; margin-bottom: 8px; }
.lp .scan-row { display: grid; gap: 12px; }
.lp .scan-row input { max-width: none; min-width: 0; width: 100%; height: 56px; padding: 12px 16px; background: #18231F; color: #F5F2E9; border: 1px solid #B9C5BB; border-radius: 4px; font-size: 17px; transition: border-color 180ms; }
.lp .scan-row input::placeholder { color: #B9C5BB; opacity: 1; }
.lp .scan-row input:hover { border-color: #D6EF78; }
.lp .btn-lime { display: flex; align-items: center; justify-content: center; gap: 12px; min-height: 56px; margin: 0; padding: 12px 20px; border: 1px solid #D6EF78; border-radius: 4px; background: linear-gradient(135deg, #e1f69a, #cee96e); box-shadow: inset 0 1px #ffffff80, 0 6px 20px rgb(214 239 120 / 12%); color: #18231F; font-size: 16px; font-weight: 500; transition: background 180ms, box-shadow 180ms; }
.lp .btn-lime .ico { width: 20px; height: 20px; transition: transform 180ms; }
.lp .btn-lime:hover { background: #e2f69f; box-shadow: 0 4px 20px rgb(214 239 120 / 16%); }
.lp .btn-lime:hover .ico { transform: translateX(3px); }
.lp .scan-hint { color: #F5F2E9; font-size: 13px; line-height: 1.5; margin: 10px 0 0; }
.lp .sheets { position: relative; isolation: isolate; max-width: 1360px; margin: -32px auto 0; }
.lp .sheets::before { content: ""; position: absolute; z-index: -2; inset: -110px -20px -40px; background: radial-gradient(ellipse, rgb(214 239 120 / 13%), transparent 68%); pointer-events: none; }
.lp .sheet { background: #F5F2E9; color: #18231F; border: 1px solid #d3d4c9; border-radius: 4px; }
.lp .sheet-back, .lp .sheet-mid { display: none; position: absolute; height: 100%; z-index: -1; }
.lp .sheet-main { --focus: #315B38; position: relative; padding: 24px 20px; background: linear-gradient(135deg, #fffdf5, #f0ede3); box-shadow: 0 28px 64px -20px #0009, 0 8px 20px #0003, inset 0 1px #fff; }
.lp .sheet-head { display: flex; flex-direction: column; align-items: flex-start; gap: 12px; margin-bottom: 16px; }
.lp .tag-example { color: #4D5A52; font-size: 14px; font-weight: 500; margin-bottom: 4px; }
.lp .sheet-head h2 { margin: 0; }
.lp .tabs { display: flex; flex-wrap: wrap; gap: 0; max-width: 100%; border: 0; border-radius: 6px; overflow: hidden; background: #e6e3da; }
.lp .tabs button { position: relative; flex: 1; min-width: 0; min-height: 44px; padding: 10px 7px; border: 0; background: transparent; color: #4D5A52; font-size: 13px; cursor: pointer; transition: background 180ms, color 180ms; }
.lp .tabs button::after { content: ""; position: absolute; inset: auto 0 -1px; height: 3px; background: #18231F; transform: scaleX(0); transition: transform 180ms; }
.lp .tabs button[aria-selected="true"] { background: #F2AD88; color: #18231F; }
.lp .tabs button[aria-selected="true"]::after { transform: scaleX(1); }
.lp .tabs button:hover { background: #e6e5da; color: #18231F; }
.lp .panels { display: grid; gap: 12px; }
.lp .task { display: grid; gap: 20px; padding: 20px; border: 1px solid #b7beb3; border-radius: 4px; transition: border-color 180ms; }
.lp .task:hover, .lp .task:focus-visible { border-color: #4D5A52; }
.lp .panel-title { font-size: 16px; margin: 0; }
.js .lp .panel-title { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0,0,0,0); clip-path: inset(50%); white-space: nowrap; border: 0; }
.lp .task-title { font: 800 20px/1.35 Manrope, sans-serif; letter-spacing: -.025em; margin-bottom: 8px; }
.lp .task-meta { margin: 0; font-size: 14px; }
.lp .task-meta div { margin-top: 6px; }
.lp .task-meta dt { color: #4D5A52; }
.lp .task-meta dd { margin: 0; }
.lp .task-side { display: grid; gap: 16px; font-size: 15px; }
.lp .task-side p { margin: 0; }
.lp .task-side strong { display: block; font-weight: 500; margin-bottom: 4px; }
.lp .sheet-foot { display: flex; flex-wrap: wrap; align-items: center; gap: 12px; margin-top: 12px; }
.lp .chip { display: inline-flex; gap: 10px; align-items: center; min-height: 44px; padding: 8px 12px; border: 1px solid #b7beb3; border-radius: 4px; font-size: 14px; }
.lp .chip .ico { width: 20px; height: 20px; }
.lp .sheet-note { color: #4D5A52; font-size: 12px; }
.lp .band { padding: 64px 20px; }
.lp .band-paper { --focus: #315B38; --muted: #4D5A52; color: #18231F; background: #F5F2E9; border: 1px solid #d3d4c9; border-radius: 4px; margin-inline: 20px; padding: 32px 20px; box-shadow: 0 14px 36px -20px #0008, inset 0 1px #fff9; }
.lp .price-grid { display: grid; gap: 32px; }
.lp .price-big { font: 800 clamp(36px, 4vw, 60px)/1.15 Manrope, sans-serif; letter-spacing: -.045em; margin-block: 16px; }
.lp .price-from { display: block; font: 500 14px/1.5 "IBM Plex Sans", sans-serif; letter-spacing: .04em; margin-bottom: 8px; }
.lp .price-lead > p:last-child { font-size: 15px; color: #4D5A52; margin-bottom: 0; }
.lp .table-wrap { min-width: 0; }
.lp .table { margin: 0; width: 100%; background: transparent; font-size: 14px; line-height: 1.5; }
.lp .table th, .lp .table td { border: 1px solid #c9cdc3; padding: 12px 16px; overflow-wrap: anywhere; }
.lp .table th { font-weight: 500; }
.lp .table thead th { background: #e4e3d9; }
.lp .steps { display: grid; gap: 28px; list-style: none; padding: 0; margin: 32px 0 0; counter-reset: lp-step; }
.lp .steps li { position: relative; display: flex; flex-direction: column; padding-top: 24px; border-top: 1px solid #536158; counter-increment: lp-step; }
.lp .steps li::before { content: counter(lp-step, decimal-leading-zero); color: #B9C5BB; -webkit-text-stroke: 0; font: 600 48px/1 Manrope, sans-serif; letter-spacing: -.06em; margin-bottom: 16px; }
.lp .step-ico { position: absolute; right: 0; top: 36px; color: #D6EF78; }
.lp .step-ico .ico { width: 28px; height: 28px; }
.lp .steps h3 { font-size: 20px; }
.lp .steps p { color: #B9C5BB; font-size: 16px; }
.lp .steps .step-out { color: #F5F2E9; border-left: 2px solid #D6EF78; padding-left: 12px; margin-top: auto; margin-bottom: 0; font-size: 14px; }
.lp .roles { display: grid; gap: 20px; }
.lp .role { border: 1px solid #c9cdc3; border-radius: 4px; padding: 16px; background: rgb(255 255 255 / 20%); }
.lp .role::before { content: ""; display: none; width: 32px; height: 3px; background: #18231F; margin-bottom: 24px; }
.lp .role p { font-size: 16px; line-height: 1.5; color: #4D5A52; margin: 0; }
.lp .scope-grid { display: grid; gap: 40px; align-items: center; }
.lp .lead-sm { color: #B9C5BB; font-size: 17px; }
.lp .scope-cols { display: grid; gap: 24px; margin-top: 32px; }
.lp .scope-cols h3 { font-size: 20px; }
.lp .ticks, .lp .gaps { list-style: none; margin: 0; padding: 0; }
.lp .ticks li, .lp .gaps li { position: relative; padding-left: 26px; margin-top: 12px; color: #B9C5BB; font-size: 15px; }
.lp .ticks li::before { content: ""; position: absolute; left: 3px; top: 7px; width: 7px; height: 12px; border: solid #D6EF78; border-width: 0 2px 2px 0; rotate: 45deg; }
.lp .gaps li::before { content: ""; position: absolute; left: 0; top: 8px; width: 12px; height: 12px; border: 1.5px solid #F2AD88; border-radius: 50%; }
.lp .scope-fig { min-width: 0; margin: 0; }
.lp .scope-fig img { width: 100%; border: 1px solid #536158; border-radius: 4px; }
.lp .scope-fig figcaption { margin-top: 16px; color: #B9C5BB; font-size: 13px; }
.lp .faq-grid { display: grid; gap: 8px; }
.lp .faq details { border-bottom: 1px solid #c9cdc3; }
.lp .faq details:first-child { border-top: 1px solid #c9cdc3; }
.lp .faq summary { display: flex; align-items: center; justify-content: space-between; gap: 20px; min-height: 56px; padding-block: 16px; list-style: none; cursor: pointer; font-size: 16px; font-weight: 500; }
.lp .faq summary::-webkit-details-marker { display: none; }
.lp .faq summary::after { content: ""; flex: 0 0 16px; width: 16px; height: 16px; background: linear-gradient(#18231F,#18231F) center / 100% 1.5px no-repeat, linear-gradient(#18231F,#18231F) center / 1.5px 100% no-repeat; transition: transform 120ms; }
.lp .faq details[open] summary::after { transform: rotate(45deg); }
.lp .faq summary:hover { color: #315B38; }
.lp .faq details p { color: #4D5A52; font-size: 16px; padding-right: 28px; margin: 0 0 20px; }
.lp .final { position: relative; isolation: isolate; padding: 72px 20px 48px; text-align: center; }
.lp .final-bg { position: absolute; inset: 0; z-index: -2; width: 100%; height: 100%; object-fit: cover; opacity: .15; }
.lp .final::before { content: ""; position: absolute; inset: 0; z-index: -1; background: radial-gradient(ellipse at 50% 75%, rgb(214 239 120 / 10%), transparent 65%), linear-gradient(#18231F, rgb(24 35 31 / 75%)); }
.lp .final-inner { max-width: 900px; margin: auto; }
.lp .final h2 { margin-bottom: 16px; }
.lp .final .lead { margin-top: 0; }
.lp .final-alt { margin: 20px 0 0; font-size: 15px; }
.lp .final-alt a { display: inline-flex; align-items: center; min-height: 44px; color: #D6EF78; }
.lp [data-reveal] { transition: opacity 600ms ease, transform 600ms cubic-bezier(.2,.7,.2,1); }
.js .lp [data-reveal]:not(.is-visible) { opacity: 0; transform: translateY(20px); }
.lp .tabs[hidden], .lp .task[hidden] { display: none; }
@keyframes lp-text-in { from { opacity: 0; transform: translateY(12px); } to { opacity: 1; transform: translateY(0); } }
@keyframes lp-sheet-in { from { transform: translateY(40px); } to { transform: translateY(0); } }
@media (min-width: 641px) {
  .lp .hero { padding-top: 64px; }
  .lp .hero-inner { padding-bottom: 124px; }
  .lp .scan-row { grid-template-columns: minmax(0, 1fr) auto; }
  .lp .sheets { margin-top: -40px; }
  .lp .sheet-back, .lp .sheet-mid { display: block; }
  .lp .sheet-back { inset: -28px 36px auto; background: linear-gradient(145deg, #eeeede, #c8cdbb); transform: rotate(-.6deg); box-shadow: 0 8px 20px #0003, inset 0 1px #ffffffe6; }
  .lp .sheet-mid { inset: -14px 18px auto; background: linear-gradient(145deg, #faf7ec, #deded0); transform: rotate(.25deg); box-shadow: 0 4px 12px #0003, inset 0 1px #fff; }
  .lp .sheets.is-visible .sheet-back, .lp .sheets.is-visible .sheet-mid { animation: lp-sheet-in 600ms ease-out backwards; }
  .lp .sheet-main { padding: 32px; }
  .lp .tabs button { min-width: 88px; font-size: 14px; }
  .lp .steps, .lp .scope-cols { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .lp .band-paper { padding: 40px 32px; }
  .lp .band-dark { padding-block: 80px; }
  .lp .sheet-note { flex: 1 0 100%; }
}
@media (min-width: 1024px) {
  body:has(.lp) .wrap.bar, body:has(.lp) .site-footer .wrap { padding-inline: 32px; }
  body:has(.lp) .bar { min-height: 72px; }
  body:has(.lp) .nav { gap: 32px; }
  body:has(.lp) .nav a { font-size: 16px; }
  body:has(.lp) .site-footer .wrap { display: flex; align-items: center; justify-content: space-between; gap: 32px; }
  .lp .hero { padding: 36px 56px 0; }
  .lp h1 { font-size: 64px; line-height: 1.04; }
  .lp .hero-inner { padding-bottom: 88px; }
  .lp .lead { font-size: 21px; margin: 16px auto; }
  .lp .scan-form { margin-top: 20px; }
  .lp .band { max-width: 1360px; margin-inline: auto; width: calc(100% - 112px); }
  .lp .band-dark { padding: 48px 32px; }
  .lp .band-paper { padding: 28px 32px; }
  .lp .task { grid-template-columns: 120px minmax(0, 1fr) minmax(0, 1.65fr); align-items: start; gap: 20px; padding: 20px; }
  .js .lp .task { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) minmax(0, 1fr); }
  .lp .task-side { border-left: 1px solid #c9cdc3; padding-left: 20px; }
  .js .lp .task-side { grid-column: span 2; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 28px; }
  .lp .sheet-note { flex: 1; text-align: right; }
  .lp .price-grid { grid-template-columns: minmax(0, .85fr) minmax(0, 1.55fr); gap: 40px; }
  .lp .steps { grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 32px; }
  .lp .roles { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .lp .scope-grid { grid-template-columns: minmax(0, 1.4fr) minmax(0, 1fr); }
  .lp .faq-grid { grid-template-columns: minmax(0, .8fr) minmax(0, 1.4fr); gap: 40px; }
  .lp .faq { border-left: 1px solid #c9cdc3; padding-left: 32px; }
  .lp .final { padding-block: 48px 36px; }
}
@media (max-width: 640px) {
  .lp .hero { padding-top: 28px; }
  .lp h1 { font-size: 38px; line-height: 1.06; }
  .lp .eyebrow { font-size: 10px; margin-bottom: 14px; }
  .lp .lead { font-size: 17px; line-height: 1.45; margin: 16px auto; }
  .lp .hero-inner { padding-bottom: 64px; }
  .lp .scan-form { margin-top: 20px; }
  .lp .tabs { width: 100%; }
  .lp .table thead { position: absolute; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); }
  .lp .table, .lp .table tbody, .lp .table tr { display: block; }
  .lp .table tr { border: 1px solid #c9cdc3; border-radius: 4px; margin-bottom: 12px; }
  .lp .table th[scope="row"] { display: block; background: #e4e3d9; border: 0; padding: 12px; }
  .lp .table td { display: grid; grid-template-columns: 70px minmax(0, 1fr); gap: 12px; border: 0; border-top: 1px solid #c9cdc3; padding: 12px; }
  .lp .table td::before { content: attr(data-label); font-weight: 500; color: #4D5A52; }
  .lp .table td:empty { display: none; }
}
@media (prefers-reduced-motion: reduce) {
  html:has(.lp), body:has(.lp), body:has(.lp) *, body:has(.lp) *::before, body:has(.lp) *::after {
    animation: none !important; transition: none !important; transform: none !important; scroll-behavior: auto !important;
  }
  .js .lp [data-reveal]:not(.is-visible) { opacity: 1; }
}
