:root {
  --paper: #fffdf8;
  --ink: #292b2b;
  --plum: #393b3b;
  --muted: #686c6b;
  --line: #e5e3dc;
  --white: #fffdfb;
  --rose: #ecd9da;
  font-family: Arial, Helvetica, sans-serif;
  color: var(--ink);
  background: var(--paper);
  font-synthesis: none;
}
* {
  box-sizing: border-box;
}
body {
  margin: 0;
}
a {
  color: inherit;
  text-underline-offset: 4px;
}
button,
input {
  font: inherit;
}
button,
a,
input {
  touch-action: manipulation;
}
button,
a:focus-visible,
input:focus-visible,
summary:focus-visible {
  outline-offset: 4px;
}
a:focus-visible,
button:focus-visible,
input:focus-visible,
summary:focus-visible {
  outline: 2px solid var(--plum);
}
[hidden] {
  display: none !important;
}
.skip {
  position: absolute;
  top: -100px;
  z-index: 10;
  background: white;
  padding: 16px;
}
.skip:focus {
  top: 0;
}
.site-header {
  max-width: 1200px;
  margin: auto;
  padding: 24px 32px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
}
.wordmark {
  font:
    28px Georgia,
    serif;
  text-decoration: none;
  display: flex;
  gap: 9px;
  align-items: center;
}
.beta {
  font:
    12px Arial,
    sans-serif;
  color: var(--muted);
  border: 1px solid var(--line);
  border-radius: 20px;
  padding: 3px 7px;
}
.site-header nav {
  display: flex;
  align-items: center;
  gap: 28px;
  font-size: 14px;
}
.site-header nav a {
  text-decoration: none;
  min-height: 44px;
  display: flex;
  align-items: center;
}
.small-button,
.outline-button {
  border: 1px solid var(--line);
  border-radius: 9px;
  padding: 12px 20px;
  background: transparent;
  text-decoration: none;
  display: inline-flex;
  justify-content: center;
  align-items: center;
  min-height: 44px;
}
.hero {
  max-width: 1160px;
  min-height: 650px;
  margin: auto;
  padding: 56px 32px 64px;
  display: grid;
  grid-template-columns: 1.1fr 1fr;
  gap: 80px;
  align-items: center;
}
.eyebrow {
  display: block;
  font-size: 13px;
  letter-spacing: 0.07em;
  color: var(--muted);
  margin-bottom: 20px;
}
.hero h1 {
  font:
    clamp(48px, 5.7vw, 76px) / 1.04 Georgia,
    serif;
  letter-spacing: -0.045em;
  margin: 0 0 26px;
}
.hero h1 em {
  font-weight: 400;
  color: var(--plum);
}
p {
  font-size: 16px;
  line-height: 1.65;
}
.hero-copy > p {
  max-width: 390px;
  color: var(--muted);
  font-size: 18px;
}
.actions {
  display: flex;
  align-items: center;
  gap: 26px;
  margin-top: 30px;
}
.button {
  display: inline-flex;
  justify-content: center;
  align-items: center;
  min-height: 48px;
  padding: 14px 25px;
  border: 1px solid var(--plum);
  border-radius: 10px;
  background: var(--plum);
  color: white;
  text-decoration: none;
  cursor: pointer;
  font-size: 16px;
}
.text-link {
  font-size: 14px;
}
.fine,
.hero-copy > .fine {
  font-size: 12px;
  line-height: 1.6;
  color: var(--muted);
}
.product-demo {
  background: var(--white);
  border: 1px solid var(--line);
  border-radius: 18px;
  box-shadow: 0 18px 60px #45223512;
  overflow: hidden;
  max-width: 430px;
  width: 100%;
  margin: auto;
  min-height: 532px;
}
.demo-top {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 18px;
}
.workspace-avatar {
  width: 42px;
  height: 42px;
  display: grid;
  place-items: center;
  background: #e3ddd5;
  border-radius: 50%;
  color: var(--plum);
  font-size: 14px;
  flex-shrink: 0;
}
.demo-top strong {
  font-size: 14px;
}
.demo-top div > span {
  display: block;
  font-size: 12px;
  color: var(--muted);
  margin-top: 4px;
}
.sample {
  margin-left: auto;
  font-size: 12px;
  color: var(--muted);
}
.demo-tabs {
  display: flex;
  border-top: 1px solid var(--line);
  border-bottom: 1px solid var(--line);
}
.demo-tabs button {
  flex: 1;
  border: 0;
  background: transparent;
  padding: 13px 6px;
  cursor: pointer;
  color: var(--muted);
  font-size: 14px;
}
.demo-tabs button[aria-selected="true"] {
  color: var(--plum);
  box-shadow: inset 0 -2px var(--plum);
}
.demo-photo {
  width: 100%;
  height: 155px;
  object-fit: cover;
  display: block;
}
.demo-content {
  padding: 20px;
}
.demo-content h3 {
  font:
    22px Georgia,
    serif;
  margin: 0 0 8px;
}
.demo-content > p {
  font-size: 14px;
  margin: 8px 0 14px;
  color: var(--muted);
}
.demo-row {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 12px 0;
  border-top: 1px solid var(--line);
}
.demo-row strong {
  font-size: 13px;
}
.demo-row small {
  display: block;
  font-size: 12px;
  color: var(--muted);
  margin-top: 4px;
}
.number {
  color: var(--plum);
  font-size: 12px;
}
.pill {
  font-size: 12px;
  border-radius: 20px;
  padding: 5px 9px;
  background: #e6eee7;
  color: #32573b;
  white-space: nowrap;
}
.demo-row > .pill {
  margin-left: auto;
}
.pill.muted {
  background: #f0e9ec;
  color: var(--plum);
}
.calendar-day {
  margin-top: 20px;
  font-size: 14px;
}
.calendar-event {
  margin-top: 9px;
  border-left: 3px solid #75465c;
  padding: 13px;
  background: #f0e7eb;
  border-radius: 6px;
  display: grid;
  gap: 7px;
}
.calendar-event small,
.calendar-event span {
  font-size: 12px;
}
.color-1 {
  border-color: #617c69;
  background: #edf0eb;
}
.color-2 {
  border-color: #7770a0;
  background: #eeecf4;
}
.section {
  max-width: 1160px;
  margin: auto;
  padding: 70px 32px;
  border-top: 1px solid var(--line);
}
h2 {
  font:
    clamp(30px, 3.5vw, 44px) / 1.15 Georgia,
    serif;
  letter-spacing: -0.025em;
  margin: 0 0 24px;
}
.steps {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 48px;
  margin-top: 44px;
}
.step {
  font-size: 13px;
  color: var(--plum);
  display: block;
  margin-bottom: 20px;
}
.steps h3,
.feature-grid h3 {
  font:
    23px Georgia,
    serif;
  margin: 0 0 12px;
}
.steps p,
.feature-grid p,
.workspace-section p,
.platform-callout p {
  color: var(--muted);
  margin: 0;
  max-width: 410px;
}
.workspace-section {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 80px;
  align-items: center;
}
.workspace-list {
  border: 1px solid var(--line);
  border-radius: 16px;
  background: var(--white);
  padding: 6px 22px;
}
.workspace-list > div {
  display: grid;
  grid-template-columns: 44px 1fr;
  column-gap: 14px;
  padding: 22px 0;
  border-bottom: 1px solid var(--line);
}
.workspace-list > div:last-child {
  border: 0;
}
.workspace-list .workspace-avatar {
  grid-row: span 2;
}
.workspace-list strong {
  font-size: 15px;
}
.workspace-list div > span:last-child {
  font-size: 13px;
  color: var(--muted);
  margin-top: 6px;
}
.rose {
  background: var(--rose);
}
.dark {
  background: var(--plum);
  color: white;
}
.feature-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 30px;
}
.feature-grid h3 {
  font-size: 21px;
}
.feature-grid p {
  font-size: 14px;
}
.platform-callout {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 40px;
}
.platform-callout p {
  max-width: 580px;
}
.platform-callout a {
  flex-shrink: 0;
}
.faq {
  max-width: 850px;
}
.faq details {
  border-bottom: 1px solid var(--line);
  padding: 18px 0;
}
.faq summary {
  cursor: pointer;
  min-height: 28px;
  line-height: 1.5;
  font-size: 16px;
}
.faq p {
  color: var(--muted);
  margin-bottom: 0;
}
.closing {
  text-align: center;
  padding: 60px 24px 80px;
  background: #eee7e9;
}
.closing > .text-link {
  display: block;
  margin-top: 24px;
}
footer {
  max-width: 1200px;
  margin: auto;
  padding: 35px 32px;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  gap: 25px;
}
footer > div {
  display: flex;
  align-items: center;
  gap: 20px;
  flex-wrap: wrap;
  font-size: 13px;
}
footer small {
  flex-basis: 100%;
  color: var(--muted);
  font-size: 12px;
}
.auth-layout {
  min-height: calc(100svh - 220px);
  display: grid;
  place-items: center;
  padding: 30px 20px 50px;
}
.auth-card {
  max-width: 420px;
  width: 100%;
}
.back-link {
  display: block;
  margin-bottom: 24px;
  font-size: 14px;
}
.auth-card h1,
.page-width h1 {
  font:
    46px/1.1 Georgia,
    serif;
  letter-spacing: -0.04em;
  margin: 0 0 15px;
}
.auth-intro {
  color: var(--muted);
  margin-bottom: 26px;
  font-size: 15px;
}
.provider-list {
  display: grid;
  gap: 10px;
}
.google-sign-in { width: 100%; min-height: 44px; }
[data-google-button] { display: flex; justify-content: center; }
[data-google-status][hidden], [data-google-retry][hidden] { display: none; }
.provider {
  width: 100%;
  min-height: 50px;
  border: 1px solid var(--line);
  background: var(--white);
  border-radius: 10px;
  cursor: pointer;
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 10px;
  padding: 12px;
}
.provider small {
  font-size: 12px;
  color: var(--muted);
}
button:disabled {
  opacity: 0.62;
  cursor: not-allowed;
}
.or {
  display: flex;
  align-items: center;
  gap: 16px;
  color: var(--muted);
  font-size: 13px;
  margin: 20px 0;
}
.or:before,
.or:after {
  content: "";
  height: 1px;
  background: var(--line);
  flex: 1;
}
label {
  display: block;
  font-size: 14px;
  margin-bottom: 8px;
}
input {
  border: 1px solid var(--line);
  background: var(--white);
  border-radius: 9px;
  padding: 13px;
  width: 100%;
  min-height: 48px;
  margin-bottom: 12px;
}
.full {
  width: 100%;
}
.existing {
  display: block;
  font-size: 14px;
  text-align: center;
  margin-top: 22px;
}
.auth-card > .fine {
  text-align: center;
}
.error {
  color: #a52235;
  border-left: 3px solid #a52235;
  padding: 10px 12px;
  background: #f8eeee;
}
.page-width {
  max-width: 850px;
  margin: auto;
  padding: 45px 24px 80px;
  min-height: 60svh;
}
.page-width > p,
.platform-details p {
  color: var(--muted);
}
.availability article {
  padding: 26px 0;
  border-bottom: 1px solid var(--line);
}
.availability article > div {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
}
.availability h2,
.support-grid h2 {
  font-size: 27px;
  margin: 0;
}
.availability p {
  margin-bottom: 0;
}
.support-grid article {
  padding: 24px 0;
  border-bottom: 1px solid var(--line);
}
.draft-note {
  border-left: 3px solid var(--plum);
  background: #eee7e9;
  padding: 16px 20px;
  font-size: 14px;
  line-height: 1.6;
  margin: 25px 0;
}
.legal-list a {
  display: flex;
  justify-content: space-between;
  gap: 15px;
  border-bottom: 1px solid var(--line);
  padding: 20px 0;
  text-decoration: none;
}
.legal-list span {
  font-size: 13px;
  color: var(--muted);
}
.contents {
  display: grid;
  gap: 10px;
  padding: 25px 0;
  font-size: 14px;
}
.legal-document section {
  scroll-margin-top: 25px;
}
.legal-document h2 {
  font:
    25px Georgia,
    serif;
  margin: 32px 0 12px;
}
.legal-document p,
.legal-pack p {
  overflow-wrap: anywhere;
}
.legal-document .lead {
  font-size: 17px;
}
.print-button {
  cursor: pointer;
}
.check-email {
  text-align: center;
}
.check-email h1 {
  font-size: 36px;
}
.check-email p {
  color: var(--muted);
}
@media (max-width: 800px) {
  .hero {
    gap: 32px;
    padding-top: 30px;
  }
  .feature-grid {
    grid-template-columns: 1fr 1fr;
  }
  .workspace-section {
    gap: 35px;
  }
  .hero h1 {
    font-size: 52px;
  }
  .steps {
    gap: 24px;
  }
}
@media (max-width: 600px) {
  .site-header {
    padding: 17px 20px;
  }
  .wordmark {
    font-size: 25px;
  }
  .site-header nav {
    gap: 14px;
  }
  .site-header nav a:not(.small-button) {
    display: none;
  }
  .small-button {
    padding: 8px 15px;
  }
  .hero {
    grid-template-columns: 1fr;
    gap: 28px;
    padding: 30px 20px 42px;
    min-height: 0;
  }
  .hero h1 {
    font-size: 50px;
    margin-bottom: 16px;
  }
  .hero-copy > p {
    font-size: 16px;
    margin-bottom: 0;
  }
  .eyebrow {
    font-size: 12px;
    margin-bottom: 16px;
  }
  .actions {
    margin-top: 22px;
  }
  .hero-copy > .fine {
    margin-top: 13px;
  }
  .product-demo {
    max-width: 400px;
    min-height: 0;
  }
  .demo-photo {
    height: 135px;
  }
  .demo-content {
    padding: 16px;
  }
  .demo-row {
    padding: 10px 0;
  }
  .section {
    padding: 42px 20px;
  }
  .steps {
    grid-template-columns: 1fr;
    gap: 26px;
    margin-top: 28px;
  }
  .steps article {
    display: grid;
    grid-template-columns: 35px 1fr;
    gap: 0 12px;
  }
  .steps .step {
    grid-row: span 2;
    margin-top: 5px;
  }
  .steps h3 {
    font-size: 23px;
  }
  .steps p {
    font-size: 15px;
  }
  .workspace-section {
    grid-template-columns: 1fr;
    gap: 24px;
  }
  .feature-grid {
    gap: 25px 20px;
  }
  .feature-grid h3 {
    font-size: 22px;
  }
  .platform-callout {
    display: block;
  }
  .platform-callout a {
    margin-top: 24px;
  }
  .closing {
    padding: 42px 20px;
  }
  .closing h2 {
    font-size: 32px;
  }
  footer {
    padding: 28px 20px;
  }
  footer > div {
    gap: 16px;
  }
  .auth-layout {
    padding-top: 18px;
  }
  .auth-card h1 {
    font-size: 38px;
  }
  .auth-card .back-link {
    margin-bottom: 18px;
  }
  .auth-intro {
    margin-bottom: 18px;
  }
  .auth-card .provider {
    min-height: 48px;
  }
  .page-width {
    padding: 30px 20px 50px;
  }
  .page-width h1 {
    font-size: 39px;
  }
  .legal-list span {
    display: none;
  }
}
@media (prefers-reduced-motion: no-preference) {
  .hero-copy,
  .product-demo {
    animation: arrive 0.45s ease-out both;
  }
  .product-demo {
    animation-delay: 0.08s;
  }
  @keyframes arrive {
    from {
      transform: translateY(12px);
      opacity: 0;
    }
    to {
      transform: none;
      opacity: 1;
    }
  }
}
@media print {
  .site-icon,
  .legal-meta,
  .related-documents {
    display: none;
  }
  .pack-index {
    margin: 24pt 0;
  }
  .pack-index a {
    display: block;
    margin: 6pt 0;
    text-decoration: none;
  }
  .pack-index a span:first-child { margin-right: 8pt; }
  .pack-index a span:last-child { display: none; }
  body {
    background: white;
    color: black;
    font:
      11pt/1.5 Georgia,
      serif;
  }
  .site-header,
  footer,
  .skip,
  .print-button,
  .back-link,
  .contents {
    display: none;
  }
  .page-width {
    max-width: none;
    padding: 0;
    min-height: 0;
  }
  .legal-document h1 {
    font-size: 28pt;
  }
  .legal-document h2 {
    font-size: 15pt;
    break-after: avoid;
  }
  .legal-document p {
    font-size: 11pt;
    orphans: 3;
    widows: 3;
  }
  .draft-note {
    background: transparent;
    border: 1px solid #777;
  }
  .legal-document section {
    break-inside: auto;
  }
  @page {
    size: letter;
    margin: 0.75in;
  }
}
.analytics-section {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 70px;
  align-items: center;
}
.analytics-section p {
  color: var(--muted);
  max-width: 420px;
}
.analytics-preview {
  border: 1px solid var(--line);
  border-radius: 16px;
  background: var(--white);
  padding: 26px;
}
.chart-head {
  display: flex;
  justify-content: space-between;
  gap: 15px;
  font-size: 14px;
}
.chart-head span {
  font-size: 12px;
  color: var(--muted);
}
.metric-row {
  display: flex;
  justify-content: space-between;
  margin: 27px 0;
}
.metric-row small {
  display: block;
  color: var(--muted);
  font-size: 12px;
}
.metric-row strong {
  font:
    30px Georgia,
    serif;
  display: block;
  margin-top: 7px;
}
.bars {
  height: 130px;
  display: flex;
  align-items: end;
  gap: 8px;
  border-bottom: 1px solid var(--line);
}
.bars i {
  flex: 1;
  background: #75465c;
  border-radius: 4px 4px 0 0;
}
.bar-0 {
  height: 28%;
}
.bar-1 {
  height: 40%;
}
.bar-2 {
  height: 33%;
}
.bar-3 {
  height: 57%;
}
.bar-4 {
  height: 46%;
}
.bar-5 {
  height: 65%;
}
.bar-6 {
  height: 54%;
}
.bar-7 {
  height: 71%;
}
.bar-8 {
  height: 62%;
}
.bar-9 {
  height: 85%;
}
.bar-10 {
  height: 75%;
}
.bar-11 {
  height: 98%;
}
.chart-foot {
  display: flex;
  justify-content: space-between;
  margin-top: 12px;
  color: var(--muted);
  font-size: 12px;
}
.spaced {
  margin-top: 36px;
}
.feature-jump {
  display: flex;
  gap: 10px;
  flex-wrap: wrap;
  margin-top: 24px;
}
.feature-jump a {
  padding: 10px 14px;
  border: 1px solid var(--line);
  border-radius: 25px;
  text-decoration: none;
  font-size: 14px;
}
.product-intro {
  min-height: 0;
}
.product-feature {
  display: grid;
  grid-template-columns: 1.3fr 1fr;
  gap: 70px;
  scroll-margin-top: 20px;
}
.product-feature p {
  color: var(--muted);
  max-width: 540px;
}
.product-feature ul {
  padding: 0;
  list-style: none;
  align-self: center;
}
.product-feature li {
  padding: 17px 0;
  border-bottom: 1px solid var(--line);
}
@media (max-width: 600px) {
  .analytics-section,
  .product-feature {
    grid-template-columns: 1fr;
    gap: 24px;
  }
  .analytics-preview {
    padding: 20px;
  }
  .product-feature ul {
    margin: 0;
  }
  .product-feature li {
    padding: 12px 0;
  }
}

