/* Dscvry Record additions on top of the dscvryai.com stylesheets (site, sections, header, light, home, hub).
   Taken from Clarify's clarify.css (same product-site pattern). Keep this small: anything here should look like it
   belongs to dscvryai.com. */

/* product name next to the Dscvry logo */
.site-header .brand-link { gap: 12px; text-decoration: none; }
.site-header .brand-link:hover .brand-product { text-decoration: none; }
.site-header .brand-product {
  padding-left: 12px;
  border-left: 1px solid rgba(255, 255, 255, 0.35);
  color: #fff;
  font-size: 17px;
  font-weight: 500;
  letter-spacing: -0.01em;
  white-space: nowrap;
}
.light .site-header .brand-product { color: #151715; border-left-color: rgba(21, 23, 21, 0.25); }

/* plain nav links styled exactly like the dscvryai.com menu summaries */
.site-header .global-nav > a.nav-plain {
  display: flex;
  align-items: center;
  min-height: 38px;
  padding: 8px 4px;
  color: #fff;
  font-size: 16px;
  font-weight: 500;
  letter-spacing: -0.01em;
  text-decoration: none;
}
.light .site-header .global-nav > a.nav-plain { color: #151715; }
.site-header .global-nav > a.nav-plain:hover,
.site-header .global-nav > a.nav-plain[aria-current="page"] { text-decoration: underline; text-underline-offset: 6px; }

/* the four steps of a meeting: Record -> Transcript -> Who spoke -> Notes */
.flow { list-style: none; margin: 0 0 28px; padding: 0; display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 2px; }
.flow li { background: #fff; border: 1px solid rgba(21, 23, 21, 0.1); padding: 20px 18px 22px; display: grid; gap: 6px; align-content: start; position: relative; }
.flow li:not(:last-child)::after { content: '→'; position: absolute; right: -11px; top: 22px; z-index: 1; width: 20px; height: 20px; display: grid; place-items: center; background: #f5f4ef; border-radius: 50%; font-size: 12px; color: #4b5563; }
.flow-num { font-family: ui-monospace, Menlo, Consolas, monospace; font-size: 12px; color: #1f7a57; }
.flow strong { font-size: 20px; font-weight: 500; letter-spacing: -0.01em; }
.flow em { font-style: normal; font-family: ui-monospace, Menlo, Consolas, monospace; font-size: 11px; text-transform: uppercase; letter-spacing: 0.06em; color: #6b7280; }
.flow p { margin: 6px 0 0; color: #374151; font-size: 15px; line-height: 1.45; }
@media (max-width: 900px) { .flow { grid-template-columns: 1fr; } .flow li:not(:last-child)::after { content: '↓'; right: auto; left: 18px; top: auto; bottom: -11px; } }

/* an illustrative meeting recap */
.example-card { max-width: 860px; background: #0b1322; color: #e6edf6; padding: clamp(22px, 3vw, 34px); margin: 0 0 22px; }
.example-kicker { margin: 0 0 16px; font-family: ui-monospace, Menlo, Consolas, monospace; font-size: 12px; letter-spacing: 0.08em; text-transform: uppercase; color: #8fd3b6; }
.example-card dl { margin: 0; display: grid; grid-template-columns: max-content 1fr; gap: 10px 18px; font-size: clamp(16px, 1.6vw, 19px); line-height: 1.45; }
.example-card dt { color: #8fd3b6; font-weight: 500; }
.example-card dd { margin: 0; }
.example-card dd strong { color: #fff; font-weight: 600; background: linear-gradient(transparent 62%, rgba(143, 211, 182, 0.3) 62%); }
.example-note { margin: 18px 0 0; font-size: 13px; color: #9aa6b8; }
.flow-foot { max-width: 860px; margin: 0; font-size: 16px; line-height: 1.6; color: #374151; }

/* what stays on the PC and what leaves it: two plain lists side by side */
.data-split { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 2px; margin: 0 0 22px; }
.data-split > div { background: #fff; border: 1px solid rgba(21, 23, 21, 0.1); padding: clamp(20px, 2.4vw, 30px); }
.data-split h3 { margin: 0 0 12px; font-size: 22px; font-weight: 500; letter-spacing: -0.01em; }
.data-split ul { margin: 0; padding-left: 1.1em; display: grid; gap: 8px; color: #374151; font-size: 16px; line-height: 1.5; }
@media (max-width: 760px) { .data-split { grid-template-columns: 1fr; } }

/* two-column card grid */
.build-grid.build-grid-2 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
@media (max-width: 760px) { .build-grid.build-grid-2 { grid-template-columns: 1fr; } }

/* closing band: solid and outline buttons side by side */
.close-band .close-actions { display: flex; flex-wrap: wrap; justify-content: flex-start; gap: 12px; }
.btn-line {
  display: inline-flex; align-items: center; padding: 11px 21px;
  border: 1px solid currentColor; color: inherit; font-weight: 500; text-decoration: none;
}
.btn-line:hover { background: rgba(21, 23, 21, 0.06); }

/* beta page: keep the submit button above the fold on a laptop screen */
#form.hub-first .stage-head { margin-bottom: clamp(20px, 3vw, 36px); }
#form.hub-first .stage-title { font-size: clamp(44px, 6vw, 84px); }
#form.hub-first { padding-top: clamp(96px, 9vw, 128px); }
#form #contact-message { min-height: 96px; height: 96px; }
/* the "what for" choice, styled like the website's inputs (hub.css .contact-field input) */
.hub-raw .contact-field select {
  width: 100%; padding: 13px 14px; border: 1px solid rgba(11, 19, 34, 0.25); border-radius: 0;
  background: #fff; color: #0b1322; font: inherit; font-size: 16px;
}
.hub-raw .contact-field select:focus-visible { outline: 2px solid #0b1322; outline-offset: 1px; border-color: #0b1322; }

/* /demo/: the real app, framed (its own page is /demo-app/) */
.demo-try { list-style: none; margin: 0 0 18px; padding: 0; display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 2px; }
.demo-try li { background: #fff; border: 1px solid rgba(21, 23, 21, 0.1); padding: 14px 16px; font-size: 15px; line-height: 1.45; color: #374151; }
.demo-try b { display: block; color: #151715; font-weight: 500; margin-bottom: 2px; }
.demo-try kbd { font: 12px ui-monospace, Consolas, monospace; padding: 0 5px; border: 1px solid rgba(21, 23, 21, 0.2); border-bottom-width: 2px; background: #fff; }
@media (max-width: 900px) { .demo-try { grid-template-columns: 1fr 1fr; } }
@media (max-width: 560px) { .demo-try { grid-template-columns: 1fr; } }
.demo-frame { display: block; width: 100%; height: 1240px; border: 0; background: #e9ebe6; }
@media (max-width: 760px) { .demo-frame { height: 1500px; } }
.demo-after { margin-top: 14px; font-size: 15px; }

/* legal pages: a short summary box above the full text */
.legal-summary { max-width: 860px; background: #fff; border: 1px solid rgba(21, 23, 21, 0.12); padding: clamp(18px, 2.4vw, 28px); margin: 0 0 28px; }
.legal-summary ul { margin: 0; padding-left: 1.1em; display: grid; gap: 8px; }
