/* Forest, warm white and lime: the palette of Permission is conditional. */
:root {
  color-scheme: dark;
  --paper: #111c16;
  --ink: #f3f5ed;
  --muted: #b6c3b1;
  --line: #344337;
  --surface: #17251c;
  --surface-raised: #1d2b20;
}
body { background: var(--paper); color: var(--ink); }
::selection { background: var(--lime); color: var(--dark); }
a:focus-visible, button:focus-visible, summary:focus-visible {
  outline-color: var(--lime);
}
.skip { color: var(--dark); }
.header { max-width: 1360px; }
.header nav a:hover, .text-link:hover, .footer a:hover,
.document-nav a:hover { color: var(--lime); }
h1 em, .hero h1 em, .custody-section h2 em { color: var(--lime); }
.tiny-rule { background: var(--lime); }
.hero { padding-top: 70px; padding-bottom: 76px; }
.hero h1 { font-size: clamp(56px, 5.6vw, 76px); line-height: 1.04; letter-spacing: -3px; }
.hero h1 > span, .hero h1 > em { display: block; }
.hero-strapline {
  display: flex;
  align-items: baseline;
  gap: 11px;
  margin: 0 0 29px;
  color: var(--muted);
  font-size: 12px;
  line-height: 1.6;
}
.strapline-brand { font-weight: 650; color: var(--lime); }
.strapline-divider { color: #96a68b; }
.hero-description { max-width: 510px; }
.hero-value { color: #d8e5cd; border-color: #6f854b; }
.button.dark, .button.lime {
  background: var(--lime);
  color: var(--dark);
  border-color: var(--lime);
}
.button.dark:hover, .button.lime:hover { background: #f2fab2; border-color: #f2fab2; }
.custody-visual { background: #152219; border-color: #3d513d; box-shadow: 0 22px 60px #00000020; }
.visual-runtime { background: #e9eece; color: #18231e; }
.proof-strip { background: var(--surface); }
.proof-inner strong { color: #e6eddc; }
.step, .difference-number { color: #bacd97; }
.audience-section { background: var(--surface); }
.audience-grid article, .audience-grid li { border-color: var(--line); }
.audience-title > span { border-color: #64795b; color: var(--lime); }
.audience-grid li::before { color: var(--lime); }
.release-section { border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); }
.evidence-card { background: var(--surface); }
.evidence-card:hover { background: var(--surface-raised); }
.card-meta > span:last-child { color: #b7c99e; }
.evidence-word { color: var(--lime); }
.evidence-stat > span { color: #b5c59f; }
.pilot-section { background: var(--surface); border-top: 1px solid var(--line); }
.document-body .eyebrow { color: #bed29f; }
.finding, .review-callout { background: var(--surface-raised); }
.finding { border-left-color: #a6c274; }
.limit { background: #292a20; border-left-color: #c1a874; }
.finding p, .limit p { color: #c9d2c1; }
.document-body .source-note { color: #b0bda8; }
.document-tags span { background: var(--surface); }

/* Keep the brand, navigation and legal line on consistent page rails. */
.footer {
  display: block;
  padding-top: 38px;
  padding-bottom: 28px;
  border-top: 1px solid var(--line);
}
.footer-top, .footer-bottom { display: flex; align-items: center; justify-content: space-between; }
.footer-top { gap: 32px; }
.footer .brand-logo { width: 185px; }
.footer-links { display: flex; flex-wrap: wrap; align-items: center; gap: 26px; font-size: 13px; }
.footer-links a { color: #d2dccb; }
.footer-bottom { gap: 24px; margin-top: 28px; padding-top: 21px; border-top: 1px solid var(--line); }
.footer-bottom p { margin: 0; font-size: 12px; line-height: 1.6; color: var(--muted); }
.footer-bottom p:last-child { text-align: right; }

@media (max-width: 1100px) and (min-width: 801px) {
  .hero h1 { font-size: clamp(43px, 5.45vw, 60px); letter-spacing: -2.2px; }
  .hero-strapline { gap: 8px; font-size: 11px; }
}
@media (max-width: 800px) {
  .hero { padding-top: 52px; padding-bottom: 55px; }
  .hero h1 { font-size: clamp(50px, 8.6vw, 68px); }
  .footer-top { gap: 24px; }
  .footer-links { gap: 20px; }
}
@media (max-width: 540px) {
  .hero { padding-top: 40px; }
  .hero h1 { font-size: clamp(36px, 11.35vw, 58px); letter-spacing: -1.9px; line-height: 1.07; }
  .hero-strapline { gap: 9px; font-size: 11px; margin-bottom: 27px; }
  .strapline-brand, .strapline-divider { flex-shrink: 0; }
  .hero-strapline > span:last-child { max-width: 210px; }
  .footer { padding-top: 30px; padding-bottom: 26px; }
  .footer-top, .footer-bottom { flex-direction: column; align-items: flex-start; }
  .footer-top { gap: 25px; }
  .footer-links { gap: 22px; }
  .footer-bottom { gap: 8px; margin-top: 25px; padding-top: 20px; }
  .footer-bottom p:last-child { text-align: left; }
}

/* A labeled social link with a comfortable keyboard and touch target. */
.footer-links .linkedin-link{width:40px;height:40px;display:grid;place-items:center;border:1px solid #4b5e46;border-radius:4px;color:#d9e7c7;flex-shrink:0}
.footer-links .linkedin-link:hover{color:var(--lime);border-color:var(--lime);background:#1d2b20}
.header nav{gap:24px}
@media(max-width:1100px){.header nav{gap:18px;font-size:12px}.header .brand-logo{width:190px}}
@media(max-width:800px){.header .brand-logo{width:172px}}
@media(max-width:540px){.footer-links{gap:20px}.footer-links .linkedin-link{width:36px;height:36px}}
@media(max-width:360px){.header .brand-logo{width:147px}.footer-links{gap:15px;font-size:12px}}

/* Founder identity belongs beside the invitation to work together. */
.founder-note{max-width:440px;margin-top:32px;padding-top:24px;border-top:1px solid #4b5e46}
.founder-note>strong{display:block;color:var(--ink);font-size:18px;font-weight:600;line-height:1.4}
.founder-note>span{display:block;margin-top:7px;color:var(--muted);font-size:13px;line-height:1.65}
.founder-note p{margin:15px 0 13px;color:var(--muted);font-size:14px;line-height:1.7}
.founder-note>a{display:inline-flex;align-items:center;gap:9px;padding:4px 0;color:var(--lime);font-size:13px;text-decoration:underline;text-underline-offset:4px}
.founder-note>a:hover{color:#f2fab2}
.review-callout .founder-note{margin:24px 0}

/* Keep the expanded hardware list readable at intermediate widths. */
.proof-inner{flex-wrap:wrap}
.proof-inner .proof-blackwell{line-height:1.35}