.brand-logo{display:block;width:172px;height:auto}.hero h1 em{color:#886014}.closing{background:#fff3cf}.workspace-avatar{background:#f7e6b6}.rose{background:#ffe1bd}.dark{background:#393b3b;color:white}.hero h1{font-size:clamp(44px,5vw,66px)}@media(max-width:600px){.brand-logo{width:148px}.hero h1{font-size:44px}}
/* Public site refinement: compact layouts, readable legal documents. */
:root { --plum:#392039; --ink:#302b30; --muted:#665e65; --line:#e6dfd4; }
.home-hero { min-height:0; padding-top:36px; padding-bottom:42px; gap:48px; }
.hero-details { display:flex; flex-wrap:wrap; gap:14px; margin-top:24px; font-size:12px; color:var(--muted); }
.hero-details span+span::before { content:'·'; margin-right:14px; }
.home-hero .product-demo { box-shadow:0 16px 48px #3920390d; }
.home-hero .demo-photo { height:130px; object-fit:cover; width:100%; }
.home-hero .demo-content { padding:20px 24px; }
.home-hero .demo-row { padding:11px 0; }
.home-workflow { padding-top:36px; padding-bottom:40px; border-top:1px solid var(--line); }
.home-workflow .section-heading { margin-bottom:22px; }
.home-workflow h2 { margin:10px 0; }
.home-workspaces { padding-top:36px; padding-bottom:36px; gap:42px; }
.home-workspaces h2 { font-size:clamp(28px,3.5vw,42px); }
.home-links { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:22px; padding-top:20px; padding-bottom:20px; }
.home-links a { display:grid; grid-template-columns:1fr auto; gap:8px; text-decoration:none; padding:24px; border:1px solid var(--line); border-radius:18px; background:linear-gradient(140deg,#fffdfb,#fbf3e2); }
.home-links a>span:first-child { font-size:12px; color:var(--muted); grid-column:1/-1; }
.home-links strong { font-weight:500; }
.home-faq { padding-top:32px; padding-bottom:36px; }
.home-closing { display:flex; justify-content:space-between; align-items:center; text-align:left; gap:24px; padding:32px max(24px,calc((100vw - 1096px)/2)); }
.home-closing h2 { font-size:clamp(28px,3vw,40px); margin:0 0 8px; }
.home-closing p { margin:0; }
.home-closing .button { flex-shrink:0; }
.legal-center { max-width:1100px; padding-top:35px; }
.legal-center h1 { margin-bottom:12px; }
.legal-intro { margin-top:0; color:var(--muted); }
.legal-groups { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:18px; margin:24px 0; }
.legal-group { padding:24px; border:1px solid var(--line); border-radius:18px; background:#fffefa; }
.legal-group h2 { font:23px Georgia,serif; margin:0 0 16px; }
.legal-group a { display:flex; justify-content:space-between; align-items:center; gap:12px; padding:12px 0; border-top:1px solid var(--line); text-decoration:none; min-height:48px; font-size:14px; }
.legal-group a:hover,.contents a:hover { color:#7c5414; text-decoration:underline; }
.legal-help { display:flex; gap:20px; flex-wrap:wrap; align-items:center; font-size:14px; }
.legal-help p { margin:0; }
.legal-document { max-width:1120px; padding-top:30px; }
.legal-heading { max-width:820px; }
.legal-heading .eyebrow { display:block; margin-top:24px; }
.legal-heading h1 { font-size:clamp(30px,4vw,48px); margin:14px 0; }
.legal-heading .lead { max-width:680px; }
.legal-reader { display:grid; grid-template-columns:240px minmax(0,1fr); gap:52px; margin-top:30px; }
.legal-reader aside { min-width:0; }
.legal-toc { position:sticky; top:24px; border:1px solid var(--line); border-radius:14px; padding:14px; }
.legal-toc summary { font-weight:600; cursor:pointer; }
.legal-toc .contents { padding:16px 0 0; font-size:13px; gap:12px; max-height:65vh; overflow:auto; }
.legal-toc .contents a { text-decoration:none; line-height:1.5; }
.legal-body { min-width:0; }
.legal-body section:first-child h2 { margin-top:0; }
.legal-body section { padding-bottom:12px; }
.legal-body p,.legal-pack p { line-height:1.75; font-size:16px; }
.legal-pack { max-width:850px; }
.legal-pack h2 { font:32px Georgia,serif; }
.legal-pack h3 { font:23px Georgia,serif; }
.pack-document { border-top:1px solid var(--line); margin-top:40px; padding-top:25px; }
@media(min-width:801px){ .legal-toc:not([open]) .contents { display:grid; } }
@media(max-width:800px){ .legal-groups { grid-template-columns:1fr; gap:12px; } .legal-group { padding:20px; } .legal-reader { grid-template-columns:1fr; gap:24px; } .legal-toc { position:static; } .home-links { gap:12px; } }
@media(max-width:600px){
 .site-header { padding:16px 20px; gap:12px; flex-wrap:wrap; }
 .site-header nav { gap:16px; font-size:12px; flex-wrap:wrap; }
 .brand-logo { width:132px; }
 .home-hero { padding-top:22px; padding-bottom:28px; gap:24px; }
 .home-hero h1 { font-size:clamp(35px,9.5vw,45px); }
 .hero-details { margin-top:16px; gap:10px; font-size:11px; }
 .hero-details span+span::before { margin-right:10px; }
 .home-hero .demo-photo { height:90px; }
 .home-hero .demo-content { padding:15px 18px; }
 .home-workflow,.home-workspaces,.home-faq { padding-top:26px; padding-bottom:26px; }
 .home-workflow .steps { gap:20px; }
 .home-workflow .step { width:30px; height:30px; font-size:13px; margin-bottom:10px; }
 .home-workflow h3 { margin:8px 0; }
 .home-links { grid-template-columns:1fr; padding-top:8px; padding-bottom:8px; }
 .home-links a { padding:16px 20px; }
 .home-closing { align-items:flex-start; flex-direction:column; }
 .legal-center,.legal-document { padding-top:24px; }
 .legal-group a { padding:11px 0; }
 .legal-heading .eyebrow { margin-top:16px; }
 .legal-body p { font-size:15px; }
 footer { padding-top:28px; padding-bottom:24px; }
}
@media print {
 .legal-reader { display:block; margin-top:15px; }
 .legal-reader aside,.legal-heading .back-link,.legal-pack>.back-link { display:none; }
 .legal-document,.legal-pack { max-width:none; padding:0; }
 .legal-body p,.legal-pack p { font-size:10.5pt; line-height:1.5; }
 .pack-document { break-before:page; border:0; padding:0; }
 .legal-pack h2,.legal-pack h3 { break-after:avoid; }
 .legal-body a,.legal-pack a { overflow-wrap:anywhere; }
}

.auth-card .email-preference-choice { display:flex; align-items:center; gap:12px; cursor:pointer; }
.auth-card .email-preference-choice input { width:20px; height:20px; margin:0; flex:none; accent-color:#51283d; }

/* Shared fallback/account pages follow the public/app design system as well. */
.account-page { --paper: #f5f3ed; --ink: #202b35; --plum: #a44f35; --muted: #62686b; --line: #d9d7ce; --white: #fffdf9; background: var(--paper); color: var(--ink); }
.account-page .wordmark, .account-page h1, .account-page h2, .account-page h3 { font-family: Arial, sans-serif; font-weight: 600; color: var(--ink); }
.account-page .auth-layout { padding: 24px 16px; }
.account-page .auth-card { max-width: 500px; padding: clamp(20px,4vw,36px); background: #fffdf9; border: 1px solid var(--line); border-radius: 24px; box-shadow: 0 12px 36px #202b350c; overflow-wrap: anywhere; }
.account-page .auth-card h1 { font-size: clamp(28px,5vw,38px); }
.account-page .email-preference-choice input { accent-color: #a44f35; }
.account-page input:not([type=checkbox]), .account-page select { max-width: 100%; min-width: 0; }
.account-page .page-width { border-radius: 16px; }
