/* Colla's public page: typography, rules, one live demonstration of a room, and small room scenes. */
.landing{--bg:#0b0b0b;--text:#f1f0eb;--muted:#9c9c96;--line:#30302d;--accent:#bd8326;--gold:#e8c783;--pane:#11110f;--pane-line:#8e8775;--row-line:#2a2a26;background:var(--bg);font-size:17px}
.landing .top,.landing main,.landing footer{max-width:1360px;margin-inline:auto;padding-inline:56px}
.landing .top{height:88px;min-height:88px;border:0;padding-block:20px}.landing .brand{font-size:29px;letter-spacing:-1px;gap:12px}.landing .brand img{width:32px;height:32px}.landing .brand-note{display:none}.landing .top nav{gap:35px;font-size:14px}.landing .top nav a{color:#b7b7af}.landing .top nav a:hover{color:#fff}
.landing main{min-height:0}
.landing h1,.landing h2,.landing h3{font-family:Barlow,Arial,sans-serif;font-weight:400}.landing h1{font-size:clamp(48px,5.3vw,76px);line-height:1.04;letter-spacing:-.05em}.landing h2{font-size:44px;line-height:1.1;letter-spacing:-.035em}.landing h3{font-size:30px;line-height:1.15;letter-spacing:-.02em}
.landing .primary{border:1px solid #e8e7e2;border-radius:0;background:#e8e7e2;color:#111;box-shadow:none;font-weight:500;min-height:48px;padding:12px 22px;font-size:14px}.landing .primary:hover{background:#fff;border-color:#fff}.landing .primary:active{background:#c9c8c2}
.landing code{font-size:.92em;color:#dad8cc}

/* Hero: copy beside a fixed-size board with two panes, the room and an agent's chat. */
.landing-hero{display:grid;grid-template-columns:44% 56%;gap:0;align-items:center;min-height:calc(100svh - 88px);padding:30px 0 54px}.hero-copy{padding-right:46px}
.hero-description{font-size:20px;line-height:1.55;max-width:440px;margin:26px 0 28px;color:#b3b0a5}.hero-actions{display:flex;gap:25px;align-items:center}.hero-secondary{font-size:16px;text-decoration:none;border-bottom:1px solid #8a867a;padding:5px 0}.hero-footnote{font-size:14px;color:#929083;margin-top:17px}
.room-stage{width:100%;min-width:0;margin:0;padding:0 0 0 24px}
.journey-board{position:relative;height:clamp(300px,40svh,352px);display:grid;grid-template-columns:1fr 1.15fr;gap:12px}
.pane{position:relative;min-width:0;overflow:hidden;border:1px solid var(--pane-line);background:var(--pane);padding:14px 16px;display:flex;flex-direction:column}
.pane-head{display:flex;justify-content:space-between;align-items:center;gap:10px;min-height:20px}.pane-label{font-size:16px;color:#bbb39e;white-space:nowrap;flex-shrink:0}.pane-meta{font:12px/1.4 ui-monospace,SFMono-Regular,Consolas,monospace;color:#77776f;letter-spacing:.01em;white-space:nowrap;min-width:0;overflow:hidden;text-overflow:ellipsis}
.room-name{display:block;font-size:24px;line-height:1.2;font-weight:400;color:#f0eadb;margin-top:6px}
.room-action{position:relative;height:30px;margin:8px 0 10px;font-size:16px}.demo-create,.demo-room-link{position:absolute;inset:0;display:flex;align-items:center;justify-content:space-between;transition:opacity .35s ease}.demo-create{padding:4px 10px;background:#e1dfd2;color:#15150f}.demo-room-link{opacity:0;color:#d5c59d}.demo-link-text{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.demo-copy{color:#f1eadb;border-left:1px solid #676352;padding-left:14px;flex-shrink:0}.room-stage[data-linked="1"] .demo-create{opacity:0}.room-stage[data-linked="1"] .demo-room-link{opacity:1}
.room-rows{list-style:none;margin:0;padding:0;display:flex;flex-direction:column}
.row{display:grid;grid-template-columns:auto minmax(0,1fr);grid-template-areas:"chip text" "chip meta";column-gap:10px;row-gap:2px;align-items:baseline;padding:8px 0 7px;border-top:1px solid var(--row-line);opacity:0;transform:translateY(5px);transition:opacity .45s ease,transform .45s ease}.row.on{opacity:1;transform:none}
.row .chip{grid-area:chip}.chip{justify-self:start;font:11px/1 ui-monospace,SFMono-Regular,Consolas,monospace;text-transform:uppercase;letter-spacing:.06em;color:#b8a781;border:1px solid #4a4538;padding:4px 6px;white-space:nowrap}.chip-decision{color:#f0d79a;border-color:#8a6c2e}.chip-artifact{color:#cfd6c6;border-color:#4e5546}
.row-text{grid-area:text;font-size:16px;line-height:1.35;color:#eee7d9}.row-state,.row-by{grid-area:meta;font-size:13px;line-height:1.3;color:#9c9c96}.row-state[data-state="claimed"]{color:#e8c783}.row-state[data-state="done"]{color:#b9d1a8}
.pane-agent{background:#0e0e0c}
.demo-message{position:relative;margin-top:10px;padding:8px 12px;background:#24241b;font-size:16px;line-height:1.4;min-height:61px;display:block;color:#eee7d9}.demo-message .placeholder{position:absolute;inset:8px 12px;color:#77776f;transition:opacity .3s ease}.room-stage:not([data-phase="0"]) .placeholder{opacity:0}.typed-link{font-weight:400;color:#e7cc95}
.caret{display:inline-block;width:1px;height:1.05em;vertical-align:-.18em;background:var(--gold);margin-left:1px;animation:caret 1s steps(2,start) infinite}.caret.off{display:none}@keyframes caret{to{visibility:hidden}}
.agent-lines{list-style:none;margin:10px 0 0;padding:0;display:flex;flex-direction:column;gap:6px}.agent-lines li{font-size:16px;line-height:1.35;color:#d2d5be;padding-left:14px;position:relative;opacity:0;transform:translateY(4px);transition:opacity .4s ease,transform .4s ease}.agent-lines li::before{content:"";position:absolute;left:0;top:.55em;width:6px;height:1px;background:#6f6a5c}.agent-lines li.on{opacity:1;transform:none}.agent-lines .line-system{color:#9c9c96}.agent-lines .line-system::before{background:#8a6c2e}
.scene-captions{position:relative;height:76px;margin-top:16px}.scene-captions p{position:absolute;inset:0;margin:0;display:flex;align-items:center;gap:18px;font-size:25px;line-height:1.2;color:#eee8db;opacity:0;transition:opacity .45s ease}.scene-captions p>span{font-size:16px;color:#b8a781;flex-shrink:0}.room-stage[data-phase="0"] [data-caption="0"],.room-stage[data-phase="1"] [data-caption="1"],.room-stage[data-phase="2"] [data-caption="2"],.room-stage[data-phase="3"] [data-caption="3"]{opacity:1}
.scene-footer{border-top:1px solid #3b3a32;display:flex;align-items:center;justify-content:space-between;gap:16px;padding-top:12px}.scene-footer>a{font-size:16px;text-decoration:none;color:#c7c0af}.scene-footer>a>span{margin-left:10px}.scene-controls,.journey-steps{display:flex;align-items:center;gap:2px}.journey-steps button,#motion-toggle{border:0;border-radius:0;width:36px;min-width:36px;min-height:40px;padding:0;background:none;font-size:16px;color:#898574}.journey-steps button[aria-current="step"]{color:#ebd4a4;border-bottom:1px solid #c9a865}.journey-steps button:hover,#motion-toggle:hover{background:#1b1a15;color:#fff}#motion-toggle{margin-left:3px;color:#c9c1ae}

/* Sections */
.section-intro{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);gap:40px;align-items:end}.section-intro p{font-size:17px;line-height:1.6;color:#9c9c96;margin:0;max-width:440px}
.how-section{border-top:1px solid var(--line);padding:72px 0 80px}.how-routes{list-style:none;margin:48px 0 0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:40px}.how-routes li{min-width:0;display:flex;flex-direction:column}.route-index{font:11px ui-monospace,monospace;color:#77776f;display:block;margin-bottom:24px}.how-routes h3{font-size:25px;letter-spacing:-.015em}.route-hosts{font-size:13px;color:#b8a781;margin:8px 0 0;letter-spacing:.01em}.how-routes p{font-size:15px;line-height:1.65;margin:14px 0 0;max-width:340px}.how-routes p.route-hosts{margin-top:8px}
.route-demo{margin:22px 0 0;background:var(--pane);border:1px solid var(--line);border-radius:0;padding:14px 16px;font:13px/1.6 ui-monospace,SFMono-Regular,Consolas,monospace;color:#dad8cc;white-space:pre-wrap;overflow-wrap:anywhere}.route-demo .prompt{color:var(--gold)}.route-demo .out{color:#9c9c96}
.use-cases{border-top:1px solid var(--line);padding-top:72px;scroll-margin-top:30px}.use-cases .section-intro{margin-bottom:28px}.use-cases article{display:grid;grid-template-columns:minmax(0,44%) minmax(0,1fr);gap:56px;padding:52px 0 56px;border-top:1px solid var(--line);align-items:center}.case-copy{min-width:0}.case-number{font:11px ui-monospace,monospace;color:#77776f;display:block;margin-bottom:22px}.use-cases h3{font-size:34px;line-height:1.12;max-width:450px}.use-cases p{font-size:17px;line-height:1.7;margin:18px 0 0;max-width:480px}.use-cases .case-example{font-size:14px;color:#dad8cc;margin-top:22px}.use-cases .case-requirement{font-size:12px;color:#77776f;margin-top:16px;max-width:440px}
.scene{min-width:0}.mini-room,.mini-list{border:1px solid var(--pane-line);background:var(--pane);padding:14px 18px 10px}.mini-head{display:flex;justify-content:space-between;align-items:baseline;gap:10px;font-size:16px;color:#bbb39e;padding-bottom:10px}.mini-room ul,.mini-list ul{list-style:none;margin:0;padding:0}
.scene-row{display:grid;grid-template-columns:auto auto minmax(0,1fr);gap:10px;align-items:baseline;padding:10px 0 9px;border-top:1px solid var(--row-line);opacity:0;transform:translateY(5px);transition:opacity .45s ease,transform .45s ease}.scene-row.on{opacity:1;transform:none}.scene-text{font-size:16px;line-height:1.35;color:#eee7d9;min-width:0}
.who{font-size:13px;color:#cfd6c6;white-space:nowrap;padding-left:12px;position:relative}.who::before{content:"";position:absolute;left:0;top:.42em;width:6px;height:6px;background:#cfd6c6}.who-a{color:var(--gold)}.who-a::before{background:var(--gold)}
.mini-list .scene-row{grid-template-columns:minmax(0,34%) minmax(0,1fr) auto}.mini-list strong{font-weight:400;font-size:16px;color:#f0eadb;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.room-rules{border-top:1px solid var(--line);padding:72px 0 76px}.rules{list-style:none;margin:44px 0 0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0 40px}.rules li{border-top:1px solid var(--line);padding:22px 0 26px;font-size:15px;line-height:1.65;color:#9c9c96}.rules strong{display:block;color:#dad8cd;font-weight:400;font-size:17px;margin-bottom:6px}
.landing-close{border-top:1px solid var(--line);padding:72px 0 80px;display:flex;align-items:center;justify-content:space-between;gap:25px}.landing-close h2{font-size:50px}.landing footer{padding-top:25px;padding-bottom:28px;border-top:1px solid var(--line);margin-top:0;font-size:12px;color:#6f6f66}.landing .room-list{margin:0 0 65px}.landing .room-symbol{border-radius:0}.landing .badge{border-radius:0}

/* Short desktops */
@media(min-width:961px) and (max-height:760px){.landing-hero{padding-block:24px}.journey-board{height:300px}.scene-captions{height:65px;margin-top:10px}.landing h1{font-size:clamp(46px,4.9vw,65px)}.hero-description{font-size:18px;margin-block:22px}.hero-copy{padding-right:34px}.room-name{font-size:21px;margin-top:4px}.room-action{margin:6px 0 6px}.row{padding:6px 0 5px}.demo-message{min-height:56px}.agent-lines{gap:4px}}
@media(max-width:1180px){.hero-copy{padding-right:28px}.hero-description{font-size:18px}.room-stage{padding-left:15px}.scene-captions p{font-size:23px}.journey-board{grid-template-columns:1fr 1.1fr;gap:10px}.pane{padding:12px 14px}.row-note,.line-progress{display:none}.use-cases article{gap:36px}}
@media(max-width:1100px){.landing .top,.landing main,.landing footer{padding-inline:36px}.use-cases h3{font-size:30px}.how-routes{gap:28px}}
@media(max-width:960px){.landing .top,.landing main,.landing footer{padding-inline:26px}.landing .top{height:72px;min-height:72px;padding-block:16px}.landing .top nav{gap:22px;font-size:13px}.landing-hero{grid-template-columns:1fr;gap:26px;padding:26px 0 30px;min-height:calc(100svh - 72px)}.hero-copy{padding:0}.landing h1{font-size:clamp(42px,7.5vw,64px)}.hero-description{max-width:600px;margin:20px 0 22px}.room-stage{max-width:680px;justify-self:center;padding:0}.journey-board{height:300px}.scene-captions{height:60px;margin-top:8px}.hero-footnote{margin-top:12px}.how-section,.use-cases,.room-rules{padding-block:55px}.use-cases{padding-bottom:0}.section-intro{grid-template-columns:1fr;gap:14px}.how-routes{gap:24px;margin-top:36px}.how-routes h3{font-size:22px}.how-routes p{font-size:14px}.use-cases article{grid-template-columns:1fr;gap:26px;padding-block:40px}.use-cases h3{font-size:27px}.use-cases p{font-size:15px}.use-cases .case-example{font-size:13px}.rules{grid-template-columns:1fr 1fr;gap:0 28px;margin-top:34px}.landing-close{padding-block:55px}.landing-close h2{font-size:40px}}
/* Phones: one pane at a time, like switching apps. The room shows in steps 1 and 4, the chat in 2 and 3. */
@media(max-width:640px){.journey-board{display:block;height:300px}.pane{position:absolute;inset:0;opacity:0;transition:opacity .4s ease}.room-stage[data-phase="0"] .pane-room,.room-stage[data-phase="3"] .pane-room,.room-stage[data-phase="1"] .pane-agent,.room-stage[data-phase="2"] .pane-agent{opacity:1}.row-note,.line-progress{display:none}.how-routes{grid-template-columns:1fr}.rules{grid-template-columns:1fr}}
@media(max-width:500px){.landing .top,.landing main,.landing footer{padding-inline:20px}.landing .top{height:64px;min-height:64px;padding-block:14px}.landing .brand{font-size:27px;gap:10px}.landing .brand img{width:29px;height:29px}.landing .top nav .nav-section{display:none}.landing-hero{min-height:calc(100svh - 64px);padding:14px 0 18px;gap:22px;align-content:space-between}.landing h1{font-size:clamp(36px,10vw,44px);line-height:1.02;letter-spacing:-.045em}.hero-description{font-size:16px;line-height:1.45;margin:16px 0 17px}.hero-actions{gap:24px}.hero-footnote{font-size:13px;margin-top:10px}.landing .primary{padding:11px 19px;min-height:46px}.landing h2{font-size:34px}
.journey-board{height:290px}.pane{padding:10px 13px}.room-name{font-size:22px}.demo-message{min-height:56px}.agent-lines{gap:4px}.scene-captions{height:58px;margin-top:7px}.scene-captions p{font-size:21px;gap:12px}.scene-footer{gap:4px;padding-top:7px}.scene-footer>a>span{margin-left:4px}.journey-steps button,#motion-toggle{width:31px;min-width:31px;min-height:40px}
.how-routes{gap:30px;margin-top:35px}.how-routes h3{font-size:23px}.how-routes p{font-size:15px;max-width:none}.route-demo{font-size:12px}.use-cases article{padding:30px 0 35px;gap:22px}.use-cases h3{font-size:29px}.use-cases p{font-size:15px;line-height:1.7}.use-cases .case-example{font-size:13px}.use-cases .case-requirement{font-size:11px}.mini-room,.mini-list{padding:12px 14px 8px}.scene-row{grid-template-columns:auto minmax(0,1fr);gap:6px 10px}.scene-row .scene-text{grid-column:1/-1}.mini-list .scene-row{grid-template-columns:minmax(0,1fr) auto}.mini-list .scene-text{grid-column:1/-1}.rules li{font-size:14px;padding:18px 0 20px}.landing-close{align-items:flex-start;flex-direction:column;gap:26px;padding:45px 0 50px}.landing-close h2{font-size:36px}.landing footer{font-size:10px;gap:20px;padding-block:24px}}
@media(prefers-reduced-motion:reduce){.pane,.row,.agent-lines li,.scene-row,.demo-create,.demo-room-link,.scene-captions p,.demo-message .placeholder{transition:none}.caret{animation:none}}
