/* Mobile journey is the base. The spatial editor is a desktop enhancement. */
.mobile-funnel{padding:20px 16px;background:radial-gradient(#bbd8df 1px,transparent 1px) 0 0/18px 18px,#f2f8fa}
.mobile-entry,.mobile-node{position:relative;border:1px solid #c9dfe4;border-radius:15px;background:#fff;box-shadow:0 5px 16px #25445008;overflow:hidden}
.mobile-entries{display:grid;gap:12px}
.mobile-entry summary{display:flex;align-items:center;gap:10px;min-height:104px;padding:16px 12px;cursor:pointer;list-style:none}
.mobile-entry summary::-webkit-details-marker{display:none}
.entry-number{display:grid;place-items:center;flex:0 0 28px;height:28px;border-radius:8px;background:#e3f5f7;color:#007d89;font-size:13px;font-weight:600}
.mobile-entry summary>span:nth-child(2){min-width:0;flex:1}
.mobile-entry small{display:block;font-size:12px;letter-spacing:.04em;color:#657e87;line-height:1.4}
.mobile-entry b{display:block;font-size:16px;line-height:1.4;margin:5px 0;color:#203c46}
.mobile-entry em{display:block;font-style:normal;font-size:12px;color:#607c86;line-height:1.5}
.entry-chevron{font-size:20px;color:#008995;transition:transform .2s;align-self:center}
.mobile-entry[open] .entry-chevron{transform:rotate(180deg)}
.mobile-entry[open]{border-color:#31b5c2}
.mobile-steps{margin:0 16px 18px 26px;padding:0 0 0 20px;border-left:1px solid #adced6;list-style:none}
.mobile-steps li{position:relative;padding:1px 0 14px 5px}
.mobile-steps li:last-child{padding-bottom:0}
.mobile-steps li::before{content:'';position:absolute;left:-25px;top:10px;width:7px;height:7px;border:2px solid #f6fbfc;border-radius:50%;background:#07a7b4}
.mobile-funnel p{font-size:14px;line-height:1.55;color:#617983}
.mobile-steps b{font-size:14px;margin:0 0 5px}
.mobile-ad-detail{padding:0 16px 16px}
.mobile-window{display:flex;align-items:center;gap:10px;margin:0 12px 14px;padding:12px 10px;border:1px solid #aedbe4;background:#eaf8fb;border-radius:10px;color:#067e8d}
.mobile-window svg{width:23px;height:23px;flex-shrink:0;fill:none;stroke:currentColor;stroke-width:1.7}
.mobile-window b{white-space:nowrap;font-size:18px;margin:0;color:inherit}
.mobile-window span{font-size:12px;line-height:1.4}
.mobile-merge{display:flex;align-items:center;justify-content:center;gap:10px;padding:20px 0;font-size:12px;letter-spacing:.04em;color:#397580}
.mobile-merge>span{font-size:24px}
.mobile-node-head{display:flex;align-items:center;gap:9px;padding:12px 14px;background:#e9f4f7;border-bottom:1px solid #d1e5eb;color:#294e5b;font-size:14px}
.mobile-node-head>span:first-child{font-size:21px;color:#0393a0}
.mobile-node-head>span:last-child{margin-left:auto;font-size:12px}
.mobile-node-body{padding:17px 16px}
.mobile-node h3{font-size:19px;line-height:1.25;letter-spacing:-.02em;color:#213e48;margin-bottom:8px}
.mobile-node-body>span{display:block;margin-top:12px;font-size:12px;color:#597b87}
.mobile-connector{height:34px;display:grid;place-items:center;font-size:24px;color:#14a9b7}
.mobile-source{display:flex;align-items:flex-start;gap:11px;padding:22px 2px 0}
.mobile-source>span{font-size:28px;color:#039aa7}
.mobile-source b{display:block;color:#28616d;font-weight:600;margin-bottom:4px}
.graph-scroll{display:none}
html[data-theme=dark] .mobile-funnel{background:radial-gradient(#46515c 1px,transparent 1px) 0 0/18px 18px,#20262c}
html[data-theme=dark] .mobile-entry,html[data-theme=dark] .mobile-node{background:#303740;border-color:#4b5c6b;box-shadow:0 7px 20px #0002}
html[data-theme=dark] .mobile-entry[open]{border-color:#4bd0dc}
html[data-theme=dark] .entry-number{background:#264e56;color:#83e6ec}
html[data-theme=dark] .mobile-entry b,html[data-theme=dark] .mobile-node h3{color:#edf4f6}
html[data-theme=dark] .mobile-entry small,html[data-theme=dark] .mobile-entry em,html[data-theme=dark] .mobile-funnel p,html[data-theme=dark] .mobile-node-body>span{color:#b0bec8}
html[data-theme=dark] .mobile-node-head{background:#3b4654;border-color:#526274;color:#e3edf2}
html[data-theme=dark] .mobile-window{background:#25464f;border-color:#497781;color:#8be8f0}
html[data-theme=dark] .mobile-window b,html[data-theme=dark] .mobile-source b,html[data-theme=dark] .mobile-merge,html[data-theme=dark] .entry-chevron{color:#85e0e8}
html[data-theme=dark] .mobile-steps{border-color:#5c8290}
html[data-theme=dark] .mobile-steps li::before{border-color:#303740;background:#68dfe8}
@media(min-width:761px){.mobile-funnel{display:none}.graph-scroll{display:block}}

/* Phone/tablet layout, without changing the approved desktop compositions. */
@media(max-width:760px){
  html{scroll-padding-top:88px}
  body{font-size:16px}
  .wrap{width:calc(100% - 36px);max-width:600px}
  .header-inner{height:68px;gap:12px;max-width:none}
  .header-actions{gap:8px}
  .brand{gap:8px}.brand img{width:32px;height:32px}.brand>span{font-size:22px}.brand-caption{font-size:10px}
  .header-actions .button{display:none}
  .header-actions .theme-toggle,.header-actions .menu-toggle{width:44px;height:44px;flex:0 0 44px}
  .login{display:flex;align-items:center;min-height:44px;font-size:14px;padding:0 6px}
  .mobile-nav{padding:10px 18px 16px;max-height:calc(100svh - 68px);overflow:auto}
  .mobile-nav a{min-height:48px;display:flex;align-items:center;font-size:16px}
  .hero-grid{padding-top:32px;padding-bottom:30px;gap:32px;min-height:0}
  .hero h1{font-size:clamp(40px,11.4vw,64px);line-height:1.04;letter-spacing:-.045em;margin:22px 0}
  .hero .eyebrow{font-size:11px;letter-spacing:.08em;line-height:1.6}
  .hero-lead{font-size:19px;line-height:1.5}.hero-lead br{display:none}
  .hero-description{font-size:16px;line-height:1.6;margin-top:12px}
  .hero-actions{flex-direction:column;align-items:stretch;gap:10px;margin:24px 0 18px}
  .hero-actions .button,.button{font-size:16px;min-height:52px;padding:14px 18px;text-align:center;white-space:normal;line-height:1.4}
  .hero-actions .text-link{font-size:14px;justify-content:center;min-height:44px}
  .hero-trust{flex-direction:column;align-items:flex-start;gap:8px;font-size:12px}
  .hero-product{padding:0;max-width:100%}
  .real-product-label{font-size:11px;line-height:1.5;letter-spacing:.045em;margin-bottom:14px}
  .real-product{border-radius:16px}
  .real-product img{aspect-ratio:390/700;object-fit:cover;object-position:top}
  .real-product picture{display:block}
  .expand-interface{position:static;justify-content:center;padding:12px;font-size:13px;min-height:44px;border-radius:0;border-width:1px 0 0;box-shadow:none}
  .expand-interface svg{width:16px;height:16px}
  .product-caption{font-size:12px;letter-spacing:0;line-height:1.5;gap:4px}
  .channel-strip{display:grid;grid-template-columns:1fr 1fr;gap:16px 12px;padding:24px 0 30px}
  .channel-intro{grid-column:1/-1;font-size:12px;text-align:left}
  .channel-name{font-size:14px;gap:6px;flex-wrap:wrap;justify-content:flex-start}.channel-name small{font-size:12px}
  .section{padding:56px 0}.workspace-section{padding-top:56px}.start-section{padding-top:0}
  .section-heading{margin-bottom:28px}.eyebrow{font-size:12px;line-height:1.6;letter-spacing:.08em}
  .section-heading h2,.section-heading.compact h2,.crm-copy h2,.case-copy h2,.faq-grid h2,.contact-section h2{font-size:clamp(32px,8.8vw,42px);line-height:1.1;letter-spacing:-.035em}
  .section-heading .section-lead{font-size:16px;line-height:1.6;margin-top:20px}
  .channels-grid{gap:16px}.channel-card{padding:22px 18px}.channel-card h4{font-size:26px}
  .channel-card-head{align-items:flex-start;flex-wrap:wrap;gap:10px}.channel-card-head>div{flex:1;min-width:0}
  .channel-card-head h3{font-size:18px;line-height:1.25}.channel-card-head>div>span{font-size:12px;line-height:1.4}
  .channel-logo{width:38px;height:38px;flex:0 0 38px}
  .new-label,.pilot-label{font-size:11px;position:static;align-self:flex-start}
  .channel-card ul{font-size:16px;line-height:1.5}.channel-card li{font-size:16px;margin-bottom:10px}
  .channel-card .channel-limit,.channels-note{font-size:13px;line-height:1.6}
  .template-types summary{font-size:14px;min-height:48px}.template-types>div{font-size:12px}
  .zero-fee{gap:12px;padding:15px 12px}.zero-fee strong{font-size:34px}.zero-fee b{font-size:14px}.zero-fee span{font-size:12px;line-height:1.5}
  .call-feature{padding:18px 12px;gap:12px}.call-feature b{font-size:16px}.call-feature>div>span{font-size:13px;line-height:1.4}
  .channel-pills span{font-size:12px}
  .workspace-tabs{display:grid;grid-template-columns:1fr 1fr;overflow:visible;gap:6px;border:0;margin-bottom:14px}
  .workspace-tabs button{min-width:0;min-height:52px;white-space:normal;font-size:14px;line-height:1.35;padding:10px 8px;border:1px solid var(--line);border-radius:10px}
  .workspace-panel{padding:22px 18px;gap:24px}.panel-copy h3{font-size:29px}.panel-copy>p,.check-list li{font-size:16px;line-height:1.55}
  .pill{font-size:12px}.light-mock{padding:18px 12px 46px;min-height:0}
  .mock-heading{font-size:14px;flex-wrap:wrap;gap:10px}.mini-status,.note-label{font-size:12px}
  .queue-row{display:grid;grid-template-columns:32px 1fr;gap:6px 9px}.queue-row .avatar{width:32px;height:32px;font-size:12px;grid-row:1/3}
  .queue-row div b{font-size:14px}.queue-row div>span{font-size:12px}
  .queue-row .wait-tag,.queue-row .ok-tag{grid-column:2;justify-self:start;font-size:12px;padding:5px 8px}
  .client-note{padding:14px}.client-note p{font-size:14px}.quick-answer{font-size:14px}.quick-answer b{font-size:14px}
  .mock-disclaimer{font-size:12px;left:12px;right:12px;line-height:1.4}
  .call-summary{flex-wrap:wrap;gap:10px}.call-summary .ok-tag{display:inline-flex;font-size:12px}
  .calendar-week{display:grid;grid-template-columns:repeat(5,1fr)}.calendar-week>span{padding:8px 2px;font-size:12px}
  .publication-card b{font-size:14px}.publication-card .note-label,.publication-card p{font-size:12px;line-height:1.5}.publication-thumb{flex-shrink:0}
  .rule-active{font-size:12px;line-height:1.4}.analytics-stats{gap:20px;flex-wrap:wrap}.analytics-stats strong{font-size:36px}.analytics-stats span{font-size:12px}
  .bar-chart{gap:14px}.chart-label>span{font-size:12px}
  .editor-toolbar{padding:16px 14px;gap:12px;align-items:flex-start;flex-direction:column}
  .editor-title{align-items:flex-start;gap:10px}.editor-title b{font-size:15px;line-height:1.4}.editor-title>div>span{font-size:12px;line-height:1.5}
  .editor-status{display:inline-flex;font-size:12px;padding-left:0}.route-controls{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;padding:12px}
  .route-controls>span{grid-column:1/-1;font-size:12px;margin-bottom:2px}.route-controls button{font-size:12px;min-height:44px;padding:8px 4px;line-height:1.3}
  .route-controls .graph-zoom{display:none}.graph-footer{padding:16px}.graph-footer p{font-size:14px;line-height:1.6}.graph-footer>span{display:none}
  .funnel-benefits{gap:22px;margin-top:28px}.funnel-benefits b,.funnel-benefits p{font-size:16px;line-height:1.55}
  .window-note{font-size:13px;line-height:1.65;padding:16px}.window-note a{display:inline-block;padding:8px 0;white-space:normal}
  .scenario-tabs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}.scenario-tabs button{font-size:14px;min-height:48px;padding:10px 4px}
  .scenario-result h3{font-size:24px}.scenario-result p{font-size:16px;line-height:1.6}.scenario-result>span{font-size:14px}
  .crm-copy>p{font-size:16px}.crm-copy .button{width:100%;font-size:16px}.crm-demo{padding:20px 16px}
  .demo-label,.deal-title>span,.deal-title p{font-size:12px}.deal-title h3{font-size:24px}.deal-fields>div{gap:12px;flex-wrap:wrap}.deal-fields span,.deal-fields b{font-size:14px}
  .embedded-chat{padding:16px 12px}.embedded-chat>div:first-child{gap:8px}.embedded-chat b{font-size:14px}.embedded-message{max-width:100%}.embedded-message>span{font-size:12px}.embedded-message p{font-size:14px}.embedded-action p{font-size:12px}
  .integration-strip{gap:22px;display:grid;grid-template-columns:1fr 1fr}.integration-strip>span{grid-column:1/-1;font-size:12px}.integration-strip>div>span{font-size:12px}
  .case-copy p{font-size:16px}.case-amount{font-size:64px}.case-stats{gap:12px}.case-stats b{font-size:32px}
  .case-industry,.case-proof .case-caveat{font-size:12px}.underlined{font-size:14px;line-height:1.6;display:inline-block;padding:8px 0}
  .calculator{padding:24px 18px}.calc-heading{align-items:flex-start;gap:8px}.calc-heading .pill{font-size:11px}.calc-heading>span:last-child{font-size:12px;white-space:nowrap}
  .calc-label{font-size:18px;line-height:1.4}.number-input{flex-wrap:wrap;gap:8px}.number-input input{font-size:44px;width:100%;max-width:none}.number-input>span{font-size:14px}
  .input-hint{font-size:12px!important;line-height:1.5}.calculator input[type=range]{height:44px;margin:0}.range-labels{font-size:12px}
  .calc-presets{display:grid;grid-template-columns:repeat(4,1fr);gap:6px}.calc-presets button{padding:8px 3px;min-height:44px;font-size:14px}
  .calc-result output{font-size:clamp(32px,10vw,48px);overflow-wrap:anywhere}.calc-result small,.calc-not-total p{font-size:13px}.calc-result>span{font-size:14px}
  .credit-banner{display:grid;grid-template-columns:105px minmax(0,1fr);gap:8px;padding:10px}.credit-banner img{width:105px;height:130px;padding:4px}.credit-banner>div{padding:14px 5px 14px 0}.credit-banner strong{font-size:24px}.credit-banner .eyebrow{font-size:12px}.credit-banner p{font-size:14px;line-height:1.5}
  .cost-item{gap:14px}.cost-item p,.start-grid p{font-size:16px}.cost-item>span{font-size:12px}.pricing-footnote{font-size:13px}
  .faq-list summary{font-size:17px;min-height:64px}.faq-list details>p{font-size:16px;padding-right:4px}.faq-grid>div>p{font-size:16px}
  .contact-section{padding:56px 0}.contact-section p{font-size:16px;line-height:1.6}.contact-actions{flex-direction:column;gap:12px}.contact-section .contact-note{font-size:13px}
  .footer-top{gap:28px 18px;grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.footer-top>div{font-size:14px;min-width:0}.footer-top a{display:inline-flex;align-items:center;min-height:44px;overflow-wrap:anywhere}
  .footer-bottom{font-size:12px;line-height:1.6;gap:16px;flex-wrap:wrap}.footer-bottom a{min-height:44px;display:inline-flex;align-items:center}
  .interface-dialog{width:calc(100% - 20px);max-height:calc(100dvh - 20px);border-radius:14px}
  .interface-dialog-head{position:sticky;top:0;z-index:1;padding:16px;gap:10px}.interface-dialog-head h2{font-size:18px}.interface-dialog-head p{font-size:12px;line-height:1.4}
  .interface-dialog-head button{width:44px;height:44px}.interface-image-scroll{max-height:none;overflow:visible}.interface-image-scroll img{width:100%;max-width:100%}
}
@media(max-width:359px){.wrap{width:calc(100% - 28px)}.brand-caption{display:none}.header-actions{gap:4px}.channel-card-head h3{font-size:17px}.mobile-funnel{padding:16px 10px}.mobile-entry summary{gap:7px;padding:14px 9px}.entry-number{flex-basis:24px}.entry-chevron{font-size:17px}.mobile-entry b{font-size:15px}.workspace-panel{padding:20px 14px}}
@media(prefers-reduced-motion:reduce){.entry-chevron{transition:none}}
