/* Public homepage only. The workspace and other marketing pages keep their tokens. */
.landing {
  --lp-paper:#f8f9f3;
  --lp-ink:#192c29;
  --lp-muted:#56655e;
  --lp-line:#dce3da;
  --lp-lime:#d4f588;
  background:var(--lp-paper);
  color:var(--lp-ink);
  font-size:15px;
  line-height:1.65;
  /* Clip decorative horizontal overflow without disabling page scrolling. */
  overflow-x:clip
}
.landing-wrap {
  width:min(1240px,calc(100% - 64px));
  margin-inline:auto
}
.landing h1,.landing h2,.landing h3 {
  letter-spacing:-.045em;
  line-height:1.08
}
.landing h1,.landing h2 {
  font-weight:500
}
.landing h1 em,.landing h2 em {
  font-family:Fraunces,Georgia,serif;
  font-weight:400
}
.landing p {
  color:var(--lp-muted)
}
.landing a,.landing button,.landing summary {
  touch-action:manipulation
}
.landing a:focus-visible,.landing button:focus-visible,.landing summary:focus-visible {
  outline:3px solid #6460de;
  outline-offset:5px
}
.landing [hidden] {
  display:none!important
}
.landing [id] {
  scroll-margin-top:100px
}
.landing-skip {
  position:fixed;
  top:10px;
  left:10px;
  z-index:100;
  background:white;
  padding:12px 20px;
  transform:translateY(-160%)
}
.landing-skip:focus {
  transform:translateY(0)
}
.landing-nav {
  position:sticky;
  top:0;
  z-index:50;
  background:rgba(248,249,243,.96);
  border-bottom:1px solid var(--lp-line);
  backdrop-filter:blur(15px)
}
.landing-nav header {
  max-width:1304px;
  height:82px
}
.landing-nav nav>a:last-of-type {
  background:var(--lp-ink);
  border-radius:8px;
  box-shadow:none;
  height:42px
}
.landing-nav .text-ink {
  color:var(--lp-ink)
}
.landing-hero {
  text-align:center;
  padding-top:70px;
  padding-bottom:28px
}
.landing-kicker {
  display:inline-flex;
  align-items:center;
  gap:9px;
  color:#435f3c;
  font-size:11px;
  font-weight:600;
  letter-spacing:.08em;
  text-transform:uppercase
}
.landing-kicker>span {
  width:7px;
  height:7px;
  background:#6c943d;
  border-radius:50%;
  box-shadow:0 0 0 5px #e9efdF
}
.landing-hero h1 {
  font-size:clamp(48px,6.1vw,88px);
  margin:23px 0;
  line-height:1.03;
  letter-spacing:-.065em
}
.landing-hero h1 em {
  color:#5a7154
}
.landing-lead {
  font-size:17px;
  line-height:1.75;
  margin:auto;
  max-width:700px
}
.landing-actions {
  display:flex;
  gap:12px;
  justify-content:center;
  flex-wrap:wrap;
  margin-top:28px
}
.landing-button {
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:18px;
  min-height:50px;
  padding:13px 23px;
  border-radius:8px;
  font-size:13px;
  font-weight:600;
  transition:background .18s,transform .18s
}
.landing-button:hover {
  transform:translateY(-2px)
}
.landing-button-dark {
  background:var(--lp-ink);
  color:#fff;
  box-shadow:0 4px 0 #0f211e15
}
.landing-button-dark:hover {
  background:#2f4942
}
.landing-button-outline {
  border:1px solid #cad4c7;
  background:#ffffff85
}
.landing-button-outline:hover {
  background:white
}
.landing-fine {
  font-size:11px;
  margin-top:16px
}
.landing-hero-note {
  display:flex;
  align-items:center;
  justify-content:center;
  gap:9px;
  font-size:11px;
  color:#748075;
  margin-top:32px
}
.landing-hero-note>span {
  font-size:19px
}
.landing-preview-section {
  padding:10px 0 0;
  position:relative
}
.landing-preview-section:before {
  content:"";
  position:absolute;
  inset:20% -100px -35px;
  background:radial-gradient(ellipse,#e4eccd,transparent 65%);
  pointer-events:none
}
.landing-product {
  position:relative;
  border:1px solid #c8d3c8;
  border-radius:15px;
  overflow:hidden;
  background:white;
  box-shadow:0 32px 70px -40px #2f4b3b80,0 3px 7px #23362908
}
.landing-product-bar {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  background:#223731;
  color:#dce9de;
  min-height:50px;
  padding:12px 22px;
  font-size:11px
}
.landing-product-bar>div {
  display:flex;
  align-items:center;
  gap:10px
}
.landing-product-bar strong {
  font-size:12px;
  color:#fff
}
.landing-product-divider {
  opacity:.35;
  padding:0 5px
}
.landing-sample-label {
  border:1px solid #ffffff25;
  border-radius:5px;
  padding:3px 8px;
  font-size:10px;
  white-space:nowrap
}
.landing-product-heading {
  display:flex;
  justify-content:space-between;
  align-items:center;
  padding:23px 26px;
  border-bottom:1px solid var(--lp-line);
  gap:15px
}
.landing-overline {
  font-size:10px;
  font-weight:600;
  letter-spacing:.16em;
  text-transform:uppercase;
  margin-bottom:17px!important
}
.landing-product-heading .landing-overline {
  font-size:9px;
  margin-bottom:6px!important;
  color:#788479
}
.landing-product-heading h2 {
  font-size:20px;
  letter-spacing:-.03em
}
.landing-product-heading>a {
  font-size:11px;
  text-decoration:underline;
  text-underline-offset:4px;
  white-space:nowrap
}
.landing-preview-layout {
  display:grid;
  grid-template-columns:minmax(0,1fr) 275px
}
.landing-map {
  position:relative;
  padding:22px 18px 10px;
  background-image:radial-gradient(#d8e0d6 .8px,transparent .8px);
  background-size:16px 16px;
  min-width:0
}
.landing-map-labels {
  display:flex;
  justify-content:space-between;
  font-size:8px;
  font-weight:600;
  letter-spacing:.12em;
  color:#7b877a;
  margin:0 5px
}
.landing-connectors {
  position:absolute;
  inset:52px 18px auto;
  width:calc(100% - 36px);
  height:290px;
  color:#b3c3b1;
  pointer-events:none
}
.landing-map-grid {
  position:relative;
  display:grid;
  grid-template-columns:1fr 1.12fr 1fr 1.12fr 1fr;
  grid-template-rows:145px 145px;
  gap:0 13px;
  align-items:center;
  padding-top:9px
}
.landing-path-card {
  background:#fff;
  border:1px solid var(--lp-line);
  border-radius:7px;
  padding:12px 9px;
  box-shadow:0 2px 4px #1c372706
}
.landing-path-card>span {
  font-size:7px;
  letter-spacing:.08em;
  color:#667e8b;
  display:block;
  margin-bottom:7px;
  font-weight:600
}
.landing-path-card strong {
  font-size:10px;
  line-height:1.5;
  display:block
}
.landing-path-card small {
  font-size:8px;
  color:#788579;
  display:block;
  margin-top:5px;
  line-height:1.5
}
.landing-threat {
  border-left:3px solid #8dabc4
}
.landing-consequence {
  border-left:3px solid #c49485
}
.landing-consequence>span {
  color:#936653
}
.landing-control-card {
  min-width:0;
  text-align:left;
  background:white;
  border:1px solid #b9ccba;
  border-radius:8px;
  padding:12px 9px;
  box-shadow:0 2px 4px #1c372708;
  transition:box-shadow .18s,transform .18s;
  position:relative
}
.landing-control-card[aria-pressed=true] {
  outline:2px solid #92752a;
  outline-offset:3px;
  box-shadow:0 5px 15px #806e181a
}
.landing-control-card:hover {
  transform:translateY(-2px);
  box-shadow:0 4px 15px #1c372718
}
.landing-control-card strong {
  display:block;
  font-size:10px;
  line-height:1.5;
  margin-top:8px
}
.landing-control-card small {
  display:block;
  font-size:8px;
  color:#748070;
  line-height:1.5;
  margin-top:5px
}
.landing-control-amber {
  border-color:#d3b873;
  background:#fffef9
}
.landing-state {
  display:inline-flex;
  align-items:center;
  gap:5px;
  font-size:9px;
  font-weight:600;
  line-height:1.4
}
.landing-state:before {
  content:"";
  width:5px;
  height:5px;
  border-radius:50%;
  background:currentColor;
  flex-shrink:0
}
.landing-state-green {
  color:#357453
}
.landing-state-amber {
  color:#906819
}
.landing-map .landing-state {
  font-size:7px
}
.landing-card-open {
  display:block;
  font-size:8px;
  color:#66765d;
  margin-top:12px
}
.landing-top-event {
  grid-column:3;
  grid-row:1/3;
  background:#223731;
  color:white;
  border-radius:50% 50% 12px 12px;
  padding:28px 8px 20px;
  text-align:center;
  box-shadow:0 8px 20px #18392e20
}
.landing-top-event>span {
  display:block;
  font-size:30px;
  color:var(--lp-lime);
  line-height:1;
  margin-bottom:15px
}
.landing-top-event small {
  font-size:7px;
  letter-spacing:.13em;
  color:#c8d9c4
}
.landing-top-event strong {
  display:block;
  font-size:13px;
  line-height:1.45;
  margin-top:8px;
  font-weight:500
}
.landing-top-event p {
  font-size:7px;
  color:#a7b9ab;
  margin-top:12px
}
.landing-map-caption {
  text-align:center;
  font-size:9px;
  margin:4px 0 12px;
  color:#738271!important
}
.landing-map-caption>span {
  font-size:15px;
  margin-right:5px
}
.landing-inspector {
  background:#fbfcf8;
  border-left:1px solid var(--lp-line);
  padding:23px 22px
}
.landing-inspector-label {
  font-size:8px;
  letter-spacing:.12em;
  color:#778374;
  display:flex;
  justify-content:space-between;
  margin-bottom:19px
}
.landing-inspector h3 {
  font-size:20px;
  line-height:1.2;
  margin:10px 0;
  letter-spacing:-.025em
}
.landing-inspector p {
  font-size:11px;
  line-height:1.75
}
.landing-owner {
  display:flex;
  align-items:center;
  gap:10px;
  margin-top:20px
}
.landing-owner>span {
  width:31px;
  height:31px;
  background:#e6ecd9;
  border-radius:50%;
  display:grid;
  place-items:center;
  font-size:9px;
  font-weight:600
}
.landing-owner strong {
  font-size:10px;
  display:block
}
.landing-owner small {
  font-size:9px;
  color:#7c8677;
  display:block
}
.landing-assurance {
  margin-top:22px;
  border-top:1px solid var(--lp-line);
  padding-top:17px
}
.landing-assurance>span {
  font-size:8px;
  letter-spacing:.1em;
  color:#7b8777;
  display:block
}
.landing-assurance strong {
  font-size:11px;
  display:block;
  margin-top:8px
}
.landing-assurance small {
  display:inline-block;
  background:#f5edcf;
  color:#775818;
  font-size:9px;
  padding:2px 7px;
  border-radius:4px;
  margin:6px 0
}
.landing-assurance p {
  font-size:10px
}
.landing-product-bottom {
  display:flex;
  justify-content:space-between;
  gap:12px;
  padding:11px 22px;
  border-top:1px solid var(--lp-line);
  font-size:9px;
  color:#71816b;
  background:#fff
}
.landing-product-bottom>span:first-child {
  display:flex;
  align-items:center;
  gap:6px
}
.landing-status-dot {
  display:inline-block;
  width:5px;
  height:5px;
  background:#67995b;
  border-radius:50%
}
.landing-industries {
  text-align:center;
  padding-block:51px 65px
}
.landing-industries p {
  font-size:11px
}
.landing-industries>div {
  display:flex;
  flex-wrap:wrap;
  justify-content:center;
  gap:14px 46px;
  margin-top:22px;
  font-size:13px;
  font-weight:500;
  color:#52634f
}
.landing-belief {
  background:#233b32;
  color:#fff;
  position:relative
}
.landing-belief-grid {
  display:grid;
  grid-template-columns:1.15fr 1fr;
  gap:60px;
  align-items:center;
  padding-block:86px
}
.landing-belief .landing-overline {
  color:#bfd6a5
}
.landing-belief h2 {
  font-size:clamp(32px,3.6vw,51px);
  line-height:1.14
}
.landing-belief h2 em {
  color:var(--lp-lime)
}
.landing-belief p:not(.landing-overline) {
  color:#c0cfc2;
  font-size:14px;
  max-width:480px;
  margin-top:25px;
  line-height:1.85
}
.landing-text-link {
  display:inline-flex;
  gap:20px;
  align-items:center;
  margin-top:25px;
  font-size:11px;
  color:#d5e3cf;
  text-decoration:underline;
  text-underline-offset:6px
}
.landing-circle {
  position:relative;
  width:370px;
  max-width:100%;
  margin-inline:auto;
  aspect-ratio:1
}
.landing-circle-outer {
  position:absolute;
  inset:0;
  border:1px solid #c3d9b333;
  border-radius:50%;
  display:flex;
  align-items:flex-start;
  justify-content:center;
  padding-top:24px;
  background:#ffffff02
}
.landing-circle span {
  font-size:8px;
  letter-spacing:.15em;
  color:#b4c8ac
}
.landing-circle-middle {
  position:absolute;
  inset:53px;
  border:1px solid #d0e4bd66;
  border-radius:50%;
  display:flex;
  justify-content:center;
  padding-top:24px;
  background:#ffffff03
}
.landing-circle-inner {
  position:absolute;
  inset:48px;
  border-radius:50%;
  background:var(--lp-lime);
  color:#283b24;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  text-align:center;
  box-shadow:0 0 55px #d4f58810
}
.landing-circle-inner span {
  font-size:9px;
  color:#4b6737;
  margin-bottom:9px
}
.landing-circle-inner strong {
  font-family:Fraunces,Georgia,serif;
  font-size:26px;
  line-height:1.12;
  font-weight:400;
  letter-spacing:-.035em
}
.landing-circle .landing-circle-caption {
  position:absolute;
  bottom:-28px;
  width:100%;
  text-align:center;
  font-size:10px;
  letter-spacing:0;
  color:#a2b69b
}
.landing-section {
  padding-block:85px
}
.landing-section-heading {
  display:flex;
  justify-content:space-between;
  align-items:end;
  gap:40px;
  margin-bottom:43px
}
.landing-section h2,.landing-change h2 {
  font-size:clamp(32px,3.4vw,47px);
  line-height:1.13
}
.landing-section-heading>p {
  font-size:12px;
  line-height:1.85;
  max-width:300px;
  margin-bottom:6px
}
.landing-steps {
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:38px
}
.landing-steps article {
  border-top:1px solid #c9d4c5;
  padding-top:24px
}
.landing-step-number {
  font-size:11px;
  font-family:monospace;
  color:#85947c
}
.landing-steps h3 {
  font-size:21px;
  letter-spacing:-.025em;
  margin:22px 0 14px
}
.landing-steps p {
  font-size:13px;
  line-height:1.85;
  max-width:325px
}
.landing-steps a {
  display:inline-block;
  font-size:11px;
  font-weight:600;
  margin-top:23px;
  text-decoration:underline;
  text-underline-offset:5px
}
.landing-features {
  padding-top:15px
}
.landing-bento {
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:20px
}
.landing-bento article {
  border:1px solid var(--lp-line);
  padding:32px;
  border-radius:12px;
  overflow:hidden;
  min-width:0
}
.landing-bento h3 {
  font-size:27px;
  line-height:1.17;
  margin:20px 0 15px;
  max-width:360px
}
.landing-bento p {
  font-size:13px;
  line-height:1.85;
  max-width:400px
}
.landing-feature-tag {
  font-size:9px;
  letter-spacing:.13em;
  color:#66755c
}
.landing-bento .landing-feature-primary {
  grid-column:1/3;
  background:#eaf0dc;
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:70px;
  align-items:center;
  padding:42px
}
.landing-feature-primary h3 {
  font-size:35px
}
.landing-feature-primary a {
  font-size:11px;
  display:inline-block;
  font-weight:600;
  margin-top:22px;
  text-decoration:underline;
  text-underline-offset:5px
}
.landing-prompt {
  background:#fff;
  border:1px solid #d6dfc8;
  border-radius:12px;
  padding:27px;
  box-shadow:0 14px 25px -20px #26362670;
  transform:rotate(-1deg)
}
.landing-prompt>span {
  font-size:8px;
  letter-spacing:.15em;
  color:#7b8a6d
}
.landing-prompt>p {
  font-size:17px;
  margin:18px 0;
  line-height:1.7;
  color:#354531
}
.landing-prompt>div {
  display:flex;
  flex-wrap:wrap;
  gap:8px
}
.landing-prompt>div>span {
  font-size:9px;
  border:1px solid #d8e2cf;
  border-radius:5px;
  padding:4px 8px
}
.landing-prompt small {
  display:block;
  font-size:10px;
  color:#7b8b71;
  margin-top:22px
}
.landing-feature-focus {
  background:#f0f0f8
}
.landing-feature-assurance {
  background:#fffdf6
}
.landing-focus-demo {
  display:flex;
  gap:8px;
  margin-top:33px;
  align-items:center;
  flex-wrap:wrap
}
.landing-focus-demo>span,.landing-focus-demo>strong {
  padding:10px 13px;
  border:1px solid #dcdae9;
  background:#fff;
  border-radius:6px;
  font-size:10px;
  font-weight:400
}
.landing-focus-demo>strong {
  background:#33374f;
  color:#fff;
  border-color:#33374f
}
.landing-focus-demo>strong>span {
  padding-left:12px
}
.landing-mini-task {
  border:1px solid #e9e4d4;
  background:#fff;
  display:flex;
  align-items:center;
  gap:12px;
  border-radius:7px;
  padding:15px;
  margin-top:30px
}
.landing-mini-task>span {
  font-size:25px;
  color:#967b3e
}
.landing-mini-task strong {
  font-size:11px;
  display:block
}
.landing-mini-task small {
  font-size:9px;
  display:block;
  color:#89907c
}
.landing-mini-task b {
  margin-left:auto;
  font-weight:500;
  color:#866523;
  background:#f9f1d7;
  font-size:9px;
  border-radius:4px;
  padding:3px 7px
}
.landing-bento .landing-feature-team {
  grid-column:1/3;
  display:grid;
  grid-template-columns:1fr 1fr;
  column-gap:70px;
  background:#fff
}
.landing-feature-team .landing-feature-tag {
  grid-column:1
}
.landing-feature-team h3 {
  grid-column:1;
  margin-top:15px
}
.landing-feature-team>p {
  grid-column:1
}
.landing-team-demo {
  grid-column:2;
  grid-row:1/4;
  align-self:center;
  display:flex;
  align-items:center;
  padding-left:30px
}
.landing-team-demo>span {
  display:grid;
  place-items:center;
  width:48px;
  height:48px;
  border:3px solid #fff;
  border-radius:50%;
  background:#e5eaca;
  font-size:12px;
  margin-left:-12px
}
.landing-team-demo>span:nth-child(2) {
  background:#d7e4e7
}
.landing-team-demo>span:nth-child(3) {
  background:#e9dccc
}
.landing-team-demo>p {
  margin-left:20px;
  font-size:11px;
  line-height:1.8
}
.landing-change {
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:70px;
  padding-block:0 85px;
  align-items:center
}
.landing-change h2 {
  font-size:35px
}
.landing-change dl>div {
  padding:17px 0;
  border-bottom:1px solid var(--lp-line)
}
.landing-change dt {
  font-size:11px;
  color:#7e8979;
  text-decoration:line-through;
  text-decoration-color:#b1baaa
}
.landing-change dd {
  font-size:13px;
  font-weight:500;
  margin-top:5px
}
.landing-change dd:before {
  content:"↳";
  margin-right:10px;
  color:#63834c
}
.landing-pricing {
  background:#eef1e8;
  border-block:1px solid var(--lp-line)
}
.landing-centered {
  text-align:center
}
.landing-centered>p:not(.landing-overline) {
  font-size:13px;
  line-height:1.85;
  margin-top:23px
}
.landing-pricing .price-pop {
  border-radius:11px;
  box-shadow:none;
  border-color:#d1daca;
  transition:transform .18s
}
.landing-pricing .price-pop:hover {
  transform:translateY(-3px)
}
.landing-pricing .price-pop:nth-child(2) {
  border-color:#334d3b;
  box-shadow:0 12px 25px -22px #253628
}
.landing-pricing .price-pop:nth-child(2)>span,.landing-pricing .price-pop:nth-child(2)>a {
  background:#263d30;
  box-shadow:none
}
.landing-pricing .price-pop:nth-child(2)>span {
  color:#d4f588
}
.landing-pricing .price-pop .text-muted {
  color:#56655e
}
.landing-pricing-link {
  text-align:center;
  font-size:11px;
  margin-top:22px;
  text-decoration:underline;
  text-underline-offset:4px
}
.landing-faq {
  display:grid;
  grid-template-columns:.85fr 1.15fr;
  gap:90px
}
.landing-faq h2 {
  font-size:38px
}
.landing-faq>div>p {
  font-size:12px;
  margin-top:20px;
  line-height:2
}
.landing-faq a {
  text-decoration:underline;
  text-underline-offset:4px
}
.landing-faq details {
  border-top:1px solid var(--lp-line)
}
.landing-faq details:last-child {
  border-bottom:1px solid var(--lp-line)
}
.landing-faq summary {
  list-style:none;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:20px;
  font-size:13px;
  font-weight:500;
  padding:22px 0;
  cursor:pointer
}
.landing-faq summary::-webkit-details-marker {
  display:none
}
.landing-faq summary>span {
  font-size:21px;
  font-weight:400;
  color:#7d8c71
}
.landing-faq details[open] summary>span {
  transform:rotate(45deg)
}
.landing-faq details>p {
  font-size:12px;
  line-height:1.9;
  padding:0 25px 25px 0
}
.landing-final {
  background:#20372f;
  color:#fff;
  text-align:center;
  padding-block:75px;
  background-image:radial-gradient(ellipse at 50% 120%,#58714955,transparent 65%)
}
.landing-final .landing-overline {
  color:#bed5a3
}
.landing-final h2 {
  font-size:clamp(35px,4vw,57px);
  line-height:1.13
}
.landing-final h2 em {
  color:var(--lp-lime)
}
.landing-final p:not(.landing-overline) {
  font-size:13px;
  color:#b7cbbb;
  margin:23px 0 27px
}
.landing-button-lime {
  background:var(--lp-lime);
  color:#263d23
}
.landing-button-lime:hover {
  background:#e1ffa3
}
.landing-final .landing-wrap>span {
  display:block;
  font-size:10px;
  color:#b9c9b7;
  margin-top:15px
}
.landing>footer {
  position:relative;
  background:#172b24;
  border-top:1px solid #ffffff12
}
.landing>footer p {
  color:#b0bfad
}
.landing>footer .text-white\/40 {
  color:#a7b5a3
}
@media(min-width:1500px) {
  .landing-hero {
    padding-top:85px
  }
  .landing-hero h1 {
    font-size:94px
  }
}
@media(max-width:1050px) {
  .landing-wrap {
    width:calc(100% - 40px)
  }
  .landing-preview-layout {
    grid-template-columns:minmax(0,1fr) 235px
  }
  .landing-map-grid {
    gap:0 8px
  }
  .landing-map {
    padding-inline:10px
  }
  .landing-control-card,.landing-path-card {
    padding:9px 6px
  }
  .landing-path-card small,.landing-control-card small {
    font-size:7px
  }
  .landing-map .landing-state {
    font-size:6px;
    gap:3px
  }
  .landing-top-event strong {
    font-size:11px
  }
  .landing-top-event {
    padding-inline:4px
  }
  .landing-inspector {
    padding:20px 16px
  }
  .landing-circle {
    width:330px
  }
  .landing-circle-middle {
    inset:46px
  }
  .landing-circle-inner {
    inset:44px
  }
  .landing-circle-inner strong {
    font-size:23px
  }
  .landing-belief-grid {
    gap:30px
  }
  .landing-bento .landing-feature-primary {
    gap:35px;
    padding:30px
  }
  .landing-faq {
    gap:50px
  }
}
@media(max-width:800px) {
  .landing-nav header {
    height:70px
  }
  .landing-hero {
    padding-top:46px
  }
  .landing-hero h1 {
    font-size:clamp(43px,8vw,64px)
  }
  .landing-preview-layout {
    grid-template-columns:1fr
  }
  .landing-inspector {
    border-left:0;
    border-top:1px solid var(--lp-line)
  }
  .landing-inspector section {
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:0 25px
  }
  .landing-inspector-label {
    grid-column:1/3;
    margin-bottom:12px
  }
  .landing-inspector section>.landing-state,.landing-inspector section>h3,.landing-inspector section>p,.landing-owner {
    grid-column:1
  }
  .landing-assurance {
    grid-column:2;
    grid-row:2/6;
    border-top:0;
    border-left:1px solid var(--lp-line);
    padding:0 0 0 25px;
    margin-top:0
  }
  .landing-map-grid {
    grid-template-rows:130px 130px;
    gap:0 17px
  }
  .landing-connectors {
    height:260px
  }
  .landing-control-card,.landing-path-card {
    padding:12px 9px
  }
  .landing-control-card strong,.landing-path-card strong {
    font-size:11px
  }
  .landing-map .landing-state {
    font-size:8px
  }
  .landing-map small {
    font-size:8px
  }
  .landing-top-event strong {
    font-size:14px
  }
  .landing-belief-grid {
    padding-block:60px
  }
  .landing-circle {
    width:285px
  }
  .landing-circle-middle {
    inset:37px;
    padding-top:21px
  }
  .landing-circle-inner {
    inset:39px
  }
  .landing-circle span {
    font-size:6px
  }
  .landing-circle-inner strong {
    font-size:21px
  }
  .landing-section {
    padding-block:60px
  }
  .landing-section-heading {
    align-items:start;
    gap:25px
  }
  .landing-section-heading>p {
    max-width:200px
  }
  .landing-steps {
    gap:23px
  }
  .landing-steps h3 {
    font-size:19px
  }
  .landing-steps p {
    font-size:12px
  }
  .landing-features {
    padding-top:0
  }
  .landing-bento h3 {
    font-size:25px
  }
  .landing-bento .landing-feature-primary {
    gap:30px
  }
  .landing-feature-primary h3 {
    font-size:29px
  }
  .landing-prompt {
    padding:20px
  }
  .landing-prompt>p {
    font-size:14px
  }
  .landing-bento article {
    padding:25px
  }
  .landing-bento .landing-feature-team {
    column-gap:30px
  }
  .landing-team-demo {
    flex-wrap:wrap;
    gap:10px
  }
  .landing-team-demo>p {
    margin:0;
    width:100%
  }
  .landing-change {
    gap:35px;
    padding-bottom:60px
  }
  .landing-change h2 {
    font-size:30px
  }
  .landing-faq {
    gap:35px
  }
}
@media(max-width:580px) {
  .landing-wrap {
    width:calc(100% - 32px)
  }
  .landing-nav header {
    padding-inline:16px
  }
  .landing-nav header>a {
    gap:8px
  }
  .landing-nav header>a>span {
    font-size:16px
  }
  .landing-nav header>a>svg {
    width:29px;
    height:29px
  }
  .landing-kicker {
    font-size:9px;
    letter-spacing:.04em
  }
  .landing-hero h1 {
    font-size:45px;
    letter-spacing:-.06em;
    margin:22px -3px
  }
  .landing-lead {
    font-size:14px;
    max-width:340px
  }
  .landing-desktop-break {
    display:none
  }
  .landing-actions {
    gap:9px;
    flex-direction:column;
    max-width:330px;
    margin-inline:auto;
    margin-top:25px
  }
  .landing-button {
    min-height:49px;
    font-size:12px
  }
  .landing-fine {
    font-size:10px;
    max-width:280px;
    margin:14px auto 0
  }
  .landing-hero-note {
    font-size:10px;
    max-width:290px;
    margin:24px auto 0;
    line-height:1.7
  }
  .landing-preview-section {
    padding-top:0
  }
  .landing-product {
    border-radius:10px
  }
  .landing-product-bar {
    padding:12px;
    font-size:9px
  }
  .landing-product-bar>div {
    gap:6px
  }
  .landing-product-bar .landing-product-divider,.landing-product-bar>div>span:last-child {
    display:none
  }
  .landing-product-heading {
    padding:18px 14px;
    display:block
  }
  .landing-product-heading h2 {
    font-size:18px;
    line-height:1.3
  }
  .landing-product-heading>a {
    display:inline-block;
    margin-top:10px;
    font-size:10px
  }
  .landing-map {
    padding:16px 12px 4px
  }
  .landing-map-labels {
    font-size:7px
  }
  .landing-connectors {
    display:none
  }
  .landing-map-grid {
    grid-template-columns:1fr 1fr;
    grid-template-rows:auto;
    gap:12px;
    padding-top:18px
  }
  .landing-top-event {
    grid-column:1/3;
    grid-row:3;
    border-radius:9px;
    padding:14px;
    display:grid;
    grid-template-columns:30px 1fr;
    gap:3px 12px;
    text-align:left;
    align-items:center
  }
  .landing-top-event>span {
    grid-column:1;
    grid-row:1/4;
    margin:0
  }
  .landing-top-event small {
    grid-column:2;
    font-size:8px
  }
  .landing-top-event strong {
    grid-column:2;
    font-size:15px;
    margin:0
  }
  .landing-top-event strong br {
    display:none
  }
  .landing-top-event p {
    grid-column:2;
    font-size:8px;
    margin:0
  }
  .landing-path-card {
    padding:12px;
    min-height:89px
  }
  .landing-path-card strong {
    font-size:11px
  }
  .landing-path-card small {
    font-size:9px
  }
  .landing-control-card {
    padding:12px;
    min-height:115px
  }
  .landing-map .landing-state {
    font-size:9px
  }
  .landing-control-card strong {
    font-size:12px;
    margin-top:6px
  }
  .landing-control-card small {
    font-size:9px
  }
  .landing-card-open {
    font-size:9px;
    margin-top:8px
  }
  .landing-map-grid>:nth-child(1) {
    grid-column:1;
    grid-row:1
  }
  .landing-map-grid>:nth-child(2) {
    grid-column:1;
    grid-row:2
  }
  .landing-map-grid>:nth-child(6) {
    grid-column:2;
    grid-row:1
  }
  .landing-map-grid>:nth-child(7) {
    grid-column:2;
    grid-row:2
  }
  .landing-map-grid>:nth-child(4) {
    grid-column:1;
    grid-row:4
  }
  .landing-map-grid>:nth-child(8) {
    grid-column:2;
    grid-row:4
  }
  .landing-map-grid>:nth-child(5) {
    grid-column:1;
    grid-row:5
  }
  .landing-map-grid>:nth-child(9) {
    grid-column:2;
    grid-row:5
  }
  .landing-map-caption {
    font-size:9px;
    margin-top:18px
  }
  .landing-inspector {
    padding:20px 16px
  }
  .landing-inspector section {
    display:block
  }
  .landing-inspector h3 {
    font-size:22px
  }
  .landing-inspector p {
    font-size:12px
  }
  .landing-inspector .landing-state {
    font-size:11px
  }
  .landing-inspector-label {
    font-size:9px
  }
  .landing-owner {
    margin-top:16px
  }
  .landing-owner strong {
    font-size:12px
  }
  .landing-owner small {
    font-size:10px
  }
  .landing-assurance {
    border-left:0;
    border-top:1px solid var(--lp-line);
    margin-top:20px;
    padding:16px 0 0
  }
  .landing-assurance strong {
    font-size:13px
  }
  .landing-assurance small {
    font-size:10px
  }
  .landing-assurance p {
    font-size:11px
  }
  .landing-product-bottom {
    padding:12px;
    flex-direction:column;
    gap:4px;
    font-size:9px
  }
  .landing-industries {
    padding-block:35px 42px
  }
  .landing-industries>div {
    font-size:11px;
    gap:12px 23px
  }
  .landing-belief-grid {
    grid-template-columns:1fr;
    padding-block:45px 60px;
    gap:40px
  }
  .landing-belief h2 {
    font-size:35px
  }
  .landing-belief p:not(.landing-overline) {
    font-size:13px
  }
  .landing-circle {
    width:290px
  }
  .landing-circle span {
    font-size:7px
  }
  .landing-circle-inner strong {
    font-size:24px
  }
  .landing-section {
    padding-block:45px
  }
  .landing-section-heading {
    display:block;
    margin-bottom:30px
  }
  .landing-section h2 {
    font-size:34px
  }
  .landing-section-heading>p {
    font-size:12px;
    max-width:none;
    margin-top:18px
  }
  .landing-steps {
    grid-template-columns:1fr;
    gap:30px
  }
  .landing-steps article {
    padding-top:18px
  }
  .landing-steps h3 {
    margin-top:13px;
    font-size:23px
  }
  .landing-steps p {
    font-size:13px;
    max-width:none
  }
  .landing-steps a {
    font-size:12px;
    margin-top:16px
  }
  .landing-bento {
    grid-template-columns:1fr;
    gap:14px
  }
  .landing-bento .landing-feature-primary,.landing-bento .landing-feature-team {
    grid-column:1;
    display:block;
    padding:25px
  }
  .landing-bento h3,.landing-feature-primary h3 {
    font-size:28px
  }
  .landing-bento p {
    font-size:13px
  }
  .landing-prompt {
    margin-top:30px;
    transform:none
  }
  .landing-prompt>p {
    font-size:15px
  }
  .landing-team-demo {
    margin-top:25px
  }
  .landing-feature-team .landing-team-demo>p {
    width:auto;
    margin-left:10px;
    font-size:10px
  }
  .landing-features {
    padding-top:0
  }
  .landing-change {
    grid-template-columns:1fr;
    gap:22px;
    padding-bottom:45px
  }
  .landing-change h2 {
    font-size:32px
  }
  .landing-change dt {
    font-size:10px
  }
  .landing-change dd {
    font-size:12px
  }
  .landing-faq {
    display:block
  }
  .landing-faq>div:first-child {
    margin-bottom:30px
  }
  .landing-faq summary {
    font-size:13px;
    padding:19px 0
  }
  .landing-final {
    padding-block:50px
  }
  .landing-final h2 {
    font-size:35px
  }
  .landing-final p:not(.landing-overline) {
    font-size:12px
  }
  .landing-final .landing-button {
    width:100%;
    max-width:320px
  }
  .landing>footer {
    font-size:13px
  }
}
@media(prefers-reduced-motion:reduce) {
  .landing * {
    scroll-behavior:auto!important;
    transition:none!important;
    animation:none!important
  }
  .landing-button:hover,.landing-control-card:hover,.landing-pricing .price-pop:hover {
    transform:none
  }
}

/* Preview anatomy follows bowtie/nodes.jsx: the marketing shell stays separate. */
.landing-map {
  background-color: #f6f8fc;
  background-image: radial-gradient(#cbd5e1 .8px, transparent .8px);
}
.landing-map-labels { color: #94a3b8; font-size: 12px; letter-spacing: .16em; }
.landing-map-grid { grid-template-rows: 210px 210px; }
.landing-connectors { inset: 0; width: 100%; height: 100%; color: #b1b8c6; }
.landing-path-card {
  border-color: #e9edf3;
  border-radius: 11px;
  display: grid;
  grid-template-columns: 22px 1fr;
  column-gap: 7px;
  align-items: center;
  box-shadow: 0 1px 2px #0f172a0f;
}
.landing-threat { border-left-color: #3b82f6; }
.landing-consequence { border-left-color: #ef4444; }
.landing-path-card .landing-node-icon {
  grid-row: 1 / 3;
  display: grid;
  place-items: center;
  width: 22px;
  height: 24px;
  margin: 0;
  border-radius: 7px;
  background: #3b82f61a;
  color: #3b82f6;
  font-size: 16px;
}
.landing-consequence .landing-node-icon { color: #ef4444; background: #ef44441a; }
.landing-path-card strong { color: #0f172a; font-size: 11px; }
.landing-path-card small { color: #94a3b8; font-size: 8px; }
.landing-control-card {
  background: #fff;
  border: 1px solid #e9edf3;
  border-left: 3px solid #10b981;
  border-radius: 10px;
  box-shadow: 0 1px 2px #0f172a0f;
  padding: 10px;
}
.landing-control-amber { border-left-color: #f59e0b; }
.landing-control-card[aria-pressed=true] { outline: 2px solid #4f46e5; outline-offset: 3px; box-shadow: 0 4px 14px #4f46e51a; }
.landing-control-card strong { color: #0f172a; font-size: 11px; }
.landing-control-card small { color: #64748b; }
.landing-state-green { color: #15805d; }
.landing-state-amber { color: #a46a08; }
.landing-state-red { color: #dc2626; }
.landing-critical { color: #f59e0b; }
.landing-card-open { color: #4f46e5; font-size: 9px; border-top: 1px solid #e9edf3; padding-top: 7px; }
.landing-overdue { color: #dc2626; display: block; font-size: 8px; line-height: 1.5; margin-top: 7px; }
.landing-factor {
  position: absolute;
  top: calc(100% + 20px);
  left: 12px;
  right: -5px;
  background: #fffbeb;
  color: #92400e;
  border: 1px dashed #f59e0baa;
  border-radius: 8px;
  padding: 6px 7px;
  font-size: 8px;
  line-height: 1.5;
  font-weight: 400;
}
.landing-factor:before { content: ""; position: absolute; bottom: 100%; left: 16px; height: 21px; border-left: 1px dashed #f59e0b; }
.landing-top-event {
  border: 1px solid #4f46e533;
  border-radius: 16px;
  background: #fff;
  padding: 14px 10px;
  color: #0f172a;
  box-shadow: 0 6px 20px #4f46e524;
  text-align: center;
}
.landing-top-event .landing-hazard { margin-bottom: 9px; }
.landing-top-event .landing-hazard small { color: #94a3b8; font-size: 8px; letter-spacing: .12em; }
.landing-top-event .landing-hazard p { color: #64748b; font-size: 10px; line-height: 1.4; margin: 4px 0 0; }
.landing-event { padding-top: 9px; border-top: 1px solid #e9edf3; }
.landing-top-event .landing-event small { color: #4f46e5; font-size: 8px; letter-spacing: .08em; display: inline-flex; align-items: center; gap: 5px; }
.landing-event small>span { width: 6px; height: 6px; border-radius: 50%; background: #f59e0b; box-shadow: 0 0 0 2px #f59e0b22; }
.landing-top-event .landing-event strong { color: #0f172a; font-weight: 700; font-size: 13px; line-height: 1.3; margin-top: 5px; }
.landing-map-legend { display: flex; flex-wrap: wrap; justify-content: center; align-items: center; gap: 8px 12px; width: fit-content; margin: 15px auto 0; padding: 7px 12px; background: white; border: 1px solid #e9edf3; border-radius: 20px; font-size: 8px; color: #64748b; }
.landing-map-legend .landing-state { font-size: 8px; }
.landing-map-caption { margin-top: 9px; color: #64748b!important; }
.landing-inspector { background: #fff; border-color: #e9edf3; }
@media (max-width: 1050px) and (min-width: 801px) {
  .landing-path-card { grid-template-columns: 1fr; }
  .landing-path-card .landing-node-icon { display: none; }
  .landing-control-card { padding: 8px 6px; }
  .landing-control-card strong { font-size: 10px; }
  .landing-factor { left: 3px; font-size: 7px; }
}
@media (max-width: 580px) {
  .landing-map-grid { grid-template-rows: auto; gap: 16px 12px; }
  .landing-map-labels { font-size: 10px; }
  .landing-top-event { display: block; border-radius: 16px; width: 210px; margin: 5px auto; padding: 15px; }
  .landing-top-event .landing-event strong { font-size: 15px; }
  .landing-control-amber { margin-bottom: 80px; }
  .landing-map-grid>[data-map-node=response] { align-self: start; }
  .landing-factor { left: 8px; right: 0; font-size: 9px; }
  .landing-control-card strong { font-size: 12px; }
  .landing-overdue { font-size: 9px; }
  .landing-path-card { padding: 10px 8px; }
  .landing-path-card small { font-size: 9px; }
}
