/* Shared page compositions built from the approved homepage's type and palette. */
.site-main { display: contents; }
.icon { width: 22px; height: 22px; flex: none; vertical-align: middle; }
.pill { display: inline-flex; align-items: center; justify-content: center; gap: .55rem; }
.pill .icon { width: 18px; height: 18px; }
.sr-only { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip-path: inset(50%); white-space: nowrap; border: 0; }
.skip-link { position: fixed; left: 1rem; top: -6rem; padding: .75rem 1rem; background: var(--brand); color: white; z-index: 100; border-radius: 8px; }
.skip-link:focus { top: 1rem; }
a:focus-visible, button:focus-visible, [tabindex="0"]:focus-visible { outline: 2px solid var(--brand); outline-offset: 5px; }
.nav-toggle { display: none; }
.nav-links { gap: .5rem; }
.nav-links a { padding: .4rem .7rem; border-radius: 999px; }
.nav a[aria-current="page"] { color: var(--brand); background: #F1ECFC; }
.page-intro { max-width: 94rem; margin: 0 auto; padding: 13rem clamp(1.25rem, 5vw, 3rem) 1rem; }
.page-intro h1 { font-size: clamp(3rem, 4.3vw, 5rem); line-height: 1.13; letter-spacing: -.045em; font-weight: 400; text-wrap: balance; max-width: 17ch; }
.page-intro-split { display: grid; grid-template-columns: 1fr 1.05fr; align-items: center; gap: clamp(2rem, 4vw, 5rem); }
.page-context { color: var(--brand); display: flex; align-items: center; gap: .65rem; margin-bottom: 1.5rem; font-size: 1rem; }
.intro-summary { color: var(--text-soft); font-size: clamp(1.125rem, 1.25vw, 1.35rem); line-height: 1.6; max-width: 52ch; margin-top: 1.75rem; }
.intro-actions { display: flex; flex-wrap: wrap; align-items: center; gap: .8rem; margin-top: 2rem; }
.page-intro-centered { text-align: center; }
.page-intro-centered h1 { margin-inline: auto; max-width: 20ch; }
.page-intro-centered .intro-summary { margin-inline: auto; max-width: 65ch; }
.page-intro-centered .page-context, .page-intro-centered .intro-actions { justify-content: center; }
.page-section { max-width: 94rem; margin-inline: auto; }
.inner-page .section-head { max-width: 54rem; }
.inner-page .section-head h2 { font-weight: 400; font-size: clamp(2rem, 3.1vw, 3rem); line-height: 1.18; letter-spacing: -.035em; }
.inner-page .section-head p { font-size: 1.125rem; max-width: 64ch; margin-inline: auto; }
.dataset-preview { min-width: 0; border: 1px solid #D8CBF5; border-radius: 18px; background: #fff; overflow: hidden; }
.dataset-bar { display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: .75rem; padding: 1.5rem; color: #776294; }
.dataset-bar > span:first-child { display: flex; align-items: center; gap: .7rem; }
.dataset-state { display: flex; align-items: center; gap: .4rem; font-size: .75rem; }
.dataset-state i { width: 7px; height: 7px; background: var(--brand); border-radius: 50%; }
.table-scroll { overflow-x: auto; }
.dataset-preview table { width: 100%; border-collapse: collapse; text-align: left; font-size: .9375rem; }
.dataset-preview th { font-weight: 400; color: #9888B2; font-size: .75rem; background: #F6F2FC; padding: 1rem 1.15rem; white-space: nowrap; }
.dataset-preview td { border-top: 1px solid #EEE8F8; padding: 1.15rem; color: var(--text-soft); white-space: nowrap; }
.dataset-preview td:nth-last-child(2) { color: var(--brand); font-family: var(--mono); font-size: .82rem; }
.dataset-bottom { display: flex; flex-wrap: wrap; justify-content: space-between; gap: .5rem; border-top: 1px solid #EEE8F8; color: #9888B2; font-size: .72rem; padding: 1rem 1.3rem; }
.dataset-bottom .icon { width: 14px; height: 14px; }
.native-pipeline { margin-top: 3rem; border: 1px solid #E4DDED; background: #FCFBFE; border-radius: 20px; padding: clamp(1rem, 2.5vw, 2rem); }
.pipeline-toolbar { display: flex; align-items: center; gap: 2rem; padding: .5rem .5rem 2.5rem; }
.pipeline-toolbar > div { flex: 1; }
.pipeline-toolbar p { color: var(--text-soft); font-size: 1.125rem; line-height: 1.65; margin-top: .8rem; max-width: 85ch; }
.pipeline-toolbar .pill { flex: none; }
.pipeline-label { font-size: 13px; font-family: var(--sans); font-weight: 400; }
.pipeline-toolbar .pipeline-label { color: var(--brand); }
.pipeline-scroll { overflow-x: auto; }
.pipeline-diagram { display: block; width: 100%; min-width: 850px; overflow: visible; }
.pipeline-diagram text { font-family: var(--sans); }
.pipeline-node-title { font-size: 17px; fill: #45404F; }
.pipeline-node-sub { font-size: 12px; fill: #91849C; }
.pipeline-edge { fill: none; stroke: #A48ADB; stroke-width: 2; stroke-dasharray: 7 6; animation: pipe-flow 2s linear infinite; }
.native-pipeline:not([data-visible="true"]) .pipeline-edge { animation-play-state: paused; }
@keyframes pipe-flow { to { stroke-dashoffset: -26; } }
.native-pipeline figcaption { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 1rem; padding-top: .75rem; color: var(--muted); font-size: .75rem; }
.text-button { border: 0; background: transparent; color: var(--brand); font: inherit; cursor: pointer; display: inline-flex; align-items: center; gap: .5rem; }
.text-button .icon { width: 16px; height: 16px; }
.benefit-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 1.25rem; }
.benefit-grid > div { padding: 1.75rem; border: 1px solid var(--border); border-radius: 18px; background: white; }
.benefit-grid h2 { font-size: 1.25rem; color: var(--text); line-height: 1.3; font-weight: 400; letter-spacing: -.02em; margin-bottom: .75rem; }
.benefit-grid p { color: var(--text-soft); font-size: 1rem; line-height: 1.65; }
.related-products { display: grid; grid-template-columns: 1.3fr 1fr; gap: 4rem; align-items: center; }
.related-products h2 { font-size: 2rem; font-weight: 400; letter-spacing: -.03em; line-height: 1.2; }
.related-products p { margin-top: 1rem; color: var(--text-soft); max-width: 65ch; }
.related-links { display: grid; gap: 1rem; }
.related-links a { display: flex; align-items: center; gap: .8rem; border-bottom: 1px solid var(--border); padding: 1.2rem 0; }
.related-links .icon:last-child { margin-left: auto; color: var(--brand); }
.final-cta { display: flex; align-items: center; justify-content: space-between; gap: 3rem; }
.final-cta-copy { max-width: 43rem; }
.final-cta h2 { font-size: clamp(2rem, 3vw, 3rem); font-weight: 400; letter-spacing: -.035em; line-height: 1.2; }
.final-cta p { color: #C5C0D0; margin-top: 1rem; font-size: 1.125rem; }
.final-cta-actions { display: flex; flex-wrap: wrap; gap: .75rem; flex-shrink: 0; }
.solution-list { display: grid; grid-template-columns: repeat(2, 1fr); gap: 0 4rem; }
.solution-link { display: grid; grid-template-columns: auto 1fr auto; align-items: start; gap: 1.25rem; padding: 2.25rem 0; border-top: 1px solid var(--border); }
.solution-link > .icon:first-child { width: 28px; height: 28px; color: var(--brand); margin-top: .4rem; }
.solution-link h2 { font-size: 1.75rem; font-weight: 400; letter-spacing: -.025em; }
.solution-link p { margin-top: .6rem; color: var(--text-soft); }
.solution-link > .icon:last-child { align-self: center; color: var(--brand); transition: transform .2s; }
.solution-link:hover > .icon:last-child { transform: translateX(5px); }
.plan-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 1.5rem; }
.plan { padding: clamp(2rem, 4vw, 3.5rem); border: 1px solid var(--border); border-radius: 22px; }
.plan h2 { font-size: 1.75rem; font-weight: 400; }
.plan .plan-price { font-size: clamp(2.5rem, 4vw, 4.5rem); line-height: 1.1; margin: 1.5rem 0; letter-spacing: -.04em; }
.plan .plan-price small { font-size: 1rem; color: var(--muted); letter-spacing: 0; }
.plan p { color: var(--text-soft); }
.plan ul { margin: 1.75rem 0 2rem; list-style: none; display: grid; gap: .8rem; }
.plan li { display: flex; gap: .6rem; align-items: start; }
.plan li .icon { color: #88B793; width: 18px; height: 18px; margin-top: 4px; }
.plan-dark { color: #F8F6FC; background: #1C172A; border-color: #1C172A; }
.plan-dark p { color: #C5C0D0; }
.plan-dark .plan-links { display: flex; flex-wrap: wrap; gap: 1rem; align-items: center; }
.plan-note { text-align: center; color: var(--muted); max-width: 65ch; margin: 2rem auto 0; }
.enterprise-band { background: #1C172A; color: #F8F6FC; border-radius: 24px; padding: clamp(2rem, 5vw, 5rem); display: grid; grid-template-columns: 1fr 1fr; gap: 5rem; }
.enterprise-band h2 { font-size: clamp(2rem, 3vw, 3rem); line-height: 1.2; font-weight: 400; letter-spacing: -.03em; }
.enterprise-band p { color: #C5C0D0; margin-top: 1.2rem; }
.enterprise-band ul { list-style: none; }
.enterprise-band li { display: flex; gap: 1rem; padding: 1rem 0; border-bottom: 1px solid #ffffff20; }
.enterprise-band li .icon { color: #B4A0F3; }
.process-list { margin-top: 3rem; display: grid; grid-template-columns: repeat(3, 1fr); gap: 2rem; counter-reset: step; }
.process-list > div { counter-increment: step; border-top: 1px solid var(--border); padding-top: 1.5rem; }
.process-list > div::before { content: '0' counter(step); color: var(--brand); font-family: var(--mono); }
.process-list h3 { font-size: 1.5rem; font-weight: 400; margin: 1rem 0; }
.process-list p { color: var(--text-soft); }
.story-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 4rem; align-items: center; }
.story-grid h2 { font-size: clamp(2rem, 3vw, 3rem); font-weight: 400; letter-spacing: -.03em; line-height: 1.2; }
.story-grid p { color: var(--text-soft); margin-top: 1.3rem; font-size: 1.125rem; }
.story-photo { width: 100%; aspect-ratio: 1.3; object-fit: cover; border-radius: 22px; }
.team-grid { display: grid; grid-template-columns: repeat(5, 1fr); gap: 1.5rem; margin-top: 3rem; }
.team-person img { width: 100%; aspect-ratio: 1; object-fit: cover; border-radius: 16px; filter: grayscale(1); }
.team-person h3 { font-weight: 400; font-size: 1.15rem; margin-top: 1rem; }
.team-person p { color: var(--muted); font-size: .875rem; margin-top: .2rem; }
.investor-row { display: flex; flex-wrap: wrap; justify-content: center; align-items: center; gap: 2.5rem 4rem; margin-top: 2.5rem; }
.investor-row img { max-width: 160px; max-height: 38px; object-fit: contain; filter: grayscale(1); opacity: .65; }
.contact-options { display: grid; grid-template-columns: 1fr 1fr; gap: 1.5rem; }
.contact-option { padding: clamp(2rem, 4vw, 3.5rem); border: 1px solid var(--border); border-radius: 22px; }
.contact-option h2 { font-size: 2rem; font-weight: 400; line-height: 1.2; }
.contact-option p { color: var(--text-soft); margin: 1.2rem 0 2rem; }
.connect-page { max-width: 64rem; }
.connect-page .connect { max-width: none; }
.connect-page .connect-pane { overflow-x: auto; font-size: .95rem; }
.request-form { display: flex; align-items: center; gap: .5rem; border: 1px solid var(--border); border-radius: 999px; padding: .5rem .5rem .5rem 1.5rem; background: #fff; max-width: 48rem; margin: 2rem auto; }
.request-form input { min-width: 0; flex: 1; border: 0; outline: 0; font: inherit; background: transparent; }
.request-form:focus-within { outline: 2px solid #B5A0F4; outline-offset: 3px; }
.request-form button { border: 0; font: inherit; cursor: pointer; }
.submit-spinner { display: none; width: 18px; height: 18px; border: 2px solid #ffffff60; border-top-color: #fff; border-radius: 50%; animation: submit-spin .7s linear infinite; }
form[aria-busy="true"] button[type="submit"] > svg { display: none; }
form[aria-busy="true"] .submit-spinner { display: inline-block; }
.prose-page { max-width: 62rem; margin-inline: auto; padding: 13rem clamp(1.25rem, 5vw, 3rem) 0; }
.prose-page h1 { font-size: clamp(2.5rem, 4vw, 4rem); font-weight: 400; line-height: 1.15; letter-spacing: -.04em; }
.prose-page .legal-updated { margin: 1rem 0 3rem; color: var(--muted); font-size: .875rem; }
.prose { color: var(--text-soft); font-size: 1.0625rem; line-height: 1.8; }
.prose h2 { color: var(--text); font-size: 1.75rem; font-weight: 400; line-height: 1.3; margin: 2.5rem 0 1rem; }
.prose h3 { color: var(--text); font-size: 1.25rem; font-weight: 400; margin: 2rem 0 .75rem; }
.prose p, .prose ul, .prose ol { margin-bottom: 1.25rem; }
.prose ul, .prose ol { padding-left: 1.5rem; }
.prose a, .legal-links a { color: var(--brand); text-decoration: underline; text-underline-offset: 3px; }
.legal-links { display: flex; flex-wrap: wrap; gap: 1.2rem; font-size: .875rem; margin-top: 3rem; }
.prose details { border-bottom: 1px solid var(--border); padding: 1.3rem 0; }
.prose summary { cursor: pointer; color: var(--text); }
.prose details[open] summary { margin-bottom: 1rem; }
.v4-input { width: 100%; padding: .8rem 1rem; border: 1px solid var(--border); border-radius: 10px; background: white; font: inherit; }
.pill-btn { display: inline-flex; border: 0; border-radius: 999px; padding: .8rem 1.4rem; background: var(--brand); color: white; font: inherit; cursor: pointer; }
.hidden { display: none; }
@media (max-width: 1280px) {
  .nav { grid-template-columns: 1fr auto auto; gap: 0 1rem; }
  .nav-toggle { display: block; grid-column: 2; grid-row: 2; border: 1px solid var(--border); border-radius: 999px; padding: .5rem 1rem; font: inherit; font-size: .85rem; color: var(--text-soft); background: #fff; }
  .nav-right { grid-column: 3; grid-row: 2; }
  .nav-links { display: none; grid-column: 1 / -1; grid-row: 3; padding-block: 1rem .3rem; }
  .nav[data-menu-open] .nav-links { display: flex; flex-wrap: wrap; justify-content: center; gap: 1.2rem 1.5rem; }

  .page-intro-split { grid-template-columns: 1fr; gap: 3rem; }
  .page-intro-split .intro-copy { max-width: 50rem; }
  .page-intro-split .dataset-preview { width: 100%; }
  .final-cta { flex-direction: column; align-items: flex-start; }
  .team-grid { grid-template-columns: repeat(3, 1fr); }
}
@media (max-width: 900px) {
  .page-intro, .prose-page { padding-top: 12rem; }
  .benefit-grid, .process-list { grid-template-columns: 1fr; gap: 2rem; }
  .related-products, .story-grid, .enterprise-band { grid-template-columns: 1fr; gap: 2rem; }
  .solution-list { grid-template-columns: 1fr; }
  .plan-grid { grid-template-columns: 1fr; }
}
@media (max-width: 650px) {
  .nav { gap: 0 .5rem; }
  .nav-logo img { height: 29px; }
  .nav-login { display: none; }
  .nav-start { padding: .6em .8em; font-size: .75rem; }
  .nav-toggle { font-size: .75rem; padding: .5rem .75rem; }
  .page-intro h1 { font-size: clamp(2.5rem, 9vw, 3.5rem); }
  .page-context { margin-bottom: 1rem; }
  .pipeline-toolbar { flex-direction: column; align-items: flex-start; gap: 1.3rem; }
  .pipeline-toolbar p { font-size: 1rem; }
  .contact-options { grid-template-columns: 1fr; }
  .team-grid { grid-template-columns: repeat(2, 1fr); gap: 1rem; }
  .request-form { border-radius: 16px; flex-direction: column; padding: 1rem; align-items: stretch; }
  .request-form input { padding: .5rem 0; }
  .request-form button { align-self: flex-end; }
  .dataset-preview td, .dataset-preview th { padding: .9rem; }
  footer .f-links { flex-wrap: wrap; gap: .8rem 1.2rem; margin: 0; }
}
@media (prefers-reduced-motion: reduce) {
  .pipeline-edge, .submit-spinner { animation: none; }
  .solution-link > .icon:last-child { transition: none; }
}

/* Original Cloudflare Agent-Ready badge. */
.agent-badge {
  display: inline-flex; align-items: stretch; text-decoration: none;
  margin-top: 0; border-radius: 6px; overflow: hidden; line-height: 1;
  font-size: 0.6875rem; font-weight: 700; letter-spacing: 0.05em;
  border: 1px solid rgba(23, 21, 31, 0.1);
  box-shadow: 0 1px 2px rgba(23, 21, 31, 0.1);
}
.agent-badge .ab-l, .agent-badge .ab-r { display: inline-flex; align-items: center; padding: 0.5em 0.65em; }
.agent-badge .ab-l { gap: 0.4em; background: #17151f; color: #fff; text-transform: uppercase; }
.agent-badge .ab-l svg { width: 14px; height: 14px; color: #f6821f; } /* Cloudflare orange cloud */
.agent-badge .ab-r { background: #f6821f; color: #17151f; } /* Cloudflare orange; dark text for AA contrast */
.agent-badge:hover .ab-r { background: #fbad41; }
.agent-badge:hover .ab-l svg { color: #fbad41; }

/* Three links either side of the centered trust badge. */
body > footer { display:grid; grid-template-columns:1fr auto 1fr; }
footer .f-links { display:grid; grid-template-columns:1fr auto 1fr; align-items:center; gap:1.75rem; margin:0; }
footer .f-link-group { display:flex; align-items:center; gap:1.75rem; }
footer .f-link-group:first-child { justify-content:flex-end; }
footer > .f-brand { justify-self:end; }
@media (max-width:1200px) {
  footer .f-links { grid-column:1 / -1; grid-row:1; justify-self:center; }
  footer > span { grid-column:1 / 3; grid-row:2; }
  footer > .f-brand { grid-column:3; grid-row:2; }
}
@media (max-width:650px) {
  footer .f-links { gap:.75rem; font-size:.6875rem; }
  footer .f-link-group { flex-direction:column; gap:.6rem; }
  footer .agent-badge { font-size:.5625rem; }
}

.legal-directory { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:1.5rem; max-width:1200px; margin:auto; }
.legal-directory > a { border:1px solid var(--border); border-radius:20px; padding:2rem; color:var(--text); }
.legal-directory h2 { font-size:1.65rem; margin-bottom:.8rem; }
.legal-directory p, .blog-meta, .blog-description { color:var(--muted); }
.legal-directory span { display:block; color:var(--brand); margin-top:1.25rem; }
.legal-directory > a:hover { background:#faf8fe; }
.blog-empty { max-width:760px; margin:auto; text-align:center; padding:3rem 1rem; background:#faf8fe; border-radius:20px; }
.blog-empty h2 { margin-bottom:1rem; }
.blog-feed { text-align:center; margin-top:2rem; }
.blog-post header { margin:2rem 0 3rem; }
.blog-meta { margin-bottom:1rem; font-size:.9rem; }
.blog-description { margin-top:1.5rem; font-size:1.2rem; }
@media(max-width:650px) { .legal-directory { grid-template-columns:1fr; } }

/* Preserve the customer wizard's original controls within the shared theme. */
.setup-section .v4-input { width:100%; border:1px solid var(--border); border-radius:12px; padding:.85rem 1rem; font:inherit; background:white; }
.setup-section .pill-btn { display:inline-flex; align-items:center; justify-content:center; gap:.4rem; border:1px solid var(--border); border-radius:999px; padding:.7rem 1.1rem; font:inherit; cursor:pointer; white-space:nowrap; }
.setup-section .pill-brand { background:var(--brand); color:white; border-color:var(--brand); }
.setup-section .pill-ghost { background:white; color:var(--text); }
.setup-section .text-link { color:var(--brand); cursor:pointer; }

.docs-layout { display:grid; grid-template-columns:240px minmax(0,800px); gap:4rem; max-width:1200px; margin:auto; padding:13rem 1.5rem 0; }
.docs-nav { display:flex; flex-direction:column; gap:.4rem; align-self:start; position:sticky; top:150px; font-size:.95rem; }
.docs-nav a { padding:.75rem; border-radius:10px; color:var(--muted); }
.docs-nav a[aria-current], .docs-nav a:hover { background:#f4effc; color:var(--brand); }
.docs-nav .docs-home { color:var(--text); margin-bottom:.5rem; }
.docs-article { min-width:0; }
.docs-article h1 { font-size:clamp(2.6rem,4vw,4rem); line-height:1.12; letter-spacing:-.04em; font-weight:400; }
.docs-description { font-size:1.2rem; color:var(--muted); margin:1.5rem 0 3rem; }
.docs-next { display:flex; justify-content:space-between; align-items:center; gap:1rem; border-top:1px solid var(--border); padding-top:2rem; margin-top:3rem; }
.docs-article .prose table { display:block; max-width:100%; overflow-x:auto; border-collapse:collapse; font-size:.9rem; }
.docs-article .prose td, .docs-article .prose th { padding:.8rem; border:1px solid var(--border); min-width:130px; text-align:left; }
@media(max-width:850px) { .docs-layout { grid-template-columns:1fr; gap:2rem; padding-top:12rem; } .docs-nav { position:static; display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); font-size:.85rem; } .docs-nav .docs-home { grid-column:1/-1; } }

/* Comparisons share the site's native pipeline, with readable evidence alongside it. */
.comparison-back { display:inline-block; color:var(--brand); margin-bottom:1.5rem; }
.comparison-intro h1 { max-width:24ch; }
.comparison-angle { font-size:clamp(1.5rem,2.2vw,2rem); margin:1.5rem auto 0; max-width:40ch; line-height:1.3; }
.comparison-intro .intro-summary { max-width:65ch; }
.comparison-reviewed { font-size:.8rem; color:var(--muted); margin-top:1.5rem; }
.comparison-choice { display:grid; grid-template-columns:1fr 1fr; gap:3rem 5rem; }
.comparison-choice h2,.comparison-proof h2,.comparison-pipeline h2,.comparison-agent h2,.comparison-related h2 { font-size:clamp(1.8rem,2.8vw,2.8rem); line-height:1.2; font-weight:400; letter-spacing:-.035em; }
.comparison-choice p,.comparison-proof-copy p,.comparison-pipeline-heading p,.comparison-agent p { color:var(--text-soft); font-size:1.125rem; line-height:1.7; margin:1.2rem 0; max-width:70ch; }
.comparison-choice a,.comparison-proof-copy a,.comparison-agent a,.comparison-related a { color:var(--brand); }
.comparison-nuance { grid-column:1/-1; border-top:1px solid var(--border); padding-top:2.5rem; }
.comparison-nuance h2 { font-size:1.5rem; }
.comparison-nuance p { max-width:85ch; }
.comparison-nuance .comparison-citations { font-size:.85rem; }
.comparison-proof,.comparison-agent { display:grid; grid-template-columns:.85fr 1.15fr; align-items:center; gap:clamp(2rem,5vw,6rem); }
.comparison-run-history { border:1px solid var(--border); border-radius:20px; background:#FCFBFE; overflow:hidden; min-width:0; }
.comparison-run-history figcaption { display:flex; align-items:center; justify-content:space-between; padding:1.5rem 2rem; border-bottom:1px solid var(--border); gap:1rem; }
.comparison-run-history figcaption > span:first-child { display:flex; align-items:center; gap:.6rem; font-family:var(--mono); font-size:.9rem; }
.revision-tag { display:inline-block; color:var(--brand); background:#EEE8FB; font: .85rem var(--mono); border-radius:5px; padding:.4rem .6rem; white-space:nowrap; }
.repair-timeline { list-style:none; margin:0; padding:1.5rem 2rem 0; }
.repair-timeline li { position:relative; margin-left:.35rem; padding:0 0 1.8rem 1.8rem; border-left:2px solid #DCD2F1; }
.repair-timeline li:last-child { border-color:transparent; }
.run-dot { position:absolute; left:-7px; top:5px; width:12px; height:12px; border-radius:50%; background:#5A8C6B; box-shadow:0 0 0 5px #FCFBFE; }
.repaired .run-dot { background:var(--brand); }
.run-top { display:flex; flex-wrap:wrap; justify-content:space-between; gap:.5rem; font-size:.8rem; color:var(--muted); }
.run-top > span { font-family:var(--mono); color:var(--brand); }
.repair-timeline h3 { font-weight:400; font-size:1.3rem; margin:.65rem 0 .3rem; }
.repaired h3 { color:var(--brand); }
.repair-timeline h3 .icon { width:18px; }
.repair-timeline p { color:var(--text-soft); font-size:.95rem; line-height:1.6; }
.comparison-example-note { padding:0 2rem 1.5rem; font-size:.75rem; line-height:1.5; color:var(--muted); }
.comparison-pipeline-heading { display:flex; justify-content:space-between; align-items:center; gap:1rem; }
.comparison-pipeline .native-pipeline { margin-top:2rem; }
.comparison-price-grid { display:grid; grid-template-columns:1fr 1fr; border:1px solid var(--border); border-radius:20px; overflow:hidden; }
.comparison-price-grid > div { padding:clamp(1.5rem,4vw,3rem); }
.comparison-jsonify-price { background:#1C172B; color:white; }
.comparison-price-grid h3 { font-weight:400; font-size:1.5rem; }
.comparison-price-grid .comparison-price { font-size:clamp(2.5rem,4vw,3.5rem); color:inherit; letter-spacing:-.04em; line-height:1.15; margin:1.5rem 0; }
.comparison-price span { display:block; font-size:1rem; letter-spacing:0; color:var(--muted); margin-top:.7rem; }
.comparison-price-grid p { color:var(--text-soft); line-height:1.65; margin:1rem 0; }
.comparison-price-grid a { display:inline-block; color:var(--brand); margin-top:1rem; }
.comparison-jsonify-price p,.comparison-jsonify-price .comparison-price span { color:#CDC7D8; }
.comparison-jsonify-price a { color:#CFBEFF; }
.comparison-price-note { color:var(--muted); font-size:.8rem; line-height:1.6; max-width:100ch; margin:1.3rem auto 0; text-align:center; }
.comparison-related-links { display:flex; flex-wrap:wrap; gap:1rem 2rem; margin:1.5rem 0; }
.comparison-directory-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:1rem; }
.comparison-directory-grid > a { display:flex; flex-direction:column; gap:1rem; border:1px solid var(--border); border-radius:16px; padding:2rem; transition:border-color .2s,background .2s; }
.comparison-directory-grid > a:hover { background:#FAF7FF; border-color:#BDA6F4; }
.comparison-directory-grid h3 { font-weight:400; font-size:1.6rem; }
.comparison-directory-grid p { color:var(--text-soft); line-height:1.6; }
.comparison-directory-grid span { margin-top:auto; color:var(--brand); }
.comparison-index-nav { display:flex; justify-content:center; flex-wrap:wrap; gap:1rem 2rem; margin:2rem auto 0; color:var(--brand); }
.comparison-directory { scroll-margin-top:8rem; }
.comparison-conversation { border:1px solid var(--border); border-radius:20px; padding:2rem; }
.comparison-conversation figcaption { font-size:.8rem; color:var(--muted); }
.comparison-conversation .agent-request { background:#F1ECFA; padding:1rem 1.5rem; border-radius:15px 15px 0 15px; font-size:1rem; }
.agent-result { display:flex; gap:1rem; align-items:flex-start; padding:1rem 0; }
.agent-result > .icon { color:var(--brand); }
.agent-result span { font-family:var(--mono); }
.agent-result p { font-size:.95rem; }
@media(max-width:800px) {
 .comparison-choice,.comparison-proof,.comparison-agent,.comparison-price-grid { grid-template-columns:1fr; }
 .comparison-choice { gap:2.5rem; }
 .comparison-pipeline-heading { align-items:flex-start; flex-direction:column; }
 .comparison-directory-grid { grid-template-columns:1fr; }
 .comparison-run-history figcaption { padding:1.3rem; }
 .repair-timeline { padding:1.3rem 1.3rem 0; }
 .comparison-example-note { padding:0 1.3rem 1.3rem; }
}
.comparison-proof [id],.comparison-pipeline [id],.comparison-pricing [id] { scroll-margin-top:8rem; }

/* Pipeline actions sit beside the brief, with two clear ways to continue. */
.pipeline-action-card { flex:0 0 20rem; width:20rem; padding:1.4rem; background:#fff; border:1px solid #E4DDED; border-radius:16px; }
.pipeline-toolbar .pipeline-action-card .pipeline-action-description,.pipeline-workspace .pipeline-action-card .pipeline-action-description { margin:0 0 1.2rem; font-size:1rem; line-height:1.55; color:var(--text-soft); }
.pipeline-action-links { display:flex; align-items:center; flex-wrap:wrap; gap:1rem; }
.pipeline-action-links .pill { padding:.75em 1em; font-size:.9rem; }
.pipeline-learn { display:inline-flex; align-items:center; gap:.4rem; color:var(--brand); font-size:.9rem; white-space:nowrap; }
.pipeline-learn .icon { width:16px; height:16px; }
.pipeline-toolbar > .pipeline-toolbar-brief { min-width:0; }
.home-comparisons { max-width:94rem; margin-inline:auto; }
.home-comparison-groups { max-width:76rem; margin-inline:auto; }
.home-comparison-group + .home-comparison-group { margin-top:2rem; }
.home-comparison-group h3 { margin-bottom:.8rem; font-size:.875rem; font-weight:400; color:var(--muted); }
.home-comparison-links { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:.75rem; }
.home-comparison-links a { display:flex; align-items:center; gap:.75rem; padding:1rem; border:1px solid var(--border); border-radius:12px; background:white; min-width:0; transition:background .2s,border-color .2s; }
.home-comparison-links a:hover { background:#FAF7FF; border-color:#BDA6F4; }
.home-comparison-links img { width:32px; height:32px; object-fit:contain; flex:none; }
.home-comparison-links span { font-size:1rem; line-height:1.3; }
.home-comparison-links .icon { width:16px; height:16px; margin-left:auto; color:var(--brand); }
.home-comparison-all { text-align:center; margin-top:2rem; color:var(--brand); }
@media(max-width:1000px) { .home-comparison-links { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media(max-width:800px) {
 .pipeline-action-card { flex:none; width:100%; max-width:28rem; }
 .pipeline-workspace .menu-pipeline-head { flex-direction:column; align-items:stretch; }
 .pipeline-toolbar { flex-direction:column; align-items:stretch; }
}
@media(max-width:480px) {
 .home-comparison-links a { padding:.9rem .75rem; gap:.6rem; }
 .home-comparison-links img { width:26px; height:26px; }
 .home-comparison-links span { font-size:.9rem; }
 .home-comparison-links .icon { display:none; }
}
.home-comparisons { scroll-margin-top:7rem; }
/* The brand pairing is the visible comparison title. */
.comparison-navigation { display:flex; align-items:center; justify-content:center; gap:.75rem; margin-bottom:3rem; font-size:.95rem; color:var(--brand); }
.comparison-navigation > span { color:var(--muted); }
.comparison-brand-pair { display:flex; align-items:center; justify-content:center; gap:2rem; margin:0 auto 2.5rem; max-width:100%; }
.comparison-own-logo { width:264px; height:80px; object-fit:contain; }
.comparison-versus { color:var(--muted); font-size:1.25rem; flex:none; }
.comparison-competitor-brand { display:flex; align-items:center; gap:1.25rem; font-size:clamp(2rem,3.5vw,3rem); line-height:1.15; text-align:left; min-width:0; max-width:28rem; }
.comparison-competitor-brand img { width:80px; height:80px; object-fit:contain; flex:none; }
@media(max-width:600px) {
 .comparison-navigation { gap:.4rem; font-size:.75rem; margin-bottom:2.5rem; }
 .comparison-navigation a { min-width:0; }
 .comparison-brand-pair { gap:.75rem; }
 .comparison-own-logo { width:120px; height:40px; }
 .comparison-versus { font-size:.85rem; }
 .comparison-competitor-brand { gap:.5rem; font-size:1.15rem; max-width:11rem; }
 .comparison-competitor-brand img { width:36px; height:36px; }
}

/* One editorial beat per heading; retain natural wrapping on small screens. */
h1 .heading-accent { color:#fff; background:var(--brand); padding:.015em .09em .04em; border-radius:.07em; -webkit-box-decoration-break:clone; box-decoration-break:clone; }
h2 .heading-accent,h3 .heading-accent { color:var(--brand); }
.plan-dark h2 .heading-accent,.enterprise-band h2 .heading-accent,.final-cta h2 .heading-accent,.learn-band h2 .heading-accent { color:#B9A6FF; }

@media(min-width:1000px) {
 .page-intro h1.headline-postcode { font-size:clamp(3rem,4.3vw,4.5rem); }
}

h1 .heading-keep { white-space:nowrap; }
@media(max-width:480px) {
 .docs-article h1 { font-size:2.25rem; }
 .blog-post h1 { font-size:2rem; }
}

.comparison-heading-ellipsis { color:var(--text); }

.solution-insights .section-head p { max-width:52rem; margin-inline:auto; }
.insights-dashboard { margin:0; border:1px solid #DDD6EC; border-radius:18px; background:#fff; overflow:hidden; }
.insights-topbar { padding:1.4rem 1.8rem; display:flex; align-items:center; justify-content:space-between; gap:1rem; border-bottom:1px solid var(--border); }
.insights-brand { display:flex; align-items:center; gap:.7rem; font-size:1.1rem; }
.insights-brand img { object-fit:contain; }
.insights-sync { display:flex; align-items:center; gap:.5rem; color:#66736B; font-size:.8rem; white-space:nowrap; }
.insights-sync i { width:6px; height:6px; background:#599876; border-radius:50%; }
.insights-toolbar { display:flex; align-items:center; gap:1rem; padding:0 1.8rem; background:#FCFAFF; border-bottom:1px solid var(--border); font-size:.85rem; }
.insights-view { color:var(--brand); padding:1rem 0; border-bottom:2px solid var(--brand); margin-bottom:-1px; }
.insights-period { margin-left:auto; color:var(--muted); }
.insights-replay { display:flex; align-items:center; gap:.35rem; border:0; padding:.5rem; background:transparent; font:inherit; color:var(--brand); cursor:pointer; }
.insights-replay .icon { width:14px; height:14px; }
.insights-metrics { display:grid; grid-template-columns:repeat(3,1fr); padding:1.8rem; border-bottom:1px solid var(--border); }
.insights-metrics > div { padding:0 1.6rem; border-left:1px solid var(--border); }
.insights-metrics > div:first-child { padding-left:0; border-left:0; }
.insights-metrics span { display:block; color:var(--muted); font-size:.85rem; margin-bottom:.55rem; }
.insights-metrics strong { font-weight:400; font-size:clamp(1.65rem,3vw,2.7rem); letter-spacing:-.04em; }
.insights-charts { display:grid; grid-template-columns:1.5fr 1fr; }
.insights-trend,.insights-ranking { min-width:0; padding:1.8rem; }
.insights-ranking { border-left:1px solid var(--border); }
.insights-dashboard h3 { font-size:1rem; font-weight:400; margin:0 0 1.3rem; letter-spacing:0; }
.insights-trend svg { display:block; width:100%; overflow:visible; }
.insights-grid path { fill:none; stroke:#ECE8F2; stroke-dasharray:3 4; }
.insights-axis { fill:#8C8399; font-size:11px; }
.insights-area { fill:#653DE90C; }
.insights-line { fill:none; stroke:var(--brand); stroke-width:3; stroke-linejoin:round; stroke-linecap:round; }
.insights-bar-row + .insights-bar-row { margin-top:1.4rem; }
.insights-bar-row > div:first-child { display:flex; justify-content:space-between; gap:.5rem; font-size:.85rem; margin-bottom:.5rem; color:var(--text-soft); }
.insights-bar-track { height:8px; border-radius:3px; overflow:hidden; background:#F0EBFA; }
.insights-bar-track > span { display:block; width:var(--bar-width); height:100%; background:#9474EB; border-radius:3px; transform-origin:left; }
.insights-bottom { display:grid; grid-template-columns:1.5fr 1fr; border-top:1px solid var(--border); }
.insights-table-wrap { padding:1.8rem; min-width:0; }
.insights-table-wrap table { width:100%; border-collapse:collapse; text-align:left; font-size:.8rem; }
.insights-table-wrap th { font-weight:400; color:var(--muted); padding:0 .7rem .75rem 0; }
.insights-table-wrap td { padding:.9rem .7rem .9rem 0; border-top:1px solid var(--border); }
.insights-note { margin:1.8rem; padding:1.25rem; background:#F8F5FE; border-left:2px solid #B5A0EB; align-self:start; }
.insights-note > span { display:flex; align-items:center; gap:.5rem; color:var(--brand); font-size:.85rem; }
.insights-note .icon { width:18px; height:18px; }
.insights-note p { font-size:.95rem; line-height:1.6; margin:.8rem 0; }
.insights-note small { font-size:.7rem; color:var(--muted); }
.insights-dashboard figcaption { padding:1rem 1.8rem; border-top:1px solid var(--border); color:var(--muted); font-size:.7rem; }
@keyframes insight-line { from {stroke-dashoffset:1;} to {stroke-dashoffset:0;} }
@keyframes insight-bar { from {transform:scaleX(0);} to {transform:scaleX(1);} }
@keyframes insight-row { from {opacity:.25;transform:translateY(5px);} to {opacity:1;transform:translateY(0);} }
@media(prefers-reduced-motion:no-preference) {
 .insights-visible .insights-line { stroke-dasharray:1; animation:insight-line 1.6s ease both; }
 .insights-visible .insights-bar-track > span { animation:insight-bar 1s ease both; animation-delay:var(--bar-delay); }
 .insights-visible tbody tr { animation:insight-row .55s ease both; animation-delay:var(--row-delay); }
}
@media(max-width:700px) {
 .insights-topbar,.insights-toolbar { padding-inline:1rem; }
 .insights-topbar { align-items:flex-start; flex-direction:column; gap:.65rem; }
 .insights-metrics { padding:1.2rem 1rem; gap:.75rem; }
 .insights-metrics > div { padding:0 0 0 .75rem; }
 .insights-metrics span { font-size:.72rem; min-height:2.4em; }
 .insights-metrics strong { font-size:1.6rem; }
 .insights-charts,.insights-bottom { grid-template-columns:1fr; }
 .insights-trend,.insights-ranking,.insights-table-wrap { padding:1.25rem 1rem; }
 .insights-ranking { border-left:0; border-top:1px solid var(--border); }
 .insights-note { margin:0 1rem 1.25rem; }
 .insights-dashboard figcaption { padding:1rem; }
}

.solution-insights .section-head { margin-bottom:3rem; }
#insights-heading { scroll-margin-top:8rem; }

/* Browser chrome frames the product preview without adding inert controls. */
.insights-browser { background:#F0EDF5; border-bottom:1px solid #DDD8E6; }
.insights-browser-tabs { height:43px; display:flex; align-items:flex-end; gap:16px; padding:0 16px; }
.insights-window-controls { display:flex; align-self:center; gap:6px; padding-right:5px; }
.insights-window-controls i { width:9px; height:9px; border-radius:50%; background:#ED6A5E; }
.insights-window-controls i:nth-child(2) { background:#F4BF50; }
.insights-window-controls i:nth-child(3) { background:#61C554; }
.insights-browser-tab { display:flex; align-items:center; gap:8px; height:33px; width:245px; padding:0 12px; border-radius:9px 9px 0 0; background:#FAF9FC; font-size:11px; color:#5E5769; }
.insights-browser-tab img { flex:none; }
.insights-browser-tab > span { margin-left:auto; color:#8F8899; }
.insights-new-tab { align-self:center; font-size:17px; color:#8F8899; }
.insights-browser-toolbar { display:flex; align-items:center; gap:15px; height:47px; padding:0 16px; background:#FAF9FC; }
.insights-browser-nav { display:flex; gap:13px; color:#797181; font-size:16px; white-space:nowrap; }
.insights-browser-nav > span { color:#BAB4C4; }
.insights-address { display:flex; align-items:center; gap:9px; flex:1; min-width:0; height:30px; padding:0 12px; background:#EEEAF3; border-radius:20px; color:#655D70; font-size:12px; }
.insights-address svg { width:16px; height:16px; fill:#EEEAF3; stroke:#81788D; stroke-width:1.3; flex:none; }
.insights-browser-menu { color:#797181; font-size:20px; }
@media(max-width:700px) {
 .insights-browser-tabs { gap:10px; padding-inline:12px; }
 .insights-window-controls { gap:4px; padding-right:0; }
 .insights-window-controls i { width:7px; height:7px; }
 .insights-browser-tab { width:auto; flex:1; min-width:0; font-size:10px; }
 .insights-new-tab { display:none; }
 .insights-browser-toolbar { padding-inline:12px; gap:10px; }
 .insights-browser-nav { gap:8px; font-size:14px; }
 .insights-browser-nav > span { display:none; }
}

/* A compact market moment in each solution hero. */
.solution-scene { position:relative; min-width:0; margin:0; padding:1.4rem; border-radius:24px; background:#FAF8FE; color:var(--text); }
.scene-question { color:#82748F; font-size:.85rem; margin-bottom:1.6rem; }
.scene-subject { position:relative; display:flex; align-items:center; gap:1rem; background:white; border:1px solid #E4DBF2; border-radius:13px; padding:1.25rem; min-height:105px; }
.scene-subject-icon { display:grid; place-items:center; width:42px; height:42px; background:#F1EBFC; border-radius:10px; color:var(--brand); flex:none; }
.scene-subject-icon .icon { width:23px; height:23px; }
.scene-subject strong { display:block; font-size:1.2rem; font-weight:400; }
.scene-subject div > span { display:block; color:var(--muted); font-size:.8rem; margin-top:.5rem; }
.scene-product-art { width:70px; height:90px; flex:none; margin-left:auto; }
.scene-product-art svg { width:100%; height:100%; }
.scene-offers { position:relative; display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:.7rem; margin-top:1.2rem; }
.scene-offer { position:relative; padding:1.1rem .9rem; border:1px solid #E4DBF2; border-radius:12px; background:white; }
.scene-offer-name { display:block; font-size:.8rem; color:var(--text-soft); }
.scene-offer strong { display:block; font-size:clamp(1.4rem,2.4vw,2rem); font-weight:400; letter-spacing:-.03em; margin:.7rem 0 .5rem; }
.scene-offer small { display:block; color:var(--muted); font-size:.72rem; line-height:1.4; }
.scene-winner { border-color:#B69AEF; background:#F5EFFF; }
.scene-match { position:absolute; right:-5px; top:-7px; display:grid; place-items:center; width:21px; height:21px; border-radius:50%; color:white; background:#865DD4; border:2px solid white; }
.scene-match .icon { width:12px; height:12px; }
.scene-result { display:flex; align-items:center; gap:.8rem; margin-top:1.35rem; padding:1rem; color:#69489F; font-size:.9rem; line-height:1.5; background:#EEE6FA; border-radius:10px; }
.scene-result .icon { width:21px; height:21px; flex:none; }
.solution-scene figcaption { font-size:.65rem; color:#A097AC; margin-top:1rem; text-align:right; }
.scene-branches { height:38px; margin:0 1rem -1.2rem; }
.scene-branches svg { width:100%; height:100%; }
.scene-branches path { stroke:#CABBDF; stroke-width:1.5; fill:none; }
.scene-map { height:215px; border:1px solid #EBE3F4; border-radius:14px; overflow:hidden; position:relative; margin-bottom:-55px; background:#F0EBF6; }
.scene-map > svg { position:absolute; width:100%; height:100%; }
.scene-water { fill:none; stroke:#DAD0EE; stroke-width:65px; }
.scene-road { fill:none; stroke:#FFF; stroke-width:13px; }
.scene-map-label { position:absolute; top:25px; left:23px; color:#A090B5; font-size:.75rem; }
.scene-pin { position:absolute; display:grid; place-items:center; width:30px; height:30px; border:3px solid white; border-radius:50% 50% 50% 0; transform:rotate(-45deg); background:#9570DB; color:white; }
.scene-pin .icon { width:14px; height:14px; transform:rotate(45deg); }
.pin-one { left:30%; top:42%; }.pin-two { left:65%; top:25%; }.pin-three { left:76%; top:56%; }
.scene-map ~ .scene-subject { margin-inline:1rem; }
.scene-menu .scene-offers { display:block; background:white; border:1px solid #E4DBF2; border-radius:12px; padding:.3rem 1rem; margin-inline:1rem; }
.scene-menu .scene-offer { display:grid; grid-template-columns:1fr auto; gap:.3rem 1rem; border:0; border-radius:0; padding:.8rem 0; background:transparent; }
.scene-menu .scene-offer + .scene-offer { border-top:1px solid #EDE7F4; }
.scene-menu .scene-offer strong { margin:0; font-size:1rem; }.scene-menu .scene-match { display:none; }
.scene-menu .scene-winner .scene-offer-name,.scene-menu .scene-winner small { color:var(--brand); }
@keyframes scene-arrive { from { opacity:0; transform:translateY(10px); } to { opacity:1; transform:translateY(0); } }
@keyframes scene-confirm { from { opacity:0; } to { opacity:1; } }
@media(prefers-reduced-motion:no-preference) {
 .scene-visible .scene-offer { animation:scene-arrive .6s both; animation-delay:var(--scene-delay); }
 .scene-visible .scene-result,.scene-visible .scene-match { animation:scene-confirm .65s .9s both; }
 .scene-visible .scene-pin { animation:scene-confirm .7s .5s both; }
}
.solution-dataset-section .section-head { margin-bottom:2.5rem; }
.solution-dataset-section td { white-space:nowrap; }
@media(max-width:600px) {
 .solution-scene { padding:1rem; }
 .scene-subject { padding:1rem; gap:.65rem; }
 .scene-subject strong { font-size:1rem; }
 .scene-subject div > span { font-size:.72rem; }
 .scene-subject-icon { width:32px; height:32px; }
 .scene-product-art { width:45px; height:65px; }
 .scene-offers { gap:.4rem; }
 .scene-offer { padding:.9rem .55rem; }
 .scene-offer-name { font-size:.72rem; }
 .scene-offer strong { font-size:1.35rem; }
 .scene-offer small { font-size:.65rem; }
 .scene-question { font-size:.8rem; }
 .scene-result { font-size:.8rem; }
}

.scene-price-before { display:none; }
@keyframes scene-price-old { 0%,65% { opacity:1; } 100% {opacity:0;} }
@keyframes scene-price-new { 0%,65% { opacity:0; transform:translateY(5px); } 100% {opacity:1;transform:translateY(0);} }
@media(prefers-reduced-motion:no-preference) {
 .scene-visible .scene-offer strong { position:relative; }
 .scene-visible .scene-price-before { display:block; position:absolute; inset:0; animation:scene-price-old 1.5s both; }
 .scene-visible .scene-price-after { display:block; animation:scene-price-new 1.5s both; }
 .scene-visible .scene-result { animation-delay:1.4s; }
}

.nav-account { display:flex; align-items:center; gap:.65rem; padding:.35rem .55rem; border:1px solid var(--border); border-radius:12px; background:#fff; max-width:230px; min-width:0; }
.nav-account[hidden],.nav-login[hidden],.nav-account [hidden] { display:none; }
.nav-account:hover { border-color:#C4B0EB; background:#FCFAFF; }
.nav-account-icon { width:32px; height:32px; border-radius:8px; flex:none; display:grid; place-items:center; background:#F1EBFC; color:var(--brand); overflow:hidden; }
.nav-account-fallback { display:grid; place-items:center; }
.nav-account-icon .icon { width:18px; height:18px; }
.nav-workspace-icon { width:32px; height:32px; object-fit:cover; }
.nav-account-copy { display:flex; flex-direction:column; gap:.15rem; min-width:0; }
.nav-account-name,.nav-account-workspace { overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.nav-account-name { font-size:.85rem; color:var(--text); }
.nav-account-workspace { font-size:.7rem; color:var(--muted); }
.nav-account > .icon { width:14px; height:14px; flex:none; color:var(--brand); }
.nav[data-signed-in] .nav-start { display:none; }
@media(max-width:650px) {
 .nav-account { max-width:clamp(95px,34vw,150px); gap:.4rem; padding:.3rem; border-radius:9px; }
 .nav-account-icon,.nav-workspace-icon { width:24px; height:24px; }
 .nav-account-name { font-size:.75rem; }.nav-account-workspace { font-size:.65rem; }
 .nav-account > .icon { display:none; }
}

.enterprise-assurance { padding:clamp(2rem,4vw,3rem); background:#FAF8FE; border:1px solid #DDD3EF; border-radius:20px; }
.enterprise-assurance-icon { display:grid; place-items:center; width:56px; height:56px; background:#EDE5FA; border-radius:14px; color:var(--brand); margin-bottom:1.5rem; }
.enterprise-assurance-icon .icon { width:30px; height:30px; }
.enterprise-assurance h2 { font-size:clamp(2rem,3vw,3rem); font-weight:400; letter-spacing:-.035em; margin:0 0 .5rem; }
.enterprise-assurance p { color:var(--text-soft); font-size:1.125rem; }
.enterprise-assurance-detail { margin:1.5rem 0; padding-top:1.5rem; border-top:1px solid #E3DAEF; color:var(--text-soft); font-size:1rem; line-height:1.65; }
.enterprise-assurance > a { display:inline-flex; gap:.6rem; align-items:center; color:var(--brand); font-size:1rem; }
.enterprise-assurance > a .icon { width:17px; height:17px; }
.enterprise-assurance small { display:block; color:var(--muted); font-size:.8rem; line-height:1.5; margin-top:1rem; }
.enterprise-controls .section-head { margin-bottom:3rem; }
.enterprise-control-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:2.5rem 3rem; }
.enterprise-control-grid article { border-top:1px solid var(--border); padding-top:1.5rem; }
.enterprise-control-grid article > span { color:var(--brand); }
.enterprise-control-grid article > span .icon { width:24px; height:24px; }
.enterprise-control-grid h3 { font-size:1.2rem; font-weight:400; margin:1rem 0 .8rem; }
.enterprise-control-grid p { font-size:1rem; color:var(--text-soft); line-height:1.7; }
.enterprise-control-grid a { display:inline-block; font-size:.9rem; margin-top:1rem; color:var(--brand); }
.enterprise-review { display:grid; grid-template-columns:1fr 1.1fr; gap:5rem; }
.enterprise-review h2 { font-size:clamp(2rem,3.1vw,3rem); font-weight:400; line-height:1.18; letter-spacing:-.035em; }
.enterprise-review p { font-size:1.125rem; line-height:1.65; color:var(--text-soft); margin:1.5rem 0; }
.enterprise-review dl { margin:0; }
.enterprise-review dl > div { padding:1.3rem 0; border-bottom:1px solid var(--border); }
.enterprise-review dl > div:first-child { padding-top:0; }
.enterprise-review dt { font-size:1.125rem; margin-bottom:.5rem; }
.enterprise-review dd { margin:0; font-size:1rem; line-height:1.6; color:var(--text-soft); }
.enterprise-policy-links { text-align:center; }
.enterprise-policy-links h2 { font-weight:400; font-size:2rem; }
.enterprise-policy-links > div { display:flex; flex-wrap:wrap; gap:1.5rem; justify-content:center; margin-top:1.5rem; color:var(--brand); }
.compliance-summary { text-align:center; }
.compliance-summary .section-head { margin-bottom:1rem; }
.compliance-summary > p { color:var(--muted); font-size:1rem; }
.compliance-summary > p a { color:var(--brand); }
#security-review,#procurement { scroll-margin-top:8rem; }
@media(max-width:900px) { .enterprise-control-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:2rem; } .enterprise-review { grid-template-columns:1fr; gap:2rem; } }
@media(max-width:600px) { .enterprise-control-grid { grid-template-columns:1fr; } }

.enterprise-gdpr { display:inline-flex; align-items:center; gap:.45rem; color:#586C5C; background:#EDF3ED; border-radius:6px; padding:.4rem .65rem; margin-top:1rem; font-size:.85rem; }
.enterprise-gdpr .icon { width:15px; height:15px; }
.enterprise-control-grid p + p { margin-top:.8rem; }

.enterprise-regulatory { display:flex; flex-wrap:wrap; gap:.5rem; }

.dests .icon { width:1.9rem; height:1.9rem; color:var(--brand); }
@media(min-width:1440px) { .dests .icon { width:2.4rem; height:2.4rem; } }

/* Product tour: labelled spaces for forthcoming real Factory screenshots. */
.product-tour-index { display: flex; justify-content: center; flex-wrap: wrap; gap: .6rem 1.75rem; padding-block: 2.5rem; }
.product-tour-index a { color: var(--text-soft); font-size: .95rem; }
.product-tour-index a:hover { color: var(--brand); }
.product-tour-step { display: grid; grid-template-columns: .85fr 1.15fr; align-items: center; gap: clamp(2rem, 5vw, 5rem); scroll-margin-top: 9rem; }
.product-tour-copy h2, .product-tour-connect h2 { font-size: clamp(2rem, 3.1vw, 3rem); font-weight: 400; line-height: 1.18; letter-spacing: -.035em; }
.product-tour-copy > p:last-child, .product-tour-connect p { color: var(--text-soft); font-size: 1.125rem; line-height: 1.65; margin-top: 1.5rem; }
.product-tour-label { color: var(--brand); font-size: .9rem; margin-bottom: 1.25rem; }
.product-screenshot-placeholder { margin: 0; aspect-ratio: 4 / 3; display: grid; place-items: center; padding: 2rem; text-align: center; border: 1px dashed #CCBFF1; border-radius: 18px; background: #FAF8FE; }
.product-screenshot-placeholder .icon { width: 32px; height: 32px; display: block; margin: 0 auto 1.25rem; color: var(--brand); }
.product-screenshot-placeholder span { color: var(--text-soft); font-size: 1.125rem; }
.product-screenshot-placeholder p { color: var(--muted); font-size: .875rem; margin-top: .6rem; }
.product-modes { display: grid; grid-template-columns: 1fr 1fr; gap: 1.5rem; }
.product-modes article { border: 1px solid var(--border); border-radius: 20px; padding: clamp(1.5rem, 3vw, 3rem); }
.product-modes h3 { font-weight: 400; font-size: 2rem; line-height: 1.2; margin-bottom: 1.5rem; }
.product-modes article > p:not(.product-tour-label) { color: var(--text-soft); line-height: 1.65; }
.product-modes .product-mode-cost { border-top: 1px solid var(--border); margin-top: 1.5rem; padding-top: 1.5rem; font-size: .95rem; }
.product-modes .textlink { display: inline-block; margin-top: 1.5rem; }
.product-tour-connect { display: flex; align-items: center; justify-content: space-between; gap: 3rem; }
.product-tour-connect > div { max-width: 43rem; }
.product-tour-connect > a { flex: none; }
@media (max-width: 760px) {
  .product-tour-step, .product-modes { grid-template-columns: 1fr; }
  .product-tour-index { gap: 1rem 1.5rem; }
  .product-tour-connect { flex-direction: column; align-items: flex-start; }
}

.pricing-tiers { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.pricing-tiers .plan { display: flex; flex-direction: column; padding: clamp(1.5rem, 2.5vw, 2.5rem); }
.pricing-tiers .plan-price { font-size: clamp(2.5rem, 3.5vw, 3.5rem); }
.pricing-tiers .plan-quota { color: var(--text); font-size: 1.4rem; margin-bottom: .8rem; }
.pricing-tiers .plan-featured { border: 2px solid var(--brand); background: #FAF8FE; }
.plan-rates { margin-top: auto; padding-bottom: 1.75rem; }
.plan-rates > div { display: flex; justify-content: space-between; gap: 1rem; border-top: 1px solid var(--border); padding-top: .75rem; margin-top: .75rem; font-size: .85rem; }
.plan-rates dt { color: var(--muted); }
.plan-rates dd { text-align: right; margin: 0; }
.pricing-tiers .plan > .pill { align-self: flex-start; }
.pricing-tiers .plan-dark .plan-links { margin-top: auto; }
@media (max-width: 1000px) { .pricing-tiers { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 650px) { .pricing-tiers { grid-template-columns: 1fr; } }

/* Country geometry: Natural Earth 1:110m, public domain. */
.markets-map { width: 100%; max-width: 72rem; margin: 2.5rem auto 0; }
.markets-world { display: block; width: 100%; height: auto; overflow: visible; }
.world-country { fill: #302A40; stroke: #1C172A; stroke-width: .7; stroke-linejoin: round; }
.world-country.is-active { fill: #AE91FF; animation: market-country-pulse 4.5s ease-in-out infinite; animation-delay: var(--pulse-delay); }
.markets-map figcaption { text-align: center; color: #C5C0D0; font-size: clamp(.9375rem, 1.15vw, 1.125rem); margin: 2rem auto 0; }
@keyframes market-country-pulse { 0%, 100% { fill: #8F70DD; } 50% { fill: #D3C3FF; } }
@media (prefers-reduced-motion: reduce) { .world-country.is-active { animation: none; fill: #AE91FF; } }

.section.pricing-value-banner {
  padding-block: clamp(2.5rem, 4vw, 4rem);
}
.pricing-value-banner .section-head { max-width: 62rem; }
.pricing-value-banner .section-head p { max-width: 76ch; }

.plan-heading { display: flex; align-items: center; justify-content: space-between; gap: 1rem; }
.plan-popular { padding: .35rem .75rem; border-radius: 999px; background: var(--brand); color: #fff; font-size: .8125rem; line-height: 1.2; }

/* Industry accents give each use case its own place within the shared grid. */
.industry-grid { gap: 1.5rem; }
.industry-card { --industry-bg: #F7F4FC; --industry-tile: #EAE0FF; --industry-ink: #6942B5; border: 1px solid var(--industry-tile); border-radius: 22px; padding: clamp(1.5rem, 2.5vw, 2.5rem); background: #fff; align-items: start; }
.industry-peach { --industry-bg: #FFF8F2; --industry-tile: #FCE4CF; --industry-ink: #A75220; }
.industry-mint { --industry-bg: #F3FAF5; --industry-tile: #D8EDDF; --industry-ink: #31764D; }
.industry-sky { --industry-bg: #F3F8FE; --industry-tile: #DBE9FA; --industry-ink: #37689D; }
.industry-amber { --industry-bg: #FCF9EE; --industry-tile: #F1E7BE; --industry-ink: #8A6918; }
.industry-rose { --industry-bg: #FEF5F7; --industry-tile: #F4DEE5; --industry-ink: #A04769; }
.industry-teal { --industry-bg: #F0F9F9; --industry-tile: #D2EBE8; --industry-ink: #28746D; }
.industry-icon { display: grid; place-items: center; width: 54px; height: 54px; border-radius: 15px; background: var(--industry-tile); color: var(--industry-ink); }
.industry-icon .icon { width: 28px; height: 28px; }
.industry-copy { min-width: 0; }
.industry-card .industry-copy p { line-height: 1.65; }
.industry-topics { display: flex; flex-wrap: wrap; gap: .5rem; list-style: none; padding: 0; margin: 1.25rem 0 0; }
.industry-topics li { color: var(--industry-ink); background: var(--industry-tile); border-radius: 6px; padding: .25rem .6rem; font-size: .8125rem; }
.industry-card > .icon:last-child { color: var(--industry-ink); }
@media (max-width: 560px) {
  .industry-card { grid-template-columns: 1fr auto; gap: 1rem; }
  .industry-card .industry-copy { grid-column: 1 / -1; grid-row: 2; }
  .industry-card > .icon:last-child { grid-column: 2; grid-row: 1; }
}
.industry-more { --industry-bg: #F7F6FA; --industry-tile: #E8E2F5; --industry-ink: #6942B5; }
.industry-contact { display: inline-block; margin-top: 1.25rem; color: var(--brand); font-size: .9375rem; }

.hero-usecase-icon { color: var(--industry-ink, #6942B5); background: #F5F4F7; }

.site-main > .section.compliance-summary {
  padding: clamp(2rem, 4vw, 4rem) clamp(1.25rem, 4vw, 3.5rem);
  background: #F7F5FC;
  border: 1px solid #E9E3F3;
  display: grid;
  grid-template-columns: 1fr 1fr;
  align-items: center;
  gap: clamp(2rem, 4vw, 4rem);
  text-align: left;
}
.compliance-summary .section-head { margin: 0; text-align: left; }
.compliance-badges { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1rem; max-width: 74rem; margin: 0 auto; padding: 0; list-style: none; }
.compliance-badge { display: flex; align-items: center; gap: .9rem; padding: 1.25rem; border: 1px solid #E8E3EF; border-radius: 16px; background: #FFF; text-align: left; }
.assurance-icon { display: grid; place-items: center; flex: none; width: 44px; height: 44px; border-radius: 50%; background: #E8F2EB; color: #35734B; }
.assurance-privacy .assurance-icon { background: #E8EFFA; color: #37689D; }
.assurance-ai .assurance-icon { background: #EEE7FC; color: #6942B5; }
.assurance-data .assurance-icon { background: #E2F1EE; color: #28746D; }
.compliance-badge strong { display: block; font-size: 1rem; font-weight: 400; color: var(--text); }
.compliance-badge small { display: block; margin-top: .25rem; font-size: .8rem; color: var(--muted); line-height: 1.4; }
.compliance-summary .compliance-policy-links { margin: 2rem auto 0; line-height: 1.65; font-size: .9375rem; }
@media (max-width: 1000px) { .site-main > .section.compliance-summary { grid-template-columns: 1fr; } .compliance-badges { width: 100%; } }
@media (max-width: 520px) { .compliance-badges { grid-template-columns: 1fr; gap: .75rem; } }

.compliance-copy .compliance-policy-links { color: var(--muted); }
.compliance-copy .compliance-policy-links a { color: var(--brand); }

.compliance-badge .assurance-icon { width: 52px; height: 52px; border-radius: 0; background: transparent; }
.assurance-icon img { display: block; width: 52px; height: 52px; }

.security-lock-emblem { width: 88px; height: 88px; margin-bottom: 1.5rem; }
.security-lock-emblem svg { display: block; width: 100%; height: 100%; }

.why-options { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 2rem; margin-top: 3rem; }
.why-options article { display: flex; flex-direction: column; padding: clamp(1.5rem, 2.5vw, 2rem); border: 1px solid var(--border); border-radius: 20px; background: #fff; box-shadow: 0 12px 32px rgba(28, 23, 42, .06); }
.why-icon { display: grid; place-items: center; width: 42px; height: 42px; background: #F5F4F7; border-radius: 12px; color: var(--brand); margin-bottom: 1.25rem; }
.why-options h3 { font-size: 1.5rem; font-weight: 400; line-height: 1.25; }
.why-options p { margin-top: 1rem; color: var(--text-soft); font-size: 1.0625rem; line-height: 1.65; }
.why-answer { display: flex; align-items: center; gap: 2rem; padding: 1.75rem 2rem; margin-top: 2rem; border-radius: 18px; background: #F7F5FC; }
.why-answer img { width: 132px; height: auto; flex: none; }
.why-answer p { flex: 1; color: var(--text-soft); line-height: 1.6; }
.why-answer a { color: var(--brand); flex: none; }
@media (max-width: 850px) { .why-options { grid-template-columns: 1fr; } .why-answer { flex-direction: column; align-items: flex-start; gap: 1rem; } }

.why-service-icons { display: flex; flex-wrap: wrap; align-items: center; gap: .65rem; margin-bottom: 1.25rem; }
.why-service-icons > a { display: grid; place-items: center; width: 46px; height: 46px; border: 1px solid var(--border); border-radius: 12px; background: #fff; }
.why-service-icons img { display: block; width: 28px; height: 28px; object-fit: contain; }

.why-service-icons > a:hover { border-color: #BBA8E7; background: #F7F5FC; }

.why-more { display: inline-block; align-self: flex-start; margin-top: auto; padding-top: 1.5rem; color: var(--brand); font-size: .9375rem; }
.why-options article > p { margin-bottom: .5rem; }

.enterprise-only-badge { display: inline-flex; align-items: center; vertical-align: middle; padding: .25em .65em; border: 1px solid #D9CBEF; border-radius: 999px; background: #F3EEF9; color: #6C5094; font-size: 11px; font-weight: 400; line-height: 1.3; letter-spacing: 0; white-space: nowrap; }
.availability-note { color: var(--muted); font-size: .9375rem; margin: 1rem 0; }
.hero-usecase .enterprise-only-badge { margin: .25rem 0; font-size: 10px; }
.pipeline-build[hidden] { display: none; }

/* A sticky chain of steps; the current chapter follows the reader. */
.product-tour-index { position: sticky; top: var(--tour-top, 80px); z-index: 9; display: block; width: min(76rem, calc(100% - 2rem)); margin: 3rem auto 0; padding: 8px; border: 1px solid var(--border); border-radius: 18px; background: #ffffffed; backdrop-filter: blur(14px); -webkit-backdrop-filter: blur(14px); box-shadow: 0 6px 24px #17151f08; }
.product-tour-track { display: flex; gap: 3px; overflow-x: auto; scrollbar-width: none; }
.product-tour-track::-webkit-scrollbar { display: none; }
.product-tour-track > a { flex: 1 0 auto; display: flex; align-items: center; justify-content: center; min-height: 48px; padding: .7rem 1.5rem .7rem 1.7rem; color: var(--muted); background: #F6F4FA; clip-path: url(#tour-arrow-rounded); transition: background .2s, color .2s; white-space: nowrap; }
.product-tour-track > a:first-child { clip-path: url(#tour-arrow-first-rounded); padding-left: 1rem; }
.product-tour-track > a[aria-current="step"] { background: var(--brand); color: #fff; }
.product-tour-track > a:hover { background: #EAE3F8; color: var(--brand); }
.product-tour-track > a:focus-visible { outline: none; background: #EAE3F8; color: var(--brand); text-decoration: underline; text-underline-offset: 4px; }
.product-tour-track .enterprise-only-badge { display: block; width: max-content; margin: 3px auto 0; font-size: 9px; }
.product-tour-step, #radar-and-benchmark { scroll-margin-top: calc(var(--tour-top, 80px) + 130px); }
@media(max-width:650px) { .product-tour-index { width: calc(100% - 1rem); padding: 5px; border-radius: 12px; } .product-tour-track > a { font-size: .8125rem; padding-inline: 1.25rem; min-height: 42px; } }
@media(prefers-reduced-motion:reduce) { .product-tour-track > a { transition: none; } }

.available-badge { display: inline-flex; align-items: center; vertical-align: middle; padding: .25em .65em; border: 1px solid #BEDACB; border-radius: 999px; background: #EAF5EE; color: #32644A; font-size: 11px; font-weight: 400; line-height: 1.3; letter-spacing: 0; white-space: nowrap; }
.product-tour-track .available-badge { display: block; width: max-content; margin: 3px auto 0; font-size: 9px; }
.product-modes > article { scroll-margin-top: calc(var(--tour-top, 80px) + 130px); }

/* Shared SKU marks: the same Radar sweep and Benchmark comparison arrows everywhere. */
.sku-icon { display: inline-flex; align-items: center; justify-content: center; width: 22px; height: 22px; vertical-align: middle; flex: none; color: var(--brand); }
.sku-icon .icon { width: 100%; height: 100%; }
.sku-icon-large { display: flex; width: 56px; height: 56px; padding: 13px; border: 1px solid #E8E2F1; border-radius: 14px; background: #F7F5FA; margin-bottom: 1.25rem; }
.product-tour-track .sku-icon { width: 15px; height: 15px; margin-right: 3px; color: inherit; }
.product-modes .product-tour-label { display: flex; align-items: center; flex-wrap: wrap; gap: .6rem; }

.product-tour-index.is-floating { box-shadow: 0 8px 30px #17151f16; }
.tour-clip-defs { position: absolute; width: 0; height: 0; overflow: hidden; }

.home-sku-label { display: flex; align-items: center; gap: .75rem; margin-bottom: 1.25rem; }
.home-sku-label .sku-icon-large { margin-bottom: 0; }

.home-benchmark-status { margin: .75rem 0; }

.enterprise-intro .intro-summary { max-width: 64ch; }
.enterprise-trust-line { display: flex; align-items: center; justify-content: center; flex-wrap: wrap; gap: .6rem; margin: 1.5rem auto 0; font-size: .8125rem; color: var(--muted); }
.enterprise-trust-line a { display: inline-flex; align-items: center; gap: .4rem; }
.enterprise-scope-grid,.enterprise-resilience-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 1.5rem; }
.enterprise-scope-grid article,.enterprise-resilience-grid article { border: 1px solid var(--border); border-radius: 18px; padding: clamp(1.5rem,3vw,2.25rem); }
.enterprise-scope-grid .icon,.enterprise-resilience-grid .icon { width: 28px; height: 28px; color: var(--brand); margin-bottom: 1rem; }
.enterprise-scope-grid h3,.enterprise-resilience-grid h3 { font-weight: 400; font-size: 1.35rem; margin-bottom: .75rem; line-height: 1.3; }
.enterprise-scope-grid p,.enterprise-resilience-grid p { font-size: 1rem; line-height: 1.65; color: var(--text-soft); }
.enterprise-section-note { margin-top: 1.5rem; text-align: center; color: var(--muted); font-size: .9375rem; }
.enterprise-repair-states { display: flex; align-items: center; flex-wrap: wrap; gap: .4rem; margin-top: 1rem; color: #6D5792; font-size: .6875rem; }
.enterprise-repair-states span:not([aria-hidden]) { background: #F4F0FA; padding: .25rem .4rem; border-radius: 4px; }
.enterprise-security-compact .faq { max-width: 62rem; margin-inline: auto; }
.enterprise-security-compact summary > span { font-weight: 400; font-size: .875rem; color: var(--muted); margin-left: 1rem; }
.enterprise-closing-cta { margin-top: 4rem; padding: clamp(2rem,5vw,4rem); border-radius: 24px; background: #F7F4FC; text-align: center; }
.enterprise-closing-cta h2 { font-weight: 400; font-size: clamp(2rem,3.4vw,3rem); }
.enterprise-closing-cta p { color: var(--text-soft); margin: 1rem 0 1.5rem; }
.enterprise-footer-policies { display: flex; justify-content: center; flex-wrap: wrap; gap: 1rem 1.5rem; font-size: .8125rem; color: var(--muted); width: 100%; }
@media(max-width:800px) { .enterprise-scope-grid,.enterprise-resilience-grid { grid-template-columns: 1fr; }.enterprise-security-compact summary > span { display: block; margin: .4rem 0 0; } }
.enterprise-scope-grid,.enterprise-resilience-grid,.enterprise-close .product-modes { margin-top: 2rem; }
.enterprise-security-compact .faq { margin-top: 2rem; }

.enterprise-security-compact summary { align-items: center; gap: 1.5rem; }
.enterprise-security-compact summary > .security-row-copy { display: flex; flex-direction: column; gap: .35rem; margin: 0; text-align: left; }
.security-row-title { font-size: 1.125rem; color: var(--text); }
.security-row-description { font-size: .875rem; color: var(--muted); }
.enterprise-security-compact summary::after { flex: none; margin-left: auto; }

.enterprise-security-compact .security-row-description { line-height: 1.6; max-width: 85ch; }
.enterprise-security-compact .faq-a a { display: inline-block; margin-top: .75rem; color: var(--brand); text-decoration: underline; text-underline-offset: 3px; }

.section.enterprise-review-card { width: min(82rem, calc(100% - clamp(1.5rem, 4vw, 3rem))); margin-inline: auto; padding: clamp(2rem, 5vw, 4rem); border: 1px solid #E5DDEE; border-radius: 24px; background: #FAF8FD; gap: clamp(2rem, 5vw, 5rem); }

.enterprise-resilience-features { margin-top: 3rem; }
.enterprise-resilience-features .feature { gap: clamp(2rem,6vw,6rem); }
.enterprise-resilience-features .feature-copy > .icon { width: 30px; height: 30px; color: var(--brand); margin-bottom: 1rem; }
.enterprise-resilience-features .feature-copy h3 { font-size: clamp(1.75rem,3vw,2.5rem); }
.enterprise-resilience-features .feature-copy p { line-height: 1.7; }
.enterprise-continuity-visual { border: 1px solid #E2D9EF; border-radius: 22px; background: #FAF8FD; padding: clamp(1.5rem,3vw,2.5rem); box-shadow: 0 12px 40px #291B4506; }
.continuity-visual-heading { display: flex; align-items: center; gap: .75rem; color: #67547F; font-size: .9375rem; padding-bottom: 1.25rem; border-bottom: 1px solid #E8E1F0; }
.continuity-visual-heading .icon { width: 22px; height: 22px; color: var(--brand); }
.continuity-version { margin-left: auto; font-family: monospace; font-size: .8125rem; color: #9786AB; }
.continuity-recovery { list-style: none; padding: 0; margin: 1.5rem 0 0; display: grid; gap: 1.25rem; }
.continuity-recovery li { display: flex; align-items: center; gap: 1rem; }
.continuity-recovery li > span { display: grid; place-items: center; width: 32px; height: 32px; background: #EEE7F8; color: #8567AB; border-radius: 50%; font-size: .75rem; }
.continuity-recovery li:last-child > span { background: #E4F1E9; color: #4D7C61; }
.continuity-recovery small { display: block; font-size: .8125rem; color: var(--muted); margin-top: .2rem; }
.continuity-agreement { margin: .5rem 0 0; }
.continuity-agreement > div { padding: 1rem 0; border-bottom: 1px solid #E8E1F0; }
.continuity-agreement dt { font-size: .9375rem; }
.continuity-agreement dd { margin: .3rem 0 0; font-size: .8125rem; color: var(--muted); }
.continuity-visual-note { display: flex; align-items: center; gap: .5rem; margin-top: 1.25rem; font-size: .8125rem; color: #766486; }
.continuity-visual-note .icon { width: 18px; height: 18px; flex: none; }
.continuity-export { display: flex; align-items: center; gap: 1rem; padding: 2.5rem 0; }
.continuity-file-icon { display: grid; place-items: center; width: 60px; height: 72px; background: white; border: 1px solid #DACDEB; border-radius: 10px; color: var(--brand); flex: none; }
.continuity-file-icon .icon { width: 30px; height: 30px; }
.continuity-export strong { font-weight: 400; }
.continuity-export small { display: block; font-size: .8125rem; color: var(--muted); margin-top: .4rem; }
.continuity-export-terms { display: flex; flex-wrap: wrap; gap: 1rem; border-top: 1px solid #E8E1F0; padding-top: 1rem; font-size: .8125rem; color: #766486; }
.continuity-export-terms span { display: inline-flex; gap: .3rem; align-items: center; }.continuity-export-terms .icon { width: 15px; height: 15px; }
@media(min-width:901px) { .continuity-reverse .feature-copy { grid-column: 2; grid-row: 1; }.continuity-reverse .enterprise-continuity-visual { grid-column: 1; grid-row: 1; } }

/* Page entrances start at first paint; scroll reveals are enhanced by site.js. */
@media (prefers-reduced-motion: no-preference) {
  .inner-page :is(.nav-logo, .nav-links, .nav-right) { animation: page-entrance 650ms cubic-bezier(.16,1,.3,1) backwards; --entrance-y:-12px; }
  .inner-page .page-intro > :not(.intro-copy),
  .inner-page .page-intro .intro-copy > *,
  .inner-page .prose-page > h1 { animation: page-entrance 850ms cubic-bezier(.16,1,.3,1) backwards; --entrance-y:20px; }
  .inner-page .page-intro h1 { animation-delay:70ms; }
  .inner-page .page-intro .intro-summary { animation-delay:160ms; }
  .inner-page .page-intro .intro-actions { animation-delay:240ms; }
  .inner-page .page-intro > :is(.collection-demo, .dataset-preview, .solution-scene) { animation-delay:180ms; }
}
@media print { .inner-page * { animation:none!important; }.motion-pending { opacity:1!important; } }

/* Product overview: matching card hierarchy and bottom-aligned actions. */
#radar-and-benchmark > .section-head { margin-bottom: 3rem; }
.product-modes-showcase > article { display: flex; flex-direction: column; padding: clamp(1.25rem, 2.5vw, 2.5rem); min-width: 0; }
.product-mode-heading { display:flex; align-items:center; flex-wrap:wrap; gap:.75rem; margin-bottom:1.5rem; }
.product-mode-heading .sku-icon-large { width:44px; height:44px; padding:10px; border-radius:12px; margin:0; }
.product-mode-heading strong { font-size:1.0625rem; font-weight:400; color:var(--text); }
.product-mode-heading > :last-child { margin-left:auto; }
.product-modes-showcase h3 { font-size:clamp(1.5rem, 2.2vw, 1.875rem); line-height:1.25; letter-spacing:-.025em; margin-bottom:1rem; }
.product-modes-showcase article > p { font-size:1rem; line-height:1.65; margin:0; }
.product-mode-demo { margin:2rem 0; flex:1; display:flex; align-items:flex-start; }
.product-mode-demo .collection-demo { margin:0; max-width:none; box-shadow:none; }
.product-mode-action { padding-top:.25rem; }
.product-mode-action .pill { width:100%; justify-content:space-between; padding:.9rem 1.25rem; font-size:1rem; }
@media(min-width:901px) {
 .product-modes-showcase article > p { min-height:5em; }
 .product-mode-demo .collection-demo { min-height:478px; }
}
@media(max-width:650px) {
 #radar-and-benchmark > .section-head { margin-bottom:2rem; }
 .product-mode-demo { margin:1.5rem 0; }
}

.product-example-usecases .section-head { margin-bottom:2.5rem; }
.product-example-usecases h3 { color:var(--industry-ink); font-size:1.25rem; font-weight:400; margin-bottom:.75rem; }
.product-example-link { display:inline-block; margin-top:1rem; color:var(--industry-ink); font-size:.875rem; }

.nav-menu-icon { display:block; width:22px; height:22px; }
@media(max-width:1280px) { .nav-toggle { display:flex; align-items:center; justify-content:center; width:44px; height:44px; padding:0; cursor:pointer; } }
@media(max-width:650px) {
 .launch-banner { display:block; text-align:center; }
 .launch-banner p { width:100%; max-width:none; }
 .launch-banner > a { display:none; }
}
@media(max-width:650px) {
 .nav :is(.nav-toggle, .nav-start, .nav-account, .nav-login) { border:0; box-shadow:none; background:transparent; }
}
