:root {
  --ink: #10231f;
  --muted: #657873;
  --line: #dbe5e1;
  --paper: #f7faf8;
  --white: #ffffff;
  --green: #159664;
  --green-dark: #08744c;
  --mint: #dff5e9;
  --navy: #112b28;
  --orange: #f8aa43;
  font-family: Inter, 'Segoe UI Variable', system-ui, -apple-system, BlinkMacSystemFont, sans-serif;
  color: var(--ink);
  background: var(--paper);
  font-synthesis: none;
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; overflow-x: hidden; }
body { margin: 0; min-width: 320px; overflow-x: hidden; }
a { color: inherit; text-decoration: none; }
button, input, select, textarea { font: inherit; }
button, a { -webkit-tap-highlight-color: transparent; }

.page-glow {
  position: fixed;
  border-radius: 50%;
  filter: blur(2px);
  pointer-events: none;
  z-index: -1;
}
.page-glow-one { width: 620px; height: 620px; right: -250px; top: -170px; background: radial-gradient(circle, rgba(72, 210, 144, .18), transparent 66%); }
.page-glow-two { width: 520px; height: 520px; left: -330px; top: 420px; background: radial-gradient(circle, rgba(88, 176, 235, .12), transparent 68%); }

.site-header, .admin-header {
  width: min(1240px, calc(100% - 48px));
  height: 78px;
  margin: 0 auto;
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.brand { display: inline-flex; align-items: center; gap: 11px; font-size: 16px; font-weight: 600; letter-spacing: -.35px; }
.brand b { font-weight: 800; }
.brand-symbol {
  width: 35px;
  height: 35px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  position: relative;
  border-radius: 11px;
  color: #fff;
  background: linear-gradient(145deg, #23ad76, #087c51);
  box-shadow: 0 7px 18px rgba(13, 134, 87, .23);
}
.brand-symbol::before { content: ''; width: 15px; height: 15px; border: 2px solid currentColor; border-radius: 5px; transform: rotate(30deg); }
.brand-symbol i { position: absolute; width: 3px; height: 3px; background: currentColor; border-radius: 50%; }
.brand-symbol i:nth-child(1) { top: 7px; left: 8px; }
.brand-symbol i:nth-child(2) { right: 7px; top: 13px; }
.brand-symbol i:nth-child(3) { left: 13px; bottom: 6px; }
.brand-symbol.large { width: 53px; height: 53px; border-radius: 16px; }
.brand-symbol.large::before { width: 22px; height: 22px; }
.site-header nav { display: flex; gap: 25px; font-size: 12px; font-weight: 600; color: #4f625e; }
.site-header nav a { transition: color .2s; }
.site-header nav a:hover { color: var(--green); }
.header-actions { display: flex; align-items: center; gap: 8px; }
.header-login { padding: 11px 12px; color: #53655f; font-size: 12px; font-weight: 700; }
.header-cta {
  padding: 11px 19px;
  border: 1px solid #148b5d;
  border-radius: 10px;
  color: white;
  font-size: 13px;
  font-weight: 700;
  background: linear-gradient(135deg, #19a76f, #0a8557);
  box-shadow: 0 8px 20px rgba(15, 144, 93, .18);
}

.hero {
  width: min(1240px, calc(100% - 48px));
  min-height: 645px;
  margin: 0 auto;
  display: grid;
  grid-template-columns: .88fr 1.12fr;
  gap: 34px;
  align-items: center;
  padding: 54px 0 75px;
}
.hero-copy, .product-scene { min-width: 0; }
.eyebrow { display: flex; align-items: center; gap: 9px; margin: 0 0 20px; color: var(--green-dark); font-size: 11px; font-weight: 800; letter-spacing: 1.2px; text-transform: uppercase; }
.eyebrow span { width: 22px; height: 2px; background: var(--green); border-radius: 9px; }
.hero h1, .section-heading h2, .workflow-copy h2, .faq-heading h2, .final-cta h2, .admin-main h1 {
  margin: 0;
  font-size: clamp(44px, 5vw, 72px);
  line-height: 1.02;
  letter-spacing: -4px;
  font-weight: 800;
}
h1 em, h2 em { color: var(--green); font-style: normal; }
.hero-lead { max-width: 555px; margin: 27px 0; font-size: 17px; line-height: 1.75; color: var(--muted); }
.hero-actions { display: flex; gap: 12px; align-items: center; margin-bottom: 25px; }
.button {
  border: 0;
  border-radius: 11px;
  padding: 14px 21px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 17px;
  cursor: pointer;
  font-size: 13px;
  font-weight: 800;
  transition: transform .2s, box-shadow .2s, background .2s;
}
.button:hover { transform: translateY(-2px); }
.button-primary { color: white; background: linear-gradient(135deg, #19a76f, #0a8557); box-shadow: 0 12px 28px rgba(15, 144, 93, .23); }
.button-primary:hover { box-shadow: 0 16px 32px rgba(15, 144, 93, .32); }
.button-ghost { border: 1px solid #cbd7d3; background: rgba(255,255,255,.68); color: var(--ink); }
.button-dark { color: white; background: var(--navy); }
.button-light { color: var(--navy); background: white; box-shadow: 0 12px 30px rgba(0,0,0,.14); }
.button.compact { padding: 11px 16px; }
.hero-proof { display: flex; gap: 22px; color: #6a7b77; font-size: 11px; font-weight: 600; }
.hero-proof i { display: inline-grid; place-items: center; width: 17px; height: 17px; margin-right: 5px; color: white; background: var(--green); border-radius: 50%; font-style: normal; font-size: 9px; }

.product-scene { position: relative; min-height: 490px; display: flex; align-items: center; justify-content: center; perspective: 1200px; }
.scene-orbit { position: absolute; border: 1px solid rgba(36, 159, 110, .13); border-radius: 50%; }
.orbit-one { width: 510px; height: 510px; }
.orbit-two { width: 620px; height: 350px; transform: rotate(-22deg); }
.product-window {
  width: min(665px, 100%);
  min-height: 410px;
  position: relative;
  border: 1px solid rgba(148, 169, 162, .54);
  border-radius: 14px;
  overflow: hidden;
  background: rgba(255,255,255,.94);
  box-shadow: 0 35px 80px rgba(22, 61, 51, .18), 0 5px 16px rgba(22, 61, 51, .08);
  transform: rotateY(-4deg) rotateX(1deg);
  backdrop-filter: blur(10px);
}
.window-bar { height: 43px; display: flex; align-items: center; padding: 0 14px; border-bottom: 1px solid #dce5e2; background: #f3f7f5; font-size: 8px; color: #73837f; }
.window-dots { display: flex; gap: 5px; }
.window-dots i { width: 7px; height: 7px; border-radius: 50%; background: #e17f79; }
.window-dots i:nth-child(2) { background: #e6b760; }
.window-dots i:nth-child(3) { background: #61bd86; }
.window-address { margin: auto; padding: 5px 48px; border-radius: 6px; background: white; border: 1px solid #e0e8e5; }
.window-live { color: #087d51; font-weight: 700; }
.window-body { min-height: 367px; display: grid; grid-template-columns: 165px 1fr; }
.window-body aside { padding: 15px 10px; border-right: 1px solid #e0e7e5; background: #f7faf9; }
.aside-title { display: flex; align-items: center; justify-content: space-between; padding: 0 6px 10px; color: #72837e; font-size: 8px; font-weight: 800; text-transform: uppercase; }
.aside-title b { display: grid; place-items: center; width: 18px; height: 18px; flex: 0 0 18px; box-sizing: border-box; border: 1px solid #cbd7d3; border-radius: 5px; color: var(--green); }
.aside-title b svg { display: block; overflow: visible; }
.aside-title b path { fill: none; stroke: currentColor; stroke-width: 2; stroke-linecap: round; }
.project { min-height: 52px; display: flex; align-items: center; gap: 8px; padding: 8px; margin-bottom: 5px; border-radius: 8px; font-size: 9px; }
.project.active { background: #e3f1eb; box-shadow: inset 2px 0 var(--green); }
.project-dot { width: 8px; height: 8px; flex: 0 0 auto; border-radius: 50%; }
.project-dot.blue { background: #52a9fa; }
.project-dot.green { background: #43bd7b; }
.project-dot.grey { background: #9ea9a6; }
.project span { display: flex; flex-direction: column; gap: 3px; min-width: 0; }
.project b { font-size: 9px; }
.project small { color: #84928f; font-size: 7px; }
.project em { display: grid; place-items: center; width: 17px; height: 17px; margin-left: auto; border-radius: 50%; color: white; background: var(--green); font-style: normal; }
.machines { margin-top: 35px; padding: 0 7px; display: flex; flex-direction: column; gap: 10px; font-size: 7px; color: #42534f; }
.machines > small { color: #94a19e; font-size: 7px; font-weight: 800; }
.machines span { display: flex; align-items: center; gap: 5px; }
.machines b { margin-left: auto; color: #58a984; font-size: 6px; }
.online { width: 5px; height: 5px; border-radius: 50%; background: #43bd7b; box-shadow: 0 0 0 3px #dff3e8; }
.conversation { padding: 18px 20px; position: relative; }
.conversation-head { display: flex; align-items: center; justify-content: space-between; padding-bottom: 14px; border-bottom: 1px solid #e0e8e5; }
.conversation-head > span { display: flex; flex-direction: column; gap: 2px; font-size: 11px; }
.conversation-head small { color: #8b9995; font-size: 7px; }
.model-chip { border: 1px solid #d6dfdc; border-radius: 6px; padding: 6px 9px; font-size: 7px; background: #f8faf9; }
.message-user { width: 75%; margin: 20px 0 17px auto; padding: 11px 13px; border-radius: 10px 10px 2px 10px; background: #e2f1eb; font-size: 8px; line-height: 1.55; }
.message-codex { display: flex; gap: 9px; font-size: 8px; }
.mini-avatar { display: grid; place-items: center; width: 26px; height: 26px; flex: 0 0 auto; border-radius: 8px; color: white; background: linear-gradient(145deg, #33be84, #179768); font-weight: 800; }
.message-codex b { font-size: 8px; }
.message-codex p { margin: 5px 0; line-height: 1.65; color: #52645f; }
.task-row { margin: 14px 0 0 35px; padding: 9px 11px; border-radius: 7px; background: #f3f7f5; color: #64746f; font: 7px ui-monospace, monospace; }
.task-row span { display: inline-flex; gap: 2px; margin-right: 8px; }
.task-row i { width: 3px; height: 3px; border-radius: 50%; background: var(--green); }
.task-row b { float: right; color: var(--green); }
.composer { position: absolute; left: 20px; right: 20px; bottom: 17px; height: 45px; display: flex; align-items: center; padding: 0 12px; border: 1px solid #cfdad6; border-radius: 9px; color: #a0aca8; font-size: 8px; box-shadow: 0 5px 15px rgba(22,61,51,.05); }
.composer button { margin-left: auto; width: 25px; height: 25px; border: 0; border-radius: 7px; color: white; background: var(--green); }
.floating-card { position: absolute; z-index: 3; display: flex; align-items: center; gap: 9px; padding: 10px 13px; border: 1px solid #d8e4df; border-radius: 10px; background: rgba(255,255,255,.95); box-shadow: 0 15px 30px rgba(22,61,51,.13); font-size: 8px; }
.floating-card div { display: flex; flex-direction: column; gap: 2px; }
.floating-card small { color: #82918d; font-size: 7px; }
.floating-status { right: -11px; top: 68px; }
.floating-status > span { display: grid; place-items: center; width: 24px; height: 24px; border-radius: 7px; color: white; background: var(--green); font-size: 11px; }
.floating-machine { left: 15px; bottom: 28px; }
.floating-machine > i { width: 8px; height: 8px; border-radius: 50%; background: #41bd7b; box-shadow: 0 0 0 4px #dff3e8; }

.trust-strip { min-height: 92px; display: flex; align-items: center; justify-content: center; gap: clamp(24px, 5vw, 70px); border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); color: #788985; background: rgba(255,255,255,.55); font-size: 12px; }
.trust-strip > span { text-transform: uppercase; letter-spacing: 1px; font-size: 9px; font-weight: 800; }
.trust-strip b { display: flex; align-items: center; gap: 8px; color: #52635f; font-size: 12px; }
.os-icon { font-style: normal; font-size: 17px; color: #8b9996; }

.section { width: min(1120px, calc(100% - 48px)); margin: 0 auto; padding: 110px 0; }
.section-heading { max-width: 640px; margin: 0 auto 52px; text-align: center; }
.section-heading .eyebrow { justify-content: center; }
.section-heading h2, .workflow-copy h2, .faq-heading h2 { font-size: clamp(35px, 4vw, 52px); letter-spacing: -2.7px; }
.section-heading > p { margin: 18px auto 0; color: var(--muted); line-height: 1.7; font-size: 14px; }

.architecture-section { padding-bottom: 80px; }
.architecture-heading { max-width: 760px; }
.architecture-map {
  display: grid;
  grid-template-columns: 1fr 90px 1.15fr 90px 1.2fr;
  align-items: center;
  padding: 38px;
  border: 1px solid var(--line);
  border-radius: 24px;
  background:
    radial-gradient(circle at 50% 50%, rgba(44, 183, 122, .09), transparent 34%),
    rgba(255,255,255,.82);
  box-shadow: 0 24px 70px rgba(20,58,48,.07);
}
.architecture-node {
  min-height: 190px;
  padding: 24px;
  position: relative;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  border: 1px solid #dbe5e1;
  border-radius: 18px;
  background: #fff;
  overflow: hidden;
}
.architecture-node small { margin-bottom: 8px; color: #82918d; font-size: 8px; font-weight: 800; letter-spacing: 1px; }
.architecture-node b { font-size: 17px; letter-spacing: -.5px; }
.architecture-node p { margin: 6px 0 0; color: #7b8a86; font-size: 10px; line-height: 1.5; }
.node-icon { width: 50px; height: 50px; display: grid; place-items: center; margin-bottom: auto; border-radius: 14px; color: var(--green); background: var(--mint); font-size: 25px; }
.cloud-node { color: white; border-color: #116e4e; background: linear-gradient(145deg, #173a34, #0a704c); box-shadow: 0 20px 40px rgba(13,110,76,.19); }
.cloud-node small, .cloud-node p { color: #a8c9bf; }
.node-pulse { width: 52px; height: 52px; margin-bottom: auto; border: 1px solid rgba(112,225,173,.45); border-radius: 50%; background: radial-gradient(circle, #5ad99f 0 13%, rgba(80,211,153,.22) 14% 40%, transparent 42%); box-shadow: 0 0 0 10px rgba(72,200,143,.06); }
.machines-node { display: grid; grid-template-columns: repeat(3, 42px) 1fr; align-content: end; column-gap: 7px; }
.machines-node small, .machines-node b, .machines-node p { grid-column: 1 / -1; }
.machine-mini { width: 42px; height: 42px; margin-bottom: 32px; position: relative; display: grid; place-items: center; border: 1px solid #dce6e2; border-radius: 11px; color: #49615a; background: #f5f8f7; font-size: 14px; }
.machine-mini i { width: 7px; height: 7px; position: absolute; right: -2px; bottom: -2px; border: 2px solid white; border-radius: 50%; background: #3db878; }
.architecture-link { display: flex; flex-direction: column; align-items: center; gap: 9px; }
.architecture-link i { width: 100%; height: 1px; position: relative; background: linear-gradient(90deg, #cfdcd7, var(--green), #cfdcd7); }
.architecture-link i::after { content: ''; width: 6px; height: 6px; position: absolute; right: 1px; top: -3px; border-top: 1px solid var(--green); border-right: 1px solid var(--green); transform: rotate(45deg); }
.architecture-link span { color: #7a8d87; font: 800 8px ui-monospace, monospace; letter-spacing: 1px; }
.architecture-note { max-width: 760px; margin: 22px auto 0; text-align: center; color: #667a73; font-size: 11px; line-height: 1.7; }
.architecture-note span { margin-right: 7px; padding: 5px 8px; border-radius: 6px; color: var(--green-dark); background: var(--mint); font-size: 8px; font-weight: 800; text-transform: uppercase; letter-spacing: .7px; }

.feature-grid { display: grid; grid-template-columns: repeat(6, 1fr); gap: 16px; }
.feature { grid-column: span 2; min-height: 288px; padding: 28px; border: 1px solid var(--line); border-radius: 18px; background: rgba(255,255,255,.78); box-shadow: 0 12px 30px rgba(20,58,48,.035); overflow: hidden; }
.feature-wide { grid-column: span 4; }
.feature-dark { color: white; background: linear-gradient(145deg, #173a34, #0e2925); border-color: #173a34; }
.feature-icon { width: 38px; height: 38px; display: grid; place-items: center; margin-bottom: 22px; border-radius: 11px; color: var(--green); background: var(--mint); font-size: 19px; font-weight: 800; }
.feature-dark .feature-icon { color: #6ee0ab; background: rgba(75,211,150,.14); }
.feature h3 { margin: 0 0 10px; font-size: 17px; letter-spacing: -.5px; }
.feature p { max-width: 510px; margin: 0; color: #70807c; font-size: 12px; line-height: 1.7; }
.feature-dark p { color: #9eb6b0; }
.project-stack { margin-top: 23px; display: grid; grid-template-columns: repeat(3, 1fr); gap: 8px; }
.project-stack span { display: grid; grid-template-columns: auto 1fr auto; align-items: center; gap: 7px; padding: 12px; border: 1px solid #e0e8e5; border-radius: 9px; background: #f8faf9; font-size: 8px; }
.project-stack small { grid-column: 2; color: #8b9996; font-size: 7px; }
.project-stack em { grid-column: 3; grid-row: 1 / span 2; color: var(--green); font-style: normal; font-weight: 800; }
.route-visual { margin: 35px 0 0; display: flex; align-items: center; justify-content: center; }
.route-visual span, .route-visual b { width: 54px; height: 54px; display: grid; place-items: center; border-radius: 14px; font-size: 9px; }
.route-visual span { border: 1px solid rgba(255,255,255,.16); background: rgba(255,255,255,.07); }
.route-visual b { width: 66px; height: 66px; background: var(--green); box-shadow: 0 0 0 8px rgba(49,195,132,.1); font-size: 8px; }
.route-visual i { width: 33px; height: 1px; background: linear-gradient(90deg, rgba(81,215,157,.2), #51d79d); }
.progress-demo { height: 8px; margin-top: 38px; border-radius: 10px; overflow: hidden; background: #e6eeeb; }
.progress-demo span { display: block; height: 100%; border-radius: inherit; background: linear-gradient(90deg, #27b97d, #61d8a4); }
.progress-value { width: 78%; }
.progress-label { display: block; margin-top: 10px; color: var(--green); font-size: 9px; font-weight: 700; }
.security-row { margin-top: 35px; display: flex; align-items: center; justify-content: space-between; padding: 14px; border: 1px solid #dce7e3; border-radius: 10px; font-size: 9px; }
.security-row b { color: var(--green); }
.security-row i { display: inline-grid; place-items: center; width: 16px; height: 16px; margin-left: 4px; border-radius: 50%; color: white; background: var(--green); font-style: normal; }
.history-lines { margin-top: 30px; display: flex; flex-direction: column; gap: 8px; }
.history-lines i { display: block; height: 30px; border: 1px solid #e0e8e5; border-radius: 8px; background: linear-gradient(90deg, #edf3f1 18%, transparent 18%); }
.history-lines i:nth-child(2) { opacity: .7; }
.history-lines i:nth-child(3) { opacity: .4; }

.workflow-section {
  width: 100%;
  max-width: none;
  padding: 100px max(24px, calc((100vw - 1120px) / 2));
  display: grid;
  grid-template-columns: .85fr 1.15fr;
  gap: 95px;
  color: white;
  background: var(--navy);
}
.eyebrow.light { color: #70d9aa; }
.workflow-copy p { margin: 23px 0 0; color: #a4bbb5; line-height: 1.8; font-size: 13px; }
.workflow-copy .button { width: fit-content; margin-top: 28px; }
.workflow-steps { display: flex; flex-direction: column; }
.workflow-steps article { display: grid; grid-template-columns: 64px 1fr; gap: 20px; padding: 28px 0; border-top: 1px solid rgba(255,255,255,.13); }
.workflow-steps article:last-child { border-bottom: 1px solid rgba(255,255,255,.13); }
.workflow-steps > article > b { color: #55d49b; font: 800 11px ui-monospace, monospace; letter-spacing: 1px; }
.workflow-steps h3 { margin: 0 0 7px; font-size: 16px; }
.workflow-steps p { margin: 0; color: #9db2ad; font-size: 11px; line-height: 1.6; }

.agents-section { padding-bottom: 80px; }
.agent-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 17px; align-items: stretch; }
.agent-card { position: relative; min-height: 410px; padding: 30px; display: flex; flex-direction: column; border: 1px solid var(--line); border-radius: 18px; background: white; transition: transform .2s, box-shadow .2s, border-color .2s; }
.agent-card:hover, .agent-card.detected { transform: translateY(-5px); border-color: #9fceb9; box-shadow: 0 24px 50px rgba(22,61,51,.1); }
.agent-card.recommended { border: 2px solid #2cad78; }
.recommended-label { position: absolute; top: 0; right: 24px; padding: 6px 10px; border-radius: 0 0 7px 7px; color: white; background: var(--green); font-size: 7px; letter-spacing: .8px; font-weight: 800; }
.agent-platform { display: flex; align-items: center; gap: 15px; padding-bottom: 24px; border-bottom: 1px solid #e5ebe9; }
.agent-platform > span { width: 54px; height: 54px; flex: 0 0 auto; display: grid; place-items: center; border-radius: 14px; color: var(--green); background: var(--mint); font-size: 25px; font-weight: 800; }
.agent-platform .apple-mark { color: #193530; background: #e9efed; font-size: 20px; }
.agent-platform small { display: block; margin-bottom: 4px; color: var(--green); font-size: 7px; font-weight: 800; letter-spacing: .8px; }
.agent-platform h3 { margin: 0 0 3px; font-size: 19px; }
.agent-platform p { margin: 0; color: #84928f; font-size: 9px; }
.agent-card ul { padding: 0; margin: 24px 0 30px; list-style: none; color: #657671; font-size: 10px; line-height: 2.25; }
.agent-card li { display: flex; align-items: baseline; }
.agent-card li::before { content: '✓'; margin-right: 9px; color: var(--green); font-weight: 800; }
.agent-card .button { width: 100%; margin-top: auto; padding-left: 15px; padding-right: 15px; font-size: 11px; }
.agent-requirements { margin-top: 22px; padding: 18px 22px; display: grid; grid-template-columns: auto 1fr; align-items: center; gap: 18px; border: 1px solid #dce6e2; border-radius: 13px; background: rgba(255,255,255,.7); }
.agent-requirements span { padding: 6px 9px; border-radius: 6px; color: #7a5818; background: #fff2cf; font-size: 8px; font-weight: 800; text-transform: uppercase; letter-spacing: .6px; }
.agent-requirements p { margin: 0; color: #687a74; font-size: 10px; line-height: 1.6; }
.agent-requirements code { padding: 2px 5px; border-radius: 4px; color: #2d473f; background: #e8efec; font-size: 9px; }

.security-section {
  width: 100%;
  max-width: none;
  padding: 100px max(24px, calc((100vw - 1120px) / 2));
  display: grid;
  grid-template-columns: .8fr 1.2fr;
  gap: 85px;
  color: white;
  background:
    radial-gradient(circle at 12% 0, rgba(64,203,143,.13), transparent 29%),
    linear-gradient(145deg, #102e29, #0b201d);
}
.security-intro h2, .access-section h2 { margin: 0; font-size: clamp(35px, 4vw, 52px); line-height: 1.05; letter-spacing: -2.7px; }
.security-intro h2 em { color: #5dd79f; }
.security-intro > p { margin: 25px 0 0; color: #9db6af; font-size: 13px; line-height: 1.8; }
.security-facts { display: grid; grid-template-columns: 1fr 1fr; border-top: 1px solid rgba(255,255,255,.13); border-left: 1px solid rgba(255,255,255,.13); }
.security-facts article { min-height: 205px; padding: 26px; display: grid; grid-template-columns: 30px 1fr; gap: 10px; border-right: 1px solid rgba(255,255,255,.13); border-bottom: 1px solid rgba(255,255,255,.13); }
.security-facts article > span { color: #57d39b; font: 800 9px ui-monospace, monospace; }
.security-facts h3 { margin: 0 0 9px; font-size: 14px; }
.security-facts p { margin: 0; color: #91aaa3; font-size: 10px; line-height: 1.7; }

.access-section { display: grid; grid-template-columns: 1fr 380px; gap: 80px; align-items: center; }
.access-section > div > p { max-width: 620px; margin: 20px 0; color: var(--muted); font-size: 13px; line-height: 1.75; }
.access-includes { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; margin: 28px 0; }
.access-includes span { color: #51645e; font-size: 11px; font-weight: 650; }
.access-includes i { display: inline-grid; place-items: center; width: 18px; height: 18px; margin-right: 7px; border-radius: 50%; color: white; background: var(--green); font-size: 9px; font-style: normal; }
.access-section > div > small { display: block; max-width: 630px; padding-top: 18px; border-top: 1px solid var(--line); color: #879590; font-size: 9px; line-height: 1.6; }
.access-section aside { padding: 34px; border: 1px solid #b9ddcd; border-radius: 22px; background: linear-gradient(145deg, #fff, #eff9f4); box-shadow: 0 25px 60px rgba(18,85,62,.1); }
.access-badge { display: inline-block; margin-bottom: 24px; padding: 6px 9px; border-radius: 6px; color: var(--green-dark); background: var(--mint); font-size: 8px; font-weight: 800; letter-spacing: .8px; }
.access-section aside h3 { margin: 0; font-size: 27px; letter-spacing: -1.3px; }
.access-section aside p { margin: 12px 0 25px; color: #6e817a; font-size: 11px; line-height: 1.7; }
.access-section aside .button { width: 100%; }
.access-login { display: block; margin-top: 16px; text-align: center; color: #687b74; font-size: 10px; font-weight: 700; }

.faq-section { display: grid; grid-template-columns: .7fr 1.3fr; gap: 80px; padding-top: 70px; }
.faq-heading .eyebrow { margin-top: 6px; }
.faq-list { border-top: 1px solid #d6e0dc; }
details { border-bottom: 1px solid #d6e0dc; }
summary { padding: 23px 0; display: flex; align-items: center; justify-content: space-between; cursor: pointer; list-style: none; font-size: 13px; font-weight: 700; }
summary::-webkit-details-marker { display: none; }
summary i { color: var(--green); font-size: 20px; font-style: normal; font-weight: 400; transition: transform .2s; }
details[open] summary i { transform: rotate(45deg); }
details p { margin: -8px 45px 22px 0; color: #70817c; font-size: 11px; line-height: 1.75; }
.final-cta { width: min(1120px, calc(100% - 48px)); min-height: 280px; margin: 10px auto 90px; padding: 55px 65px; display: flex; align-items: center; justify-content: space-between; color: white; border-radius: 24px; background: linear-gradient(120deg, #159664, #0b704d); box-shadow: 0 30px 60px rgba(10,112,77,.22); }
.final-cta > div { display: grid; grid-template-columns: auto 1fr; column-gap: 18px; align-items: center; }
.final-cta h2 { font-size: 31px; letter-spacing: -1.7px; }
.final-cta p { grid-column: 2; margin: 7px 0 0; color: #c1ead7; font-size: 12px; }
footer { min-height: 150px; padding: 30px max(24px, calc((100vw - 1120px) / 2)); display: grid; grid-template-columns: 1fr auto; align-items: center; gap: 30px 45px; border-top: 1px solid var(--line); color: #758681; font-size: 10px; }
.footer-brand { color: var(--ink); }
.footer-brand-wrap { display: flex; align-items: center; gap: 18px; }
.footer-brand-wrap p { margin: 0; }
.footer-links { display: flex; gap: 25px; }
footer > small { grid-column: 1 / -1; padding-top: 18px; border-top: 1px solid var(--line); color: #9ba8a5; line-height: 1.6; }

/* Admin */
.admin-page { min-height: 100vh; background: #f3f7f5; }
.admin-header { width: 100%; height: 70px; padding: 0 max(24px, calc((100vw - 1280px) / 2)); border-bottom: 1px solid var(--line); background: rgba(255,255,255,.9); }
.admin-header > div { display: flex; align-items: center; gap: 18px; }
.admin-badge { padding: 5px 8px; border-radius: 5px; color: var(--green-dark); background: var(--mint); font-size: 8px; font-weight: 800; letter-spacing: 1px; }
.text-button { border: 0; color: #71817d; background: transparent; cursor: pointer; font-size: 11px; }
.admin-main { width: min(1280px, calc(100% - 48px)); margin: 0 auto; padding: 52px 0 90px; }
.admin-login { width: min(440px, 100%); margin: 70px auto; padding: 38px; text-align: center; border: 1px solid var(--line); border-radius: 20px; background: white; box-shadow: 0 25px 65px rgba(20,58,48,.08); }
.login-symbol { margin-bottom: 24px; }
.admin-login .eyebrow { justify-content: center; }
.admin-main h1 { font-size: 35px; letter-spacing: -1.7px; }
.admin-login > p:not(.eyebrow) { color: var(--muted); font-size: 12px; }
.admin-login form { margin-top: 28px; text-align: left; }
.admin-login label, dialog label { display: flex; flex-direction: column; gap: 8px; margin-bottom: 17px; color: #50615d; font-size: 10px; font-weight: 700; }
input, select, textarea { width: 100%; border: 1px solid #ccd8d4; border-radius: 10px; outline: none; color: var(--ink); background: white; transition: border .2s, box-shadow .2s; }
input, select { height: 43px; padding: 0 13px; }
textarea { padding: 12px 13px; resize: vertical; }
input:focus, select:focus, textarea:focus { border-color: var(--green); box-shadow: 0 0 0 3px rgba(21,150,100,.11); }
.admin-login .button { width: 100%; }
.back-link { display: inline-block; margin-top: 22px; color: #7b8b87; font-size: 10px; }
.form-error { min-height: 17px; margin: 8px 0; color: #c94c4c; font-size: 10px; }
.admin-title { display: flex; align-items: flex-end; justify-content: space-between; margin-bottom: 32px; }
.admin-title .eyebrow { margin-bottom: 13px; }
.admin-title > div > p:last-child { margin: 10px 0 0; color: var(--muted); font-size: 11px; }
.stats-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 14px; margin-bottom: 22px; }
.stats-grid article { min-height: 126px; padding: 20px; display: grid; grid-template-columns: 1fr auto; align-items: center; border: 1px solid var(--line); border-radius: 14px; background: white; }
.stats-grid span { grid-column: 1 / -1; color: #788985; font-size: 9px; font-weight: 700; text-transform: uppercase; letter-spacing: .6px; }
.stats-grid b { font-size: 31px; letter-spacing: -1.5px; }
.stats-grid i { align-self: end; color: #8a9995; font-size: 8px; font-style: normal; }
.stats-grid .positive { color: var(--green); }
.stats-grid .negative { color: #c46d62; }
.users-panel { border: 1px solid var(--line); border-radius: 16px; overflow: hidden; background: white; }
.users-toolbar { min-height: 78px; padding: 16px 20px; display: grid; grid-template-columns: 1fr 330px 170px; gap: 12px; align-items: center; border-bottom: 1px solid var(--line); }
.users-toolbar > div h2 { display: inline; margin: 0 8px 0 0; font-size: 15px; }
.users-toolbar > div span { color: #899793; font-size: 9px; }
.search-box { position: relative; }
.search-box span { position: absolute; left: 13px; top: 10px; color: #81908c; font-size: 17px; }
.search-box input { padding-left: 38px; }
.users-toolbar select { font-size: 10px; }
.table-wrap { min-height: 250px; overflow-x: auto; }
table { width: 100%; border-collapse: collapse; }
th { padding: 12px 20px; text-align: left; color: #899792; background: #f7faf9; font-size: 8px; text-transform: uppercase; letter-spacing: .5px; }
td { padding: 17px 20px; border-top: 1px solid #e8eeec; color: #596a65; font-size: 9px; vertical-align: middle; }
tbody tr:hover { background: #fbfdfc; }
.identity-cell { display: flex; align-items: center; gap: 11px; }
.device-symbol { width: 34px; height: 34px; flex: 0 0 auto; display: grid; place-items: center; border-radius: 9px; color: var(--green); background: var(--mint); font-size: 15px; }
.identity-cell > div { display: flex; flex-direction: column; gap: 3px; }
.identity-cell code { color: var(--ink); font: 700 10px ui-monospace, SFMono-Regular, Consolas, monospace; }
.identity-cell small, td small { color: #8a9995; font-size: 8px; }
.identity-cell em { color: #798984; font-size: 8px; font-style: normal; }
.last-seen::before { content: ''; display: inline-block; width: 6px; height: 6px; margin-right: 6px; border-radius: 50%; background: #50bd83; }
.subscription { display: inline-block; padding: 6px 8px; border-radius: 6px; font-size: 8px; font-weight: 800; }
.subscription-active { color: #08764c; background: #e0f5e9; }
.subscription-inactive { color: #a7554b; background: #fae9e6; }
td .subscription + small { display: block; margin-top: 5px; }
.row-action { padding: 7px 10px; border: 1px solid #cbd7d3; border-radius: 7px; color: #50615d; background: white; cursor: pointer; font-size: 8px; font-weight: 700; }
.empty-table { padding: 55px; text-align: center; }
.empty-table span { font-size: 28px; color: var(--green); }
.empty-table h3 { margin: 12px 0 4px; font-size: 14px; }
.empty-table p { margin: 0; color: var(--muted); font-size: 10px; }
.hidden { display: none !important; }
dialog { width: min(500px, calc(100% - 32px)); padding: 0; border: 0; border-radius: 18px; color: var(--ink); box-shadow: 0 30px 100px rgba(5,34,28,.28); }
dialog::backdrop { background: rgba(12,32,28,.53); backdrop-filter: blur(3px); }
dialog form { padding: 27px; }
.dialog-head { display: flex; justify-content: space-between; margin-bottom: 20px; }
.dialog-head p { margin: 0 0 4px; color: var(--green); font-size: 8px; font-weight: 800; letter-spacing: 1px; }
.dialog-head h2 { margin: 0; font-size: 21px; letter-spacing: -.8px; }
.dialog-close { width: 33px; height: 33px; border: 0; border-radius: 8px; color: #6d7d79; background: #f0f4f2; cursor: pointer; font-size: 20px; }
.uuid-card { margin-bottom: 20px; padding: 12px; border-radius: 9px; background: #f2f6f4; }
.uuid-card span { display: block; margin-bottom: 4px; color: #82918d; font-size: 7px; font-weight: 800; }
.uuid-card code { font-size: 11px; }
.optional { margin-left: 5px; color: #99a5a2; font-weight: 400; }
dialog label small { color: #8c9996; font-weight: 400; }
.dialog-actions { display: flex; justify-content: flex-end; gap: 9px; margin-top: 24px; }

@media (max-width: 980px) {
  .site-header nav { display: none; }
  .hero { grid-template-columns: 1fr; padding-top: 70px; text-align: center; }
  .hero-copy { max-width: 700px; margin: auto; }
  .hero .eyebrow, .hero-actions, .hero-proof { justify-content: center; }
  .hero-lead { margin-left: auto; margin-right: auto; }
  .product-scene { margin-top: 30px; }
  .architecture-map { grid-template-columns: 1fr; max-width: 620px; margin: auto; }
  .architecture-link { height: 70px; justify-content: center; }
  .architecture-link i { width: 1px; height: 42px; background: linear-gradient(#cfdcd7, var(--green), #cfdcd7); }
  .architecture-link i::after { right: -3px; top: auto; bottom: 1px; transform: rotate(135deg); }
  .feature { grid-column: span 3; }
  .feature-wide { grid-column: span 6; }
  .workflow-section { grid-template-columns: 1fr; gap: 45px; }
  .agent-grid { grid-template-columns: 1fr; max-width: 620px; margin: auto; }
  .agent-card { min-height: 340px; }
  .security-section { grid-template-columns: 1fr; gap: 45px; }
  .access-section { grid-template-columns: 1fr; gap: 45px; }
  .faq-section { grid-template-columns: 1fr; gap: 35px; }
  .final-cta { text-align: center; flex-direction: column; gap: 35px; }
  .stats-grid { grid-template-columns: repeat(2, 1fr); }
  .users-toolbar { grid-template-columns: 1fr 1fr; }
  .users-toolbar > div { grid-column: 1 / -1; }
}

@media (max-width: 680px) {
  .site-header, .hero, .section, .final-cta, .admin-main { width: min(100% - 28px, 1120px); }
  .site-header { height: 66px; }
  .header-cta { display: none; }
  .header-login { padding-right: 0; }
  .hero { grid-template-columns:minmax(0,1fr); padding-top: 50px; overflow:hidden; }
  .hero-copy { width:100%; }
  .hero .eyebrow { flex-wrap:wrap; }
  .hero h1 { font-size: 43px; letter-spacing: -2.7px; }
  .hero-actions, .hero-proof { flex-direction: column; }
  .button { width: 100%; }
  .product-scene { width:calc(100% + 50px); min-height: 360px; margin-left: -25px; margin-right: -25px; overflow:hidden; }
  .product-window { transform: scale(.8); min-width: 600px; }
  .floating-card { display: none; }
  .trust-strip { padding: 22px; flex-wrap: wrap; gap: 18px 28px; }
  .trust-strip > span { width: 100%; text-align: center; }
  .section { padding: 78px 0; }
  .section-heading h2, .workflow-copy h2, .faq-heading h2, .security-intro h2, .access-section h2 { font-size: 34px; letter-spacing: -2px; }
  .architecture-map { padding: 18px; border-radius: 18px; }
  .architecture-node { min-height: 170px; }
  .architecture-note { display: flex; flex-direction: column; align-items: center; gap: 7px; }
  .feature-grid { display: block; }
  .feature { margin-bottom: 13px; }
  .project-stack { grid-template-columns: 1fr; }
  .workflow-section { padding: 75px 22px; }
  .workflow-copy .button { width: 100%; }
  .agent-requirements { grid-template-columns: 1fr; text-align: center; }
  .security-section { padding: 75px 22px; }
  .security-facts { grid-template-columns: 1fr; }
  .security-facts article { min-height: auto; }
  .access-includes { grid-template-columns: 1fr; }
  .final-cta { padding: 40px 25px; }
  .final-cta > div { display: block; }
  .final-cta .brand-symbol { margin-bottom: 20px; }
  .final-cta h2 { font-size: 27px; }
  .final-cta p { margin-top: 9px; }
  footer { display: flex; flex-direction: column; align-items: flex-start; padding: 35px 22px; }
  .footer-brand-wrap { flex-direction: column; align-items: flex-start; gap: 8px; }
  .footer-links { flex-wrap: wrap; gap: 15px 22px; }
  footer small { grid-column: auto; }
  .admin-main { padding-top: 28px; }
  .admin-login { margin-top: 25px; padding: 27px 22px; }
  .admin-title { align-items: flex-start; gap: 25px; flex-direction: column; }
  .stats-grid { grid-template-columns: 1fr 1fr; gap: 8px; }
  .stats-grid article { padding: 15px; min-height: 110px; }
  .users-toolbar { grid-template-columns: 1fr; }
  .users-toolbar > div { grid-column: auto; }
  table { min-width: 880px; }
}

.account-page { min-height:100vh; background:
  radial-gradient(circle at 15% 10%,rgba(49,202,132,.13),transparent 34%),
  radial-gradient(circle at 88% 75%,rgba(56,115,255,.09),transparent 30%),#f4f7f5; }
.account-main { min-height:calc(100vh - 72px); display:grid; place-items:center; padding:45px 22px; }
.account-card { width:min(480px,100%); padding:42px; border:1px solid #d9e2dd; border-radius:24px; background:#fff; box-shadow:0 28px 80px rgba(20,43,31,.12); }
.account-card h1 { margin:10px 0 14px; color:#18271f; font-size:38px; line-height:1.04; letter-spacing:-2.2px; }
.account-lead { margin:0 0 26px; color:#68776f; font-size:14px; line-height:1.65; }
.auth-tabs { display:grid; grid-template-columns:1fr 1fr; gap:4px; margin-bottom:21px; padding:4px; border-radius:12px; background:#eef3f0; }
.auth-tabs button { padding:10px; border:0; border-radius:9px; background:transparent; color:#708078; cursor:pointer; font-weight:700; }
.auth-tabs button.active { background:#fff; color:#17271f; box-shadow:0 3px 10px rgba(20,43,31,.08); }
.account-card form { display:grid; gap:14px; }
.account-card form label { display:grid; gap:7px; color:#52635a; font-size:12px; font-weight:700; }
.account-card form input { width:100%; padding:13px 14px; border:1px solid #d4dfd9; border-radius:10px; background:#fbfdfc; color:#17271f; font:inherit; outline:none; }
.account-card form input:focus { border-color:#19945c; box-shadow:0 0 0 3px rgba(25,148,92,.11); }
.account-security { display:block; margin-top:20px; color:#8a9891; font-size:10px; line-height:1.55; text-align:center; }
.subscription-card { text-align:center; }
.subscription-lock { width:62px; height:62px; display:grid; place-items:center; margin:0 auto 18px; border-radius:18px; background:#eaf8f1; color:#15935a; font-size:30px; font-weight:800; }
.account-identity { display:grid; grid-template-columns:1fr auto; gap:8px; margin:22px 0 12px; padding:14px; border:1px solid #d8e2dd; border-radius:12px; background:#f7faf8; text-align:left; }
.account-identity span { grid-column:1/-1; color:#7b8a82; font-size:9px; font-weight:800; text-transform:uppercase; letter-spacing:.08em; }
.account-identity code { overflow:hidden; color:#23352b; font-size:12px; text-overflow:ellipsis; }
.account-identity button { border:0; background:transparent; color:#138e57; cursor:pointer; font-size:10px; font-weight:800; }
.subscription-status { display:flex; align-items:center; gap:10px; padding:13px 15px; border-radius:11px; background:#fff8e8; text-align:left; }
.subscription-status i { width:9px; height:9px; border-radius:50%; background:#e8ad35; box-shadow:0 0 0 5px rgba(232,173,53,.13); }
.subscription-status b,.subscription-status small { display:block; }
.subscription-status b { color:#674a13; font-size:12px; }.subscription-status small { margin-top:2px; color:#9c7f45; font-size:10px; }
.account-actions { display:grid; grid-template-columns:1fr auto; gap:8px; margin-top:18px; }
@media(max-width:560px){.account-card{padding:29px 22px;border-radius:18px}.account-card h1{font-size:31px}.account-actions{grid-template-columns:1fr}}
