:root {
  --ink:#101722; --muted:#596575; --orange:#c94404; --line:#e1e5ea; --wash:#f5f6f8;
  color-scheme:light; color:var(--ink); background:#fff;
  font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif; font-size:16px;
}
* { box-sizing:border-box; }
body { margin:0; }
a { color:inherit; text-underline-offset:.25em; }
a:hover { text-decoration-thickness:2px; }
a:focus-visible,summary:focus-visible { outline:3px solid var(--orange); outline-offset:5px; }
img { max-width:100%; height:auto; }
p { line-height:1.65; margin:1em 0; }
h1,h2,h3 { line-height:1.08; letter-spacing:-.045em; margin:0; }
h1 { font-size:clamp(3rem,5.1vw,4.75rem); font-weight:750; }
h2 { font-size:clamp(2rem,3.2vw,3rem); }
h3 { font-size:1.3rem; line-height:1.25; letter-spacing:-.025em; }
header,main,footer { width:min(1300px,calc(100% - 112px)); margin:auto; }
header { display:flex; align-items:center; gap:28px; padding:28px 0; }
header nav { display:flex; gap:38px; margin-left:auto; align-items:center; }
nav a { font-size:1rem; text-decoration:none; }
nav a[aria-current] { color:var(--orange); }
.brand { font-weight:750; font-size:1.55rem; display:inline-flex; align-items:center; gap:12px; text-decoration:none; white-space:nowrap; letter-spacing:-.045em; }
.brand img { width:33px; filter:invert(40%) sepia(94%) saturate(2600%) hue-rotate(358deg) brightness(100%); }
.notice { text-align:center; background:#f8f9fa; color:var(--muted); padding:8px 18px; font-size:.8rem; line-height:1.5; border-bottom:1px solid #edf0f3; }
.button { display:inline-flex; justify-content:center; align-items:center; min-height:48px; padding:14px 24px; border-radius:9px; font-weight:650; background:var(--orange); color:#fff; text-decoration:none; line-height:1.35; text-align:center; border:1px solid var(--orange); }
.button:hover { background:#ab3903; }
.button.secondary { background:#fff; color:var(--ink); border-color:#a5adb7; }
.button.secondary:hover { background:var(--wash); }
.text-link { font-weight:600; color:var(--orange); }
.skip { position:absolute; left:15px; top:-100px; background:#fff; padding:15px; z-index:10; }
.skip:focus { top:10px; }
main:focus { outline:none; }
.hero { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:56px; align-items:center; padding:58px 0 72px; min-height:760px; }
.hero-copy h1 span,.hero-support span { display:block; }
.hero-copy h1 { letter-spacing:-.06em; line-height:1.08; }
.hero-support { margin:36px 0 40px; color:var(--muted); font-size:clamp(1.25rem,2vw,1.8rem); line-height:1.4; letter-spacing:-.025em; }
.primary-action { font-size:1.2rem; gap:22px; padding:17px 26px; }
.primary-action>span { font-size:1.7rem; line-height:1; font-weight:400; }
.trial-status { margin:12px 0 0; }
.fine,figcaption { font-size:.85rem; color:var(--muted); line-height:1.6; }
.relationship-example { margin:0; min-width:0; }
.product-card { border:1px solid #d4dae1; border-radius:16px; overflow:hidden; background:#fff; box-shadow:0 22px 55px #23384920,0 2px 5px #23384906; }
.window-bar { display:flex; align-items:center; justify-content:center; position:relative; min-height:42px; background:linear-gradient(#f8f9fa,#eff1f4); border-bottom:1px solid #dfe3e9; font-size:.9rem; }
.window-dots { display:flex; gap:8px; position:absolute; left:17px; }
.window-dots i { display:block; width:12px; height:12px; border-radius:50%; background:#ff6058; }
.window-dots i:nth-child(2) { background:#ffbf2f; }
.window-dots i:nth-child(3) { background:#2acb42; }
.card-content { padding:30px 32px 24px; }
.card-label,.context-block h3 { font-size:.72rem; font-weight:600; letter-spacing:.09em; text-transform:uppercase; color:var(--muted); line-height:1.5; }
.card-label { margin:0 0 20px; }
.person-heading { display:flex; gap:16px; align-items:center; padding-bottom:24px; border-bottom:1px solid var(--line); margin-bottom:24px; }
.avatar { flex:none; display:grid; place-items:center; width:58px; height:58px; border-radius:50%; background:#ffebe1; color:#3b4757; font-size:1.4rem; font-weight:600; }
.person-heading h2 { font-size:1.65rem; letter-spacing:-.04em; }
.person-heading p { margin:4px 0 0; color:var(--muted); font-size:.9rem; line-height:1.5; }
.context-block { margin-top:23px; }
.context-block p { margin:8px 0 0; font-size:.98rem; line-height:1.6; }
.reminder-label { text-transform:none; letter-spacing:0; display:block; font-size:.72rem; font-weight:400; }
.context-block .draft-example { background:var(--wash); padding:15px 17px; border-radius:10px; margin-top:9px; }
.handoff-caption { font-size:.75rem; color:var(--muted); text-align:right; margin:19px 0 0; }
.relationship-example figcaption { text-align:center; margin-top:15px; font-size:.72rem; }
.section { padding:72px 0; border-top:1px solid var(--line); scroll-margin-top:35px; }
.eyebrow { text-transform:uppercase; letter-spacing:.1em; font-size:.75rem; font-weight:600; margin:0 0 20px; color:var(--muted); }
.steps { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:50px; margin-top:42px; }
.step-number { display:block; font-size:.85rem; color:var(--orange); margin-bottom:20px; }
.steps p,.business-context p { color:var(--muted); }
.business-context { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:64px; }
.business-context>div>p:first-child { margin-top:0; }
.privacy-context h2 { font-size:clamp(2rem,3.2vw,3rem); }
.page-head { padding:64px 0 52px; max-width:850px; }
.lede { font-size:1.3rem; line-height:1.55; letter-spacing:-.01em; }
.page-head .lede { max-width:700px; }
.plans { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:26px; padding-bottom:70px; }
.plan { border:1px solid var(--line); border-radius:14px; padding:36px; display:flex; flex-direction:column; }
.plan.pro { border:2px solid var(--orange); }
.plan h2 { font-size:2.3rem; }
.plan .price { font-size:3.4rem; font-weight:700; letter-spacing:-.05em; margin:28px 0 0; line-height:1.2; }
.price span { font-size:1rem; font-weight:400; letter-spacing:0; color:var(--muted); }
.annual { color:var(--muted); margin:8px 0 20px; }
.plan ul { padding-left:20px; line-height:1.6; }
.plan li { padding:7px 0; }
.plan-actions { margin-top:auto; padding-top:22px; display:flex; flex-wrap:wrap; gap:12px; }
.availability { color:var(--muted); width:100%; margin-top:0; }
.pro .eyebrow { color:var(--orange); }
.prose { max-width:780px; }
.prose h2 { margin-bottom:24px; }
.prose h2:not(:first-child) { margin-top:50px; }
.prose h3 { margin-top:35px; }
.prose li { padding:8px 0; line-height:1.6; }
.closed { background:var(--wash); border-left:4px solid var(--orange); padding:28px 32px; margin-top:35px; }
.closed h2 { font-size:1.6rem; }
details { padding:22px 0; border-bottom:1px solid var(--line); }
summary { font-size:1.1rem; font-weight:650; cursor:pointer; line-height:1.5; }
details p { margin-bottom:4px; }
footer { border-top:1px solid var(--line); padding:30px 0; text-align:center; }
.footer-motto { font-size:1rem; color:var(--muted); margin:0 0 22px; }
footer nav { display:flex; justify-content:center; flex-wrap:wrap; gap:24px; }
footer nav a { font-size:.8rem; }
footer .fine { font-size:.72rem; margin:20px 0 0; }
::selection { background:#ffd7c2; }
@media(max-width:1100px) {
  header,main,footer { width:calc(100% - 72px); }
  .hero { gap:32px; min-height:690px; }
  .hero-copy h1 { font-size:clamp(2.6rem,5vw,3.6rem); }
  .hero-support { font-size:1.25rem; }
  .card-content { padding:26px 24px 22px; }
  .person-heading { gap:12px; }
  .person-heading h2 { font-size:1.45rem; }
  .primary-action { font-size:1rem; gap:16px; padding:15px 20px; }
  .steps { gap:28px; }
}
@media(max-width:850px) {
  .hero { grid-template-columns:1fr; min-height:0; padding:42px 0 56px; gap:44px; }
  .hero-copy { max-width:660px; }
  .hero-copy h1 { font-size:clamp(3rem,7.5vw,4.5rem); }
  .hero-support { font-size:1.5rem; margin:27px 0 28px; }
  .relationship-example { width:100%; max-width:650px; }
  .card-content { padding:28px 30px 24px; }
  .business-context { grid-template-columns:1fr; gap:24px; }
}
@media(max-width:640px) {
  header,main,footer { width:calc(100% - 40px); }
  header { padding:22px 0; gap:20px; flex-wrap:wrap; }
  header nav { gap:22px; }
  header nav a { font-size:.85rem; }
  .brand { font-size:1.25rem; gap:8px; }
  .brand img { width:25px; }
  .hero { padding:32px 0 44px; gap:34px; }
  .hero-copy h1 { font-size:clamp(2.75rem,10vw,3.8rem); }
  .hero-support { font-size:1.2rem; margin:25px 0 27px; }
  .primary-action { font-size:1.05rem; padding:15px 20px; }
  .trial-status { font-size:.78rem; }
  .card-content { padding:24px 22px 20px; }
  .person-heading { align-items:flex-start; }
  .person-heading h2 { font-size:1.5rem; }
  .person-heading p { font-size:.85rem; }
  .avatar { width:46px; height:46px; font-size:1.1rem; }
  .context-block p { font-size:.95rem; }
  .section { padding:48px 0; }
  .steps,.plans { grid-template-columns:1fr; gap:30px; }
  .steps { margin-top:35px; }
  .step-number { margin-bottom:13px; }
  .page-head { padding:42px 0; }
  .plan { padding:30px 24px; }
  .plans { padding-bottom:45px; }
  .plan-actions { flex-direction:column; }
  .closed { padding:25px; }
  footer nav { gap:16px; }
}
@media(prefers-reduced-motion:reduce) { * { scroll-behavior:auto; } }
