@font-face { font-family:Manrope; src:url("assets/manrope-variable.ttf") format("truetype"); font-weight:200 800; font-display:swap; }
:root { color-scheme:light; --ink:#17191d; --muted:#62676c; --accent:#795135; --line:#e9ebee; --page:#fff; font-family:Manrope,Arial,sans-serif; color:var(--ink); background:var(--page); -webkit-font-smoothing:antialiased; }
* { box-sizing:border-box; letter-spacing:0; }
html { scroll-behavior:smooth; scroll-padding-top:30px; }
body { margin:0; }
[hidden] { display:none!important; }
a { color:inherit; text-decoration:none; }
button { font:inherit; cursor:pointer; }
svg { width:18px; height:18px; flex-shrink:0; stroke-width:1.6; }
:focus-visible { outline:2px solid var(--accent); outline-offset:5px; }
.skip-link { position:fixed; z-index:10; left:16px; top:12px; padding:12px 18px; background:#fff; border:1px solid var(--accent); transform:translateY(-150%); }
.skip-link:focus { transform:none; }
.site-header { height:80px; padding:0 30px; display:grid; grid-template-columns:minmax(0,1fr) auto minmax(0,1fr); align-items:center; gap:24px; background:#fafafae6; border-bottom:1px solid #f2f2f3; }
.header-brand { display:flex; align-items:center; justify-self:start; gap:2px; }
.header-home { display:flex; align-items:center; justify-content:center; width:44px; height:44px; border-radius:6px; }
.site-header .brand-mark { width:32px; height:32px; }
.header-navigation { position:relative; border:0; }
.header-navigation summary { display:flex; align-items:center; justify-content:center; width:32px; height:36px; padding:0; border-radius:6px; color:#737b83; }
.header-navigation summary:hover,.header-navigation[open] summary { background:#eceef0; color:var(--ink); }
.header-navigation summary svg { width:13px; height:13px; }
.header-navigation[open] summary svg { transform:none; }
.header-navigation nav { position:absolute; top:44px; left:0; z-index:20; width:190px; padding:6px; border:1px solid var(--line); border-radius:8px; background:white; box-shadow:0 8px 28px #252b3514; }
.header-navigation nav a { display:block; padding:11px 12px; border-radius:5px; font-size:12px; }
.header-navigation nav a:hover { background:#f3f4f5; }
.header-navigation nav a:focus-visible { outline-offset:-2px; }
.wordmark { display:inline-flex; gap:10px; align-items:center; font-size:22px; font-weight:600; }
.brand-mark { position:relative; display:block; flex-shrink:0; width:35px; height:35px; overflow:hidden; }
.brand-mark img { position:absolute; width:170%; height:auto; max-width:none; left:50%; top:50%; transform:translate(-50%,-50%); }
.desktop-nav,.header-actions,.site-footer nav { display:flex; align-items:center; gap:30px; font-size:13px; }
.desktop-nav a,.sign-in,.site-footer nav a { padding:12px 0; }
.desktop-nav a:hover,.sign-in:hover,.site-footer nav a:hover,.quiet-link:hover { color:var(--accent); }
.desktop-nav { gap:24px; font-size:12px; color:#6e727b; }
.header-actions { justify-self:end; gap:12px; }
.site-header .button { min-height:42px; padding:10px 17px; gap:8px; font-size:12px; box-shadow:inset 0 1px #ffffff40,0 5px 12px #68463018; white-space:nowrap; }
.site-header .button svg { width:15px; height:15px; }
.header-account { display:flex; align-items:center; padding:3px; border:1px solid #e9eaed; border-radius:24px; background:#fff; box-shadow:0 3px 12px #252b3506; }
.header-account .sign-in,.header-account .sign-out { display:flex; align-items:center; justify-content:center; min-height:34px; padding:8px 14px; font-size:12px; white-space:nowrap; border-radius:18px; }
.header-account .sign-in:hover,.header-account .sign-out:hover { background:#f5f5f6; }
.header-account:has(.sign-out:not([hidden])) .sign-in { border-right:1px solid var(--line); border-radius:18px 0 0 18px; }
.sign-out { background:none; border:0; padding:12px; font-size:13px; }
.button { display:inline-flex; align-items:center; justify-content:center; gap:20px; min-height:44px; padding:11px 22px; border-radius:24px; font-size:13px; font-weight:500; transition:background 160ms,transform 160ms; }
.button-primary { color:white; background:var(--accent); border:1px solid var(--accent); }
.button-primary:hover { background:#603f2a; }
.button-primary:active { transform:translateY(1px); }
.public-hero { padding:40px 0 22px; background-image:radial-gradient(#e0e5eb .8px,transparent .8px); background-size:24px 24px; }
.hero-inner { width:min(660px,90%); margin:auto; text-align:center; }
.eyebrow { margin:0 0 18px; font-size:10px; font-weight:500; line-height:1.5; color:var(--muted); }
.hero-inner .eyebrow { display:inline-flex; align-items:center; gap:12px; }
.beta-tag { padding-left:12px; border-left:1px solid #d6dbe0; font-size:11px; }
h1 { font-size:42px; font-weight:550; line-height:1.2; margin:0; }
.hero-description { margin:18px 0 0; color:var(--muted); font-size:15px; line-height:1.8; }
.hero-actions { display:flex; align-items:center; justify-content:center; gap:26px; margin-top:24px; }
.quiet-link { display:inline-flex; align-items:center; gap:10px; padding:12px 0; font-size:13px; }
.hero-footnote { margin:14px 0 0; color:var(--muted); font-size:10px; line-height:1.6; }
.sample-canvas { position:relative; width:min(1020px,90%); height:256px; margin:28px auto 0; display:grid; grid-template-columns:260px 320px 280px; align-items:start; justify-content:space-between; gap:32px; }
.sample-connections { position:absolute; inset:0; width:100%; height:100%; pointer-events:none; }
.sample-connections path { fill:none; stroke:#bcc7d0; stroke-width:1; }
.sample-paper { position:relative; border-radius:28px; border:1px solid var(--paper-line); background:var(--paper); color:var(--paper-ink); box-shadow:0 8px 22px #20283308,inset 0 1px 0 #ffffffc4; }
.sample-paper header { display:flex; align-items:center; gap:8px; padding:20px 22px 0; font-size:11px; }
.sample-paper header svg { width:14px; height:14px; }
.sample-paper p { font-size:14px; line-height:1.8; margin:20px 22px; }
.sample-idea { --paper:#fcf5d9; --paper-line:#ebdfad; --paper-ink:#75613a; min-height:210px; margin-top:18px; }
.paper-swatches { display:flex; gap:9px; margin:26px 22px 22px; }
.paper-swatches span { width:11px; height:11px; border-radius:50%; background:#f1dc92; border:1px solid #99834d55; }
.paper-swatches span:nth-child(2) { background:#b4dbca; }
.paper-swatches span:nth-child(3) { background:#e5b9d0; }
.sample-answer { --paper:#e7f3eb; --paper-line:#cde3d5; --paper-ink:#355e50; margin-top:48px; min-height:208px; }
.sample-answer header img { width:14px; height:14px; object-fit:contain; }
.sample-answer .sample-secondary { margin-top:0; font-size:12px; }
.sample-plan { --paper:#f2edf9; --paper-line:#e2d9f1; --paper-ink:#614e7a; min-height:246px; }
.sample-plan h2 { font-size:11px; line-height:1.5; font-weight:500; }
.sample-progress { margin:19px 22px 14px; font-size:11px; }
.sample-progress progress { display:block; width:100%; height:3px; margin-top:10px; appearance:none; border:0; background:#ded4ed; border-radius:2px; overflow:hidden; }
.sample-progress progress::-webkit-progress-bar { background:#ded4ed; }
.sample-progress progress::-webkit-progress-value { background:#827098; }
.sample-progress progress::-moz-progress-bar { background:#827098; }
.sample-tasks { display:grid; gap:4px; margin:0 15px 17px; }
.sample-tasks label { display:flex; gap:9px; align-items:flex-start; min-height:32px; padding:6px; cursor:pointer; font-size:12px; line-height:1.6; border-radius:6px; }
.sample-tasks label:hover { background:#ffffff70; }
.sample-tasks label:has(:focus-visible) { outline:2px solid var(--accent); outline-offset:1px; }
.sample-tasks input { accent-color:#795135; width:13px; height:13px; flex-shrink:0; margin:3px 0 0; cursor:pointer; }
.sample-tasks input:focus-visible { outline:none; }
.sample-tasks input:checked+span { text-decoration:line-through; }
.sample-caption { text-align:center; font-size:10px; color:var(--muted); margin:8px 0 0; }
.section-inner { width:min(1140px,88%); margin-inline:auto; }
h2 { font-size:30px; font-weight:500; margin:0; line-height:1.3; }
.paper-product { padding-top:48px; }
.canvas-section-heading { display:flex; align-items:center; justify-content:space-between; gap:24px; margin-bottom:26px; }
.canvas-section-heading h2 { font-size:24px; font-weight:500; }
.canvas-section-heading>span { font-size:11px; color:var(--muted); }
.paper-workbench { padding:22px 0 32px; background-image:radial-gradient(#e0e5eb .8px,transparent .8px); background-size:24px 24px; }
.canvas-modes { display:flex; gap:4px; width:max-content; max-width:94%; margin:auto; padding:4px; border:1px solid var(--line); border-radius:24px; background:white; box-shadow:0 4px 14px #252b3506; }
.canvas-modes button { display:inline-flex; align-items:center; justify-content:center; gap:8px; min-height:36px; padding:9px 16px; border:0; border-radius:20px; background:transparent; color:var(--muted); font-size:12px; white-space:nowrap; }
.canvas-modes button svg { width:15px; height:15px; }
.canvas-modes button:hover { background:#f5f5f6; color:var(--ink); }
.canvas-modes button[aria-selected="true"] { background:#eee9e5; color:#6b462f; }
.canvas-modes button:focus-visible { outline-offset:-2px; }
.paper-stage { width:min(580px,88%); margin:26px auto 0; min-height:350px; }
.demo-window { display:flex; flex-direction:column; min-height:330px; border:1px solid var(--demo-line); border-radius:28px; background:var(--demo-paper); color:var(--demo-ink); box-shadow:inset 0 1px #ffffffc4,0 8px 24px #252b3508; }
.demo-notes { --demo-paper:#e9f2fa; --demo-line:#cddfed; --demo-ink:#3e6079; }
.demo-plan { --demo-paper:#f2edf9; --demo-line:#e2d9f1; --demo-ink:#614e7a; }
.demo-compare { --demo-paper:#fbede3; --demo-line:#ecd6c7; --demo-ink:#79563f; }
.demo-window header { display:flex; align-items:center; gap:8px; min-height:54px; padding:12px 20px; }
.demo-window header>svg { width:15px; height:15px; }
.demo-window header h3,.demo-window header input { flex:1; min-width:0; margin:0; font:500 12px/1.5 Manrope,Arial,sans-serif; color:inherit; }
.demo-window header input { padding:4px 0; border:0; background:transparent; border-radius:4px; }
.demo-export { display:flex; align-items:center; justify-content:center; width:30px; height:30px; flex:0 0 30px; padding:6px; border:0; border-radius:6px; background:transparent; color:inherit; }
.demo-export svg { width:15px; height:15px; }
.demo-export:hover { background:#ffffff80; }
.demo-window textarea { display:block; width:100%; min-height:254px; max-height:900px; margin:0; padding:4px 24px 24px; border:0; border-radius:0 0 28px 28px; resize:none; font:400 14px/1.9 Manrope,Arial,sans-serif; color:inherit; background:transparent; }
.demo-window textarea:focus-visible { outline:1px solid var(--demo-ink); outline-offset:-10px; }
.demo-plan-progress { padding:10px 24px 18px; }
.demo-plan-progress strong { font-size:15px; font-weight:500; }
.demo-plan-progress progress { display:block; width:100%; height:3px; margin-top:14px; appearance:none; border:0; background:#ded4ed; }
.demo-plan-progress progress::-webkit-progress-bar { background:#ded4ed; }
.demo-plan-progress progress::-webkit-progress-value { background:#827098; }
.demo-plan-progress progress::-moz-progress-bar { background:#827098; }
.demo-plan-tasks { padding:0 18px 22px; }
.demo-plan-tasks label { display:flex; align-items:center; gap:12px; min-height:46px; padding:10px 6px; border-top:1px solid #d7cce580; cursor:pointer; font-size:13px; }
.demo-plan-tasks input { width:14px; height:14px; margin:0; flex-shrink:0; accent-color:var(--accent); }
.demo-plan-tasks input:checked+span { text-decoration:line-through; }
.demo-plan-tasks span { flex:1; }
.demo-plan-tasks small { font-size:10px; }
.demo-plan-tasks label:hover { background:#ffffff50; }
.demo-comparison { padding:8px 24px 26px; }
.demo-comparison table { width:100%; table-layout:fixed; border-collapse:collapse; font-size:13px; line-height:1.7; }
.demo-comparison th,.demo-comparison td { text-align:left; padding:15px 10px; vertical-align:top; overflow-wrap:anywhere; border-bottom:1px solid #e2c9b680; }
.demo-comparison th { font-size:11px; font-weight:500; }
.demo-comparison thead th { padding-top:5px; }
.demo-comparison tr:last-child>* { border-bottom:0; }
.demo-caption { width:min(580px,88%); margin:12px auto 0; display:flex; justify-content:space-between; align-items:center; gap:16px; color:var(--muted); font-size:10px; }
.demo-caption a { display:inline-flex; align-items:center; gap:8px; color:var(--accent); padding:8px 0; }
.demo-caption a svg { width:14px; height:14px; }
.visually-hidden { position:absolute; width:1px; height:1px; overflow:hidden; clip-path:inset(50%); white-space:nowrap; }
.beta-section { padding-block:48px; border-top:1px solid #f3f4f6; }
.beta-notes { display:grid; grid-template-columns:1fr 1fr; align-items:start; gap:16px; }
.beta-paper { border:1px solid var(--beta-line); border-radius:24px; background:var(--beta-paper); color:var(--beta-ink); box-shadow:inset 0 1px #ffffffb0; --beta-paper:#fcf5d9; --beta-line:#ebdfad; --beta-ink:#75613a; }
.beta-paper:nth-child(2) { --beta-paper:#e7f3eb; --beta-line:#cde3d5; --beta-ink:#355e50; }
.beta-paper:nth-child(3) { --beta-paper:#e9f2fa; --beta-line:#cddfed; --beta-ink:#3e6079; }
.beta-paper:nth-child(4) { --beta-paper:#fbede3; --beta-line:#ecd6c7; --beta-ink:#79563f; }
.beta-paper summary { display:flex; align-items:center; gap:12px; min-height:78px; padding:20px; cursor:pointer; list-style:none; font-size:13px; font-weight:500; }
.beta-paper summary span { flex:1; }
.beta-paper summary svg { width:16px; height:16px; }
.beta-paper summary svg:last-child { width:14px; height:14px; }
.beta-paper summary:hover { background:#ffffff30; border-radius:24px; }
.beta-paper[open] summary svg:last-child { transform:rotate(180deg); }
.beta-paper p { margin:0; padding:0 24px 24px; font-size:12px; line-height:1.85; }
summary { cursor:pointer; list-style:none; }
summary::-webkit-details-marker { display:none; }
.canvas-closing { padding:40px 16px 46px; text-align:center; background-image:radial-gradient(#e0e5eb .8px,transparent .8px); background-size:24px 24px; }
.canvas-closing h2 { font-size:24px; margin-bottom:22px; }
.canvas-entry { display:inline-flex; align-items:center; justify-content:center; min-height:50px; gap:16px; padding:12px 20px; border-radius:28px; color:white; background:var(--accent); border:1px solid var(--accent); box-shadow:inset 0 1px #ffffff40,0 5px 12px #68463018; font-size:13px; }
.canvas-entry:hover { background:#603f2a; }
.canvas-entry .brand-mark { width:22px; height:22px; }
.canvas-entry .brand-mark img { filter:invert(1); }
.site-footer { display:flex; align-items:center; justify-content:space-between; gap:24px; padding-block:30px; }
.site-footer small { font-size:11px; color:var(--muted); }
.canvas-footer { border-top:1px solid var(--line); padding-block:24px; }
.canvas-footer .wordmark { font-size:14px; }
.canvas-footer .brand-mark { width:25px; height:25px; }
.canvas-footer nav { gap:24px; font-size:11px; }
@media(min-width:1800px) { .public-hero { padding-top:90px; padding-bottom:42px; } .sample-canvas { margin-top:60px; } }
@media(min-width:761px) and (max-height:800px) { .public-hero { padding-top:24px; padding-bottom:18px; } .sample-canvas { height:246px; margin-top:20px; } .sample-answer { margin-top:32px; } }
@media(max-width:1100px) { .sample-canvas { grid-template-columns:1fr 1.2fr 1.05fr; gap:24px; } .sample-paper p { font-size:13px; margin-inline:18px; } .sample-paper header { padding-inline:18px; } .sample-paper { border-radius:24px; } .desktop-nav { gap:20px; } }
@media(max-width:760px) { .site-header { height:68px; padding-inline:6%; } .desktop-nav { display:none; } .header-actions { gap:18px; } .site-header .button { min-height:40px; padding:10px 16px; gap:10px; font-size:12px; } .wordmark { font-size:20px; gap:7px; } .brand-mark { width:28px; height:28px; } .public-hero { padding:38px 0 24px; } h1 { font-size:32px; } .hero-description { font-size:14px; } .sample-canvas { width:88%; grid-template-columns:1fr 1fr; gap:20px; height:270px; margin-top:30px; } .sample-idea { display:none; } .sample-answer { margin-top:28px; min-height:210px; } .sample-plan { min-height:245px; } .sample-connections { display:none; } .product-section { padding-block:36px 48px; } .section-heading { display:block; margin-bottom:27px; } h2 { font-size:26px; } .section-heading>p { margin-top:16px; } .workflow-section { padding-block:45px; } .workflow { grid-template-columns:1fr; gap:27px; margin-top:32px; } .workflow li,.workflow li+li { border-left:0; border-bottom:1px solid var(--line); padding:0 0 25px 46px; } .workflow li:last-child { border-bottom:0; padding-bottom:0; } .step-number { position:absolute; left:0; top:7px; } .workflow svg { margin-bottom:10px; } .workflow p { max-width:450px; } .questions-section { grid-template-columns:1fr; gap:28px; padding-block:50px; } .closing-section { padding-block:35px; } .closing-section>.section-inner { flex-wrap:wrap; gap:20px; } .closing-section .brand-mark { display:none; } .closing-section>.section-inner>div { flex-basis:100%; } .site-footer { flex-wrap:wrap; padding-block:28px; gap:22px; } .site-footer nav { gap:22px; font-size:12px; } .site-footer small { flex-basis:100%; } }
@media(max-width:520px) { .sample-canvas { display:block; height:222px; width:280px; max-width:88%; margin-top:25px; } .sample-answer { display:none; } .sample-plan { min-height:222px; height:auto; } .sample-paper { border-radius:24px; } .sample-tasks label { min-height:34px; } .hero-inner { width:88%; } h1 { font-size:30px; max-width:340px; margin:auto; } .hero-inner .eyebrow { font-size:9px; gap:9px; } .hero-actions { gap:20px; margin-top:20px; } .hero-actions .button { padding-inline:18px; gap:12px; } .quiet-link { font-size:12px; } .hero-footnote { max-width:260px; margin:12px auto 0; } figcaption { font-size:10px; gap:15px; } }
@media(max-width:390px) { .site-header .sign-in { font-size:12px; } .header-actions { gap:12px; } }
@media(max-width:1000px) and (min-width:761px) { .desktop-nav a:last-child { display:none; } }
@media(max-width:760px) { .paper-product { padding-top:36px; } .canvas-section-heading { display:block; margin-bottom:22px; } .canvas-section-heading h2 { font-size:22px; } .canvas-section-heading>span { display:block; margin-top:10px; } .paper-workbench { padding-top:20px; } .canvas-modes button { padding-inline:13px; font-size:11px; } .paper-stage { margin-top:22px; min-height:360px; } .demo-window { min-height:340px; border-radius:24px; } .demo-window header { padding-inline:16px; } .demo-window header input { font-size:16px; } .demo-window textarea { font-size:16px; min-height:270px; padding-inline:20px; border-radius:0 0 24px 24px; } .demo-plan-tasks { padding-inline:14px; } .demo-plan-tasks label { font-size:12px; gap:9px; } .demo-comparison { padding-inline:12px; } .demo-comparison th,.demo-comparison td { padding-inline:6px; font-size:12px; } .demo-comparison th { font-size:10px; } .beta-section { padding-block:36px; } .beta-notes { grid-template-columns:1fr; gap:12px; } .beta-paper summary { min-height:70px; padding:18px; font-size:12px; } .beta-paper p { padding-inline:20px; } .canvas-closing h2 { font-size:22px; } .canvas-footer { justify-content:flex-start; gap:20px; } .canvas-footer nav { margin-left:auto; gap:16px; font-size:10px; } .canvas-footer small { flex-basis:100%; } }
@media(max-width:760px) { .site-header { height:68px; padding-inline:16px; grid-template-columns:auto 1fr; gap:12px; } .header-actions { gap:8px; } .site-header .brand-mark { width:28px; height:28px; } .header-home { width:36px; } .header-navigation summary { width:30px; } .site-header .button { min-height:38px; padding:9px 13px; gap:7px; font-size:11px; } .header-account .sign-in,.header-account .sign-out { min-height:30px; padding:7px 11px; font-size:11px; } }
@media(max-width:520px) { .hero-actions { gap:16px; } .hero-actions .button { padding-inline:14px; gap:10px; font-size:12px; white-space:nowrap; } .hero-actions .quiet-link { font-size:11px; gap:8px; white-space:nowrap; } }
@media(max-width:760px) and (max-height:650px) { .public-hero { padding-top:22px; padding-bottom:18px; } .hero-inner .eyebrow { margin-bottom:10px; } h1 { font-size:26px; } .hero-description { margin-top:10px; font-size:12px; } .hero-actions { margin-top:14px; } .hero-footnote { font-size:9px; } .sample-canvas { margin-top:18px; height:176px; } .sample-plan { min-height:176px; } .sample-plan header { padding-top:14px; } .sample-progress { margin-block:10px 6px; } .sample-progress progress { margin-top:6px; } .sample-tasks { gap:0; margin-bottom:10px; } .sample-tasks label { min-height:28px; padding-block:4px; font-size:11px; } .sample-answer { min-height:165px; margin-top:0; } .sample-paper p { font-size:11px; } .sample-caption { margin-top:12px; } .product-section { padding-top:26px; } }
@media(prefers-reduced-motion:reduce) { html { scroll-behavior:auto; } *,*::before,*::after { transition:none!important; } }
@media(max-width:760px) and (max-height:650px) { .hero-inner .eyebrow { display:none; } h1 { font-size:24px; } }
@media(forced-colors:active) { .button-primary,.sample-paper { border:1px solid ButtonText; } }
@media(max-width:760px) { .paper-product { padding-bottom:0; } }
@media(forced-colors:active) { .demo-window,.beta-paper,.canvas-modes { background:Canvas; color:CanvasText; border-color:CanvasText; } .canvas-entry { border-color:ButtonText; } }
