/* Rogue partners — graphite and metallic silver, scoped to this page. */
.partners-page {
  --primary: #c5c9cd;
  --primary-dark: #aeb4b9;
  --primary-light: #d7dbde;
  --primary-soft: #e9ebed;
  --dark: #0c0c0c;
  --light: #171717;
  --black: #0b0b0b;
  --border: rgba(200,204,208,.15);
  --card-border: rgba(200,204,208,.14);
  --glow: rgba(200,204,208,.07);
  --glow-strong: rgba(200,204,208,.12);
  --title-gradient: linear-gradient(135deg,#f5f6f7,#c9cdd1 55%,#a7adb2);
  --radius: 14px;
  --radius-sm: 8px;
  --body: #aeaeae;
  --headline: #f4f4f4;
  --surface: #151515;
  --surface-raised: #1d1d1d;
  --stroke: #2e2e2e;
  --ui-muted: #999999;
  background: #0c0c0c;
  color: var(--body);
  line-height: 1.6;
}
.partners-page h1,.partners-page h2,.partners-page h3 { font-weight: 570; letter-spacing: -.045em; }
.partners-page h2 { font-size: clamp(32px,3.3vw,46px); line-height: 1.15; }
.partners-page h2 > span { color: #b6babe; }
.partners-page p { line-height: 1.7; }
.partners-page .section { padding-block: 104px; }
.partners-page .eyebrow { display: flex; align-items: center; gap: 10px; color: #acacac; font-size: 10px; font-weight: 600; letter-spacing: .13em; margin-bottom: 22px; line-height: 1.5; }
.partners-page .header { top: 16px; left: var(--gutter); right: var(--gutter); max-width: var(--container); border-radius: 14px; border-color: var(--stroke); }
/* Only .header__inner paints the menu; the outer header stays transparent. */
.partners-page .header,.partners-page .header.is-scrolled { background: transparent; box-shadow: none; backdrop-filter: none; -webkit-backdrop-filter: none; }
.partners-page .header::before { display: none; }
.partners-page .mobile-menu { background: linear-gradient(165deg,rgba(29,30,32,.98),rgba(11,12,13,.99)); }
.partners-page .mobile-menu a:not(.btn):hover { background: rgba(205,209,212,.10); }
.partners-page .header__menu a { color: #b3b3b3; }
.partners-page .header__menu a:hover { color: #fff; }
.partners-page .btn { min-height: 46px; border-radius: 8px; gap: 12px; font-size: 13px; padding: 13px 20px; transition: transform .2s,background .2s,border-color .2s; }
.partners-page .btn--sm { min-height: 38px; padding: 10px 15px; font-size: 12px; }
.partners-page .btn--light {
  background: linear-gradient(180deg, #f4f4f4 0%, #dadada 45%, #bfbfbf 100%);
  border: 1px solid #e1e1e1;
  color: #202020;
  font-weight: 600;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.8), inset 0 -1px 0 rgba(76,78,82,.18), 0 2px 4px rgba(0,0,0,.12);
}
.partners-page .btn--light::before,.partners-page .btn--light::after { display: none; }
.partners-page .btn--light:hover {
  background: linear-gradient(180deg, #fff 0%, #e6e6e6 45%, #cdcdcd 100%);
  border-color: #f5f5f5;
  box-shadow: inset 0 1px 0 #fff, inset 0 -1px 0 rgba(76,78,82,.14), 0 3px 8px rgba(0,0,0,.16);
}
.partners-page .btn--light:active { background: linear-gradient(180deg, #bfbfbf, #dadada); transform: translateY(1px); }
.partners-page .btn--outline { border-color: #494949; }
.partners-page .btn--outline:hover { border-color: #9c9c9c; background: #212121; }
.partners-page .btn .icon { fill: none; width: 16px; height: 16px; }
.partners-page .btn:hover .icon { transform: translateX(3px); }
.partners-page .footer { background: #0c0c0c; }
.partners-page .footer::before,.partners-page .footer .container::before,.partners-page .footer__bottom::before { display: none; }
.partners-page .footer__grid { padding-bottom: 32px; }
.partners-page .footer__brand img { filter: none; }
.skip-link { position: fixed; top: -80px; left: 20px; z-index: 200; padding: 10px 16px; background: #fff; color: #111; border-radius: 5px; }
.skip-link:focus { top: 16px; }
.svg-defs { position: absolute; width: 0; height: 0; overflow: hidden; }
.icon { display: inline-block; vertical-align: middle; width: 18px; height: 18px; flex: 0 0 auto; }
.brand-line { width: 20px; height: 1px; background: var(--primary-light); }
.product-surface { background: var(--surface); border: 1px solid var(--stroke); border-radius: var(--radius); box-shadow: 0 10px 35px rgba(0,0,0,.08); }
.ui-muted { color: var(--ui-muted); font-size: 10px; }
.ui-tag { display: inline-flex; align-items: center; gap: 5px; padding: 4px 7px; border: 1px solid #3d3d3d; background: #222222; border-radius: 5px; color: #c9c9c9; font-size: 10px; line-height: 1.3; white-space: nowrap; }
.ui-tag.positive { color: #9dddc6; background: #152a25; border-color: #2d4b42; }
.status-dot { display: inline-block; width: 5px; height: 5px; flex: 0 0 auto; background: #81c9b2; border-radius: 50%; }
.stage-dot { display: inline-block; width: 6px; height: 6px; border-radius: 50%; flex: 0 0 auto; }
.silver { background: #d6d9dc; }.slate { background: #aab0b6; }.amber { background: #d0b581; }.green { background: #80c2a8; }
.avatar { display: inline-grid; place-items: center; flex: 0 0 auto; width: 30px; height: 30px; border-radius: 8px; background: #323232; color: #d2d2d2; font-size: 10px; font-weight: 600; letter-spacing: -.02em; }
.avatar.large { width: 42px; height: 42px; border-radius: 12px; font-size: 13px; }
.fine-print,.demo-footnote { color: #989898; font-size: 11px; line-height: 1.6; }
.demo-footnote { text-align: center; margin-top: 17px; }
.section-heading { display: flex; justify-content: space-between; align-items: end; gap: 60px; margin-bottom: 46px; }
.section-heading > div { max-width: 760px; }
.section-heading > p { max-width: 350px; margin: 0; font-size: 15px; }
.section-copy > p:not(.eyebrow) { max-width: 430px; }
.section-copy h2 { margin-bottom: 24px; }
.simple-list { display: grid; gap: 16px; margin: 28px 0; color: #cfcfcf; font-size: 13px; }
.simple-list li { display: flex; align-items: center; gap: 10px; }
.simple-list .icon { width: 15px; height: 15px; color: #aeaeae; }

/* Hero: a composed working UI, not a stock dashboard image. */
.partner-hero { padding-top: 160px; overflow: hidden; }
.hero-layout { display: grid; grid-template-columns: .96fr 1.04fr; gap: 62px; align-items: center; }
.hero-copy h1 { font-size: clamp(46px,4.7vw,66px); line-height: 1.04; letter-spacing: -.055em; font-weight: 600; margin: 0 0 25px; }
.hero-copy h1 span,.final-layout h2 > span {
  background: linear-gradient(140deg,#f5f6f7 0%,#c9cdd1 50%,#9ca4aa 100%);
  background-clip: text;
  -webkit-background-clip: text;
  color: transparent;
  -webkit-text-fill-color: transparent;
}
.hero-description { max-width: 490px; font-size: 16px; margin-bottom: 28px; }
.hero-description strong { color: #e0e0e0; font-weight: 500; }
.hero-actions { display: flex; gap: 11px; flex-wrap: wrap; }
.trust-inline { display: flex; flex-wrap: wrap; gap: 17px; margin-top: 22px; font-size: 11px; color: #a9a9a9; }
.trust-inline li { display: flex; align-items: center; gap: 6px; }
.trust-inline .icon { width: 13px; height: 13px; color: #82b8a5; }
.hero-calc-link { display: inline-flex; align-items: center; gap: 8px; font-size: 11px; margin-top: 24px; color: #bbbbbb; }
.hero-calc-link:hover { color: #fff; }
.hero-calc-link .icon { width: 13px; height: 13px; }
.hero-product { position: relative; min-width: 0; height: 474px; margin-top: 8px; }
.demo-caption { display: flex; align-items: center; justify-content: space-between; margin-bottom: 15px; gap: 15px; color: #939393; font-size: 9px; letter-spacing: .12em; font-weight: 500; }
.demo-caption > span { display: flex; align-items: center; gap: 7px; }
.motion-toggle { display: inline-flex; align-items: center; justify-content: center; gap: 6px; min-height: 32px; padding: 5px 8px; border: 1px solid transparent; border-radius: 5px; font-size: 10px; color: #b4b4b4; line-height: 1.2; }
.motion-toggle .icon { width: 11px; height: 11px; }
.motion-toggle:hover { border-color: #464646; background: #1f1f1f; }
.motion-toggle:disabled { opacity: .6; cursor: default; }
.product-window { position: relative; margin-top: 40px; border: 1px solid #3a3a3a; background: #171717; border-radius: 11px; box-shadow: 0 16px 45px rgba(0,0,0,.22); overflow: hidden; }
.window-bar { display: flex; align-items: center; justify-content: space-between; gap: 12px; height: 37px; padding: 0 13px; background: #1d1d1d; border-bottom: 1px solid #333333; font-size: 9px; color: #a5a5a5; }
.window-bar b { color: #5f5f5f; padding: 0 5px; }
.window-bar > .icon { width: 10px; height: 10px; }
.window-dots { display: flex; gap: 4px; }
.window-dots i { width: 5px; height: 5px; border-radius: 50%; background: #505050; }
.window-layout { display: flex; min-height: 290px; }
.mini-sidebar { width: 43px; padding-top: 21px; display: flex; flex-direction: column; align-items: center; gap: 22px; border-right: 1px solid #303030; color: #848484; }
.mini-sidebar > .icon { width: 15px; height: 15px; }
.mini-sidebar > .icon:nth-child(2) { color: #bebebe; }
.mini-sidebar > span { margin-top: auto; margin-bottom: 16px; padding: 3px 6px; border: 1px solid #454545; border-radius: 4px; font-size: 9px; }
.hero-workspace { flex: 1; min-width: 0; padding: 19px 17px 26px; }
.ui-page-heading { display: flex; justify-content: space-between; align-items: center; gap: 10px; margin-bottom: 19px; }
.partners-page .ui-page-heading h2 { font-size: 17px; margin-top: 4px; letter-spacing: -.02em; }
.ui-page-heading .ui-tag { padding: 3px 6px; font-size: 8px; }
.mini-pipeline { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; }
.mini-pipeline > div > span { display: flex; align-items: center; gap: 5px; font-size: 9px; color: #bcbcbc; margin-bottom: 10px; }
.mini-pipeline > div > span b { margin-left: auto; color: #747474; font-size: 8px; }
.tiny-lead { display: flex; align-items: center; gap: 7px; padding: 11px 8px; margin-bottom: 8px; border: 1px solid #363636; border-radius: 7px; background: #212121; }
.tiny-lead .avatar { width: 25px; height: 25px; border-radius: 6px; font-size: 8px; }
.tiny-lead strong { font-size: 9px; font-weight: 500; color: #e2e2e2; min-width: 0; }
.tiny-lead small { display: block; color: #949494; font-size: 8px; font-weight: 400; margin-top: 2px; }
.tiny-lead > .icon { margin-left: auto; width: 13px; height: 13px; color: #9a9a9a; }
.muted-lead { opacity: .5; }
.ui-skeleton { height: 41px; border: 1px dashed #333333; border-radius: 7px; opacity: .7; }
.hero-activity { display: flex; gap: 8px; align-items: center; margin-top: 17px; border-top: 1px solid #303030; padding-top: 14px; color: #858585; }
.hero-activity > .icon { width: 14px; height: 14px; }
.hero-activity > .icon:last-child { margin-left: auto; color: #84b9a5; }
.hero-activity strong,.hero-activity span { display: block; font-size: 9px; font-weight: 400; }
.hero-activity strong { color: #cacaca; }.hero-activity span { font-size: 8px; color: #8a8a8a; }
.floating-origin { position: absolute; top: 52px; left: -27px; display: flex; gap: 10px; align-items: center; padding: 12px 14px; border: 1px solid #515151; background: #232323; border-radius: 8px; box-shadow: 0 8px 20px rgba(0,0,0,.18); }
.floating-origin > .icon { width: 22px; height: 22px; color: #bbbbbb; }
.floating-origin small { display: block; color: #ababab; font-size: 7px; letter-spacing: .1em; }
.floating-origin strong { display: block; font-size: 10px; margin-top: 1px; }
.floating-origin > .status-dot { margin-left: 10px; }
.floating-chat { position: absolute; width: 298px; right: -12px; bottom: 22px; padding: 14px; border: 1px solid #484848; background: #1e1e1e; border-radius: 11px; box-shadow: 0 18px 32px rgba(0,0,0,.25); }
.chat-header { display: flex; align-items: center; gap: 8px; }
.chat-header strong { display: block; font-size: 11px; font-weight: 550; }
.chat-header > div > span { display: flex; align-items: center; gap: 4px; color: #b0b0b0; font-size: 8px; }
.chat-header .icon { width: 9px; height: 9px; }
.chat-header > .status-dot { margin-left: auto; }
.hero-message { background: #303030; border-radius: 1px 8px 8px 8px; color: #dddddd; padding: 10px 12px; font-size: 10px; margin-top: 13px; line-height: 1.5; }
.hero-message small { display: block; text-align: right; font-size: 7px; color: #aaaaaa; margin-top: 3px; }
.hero-ai { display: flex; gap: 8px; margin-top: 10px; padding: 8px; background: #292929; border: 1px solid #414141; border-radius: 6px; font-size: 9px; line-height: 1.5; color: #bbbbbb; }
.hero-ai .icon { width: 14px; height: 14px; color: #bababa; }
.hero-ai strong { font-weight: 500; color: #dadada; }
.hero-status { display: flex; justify-content: space-between; align-items: center; margin-top: 10px; }
.hero-status .ui-tag { font-size: 8px; }
.hero-demo-note { position: absolute; bottom: 0; right: 1px; font-size: 9px; color: #888888; }
.partner-strip { display: grid; grid-template-columns: 1.35fr .8fr .6fr 1fr; gap: 40px; align-items: center; margin-top: 71px; padding-top: 33px; padding-bottom: 36px; border-top: 1px solid var(--stroke); border-bottom: 1px solid var(--stroke); }
.partner-strip p { font-size: 13px; margin: 0; color: #9a9a9a; }
.partner-strip p strong { font-weight: 500; color: #c5c5c5; }
.partner-strip > div > strong { display: block; font-size: 25px; color: #e3e3e3; font-weight: 550; letter-spacing: -.04em; }
.partner-strip > div > strong span { font-size: 18px; }
.partner-strip > div > span { display: block; font-size: 11px; color: #9e9e9e; margin-top: 2px; }

/* A continuous journey, adapted to a vertical track on small screens. */
.journey-grid { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 25px; }
.journey-node { min-width: 0; position: relative; }
.node-label { display: flex; align-items: center; gap: 9px; margin-bottom: 18px; }
.node-label > span { font-size: 10px; color: #888888; }
.node-label h3 { font-size: 17px; letter-spacing: -.025em; color: #d6d6d6; }
.node-label > .icon { margin-left: auto; width: 18px; height: 18px; color: #7c7c7c; }
.node-note { margin-top: 14px; font-size: 11px; line-height: 1.5; }
.ad-preview,.flow-contact,.flow-chat,.flow-service { height: 227px; border: 1px solid var(--stroke); border-radius: 9px; background: #171717; transition: border-color .4s; }
[data-stage='0'] [data-node='0'] > .ad-preview,[data-stage='1'] [data-node='1'] > .flow-contact,[data-stage='2'] [data-node='2'] > .flow-chat,[data-stage='3'] [data-node='3'] > .flow-service { border-color: #868686; }
[data-stage='0'] [data-node='0'] .node-label h3,[data-stage='1'] [data-node='1'] .node-label h3,[data-stage='2'] [data-node='2'] .node-label h3,[data-stage='3'] [data-node='3'] .node-label h3 { color: #c2c2c2; }
.ad-preview { padding: 12px; }
.ad-brand { display: flex; align-items: center; gap: 7px; }
.clinic-symbol { display: grid; place-items: center; width: 26px; height: 26px; border: 1px solid #c4bba3; border-radius: 50%; color: #ddd2b8; font-size: 18px; }
.ad-brand strong { display: block; font-size: 9px; }.ad-brand small { display: block; font-size: 7px; color: #aaaaaa; }
.ad-art { position: relative; display: flex; align-items: center; overflow: hidden; height: 132px; margin-top: 10px; padding: 16px; background: #d6d3c8; color: #344848; border-radius: 4px; }
.ad-art > span:first-child { z-index: 1; font-family: Georgia,serif; font-size: 21px; line-height: 1.15; letter-spacing: -.04em; }
.ad-art-mark { position: absolute; right: -14px; top: -34px; color: #718a82; opacity: .18; font-size: 240px; font-weight: 200; line-height: 1; }
.ad-footer { display: flex; justify-content: space-between; margin-top: 10px; font-size: 8px; color: #b9b9b9; }
.ad-footer .icon { width: 12px; height: 12px; }
.flow-contact { padding: 19px 16px 14px; display: flex; flex-direction: column; align-items: flex-start; }
.flow-contact > strong { font-size: 14px; margin-top: 12px; }
.flow-contact > span:not(.avatar) { margin-top: 3px; color: #a1a1a1; font-size: 10px; }
.contact-origin { display: flex; align-items: center; gap: 6px; margin-top: 13px; color: #bbbbbb; font-size: 10px; }
.contact-origin .icon { width: 15px; height: 15px; }
.contact-footer { display: flex; justify-content: space-between; align-items: center; width: 100%; margin-top: auto; padding-top: 13px; border-top: 1px solid #313131; }
.contact-footer > span:last-child { color: #8a8a8a; font-size: 8px; }
.flow-chat { padding: 15px 12px; }
.flow-chat-top { display: flex; align-items: center; gap: 7px; }
.flow-chat-top strong { display: block; font-size: 10px; }
.flow-chat-top > div > span { display: flex; gap: 4px; align-items: center; font-size: 7px; color: #b0b0b0; }
.chat-bubble { max-width: 87%; width: fit-content; margin-top: 16px; border-radius: 2px 10px 10px 10px; padding: 13px 15px; background: #2d2d2d; color: #d9d9d9; font-size: 12px; line-height: 1.65; }
.chat-bubble small { display: block; text-align: right; margin-top: 5px; color: #9d9d9d; font-size: 9px; }
.flow-chat .chat-bubble { font-size: 10px; max-width: 100%; margin-top: 17px; padding: 10px; }
.flow-chat .chat-bubble small { font-size: 7px; }
.chat-typing { display: flex; align-items: center; gap: 3px; margin-top: 14px; }
.chat-typing i { width: 3px; height: 3px; border-radius: 50%; background: #848484; }
.chat-typing span { margin-left: 5px; color: #838383; font-size: 7px; }
.flow-service { padding: 20px 15px 14px; display: flex; flex-direction: column; }
.ai-label { display: flex; align-items: center; gap: 7px; font-size: 8px; letter-spacing: .06em; color: #bbbbbb; }
.ai-label .icon { width: 15px; height: 15px; }
.flow-service > p { margin-top: 16px; font-size: 12px; line-height: 1.65; color: #cfcfcf; }
.service-status { display: flex; gap: 8px; align-items: center; justify-content: space-between; margin-top: auto; font-size: 9px; color: #9f9f9f; }
.service-status .ui-tag { font-size: 8px; font-weight: 500; }
.service-task { display: flex; align-items: center; gap: 5px; border-top: 1px solid #313131; padding-top: 12px; margin-top: 11px; font-size: 8px; color: #a8a8a8; }
.service-task .icon { width: 11px; height: 11px; }
.signal { position: absolute; left: 100%; top: 151px; width: 25px; height: 1px; background: #3f3f3f; overflow: visible; }
.signal-fill { display: block; width: 100%; height: 100%; background: #acacac; transform-origin: left; }
.signal-fill::after { content: ''; position: absolute; width: 4px; height: 4px; right: 0; top: -1.5px; background: #c3c3c3; border-radius: 50%; }
.journey-controls { display: flex; align-items: center; justify-content: space-between; gap: 16px; padding: 18px 0 0; border-top: 1px solid var(--stroke); margin-top: 12px; }
.journey-controls > span { display: flex; align-items: center; gap: 8px; font-size: 12px; color: #bcbcbc; }
.journey-controls .motion-toggle { font-size: 11px; }

/* Context, CRM and the operating workspace. */
.problem-section { background: #111111; border-block: 1px solid #262626; }
.problem-layout { display: grid; grid-template-columns: .83fr 1.17fr; gap: 70px; align-items: center; }
.problem-layout > div:first-child > p:last-child { max-width: 430px; font-size: 14px; margin-top: 22px; }
.operation-compare { display: grid; grid-template-columns: 1fr 1fr; gap: 27px; }
.compare-label { display: block; border-bottom: 1px solid #3f3f3f; padding-bottom: 18px; font-size: 9px; font-weight: 600; letter-spacing: .08em; color: #9a9a9a; }
.with-rogue { color: #c3c3c3; border-color: #727272; }
.operation-compare ul { display: grid; gap: 20px; margin-top: 21px; }
.operation-compare li { min-height: 47px; font-size: 12px; color: #a5a5a5; }
.operation-compare > div:last-child li { display: flex; align-items: start; gap: 9px; color: #d4d4d4; }
.operation-compare .icon { width: 13px; height: 13px; margin-top: 4px; color: #8ab9a6; }
/* The shared homepage also has a three-column .crm-board illustration. */
.partners-page .crm-board { display: block; overflow: hidden; }
.board-toolbar { display: flex; justify-content: space-between; align-items: center; padding: 20px 24px; gap: 20px; border-bottom: 1px solid var(--stroke); }
.board-toolbar > div:first-child { display: flex; align-items: center; gap: 10px; }
.board-toolbar > div:first-child > .icon { color: #aaaaaa; width: 16px; height: 16px; }
.board-toolbar strong { font-size: 13px; font-weight: 550; }
.segmented { display: inline-flex; padding: 3px; gap: 2px; background: #101010; border: 1px solid #343434; border-radius: 7px; }
.segmented button { display: inline-flex; align-items: center; justify-content: center; gap: 5px; padding: 7px 10px; min-height: 32px; font-size: 10px; border-radius: 4px; color: #acacac; transition: background .2s,color .2s; }
.segmented button.selected { background: #424242; color: #f3f3f3; box-shadow: inset 0 1px 0 rgba(255,255,255,.09); }
.segmented button:hover { color: #fff; }
.segmented button .icon { width: 12px; height: 12px; }
.board-columns { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 15px; padding: 22px; }
.board-column { min-width: 0; min-height: 244px; }
.board-empty { padding: 20px 10px; border: 1px dashed var(--stroke); border-radius: 8px; font-size: 11px; color: var(--ui-muted); }
.partners-page [hidden] { display: none !important; }
.partners-page :focus-visible { outline: 2px solid #c2c2c2; outline-offset: 4px; }
.board-column h3 { display: flex; align-items: center; gap: 7px; margin-bottom: 14px; font-size: 12px; font-weight: 500; letter-spacing: -.015em; color: #c5c5c5; }
.board-column h3 > span { margin-left: auto; color: #7c7c7c; font-size: 10px; }
.lead-card { background: #202020; padding: 14px; border: 1px solid #393939; border-radius: 8px; margin-bottom: 11px; transition: transform .2s,border-color .2s,box-shadow .2s; }
.lead-card:hover { border-color: #737373; transform: translateY(-2px); box-shadow: 0 5px 14px rgba(0,0,0,.15); }
.lead-person { display: flex; gap: 8px; align-items: center; }
.lead-person strong { font-size: 11px; font-weight: 550; }
.lead-card > p { font-size: 9px; margin: 12px 0 11px; color: #9d9d9d; }
.lead-bottom { display: flex; justify-content: space-between; align-items: center; gap: 5px; }
.lead-bottom .ui-tag { font-size: 8px; padding: 3px 5px; }
.lead-score { display: inline-flex; align-items: center; gap: 3px; color: #b8b8b8; font-size: 8px; }
.lead-score .icon { width: 11px; height: 11px; }
.board-bottom { display: flex; justify-content: space-between; gap: 15px; padding: 13px 24px; border-top: 1px solid var(--stroke); color: #9b9b9b; font-size: 10px; }
.board-bottom > span:first-child { display: flex; gap: 7px; align-items: center; }
.board-bottom .icon { width: 12px; height: 12px; }
.context-row { display: flex; justify-content: center; flex-wrap: wrap; gap: 28px; margin-top: 26px; }
.context-row span { display: flex; align-items: center; gap: 8px; font-size: 11px; color: #aaaaaa; }
.context-row .icon { width: 14px; height: 14px; color: #858585; }
.conversation-section { background: #121212; border-block: 1px solid #262626; }
.conversation-layout { display: grid; grid-template-columns: .84fr 1.16fr; align-items: center; column-gap: 92px; row-gap: 32px; }
.conversation-demo { overflow: hidden; background: #191919; }
.conversation-top { display: flex; justify-content: space-between; align-items: center; padding: 17px 22px; border-bottom: 1px solid #333333; }
.conversation-top > span:first-child { display: flex; align-items: center; gap: 8px; font-size: 11px; color: #c3c3c3; }
.conversation-top .icon { color: #8ec4b1; width: 15px; height: 15px; }
.conversation-content { padding: 23px 26px; }
.patient-heading { display: flex; align-items: center; gap: 9px; }
.patient-heading strong { display: block; font-size: 12px; }.patient-heading > div > span { display: block; color: #a1a1a1; font-size: 9px; }
.patient-heading > .ui-muted { margin-left: auto; }
.chat-bubble.outgoing { margin-left: auto; background: #213b3b; color: #d4e6e0; border-radius: 10px 2px 10px 10px; }
.chat-bubble.outgoing small { color: #99b8b3; }
.ai-workspace { border-top: 1px solid #404040; background: #1f1f1f; }
.ai-workspace-head { display: flex; justify-content: space-between; align-items: center; gap: 15px; padding: 17px 22px; }
.ai-workspace-head > span { display: flex; align-items: center; gap: 8px; font-size: 11px; color: #cccccc; }
.ai-workspace-head .icon { width: 15px; height: 15px; color: #b6b6b6; }
.ai-workspace .segmented { background: #171717; border-color: #3c3c3c; }
.ai-workspace .segmented button.selected { background: #424242; color: #f3f3f3; }
.ai-pane { padding: 0 22px 23px; min-height: 128px; }
.ai-pane > p { margin: 0; color: #dedede; font-size: 13px; line-height: 1.7; }
.ai-pane > span { display: block; margin-top: 13px; font-size: 9px; color: #a5a5a5; }
.ai-pane dl { margin: 0; font-size: 11px; display: grid; gap: 10px; }
.ai-pane dl > div { display: grid; grid-template-columns: 95px 1fr; }
.ai-pane dt { color: #a2a2a2; }.ai-pane dd { margin: 0; color: #d9d9d9; }
[hidden] { display: none !important; }

/* Two different visual stories: a workflow and an attribution report. */
.operations-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 64px; }
.operations-grid h2 { font-size: clamp(30px,3vw,40px); }
.operations-grid article > p:not(.eyebrow):not(.fine-print) { max-width: 440px; margin-top: 22px; margin-bottom: 28px; font-size: 14px; }
.operations-grid .fine-print { margin-top: 14px; }
.automation-ui { padding: 25px; }
.automation-trigger,.automation-action { display: flex; align-items: center; gap: 12px; padding: 13px; border: 1px solid #3f3f3f; border-radius: 7px; background: #1f1f1f; }
.workflow-icon { display: grid; place-items: center; width: 32px; height: 32px; background: #2f2f2f; color: #b5b5b5; border-radius: 6px; }
.workflow-icon .icon { width: 15px; height: 15px; }
.automation-ui small { display: block; font-size: 8px; letter-spacing: .08em; color: #9b9b9b; }
.automation-ui strong { display: block; font-size: 11px; font-weight: 500; }
.automation-action > .icon { margin-left: auto; width: 14px; height: 14px; color: #8cb7a8; }
.workflow-link { height: 22px; width: 1px; margin-left: 28px; background: #6e6e6e; }
.task-preview { border-left: 2px solid #969696; margin: 18px 0 0 28px; padding: 4px 0 4px 16px; }
.task-preview > .ui-tag { font-size: 8px; margin-bottom: 8px; }
.task-preview > strong { margin-bottom: 4px; font-size: 12px; }
.task-preview > span:not(.ui-tag) { display: block; font-size: 9px; color: #a0a0a0; }
.task-preview > div { display: flex; align-items: center; gap: 6px; margin-top: 11px; font-size: 9px; color: #b4b4b4; }
.task-preview > div > span:last-child { margin-left: auto; }
.task-preview .avatar { width: 21px; height: 21px; border-radius: 50%; font-size: 7px; }
.analytics-ui { padding: 25px; min-height: 340px; }
.analytics-top { display: flex; justify-content: space-between; align-items: center; gap: 10px; }
.analytics-top strong { font-size: 12px; }.analytics-top .ui-tag { font-size: 8px; }
.analytics-numbers { display: grid; grid-template-columns: .75fr .8fr 1.4fr; gap: 10px; padding: 24px 0; margin-bottom: 18px; border-bottom: 1px solid #3a3a3a; }
.analytics-numbers span { display: block; color: #9a9a9a; font-size: 9px; }
.analytics-numbers strong { display: block; margin-top: 7px; font-size: 25px; font-weight: 550; letter-spacing: -.04em; }
.analytics-numbers > div:last-child strong { font-size: 23px; color: #c4c4c4; }
.chart-title { font-size: 10px; color: #c5c5c5; margin-bottom: 17px; }
.source-row { display: grid; grid-template-columns: 97px 1fr 20px; align-items: center; gap: 10px; margin-bottom: 14px; font-size: 9px; }
.source-row > span { color: #a1a1a1; }.source-row strong { color: #bfbfbf; font-weight: 500; text-align: right; }
.source-row > div { height: 7px; background: #2c2c2c; border-radius: 2px; overflow: hidden; }
.source-row i { display: block; height: 100%; width: var(--bar); background: #9b9b9b; border-radius: 2px; }
.source-row:nth-last-child(3) i { background: #7c7c7c; }.source-row:nth-last-child(2) i { background: #5b5b5b; }
.analytics-foot { display: flex; align-items: center; gap: 6px; margin-top: 24px; font-size: 9px; color: #9b9b9b; }
.analytics-foot .icon { width: 14px; height: 14px; }

/* Partnership mechanics and the commission calculator. */
.partnership-section { background: #111111; border-block: 1px solid #262626; }
.partnership-steps { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 30px; }
.partnership-steps li { border-top: 1px solid #474747; padding-top: 18px; }
.partnership-steps li > span { color: #9a9a9a; font-size: 11px; }
.partnership-steps strong { display: block; margin-top: 26px; font-size: 19px; font-weight: 550; letter-spacing: -.03em; }
.partnership-steps p { font-size: 13px; margin: 10px 0 0; max-width: 220px; }
.earnings-heading { text-align: center; max-width: 720px; margin: 0 auto 42px; }
.earnings-heading .eyebrow { justify-content: center; }.earnings-heading > p:last-child { max-width: 540px; margin: 22px auto 0; font-size: 15px; }
.earnings-calculator { max-width: 1000px; margin: auto; display: grid; grid-template-columns: 1.2fr 1fr; overflow: hidden; }
.calc-control { padding: 35px 37px; }
.calc-control label { display: block; font-size: 13px; color: #d2d2d2; }
.calc-selection { display: flex; align-items: center; justify-content: space-between; gap: 20px; margin: 23px 0 30px; }
.calc-selection output { color: #f5f5f5; font-size: 48px; font-weight: 550; letter-spacing: -.05em; line-height: 1; }
.calc-selection > div > span { margin-left: 9px; font-size: 12px; color: #aaaaaa; }
#clinicas-range { appearance: none; width: 100%; height: 5px; border-radius: 99px; background: linear-gradient(to right,#c8ccd0 0%,#c8ccd0 var(--range-progress,23%),#3c3e41 var(--range-progress,23%),#3c3e41 100%); cursor: pointer; }
#clinicas-range::-webkit-slider-thumb { appearance: none; width: 21px; height: 21px; border-radius: 50%; background: #e4e6e8; border: 5px solid #aeb5bb; }
#clinicas-range::-moz-range-thumb { width: 11px; height: 11px; border-radius: 50%; background: #e4e6e8; border: 5px solid #aeb5bb; }
.range-limits { display: flex; justify-content: space-between; margin: 12px 0 25px; font-size: 9px; color: #999999; }
.calc-presets { display: flex; align-items: center; gap: 8px; flex-wrap: wrap; font-size: 10px; color: #a0a0a0; }
.calc-presets button { min-height: 32px; padding: 6px 9px; border: 1px solid #414141; border-radius: 5px; font-size: 10px; color: #c9c9c9; }
.calc-presets button.selected,.calc-presets button:hover { border-color: #b4b4b4; color: #f3f3f3; background: #383838; }
#calc-upgrade { margin: 21px 0 0; color: #bbbbbb; font-size: 11px; }
.calc-result { display: flex; flex-direction: column; justify-content: center; padding: 36px; border-left: 1px solid #414141; background: #232323; }
.calc-result > span { color: #bbbbbb; font-size: 11px; }.calc-result > span:last-of-type { line-height: 1.7; }
.calc-result > strong { display: block; margin: 15px 0 12px; color: #f4f4f4; font-size: clamp(38px,4vw,53px); letter-spacing: -.05em; font-weight: 550; line-height: 1.1; }
.calc-result b { font-weight: 600; color: #e6e6e6; }
.calc-result .btn { margin-top: 30px; align-self: start; }
.calc-note { max-width: 940px; margin: 17px auto 0; font-size: 10px; color: #979797; text-align: center; }
.tier-comparison { display: grid; grid-template-columns: 1fr 1fr; gap: 36px; max-width: 1100px; margin: 56px auto 0; scroll-margin-top: 100px; }
.commission-tier { display: grid; grid-template-columns: .7fr 1.3fr; gap: 22px; border-top: 1px solid #3f3f3f; padding-top: 22px; transition: border-color .3s; }
.commission-tier.active { border-color: #a5a5a5; }
.commission-tier .eyebrow { margin-bottom: 11px; font-size: 9px; color: #9c9c9c; }.commission-tier.active .eyebrow { color: #bfbfbf; }
.commission-tier h3 { font-size: 47px; line-height: 1; }.commission-tier h3 > span { font-size: 22px; vertical-align: top; }
.commission-tier p:last-child { margin-top: 10px; font-size: 10px; color: #a8a8a8; }
.commission-tier ul { display: grid; align-content: start; gap: 11px; margin-top: 4px; }
.commission-tier li { display: flex; gap: 7px; font-size: 11px; color: #bbbbbb; }
.commission-tier .icon { width: 12px; height: 12px; margin-top: 3px; color: #9e9e9e; }

/* Trust and conversion. */
.founder-section { border-top: 1px solid #262626; }
.founder-layout { display: grid; grid-template-columns: minmax(0,380px) minmax(0,740px); gap: 40px; align-items: stretch; justify-content: center; }
.founder-portrait { overflow: hidden; border-radius: 12px; }
.founder-portrait img { display: block; width: 100%; height: 100%; object-fit: cover; object-position: center; }
.founder-layout h2 { font-size: 30px; line-height: 1.3; margin-bottom: 20px; letter-spacing: -.03em; }
.founder-layout > div:last-child > p:not(.eyebrow) { font-size: 14px; max-width: 700px; }
.founder-layout > div:last-child > p:not(.eyebrow) + p { margin-top: 14px; }
.founder-layout > div:last-child > strong { display: block; margin-top: 22px; font-size: 13px; font-weight: 550; }
.founder-role { color: #949494; font-size: 11px; }
.faq-section { padding-top: 32px !important; }
.faq-layout { display: grid; grid-template-columns: .9fr 1.1fr; gap: 90px; }
.faq-layout h2 { font-size: 36px; }
.faq-list { border-top: 1px solid #3b3b3b; }
.faq-list details { border-bottom: 1px solid #313131; }
.faq-list summary { position: relative; padding: 20px 34px 20px 0; list-style: none; cursor: pointer; color: #d4d4d4; font-size: 13px; font-weight: 500; }
.faq-list summary::-webkit-details-marker { display: none; }
.faq-list summary::after { content: '+'; position: absolute; right: 5px; top: 14px; font-size: 23px; font-weight: 300; color: #ababab; }
.faq-list details[open] summary::after { content: '−'; }
.faq-list p { margin: 0; padding: 0 32px 20px 0; font-size: 12px; color: #a3a3a3; }
.final-section { padding: 100px 0; background: #1a1a1a; border-top: 1px solid #3a3a3a; }
.final-layout { display: grid; grid-template-columns: 1fr .95fr; align-items: center; gap: 100px; }
.final-layout h2 { font-size: clamp(37px,4vw,52px); margin-bottom: 25px; }.final-layout h2 > span { color: #c2c2c2; }
.final-layout > div > p:not(.eyebrow) { max-width: 480px; font-size: 16px; }
.partner-form { background: #0c0c0c; border: 1px solid #424242; border-radius: 12px; padding: 32px; box-shadow: 0 20px 50px rgba(0,0,0,.14); }
.partner-form h3 { font-size: 21px; letter-spacing: -.025em; }.partner-form > p:first-of-type { margin: 9px 0 25px; font-size: 14px; color: #a8a8a8; }
.form-row { display: grid; grid-template-columns: 1fr 1fr; gap: 13px; }
.field { margin-bottom: 17px; min-width: 0; }
.field label { display: block; font-size: 12px; font-weight: 500; color: #b8c1c3; margin-bottom: 7px; }
.field label span { margin-left: 4px; color: #a0a0a0; font-size: 10px; font-weight: 400; }
.field input,.field select { width: 100%; min-width: 0; height: 43px; border: 1px solid #4a4a4a; border-radius: 8px; background: #151515; color: #e2e6e7; padding: 0 12px; font-family: inherit; font-size: 13px; outline: none; transition: border-color .2s,background .2s,box-shadow .2s; }
.field input::placeholder { color: #929da0; }.field select { color-scheme: dark; }
.field input:hover,.field select:hover { border-color: #909090; background: #202020; }
.field input:focus-visible,.field select:focus-visible { border-color: #c4c4c4; box-shadow: 0 0 0 3px rgba(200,200,200,.15); }
.partner-form .task-native-hidden { display: none; }
.partner-form .task-modern-trigger { min-height: 43px; font-size: 13px; }
.partner-form .task-modern-menu { max-height: 245px; }
.partner-form > .btn { width: 100%; margin-top: 5px; }
.partner-form > .form-note { margin: 13px 0 0; font-size: 12px; color: #a0a0a0; }
.partner-form > .form-note[data-state="success"] { color: #8dd5bd; }
.partner-form > .form-note[data-state="error"] { color: #f0a29c; }
.partner-form > .btn:disabled { cursor: wait; opacity: .72; }

@media (max-width: 1150px) {
  .hero-layout { gap: 42px; }.hero-copy h1 { font-size: 54px; }.hero-product { height: 450px; }.floating-origin { left: -18px; top: 52px; }.floating-chat { width: 270px; right: -8px; }.hero-workspace { padding-inline: 12px; }.tiny-lead { padding-inline: 6px; gap: 5px; }.tiny-lead .avatar { width: 20px; height: 20px; font-size: 7px; }.tiny-lead strong { font-size: 8px; }.mini-pipeline { gap: 8px; }.partners-page .ui-page-heading h2 { font-size: 15px; }
  .conversation-layout,.final-layout { gap: 50px; }.problem-layout { gap: 42px; }.operations-grid { gap: 36px; }.journey-grid { gap: 20px; }.signal { width: 20px; }.ad-art > span:first-child { font-size: 20px; }.node-label h3 { font-size: 15px; }.board-columns { padding: 16px; gap: 10px; }.lead-card { padding: 11px; }.lead-person strong { font-size: 10px; }.lead-score { display: none; }
}
@media (max-width: 980px) {
  .partners-page .section { padding-block: 80px; }.partner-hero { padding-top: 130px; }.hero-layout { grid-template-columns: 1fr; gap: 40px; }.hero-copy { max-width: 640px; }.hero-copy h1 { font-size: 62px; }.hero-copy h1 br:nth-of-type(2) { display: none; }.hero-description { max-width: 560px; }.hero-product { max-width: 620px; width: 100%; margin-inline: auto; height: 480px; }.hero-workspace { padding: 20px; }.mini-sidebar { width: 47px; }.tiny-lead { padding: 12px; }.tiny-lead .avatar { width: 27px; height: 27px; font-size: 9px; }.tiny-lead strong { font-size: 10px; }.partners-page .ui-page-heading h2 { font-size: 18px; }.floating-chat { width: 320px; }.floating-origin { left: -18px; }.hero-message { font-size: 11px; }.hero-ai { font-size: 10px; }.mini-pipeline { gap: 15px; }.partner-strip { margin-top: 38px; gap: 28px; grid-template-columns: 1.2fr 1fr 1fr; }.partner-strip p { grid-column: 1/-1; }.partner-strip p br { display: none; }
  .section-heading { display: block; }.section-heading > p { max-width: 560px; margin-top: 20px; }.journey-grid { gap: 14px; }.signal { width: 14px; }.node-label { gap: 6px; }.node-label > .icon { display: none; }.flow-service { padding: 15px 12px; }.flow-service > p { font-size: 11px; }.service-status { align-items: start; flex-direction: column; gap: 5px; }.service-task { margin-top: 9px; padding-top: 9px; }.ad-preview { padding: 9px; }.ad-brand strong { font-size: 8px; }.ad-brand small { font-size: 6px; }.ad-art { padding: 10px; }.flow-contact { padding: 16px 12px 12px; }.flow-contact > strong { font-size: 12px; }.contact-origin { font-size: 9px; }.flow-chat { padding: 12px 9px; }.flow-chat-top .avatar { display: none; }
  .problem-layout { grid-template-columns: 1fr; gap: 32px; }.operation-compare { max-width: 700px; }.operation-compare li { min-height: auto; }.conversation-layout { gap: 35px; grid-template-columns: .85fr 1.15fr; }.conversation-content { padding: 20px; }.ai-workspace-head { padding: 17px; gap: 8px; }.ai-workspace-head > span { font-size: 10px; }.ai-workspace .segmented button { padding-inline: 7px; font-size: 9px; }.ai-pane { padding-inline: 17px; }.analytics-ui,.automation-ui { padding: 20px; }.analytics-numbers strong { font-size: 22px; }.analytics-numbers > div:last-child strong { font-size: 19px; }.operations-grid { gap: 28px; }.source-row { grid-template-columns: 90px 1fr 15px; gap: 6px; }.tier-comparison { gap: 27px; }.commission-tier { grid-template-columns: 1fr; gap: 6px; }.founder-layout { gap: 40px; }.faq-layout { gap: 45px; }.final-layout { gap: 35px; }.partner-form { padding: 25px; }.form-row { grid-template-columns: 1fr; gap: 0; }
}
@media (min-width: 761px) and (max-width: 980px) {
  .founder-layout { grid-template-columns: minmax(240px, .8fr) minmax(0, 1.2fr); }
}
@media (max-width: 760px) {
  .partners-page .section { padding-block: 68px; }.partners-page .header { left: 16px; right: 16px; padding-inline: 14px; height: 58px; top: 12px; }.partners-page .header__brand img { height: 35px; }.partners-page .header__toggle { width: 44px; height: 44px; }.partners-page h2 { font-size: 33px; }.partners-page .eyebrow { font-size: 9px; margin-bottom: 17px; }.partner-hero { padding-top: 118px; }.hero-copy h1 { font-size: clamp(43px,8vw,57px); }.hero-copy h1 br:nth-of-type(2) { display: block; }.hero-description { font-size: 15px; }.hero-product { max-width: 550px; }.hero-layout { gap: 30px; }.partner-strip { grid-template-columns: 1fr 1fr; gap: 20px; margin-top: 35px; padding-top: 24px; padding-bottom: 26px; }.partner-strip p { grid-column: auto; }.partner-strip p br { display: block; }.partner-strip > div > strong { font-size: 24px; }.partner-strip > div > span { font-size: 10px; }
  .section-heading { margin-bottom: 33px; }.section-heading > p { font-size: 14px; }.journey-grid { grid-template-columns: 1fr; gap: 39px; }.journey-node { display: grid; grid-template-columns: 115px minmax(0,1fr); column-gap: 21px; }.node-label { grid-column: 1; grid-row: 1; align-items: start; flex-direction: column; gap: 10px; padding-top: 8px; margin: 0; }.node-label > .icon { display: block; margin-left: 0; width: 20px; height: 20px; margin-top: 4px; }.node-label > span { font-size: 10px; }.node-label h3 { font-size: 16px; }.node-note { grid-column: 1; grid-row: 2; align-self: end; margin: 0 0 7px; font-size: 10px; line-height: 1.6; }.ad-preview,.flow-contact,.flow-chat,.flow-service { grid-column: 2; grid-row: 1/3; height: 223px; }.signal { top: calc(100% + 6px); left: 11px; width: 1px; height: 28px; }.signal-fill { transform-origin: top; }.signal-fill::after { right: -1.5px; top: auto; bottom: 0; }.ad-preview { padding: 12px; }.ad-brand strong { font-size: 10px; }.ad-brand small { font-size: 8px; }.ad-art { height: 128px; padding: 17px; }.ad-art > span:first-child { font-size: 24px; }.ad-footer { font-size: 10px; }.flow-contact { padding: 19px; }.flow-contact > strong { font-size: 16px; }.flow-contact > span:not(.avatar) { font-size: 11px; }.contact-origin { font-size: 11px; }.flow-chat { padding: 16px; }.flow-chat-top .avatar { display: grid; }.flow-chat-top strong { font-size: 12px; }.flow-chat-top > div > span { font-size: 8px; }.flow-chat .chat-bubble { font-size: 11px; }.chat-typing span { font-size: 8px; }.flow-service { padding: 20px; }.flow-service > p { font-size: 12px; }.service-status { flex-direction: row; align-items: center; }.service-task { font-size: 9px; }.journey-controls { align-items: start; padding-top: 20px; margin-top: 23px; }.journey-controls > span { font-size: 11px; max-width: 65%; }.journey-controls .motion-toggle span { display: none; }.journey-controls .motion-toggle { width: 34px; height: 34px; border-color: var(--stroke); }.journey-controls .motion-toggle .icon { width: 15px; height: 15px; }.demo-footnote { text-align: left; font-size: 10px; }
  .operation-compare { gap: 25px; }.operation-compare li { font-size: 11px; }.compare-label { font-size: 8px; }.board-toolbar { flex-wrap: wrap; gap: 14px; padding: 18px; }.board-toolbar .segmented { width: 100%; }.board-toolbar .segmented button { flex: 1; min-height: 36px; }.board-columns { grid-template-columns: 1fr 1fr; padding: 16px; gap: 20px 12px; }.board-column { min-height: 245px; }.lead-person { align-items: start; gap: 6px; }.lead-person .avatar { width: 24px; height: 24px; font-size: 8px; }.lead-person strong { font-size: 11px; line-height: 1.4; }.lead-card { padding: 12px 10px; }.board-column h3 { font-size: 11px; }.board-bottom { padding: 14px 18px; }.board-bottom > span:last-child { display: none; }.context-row { display: grid; grid-template-columns: 1fr 1fr; gap: 16px 10px; }.context-row span { font-size: 10px; }.conversation-layout { grid-template-columns: 1fr; gap: 30px; }.section-copy > p:not(.eyebrow) { max-width: 600px; }.conversation-demo { max-width: 630px; width: 100%; margin-inline: auto; }.conversation-content { padding: 23px; }.ai-workspace-head { padding: 20px; }.ai-workspace-head > span { font-size: 11px; }.ai-workspace .segmented button { padding: 8px 11px; font-size: 10px; }.ai-pane { padding: 0 20px 23px; }.operations-grid { grid-template-columns: 1fr; gap: 50px; }.operations-grid h2 { font-size: 33px; }.operations-grid article > p:not(.eyebrow):not(.fine-print) { max-width: 560px; }.analytics-ui,.automation-ui { padding: 25px; max-width: 630px; }.analytics-numbers strong { font-size: 30px; }.analytics-numbers > div:last-child strong { font-size: 27px; }.analytics-numbers span { font-size: 10px; }.source-row { grid-template-columns: 100px 1fr 20px; font-size: 10px; gap: 12px; }
  .partnership-steps { grid-template-columns: 1fr 1fr; gap: 30px; }.partnership-steps strong { font-size: 17px; margin-top: 19px; }.partnership-steps p { font-size: 12px; }.earnings-heading { text-align: left; }.earnings-heading .eyebrow { justify-content: start; }.earnings-heading > p:last-child { margin-left: 0; font-size: 14px; }.earnings-calculator { grid-template-columns: 1fr; }.calc-control { padding: 26px; }.calc-result { padding: 27px; border-left: none; border-top: 1px solid #414141; }.calc-result > strong { font-size: 47px; }.calc-result .btn { align-self: stretch; }.calc-note { text-align: left; }.tier-comparison { gap: 24px; margin-top: 36px; }.commission-tier li { font-size: 10px; }.commission-tier .icon { width: 11px; height: 11px; }.founder-layout { grid-template-columns: 120px 1fr; align-items: start; gap: 25px; }.founder-portrait img { height: 165px; }.founder-layout h2 { font-size: 25px; }.founder-layout > div:last-child > p:not(.eyebrow) { font-size: 13px; }.faq-layout { grid-template-columns: 1fr; gap: 28px; }.faq-layout h2 { font-size: 33px; }.final-section { padding: 70px 0; }.final-layout { grid-template-columns: 1fr; gap: 30px; }.final-layout h2 { font-size: 39px; }.final-layout .simple-list { margin-bottom: 0; }.partner-form { padding: 28px; }.form-row { grid-template-columns: 1fr 1fr; gap: 13px; }.field input,.field select { font-size: 12px; height: 46px; }
}
@media (max-width: 470px) {
  .hero-copy h1 { font-size: 44px; }.hero-description { font-size: 14px; }.hero-actions { gap: 9px; }.hero-actions .btn { padding-inline: 15px; font-size: 12px; }.hero-actions .btn--outline .icon { display: none; }.trust-inline { gap: 10px; font-size: 10px; }.hero-product { height: 437px; }.demo-caption { font-size: 8px; letter-spacing: .08em; }.demo-caption .motion-toggle span { display: none; }.product-window { width: 100%; }.window-bar { font-size: 8px; padding-inline: 10px; }.mini-sidebar { display: none; }.hero-workspace { padding: 18px 12px; }.partners-page .ui-page-heading h2 { font-size: 16px; }.ui-page-heading .ui-tag { display: none; }.mini-pipeline { gap: 9px; }.mini-pipeline > div > span { font-size: 8px; }.tiny-lead { gap: 5px; padding: 10px 7px; }.tiny-lead strong { font-size: 8px; }.tiny-lead small { font-size: 7px; }.tiny-lead .avatar { width: 23px; height: 23px; font-size: 7px; }.floating-origin { top: 52px; left: 5px; padding: 9px 11px; }.floating-origin strong { font-size: 9px; }.floating-origin > .icon { width: 18px; height: 18px; }.floating-chat { width: 258px; right: 0; bottom: 21px; padding: 12px; }.hero-message { font-size: 10px; }.hero-ai { font-size: 9px; }.hero-status .ui-muted { font-size: 9px; }.hero-activity { margin-top: 15px; }.hero-activity > .icon:last-child { display: none; }.hero-activity > div { max-width: 140px; }.hero-activity strong { font-size: 8px; }.hero-activity span { font-size: 7px; }.partner-strip { gap: 22px 17px; }.partner-strip p { font-size: 11px; }.partner-strip > div > strong { font-size: 22px; }.partner-strip > div > span { font-size: 9px; }
  .journey-node { grid-template-columns: 83px minmax(0,1fr); gap: 0 15px; }.node-label h3 { font-size: 14px; line-height: 1.4; }.node-note { font-size: 9px; }.ad-preview { padding: 10px; }.ad-brand strong { font-size: 9px; }.ad-brand small { font-size: 7px; }.ad-art { height: 135px; padding: 14px; }.ad-art > span:first-child { font-size: 23px; }.ad-footer { font-size: 8px; }.flow-contact { padding: 16px 13px; }.flow-contact > strong { font-size: 14px; }.flow-contact > span:not(.avatar) { font-size: 10px; }.contact-origin { font-size: 10px; }.flow-chat { padding: 13px 10px; }.flow-chat-top .avatar { width: 24px; height: 24px; font-size: 8px; }.flow-chat-top strong { font-size: 10px; }.flow-chat-top > div > span { font-size: 7px; }.flow-chat .chat-bubble { padding: 10px; font-size: 10px; }.flow-service { padding: 17px 13px; }.flow-service > p { font-size: 11px; }.service-status { flex-direction: column; align-items: start; gap: 6px; }.service-task { font-size: 8px; }.operation-compare { grid-template-columns: 1fr; gap: 28px; }.operation-compare ul { gap: 12px; margin-top: 16px; }.operation-compare li { font-size: 12px; }.compare-label { font-size: 9px; }.board-toolbar strong { font-size: 11px; }.board-toolbar > div:first-child { gap: 7px; }.board-toolbar .ui-tag { font-size: 8px; }.board-columns { padding: 12px; gap: 22px 10px; }.board-column h3 { font-size: 10px; gap: 5px; }.lead-person { display: block; }.lead-person .avatar { margin-bottom: 8px; }.lead-person strong { display: block; font-size: 10px; }.lead-card > p { font-size: 8px; }.lead-bottom .ui-tag { font-size: 7px; }.board-column { min-height: 290px; }.context-row span { font-size: 9px; }.conversation-top { padding: 15px; }.conversation-top > span:first-child { font-size: 10px; }.conversation-top .ui-tag { font-size: 8px; }.conversation-content { padding: 19px; }.chat-bubble { font-size: 11px; }.ai-workspace-head { padding: 16px; align-items: start; flex-wrap: wrap; gap: 12px; }.ai-workspace-head > span { width: 100%; }.ai-workspace .segmented { width: 100%; }.ai-workspace .segmented button { flex: 1; }.ai-pane { padding-inline: 16px; min-height: 134px; }.ai-pane > p { font-size: 12px; }.ai-pane dl { font-size: 10px; }.ai-pane dl > div { grid-template-columns: 88px 1fr; }.analytics-ui,.automation-ui { padding: 18px; }.automation-ui strong { font-size: 10px; }.automation-trigger,.automation-action { padding: 11px; gap: 9px; }.workflow-icon { width: 28px; height: 28px; }.task-preview { margin-left: 24px; padding-left: 13px; }.task-preview > strong { font-size: 11px; }.task-preview > span:not(.ui-tag) { font-size: 8px; }.task-preview > div { font-size: 8px; }.analytics-numbers strong { font-size: 27px; }.analytics-numbers > div:last-child strong { font-size: 22px; }.analytics-numbers span { font-size: 9px; }.analytics-top .ui-tag { font-size: 7px; }.source-row { grid-template-columns: 86px 1fr 18px; font-size: 9px; gap: 8px; }.partnership-steps { gap: 24px; }.partnership-steps strong { font-size: 16px; }.partnership-steps p { font-size: 11px; }.calc-control,.calc-result { padding: 24px; }.calc-selection { gap: 8px; }.calc-selection output { font-size: 43px; }.calc-selection > div > span { margin-left: 6px; font-size: 10px; }.calc-selection .ui-tag { font-size: 9px; }.calc-presets { gap: 6px; }.calc-presets > span { width: 100%; margin-bottom: 3px; }.calc-presets button { flex: 1; }.tier-comparison { grid-template-columns: 1fr; gap: 27px; }.commission-tier { grid-template-columns: .75fr 1.25fr; gap: 16px; }.commission-tier li { font-size: 10px; }.founder-layout { grid-template-columns: 1fr; gap: 24px; }.founder-portrait { width: 120px; }.founder-portrait img { height: 145px; }.founder-layout h2 { font-size: 27px; }.partner-form { padding: 23px; }.partner-form h3 { font-size: 21px; }.form-row { grid-template-columns: 1fr; gap: 0; }.field input,.field select { font-size: 14px; }.field label { font-size: 12px; }.final-layout h2 { font-size: 35px; }
}
@media (max-width: 760px) {
  .motion-toggle { min-width: 44px; min-height: 44px; }
  .journey-controls .motion-toggle { width: 44px; height: 44px; }
  .segmented button,.board-toolbar .segmented button,.calc-presets button { min-height: 44px; }
  .field input,.field select { font-size: 16px; }
}
/* Hero application: one readable product surface with a clear contact hierarchy. */
.hero-product { height: auto; min-width: 0; margin-top: 0; }
.hero-ui-shell { overflow: hidden; border: 1px solid #454545; border-radius: 12px; background: #171717; box-shadow: 0 22px 60px rgba(0,0,0,.24), inset 0 1px 0 rgba(255,255,255,.05); }
.hero-ui-bar { display: flex; justify-content: space-between; align-items: center; gap: 14px; height: 48px; padding: 0 18px; background: #202020; border-bottom: 1px solid #383838; }
.hero-ui-brand { display: flex; align-items: center; gap: 9px; min-width: 0; white-space: nowrap; color: #a7a7a7; font-size: 10px; }
.hero-ui-brand strong { color: #e9e9e9; font-size: 11px; font-weight: 650; letter-spacing: .1em; }
.hero-ui-brand i { width: 1px; height: 15px; background: #4a4a4a; margin-inline: 3px; }
.hero-ui-brandmark { display: grid; place-items: center; width: 24px; height: 24px; background: linear-gradient(145deg,#f3f3f3,#a9a9a9); border-radius: 5px; color: #242424; font-size: 13px; font-weight: 800; }
.hero-ui-view { color: #898989; font-size: 9px; letter-spacing: .12em; white-space: nowrap; }
.hero-ui-main { padding: 23px 24px 19px; }
.hero-ui-heading { display: flex; justify-content: space-between; align-items: end; gap: 14px; margin-bottom: 20px; }
.hero-ui-kicker { color: #999; font-size: 9px; font-weight: 650; letter-spacing: .13em; }
.partners-page .hero-ui-heading h2 { margin-top: 4px; font-size: 19px; line-height: 1.25; letter-spacing: -.03em; color: #f0f0f0; }
.hero-ui-date { flex: 0 0 auto; color: #888; font-size: 10px; }
.hero-ui-contact { display: flex; align-items: center; gap: 12px; padding: 13px; background: #202020; border: 1px solid #383838; border-radius: 8px; }
.hero-ui-avatar,.story-person-avatar { display: grid; place-items: center; flex: 0 0 auto; width: 40px; height: 40px; border-radius: 8px; background: #393939; border: 1px solid #4b4b4b; color: #e7e7e7; font-size: 12px; font-weight: 650; }
.hero-ui-contact > div { min-width: 0; }
.hero-ui-contact strong { display: block; color: #f1f1f1; font-size: 13px; font-weight: 600; }
.hero-ui-contact > div > span { display: block; margin-top: 2px; color: #aaa; font-size: 10px; }
.hero-ui-origin { margin-left: auto; padding: 5px 8px; border: 1px solid #565656; border-radius: 5px; color: #c9c9c9; font-size: 9px; white-space: nowrap; }
.hero-ui-progress { display: grid; grid-template-columns: repeat(3,1fr); gap: 8px; margin: 20px 0; }
.hero-ui-progress span { position: relative; border-top: 1px solid #777; padding-top: 12px; color: #b9b9b9; font-size: 9px; }
.hero-ui-progress span:last-child { border-color: #555; }
.hero-ui-progress span::before { content: ''; position: absolute; width: 6px; height: 6px; top: -3.5px; left: 0; border-radius: 50%; background: #d1d1d1; box-shadow: 0 0 0 3px #252525; }
.hero-ui-progress span:last-child::before { background: #888; }
.hero-ui-grid { display: grid; grid-template-columns: 1fr .88fr; gap: 10px; }
.hero-ui-chat,.hero-ui-assist { min-width: 0; min-height: 153px; padding: 14px; border: 1px solid #393939; border-radius: 8px; background: #1e1e1e; }
.hero-ui-pane-head { display: flex; justify-content: space-between; align-items: center; gap: 8px; color: #cacaca; font-size: 10px; font-weight: 560; }
.hero-ui-pane-head > span:first-child { display: flex; align-items: center; gap: 7px; min-width: 0; }
.hero-ui-pane-head > span:last-child { color: #858585; font-size: 9px; white-space: nowrap; font-weight: 450; }
.channel-mark { display: block; box-sizing: border-box; flex: 0 0 auto; width: 20px; height: 20px; padding: 2px; border: 1px solid #747474; border-radius: 5px; color: #e3e3e3; }
.hero-ui-bubble { margin: 17px 0 0; padding: 11px 12px; background: #303030; border-radius: 3px 8px 8px 8px; color: #e0e0e0; font-size: 12px; line-height: 1.5; }
.hero-ui-chat-foot { margin-top: 9px; color: #929292; font-size: 9px; }
.hero-ui-ai-mark,.story-ai-mark { display: inline-grid; place-items: center; width: 21px; height: 21px; flex: 0 0 auto; border: 1px solid #878787; border-radius: 5px; color: #e1e1e1; font-size: 9px; font-weight: 700; letter-spacing: -.02em; }
.hero-ui-assist > p { margin: 16px 0 2px; color: #a2a2a2; font-size: 10px; }
.hero-ui-assist > strong { display: block; color: #ebebeb; font-size: 12px; font-weight: 600; }
.hero-ui-next { border-top: 1px solid #3a3a3a; padding-top: 9px; margin-top: 12px; }
.hero-ui-next > span { color: #999; font-size: 8px; font-weight: 600; letter-spacing: .08em; }
.hero-ui-next > p { color: #cecece; font-size: 10px; line-height: 1.4; margin: 2px 0 0; }
.hero-ui-bottom { display: flex; justify-content: space-between; align-items: center; gap: 12px; margin-top: 15px; padding-top: 13px; border-top: 1px solid #353535; }
.hero-ui-bottom > span:first-child { display: flex; align-items: center; gap: 7px; color: #a8a8a8; font-size: 9px; line-height: 1.4; }
.hero-ui-bottom-dot { display: inline-block; flex: 0 0 auto; width: 6px; height: 6px; border-radius: 50%; background: #c9c9c9; }
.hero-demo-note { position: static; text-align: right; margin-top: 9px; color: #8f8f8f; font-size: 9px; }

/* Journey: four steps belong to a single interface, with one visual track. */
.story-shell { overflow: hidden; border: 1px solid #393939; border-radius: 12px; background: #171717; box-shadow: 0 18px 44px rgba(0,0,0,.12); }
.story-toolbar { display: flex; justify-content: space-between; align-items: center; gap: 14px; height: 48px; padding: 0 22px; border-bottom: 1px solid #333; background: #1c1c1c; color: #999; font-size: 9px; letter-spacing: .11em; }
.story-toolbar > span:first-child { display: flex; align-items: center; gap: 8px; color: #d0d0d0; font-weight: 600; }
.story-toolbar b { color: #5f5f5f; margin-inline: 5px; }
.journey-grid { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 0; }
.journey-node { position: relative; display: flex; flex-direction: column; gap: 16px; min-width: 0; min-height: 354px; padding: 22px 19px 17px; border-right: 1px solid #333; background: #171717; transition: background .5s,box-shadow .5s; }
.journey-node:last-child { border-right: 0; }
[data-stage='0'] [data-node='0'],[data-stage='1'] [data-node='1'],[data-stage='2'] [data-node='2'],[data-stage='3'] [data-node='3'] { background: #202020; box-shadow: inset 0 2px 0 #c8c8c8; }
.story-step-head { display: flex; align-items: center; gap: 12px; min-height: 44px; }
.story-step-number { position: relative; z-index: 2; display: grid; place-items: center; flex: 0 0 auto; width: 38px; height: 38px; border: 1px solid #636363; border-radius: 50%; background: #262626; color: #cfcfcf; font-size: 11px; font-weight: 650; }
[data-stage='0'] [data-node='0'] .story-step-number,[data-stage='1'] [data-node='1'] .story-step-number,[data-stage='2'] [data-node='2'] .story-step-number,[data-stage='3'] [data-node='3'] .story-step-number { background: linear-gradient(145deg,#f3f3f3,#aeb2b5); color: #222; border-color: #e1e1e1; }
.story-step-head > div > span { display: block; color: #909090; font-size: 8px; font-weight: 650; letter-spacing: .13em; }
.story-step-head h3 { color: #e8e8e8; font-size: 15px; font-weight: 600; line-height: 1.25; letter-spacing: -.02em; margin-top: 2px; }
.story-step-note { margin: auto 0 0; color: #aaa; font-size: 11px; line-height: 1.5; }
.story-ad,.story-person,.story-chat,.story-care { min-width: 0; min-height: 238px; }
.story-ad { overflow: hidden; border: 1px solid #414141; border-radius: 7px; background: #222; }
.story-ad-top { display: flex; align-items: center; gap: 8px; height: 45px; padding: 0 11px; }
.story-clinic-mark { display: grid; place-items: center; flex: 0 0 auto; width: 24px; height: 24px; border: 1px solid #c1bba9; border-radius: 50%; color: #ded8c6; font-size: 15px; line-height: 1; }
.story-ad-top strong,.story-ad-top span:not(.story-clinic-mark) { display: block; }
.story-ad-top strong { color: #eee; font-size: 11px; font-weight: 600; }
.story-ad-top div > span { color: #999; font-size: 8px; }
.story-ad-creative { position: relative; display: flex; align-items: center; overflow: hidden; height: 142px; margin: 0 9px; padding: 16px; border-radius: 4px; background: #d7d4ca; color: #313b39; }
.story-ad-creative > span { position: relative; z-index: 1; font-family: Georgia,serif; font-size: 19px; line-height: 1.16; letter-spacing: -.045em; }
.story-ad-creative i { position: absolute; right: -6px; bottom: -76px; font-size: 195px; line-height: 1; font-style: normal; font-weight: 200; color: rgba(70,85,78,.14); }
.story-ad-bottom { display: flex; justify-content: space-between; gap: 7px; padding: 11px 9px; color: #bdbdbd; font-size: 8px; }
.story-ad-bottom span { color: #e0e0e0; font-weight: 550; }
.story-person { display: flex; flex-direction: column; padding: 17px; border: 1px solid #424242; border-radius: 7px; background: #222; }
.story-person-head { display: flex; align-items: start; justify-content: space-between; gap: 8px; }
.story-person-avatar { width: 44px; height: 44px; }
.story-person-status { padding: 5px 7px; border: 1px solid #555; border-radius: 4px; color: #c7c7c7; font-size: 8px; font-weight: 600; white-space: nowrap; }
.story-person > strong { display: block; margin-top: 15px; color: #f1f1f1; font-size: 15px; font-weight: 600; }
.story-person > p { margin: 2px 0 10px; color: #aaa; font-size: 11px; }
.story-detail { display: flex; justify-content: space-between; align-items: baseline; gap: 10px; padding: 10px 0; border-top: 1px solid #3a3a3a; }
.story-detail:first-of-type { margin-top: auto; }
.story-detail > span { color: #929292; font-size: 8px; letter-spacing: .07em; }
.story-detail > strong { color: #d8d8d8; font-size: 11px; font-weight: 550; text-align: right; }
.story-chat { padding: 15px; border: 1px solid #424242; border-radius: 7px; background: #222; }
.story-chat-head { display: flex; align-items: center; gap: 9px; padding-bottom: 13px; border-bottom: 1px solid #3a3a3a; }
.story-chat-head .channel-mark { width: 23px; height: 23px; }
.story-chat-head strong { display: block; color: #eee; font-size: 11px; font-weight: 600; }
.story-chat-head span { display: block; color: #999; font-size: 8px; }
.story-chat-message { max-width: 95%; margin-top: 20px; padding: 12px; border-radius: 3px 9px 9px 9px; background: #343434; color: #e3e3e3; font-size: 12px; line-height: 1.52; }
.story-chat-message span { display: block; text-align: right; color: #a1a1a1; font-size: 8px; margin-top: 5px; }
.story-chat-context { display: flex; align-items: center; gap: 6px; margin-top: 17px; color: #a8a8a8; font-size: 9px; }
.story-chat-indicator { width: 5px; height: 5px; flex: 0 0 auto; border-radius: 50%; background: #b4b4b4; }
.story-care { display: flex; flex-direction: column; padding: 15px; border: 1px solid #424242; border-radius: 7px; background: #222; }
.story-care-head { display: flex; align-items: center; gap: 8px; color: #b9b9b9; font-size: 8px; font-weight: 600; letter-spacing: .08em; }
.story-care > p { margin: 18px 0 14px; color: #e1e1e1; font-size: 12px; line-height: 1.55; }
.story-care-rule { padding: 10px 0; border-block: 1px solid #3c3c3c; }
.story-care-rule > span { display: block; color: #929292; font-size: 8px; letter-spacing: .08em; }
.story-care-rule strong { display: block; margin-top: 4px; color: #d8d8d8; font-size: 11px; font-weight: 550; line-height: 1.3; }
.story-care-status { display: flex; justify-content: space-between; align-items: center; gap: 7px; margin-top: auto; padding-top: 10px; color: #aaa; font-size: 9px; }
.story-care-status .ui-tag { font-size: 8px; }
.signal { position: absolute; z-index: 3; top: 42px; left: calc(100% - 8px); width: 30px; height: 1px; background: #5b5b5b; }
.signal-fill { display: block; width: 100%; height: 100%; background: #d6d6d6; transform-origin: left; }
.signal-fill::after { display: none; }
.journey-controls { margin-top: 14px; padding-top: 15px; }

@media (max-width: 1150px) {
  .hero-ui-main { padding: 18px; }
  .hero-ui-grid { gap: 8px; }
  .hero-ui-chat,.hero-ui-assist { padding: 11px; }
  .story-step-head { gap: 8px; }
  .story-step-head h3 { font-size: 13px; }
  .journey-node { padding-inline: 13px; }
  .story-person,.story-chat,.story-care { padding: 12px; }
  .story-person > strong { font-size: 13px; }
  .story-ad-creative > span { font-size: 17px; }
}
@media (max-width: 980px) {
  .hero-product { height: auto; }
  .hero-ui-main { padding: 23px; }
  .hero-ui-chat,.hero-ui-assist { padding: 14px; }
  .journey-grid { gap: 0; }
  .journey-node { padding: 18px 12px; }
  .story-person,.story-chat,.story-care { min-height: 245px; }
}
@media (min-width: 761px) and (max-width: 1100px) {
  .journey-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .journey-node { min-height: 344px; padding: 22px; }
  .journey-node:nth-child(2) { border-right: 0; }
  .journey-node:nth-child(-n+2) { border-bottom: 1px solid #333; }
  .story-step-head { gap: 12px; }
  .story-step-head h3 { font-size: 16px; }
  .story-person,.story-chat,.story-care { padding: 17px; }
  .story-person > strong { font-size: 15px; }
  .story-ad-creative > span { font-size: 20px; }
  .journey-node .signal { display: none; }
}
@media (max-width: 760px) {
  .hero-product { max-width: 620px; height: auto; }
  .hero-ui-grid { grid-template-columns: 1fr 1fr; }
  .hero-ui-main { padding: 18px; }
  .hero-ui-bar { padding-inline: 14px; }
  .hero-ui-view { display: none; }
  .hero-ui-heading { align-items: start; }
  .hero-ui-date { font-size: 9px; }
  .partners-page .hero-ui-heading h2 { font-size: 18px; }
  .journey-grid { grid-template-columns: 1fr; gap: 0; }
  .journey-node { display: flex; flex-direction: column; gap: 14px; min-height: auto; padding: 23px; border-right: 0; border-bottom: 1px solid #3b3b3b; }
  .journey-node:last-child { border-bottom: 0; }
  .story-step-head { gap: 12px; }
  .story-step-head h3 { font-size: 16px; }
  .story-ad,.story-person,.story-chat,.story-care { min-height: auto; }
  .story-person,.story-chat,.story-care { min-height: 218px; padding: 17px; }
  .story-step-note { margin-top: 0; }
  .signal { left: 41px; top: calc(100% - 8px); width: 1px; height: 38px; }
  .signal-fill { transform-origin: top; }
  .story-toolbar { height: auto; min-height: 48px; padding: 13px 20px; }
  .story-toolbar > span:last-child { display: none; }
}
@media (max-width: 470px) {
  .hero-ui-main { padding: 15px; }
  .hero-ui-brand { font-size: 9px; }
  .hero-ui-heading { margin-bottom: 14px; }
  .partners-page .hero-ui-heading h2 { font-size: 16px; }
  .hero-ui-date { display: none; }
  .hero-ui-contact { gap: 8px; padding: 10px; }
  .hero-ui-avatar { width: 34px; height: 34px; font-size: 10px; }
  .hero-ui-contact strong { font-size: 11px; }
  .hero-ui-contact > div > span { font-size: 9px; }
  .hero-ui-origin { font-size: 8px; padding-inline: 6px; }
  .hero-ui-progress { margin: 17px 0; }
  .hero-ui-grid { grid-template-columns: 1fr; }
  .hero-ui-chat,.hero-ui-assist { min-height: auto; }
  .hero-ui-chat { padding: 13px; }
  .hero-ui-assist { padding: 12px; }
  .hero-ui-assist > p { margin-top: 10px; }
  .hero-ui-next { margin-top: 8px; }
  .hero-ui-bottom > span:first-child { max-width: 170px; }
  .journey-node { padding: 20px; }
  .story-ad-creative > span { font-size: 21px; }
  .story-person,.story-chat,.story-care { min-height: 215px; }
  .signal { left: 38px; }
}

/* Product details are shared by the hero, the illustrated journey and the CRM preview. */
.hero-ui-logo { display: block; width: 32px; height: 32px; object-fit: contain; }
.hero-ui-brand { gap: 8px; }
.hero-ui-brand i { margin-inline: 0 3px; }
.hero-ui-avatar,.story-person-avatar,.conversation-demo .avatar,.lead-person img.avatar { display: block; object-fit: cover; border-radius: 50%; }
.whatsapp-logo { display: block; flex: 0 0 auto; width: 20px; height: 20px; object-fit: contain; }
.story-chat-head .whatsapp-logo { width: 24px; height: 24px; }
.ai-glyph { display: block; width: 20px; height: 20px; flex: 0 0 auto; fill: none; stroke: #dedede; stroke-width: 1.7; stroke-linecap: round; stroke-linejoin: round; }
.story-care-head .ai-glyph { width: 21px; height: 21px; }
.story-ad-bottom { align-items: center; gap: 3px; padding: 8px 9px; }
.story-ad-bottom span { padding: 4px 6px; border-radius: 4px; color: #bcbcbc; font-size: 8px; white-space: nowrap; font-weight: 500; }
.story-ad-bottom span:first-child { background: #3b3b3b; color: #f0f0f0; }

/* Connector segments meet the marker edges without crossing the numbers. */
.journey-node { --step-center-x: 38px; --step-center-y: 41px; }
.story-step-head { flex-direction: column; align-items: flex-start; justify-content: flex-start; gap: 7px; min-height: 70px; }
.story-step-number { z-index: 5; }
.journey-node .signal { z-index: 3; top: var(--step-center-y); left: calc(var(--step-center-x) + 19px); width: calc(100% - 38px + 1px); height: 2px; background: #4b4b4b; }
.journey-node .signal-fill { transform-origin: left center; background: #d0d0d0; }

/* The landing preview follows the CRM's column, card and metadata hierarchy. */
.crm-board { background: #171717; }
.board-toolbar { background: #1d1d1d; }
.board-swipe-hint { display: none; }
.board-columns { align-items: stretch; gap: 12px; padding: 17px; }
.board-column { overflow: hidden; min-height: 0; border: 1px solid #393939; border-radius: 9px; background: #222; }
.board-column-head { min-height: 62px; padding: 12px 13px; border-bottom: 1px solid #3b3b3b; background: #292929; }
.board-column-head h3 { display: block; margin: 0; color: #eee; font-size: 14px; font-weight: 630; }
.board-column-count { display: block; margin-top: 4px; color: #a8a8a8; font-size: 11px; }
.board-column-cards { display: grid; align-content: start; gap: 10px; padding: 10px; }
.lead-card { margin: 0; padding: 12px; background: #191919; border-color: #404040; border-radius: 8px; box-shadow: 0 2px 8px rgba(0,0,0,.08); }
.lead-person { display: flex; align-items: center; gap: 9px; min-width: 0; }
.lead-person .avatar { flex: 0 0 auto; width: 36px; height: 36px; border: 1px solid #565656; border-radius: 50%; }
.lead-person > div { min-width: 0; }
.lead-person strong { display: block; overflow: hidden; color: #ececec; font-size: 13px; font-weight: 620; line-height: 1.3; text-overflow: ellipsis; white-space: nowrap; }
.lead-person > div > span { display: block; overflow: hidden; margin-top: 2px; color: #aaa; font-size: 10px; text-overflow: ellipsis; white-space: nowrap; }
.lead-badges { display: flex; flex-wrap: wrap; gap: 5px; margin: 12px 0 13px; }
.lead-badges .ui-tag { border-color: #545454; color: #d1d1d1; font-size: 10px; }
.lead-card-detail { margin-top: 9px; }
.lead-card-detail > span { display: block; color: #999; font-size: 10px; line-height: 1.35; }
.lead-card-detail > strong { display: block; margin-top: 3px; color: #dcdcdc; font-size: 11px; font-weight: 540; line-height: 1.35; }
.lead-card-last { margin-top: 12px; padding-top: 10px; border-top: 1px solid #3b3b3b; color: #ababab; font-size: 10px; }
.board-empty { margin: 0; }

/* The conversation follows the dark WhatsApp layout while preserving read-only semantics. */
.conversation-demo { border-color: #3a4448; background: #111b21; }
.conversation-top { min-height: 49px; padding: 11px 17px; border-color: #344047; background: #202c33; }
.conversation-top > span:first-child { font-size: 11px; color: #e5e9eb; }
.conversation-top .whatsapp-logo { width: 20px; height: 20px; }
.conversation-thread { background: #0b141a; }
.conversation-demo .patient-heading { display: flex; align-items: center; gap: 10px; padding: 12px 18px; background: #202c33; border-top: 1px solid #314048; }
.conversation-demo .patient-heading .avatar { flex: 0 0 auto; width: 40px; height: 40px; border: 0; }
.conversation-demo .patient-heading strong { color: #f3f5f5; font-size: 13px; }
.conversation-demo .patient-heading > div > span { margin-top: 2px; color: #adb9bd; font-size: 10px; }
.conversation-menu { margin-left: auto; color: #a6b1b6; font-size: 21px; line-height: 1; }
.conversation-demo .conversation-content { min-height: 230px; padding: 20px 22px 24px; background-color: #0b141a; background-image: radial-gradient(rgba(175,196,188,.045) 1px,transparent 1px); background-size: 22px 22px; }
.chat-day { display: table; margin: 0 auto 17px; padding: 5px 9px; border-radius: 5px; background: #1f2d35; color: #b9c3c6; font-size: 9px; letter-spacing: .04em; }
.conversation-demo .chat-bubble { max-width: 84%; margin-top: 11px; padding: 10px 12px; border-radius: 8px 8px 8px 2px; background: #202c33; color: #edf1f2; font-size: 12px; line-height: 1.5; box-shadow: 0 1px 3px rgba(0,0,0,.16); }
.conversation-demo .chat-bubble small { margin-top: 5px; color: #9aa9ae; font-size: 9px; }
.conversation-demo .chat-bubble.outgoing { border-radius: 8px 8px 2px 8px; background: #075e50; color: #f0f5f3; }
.conversation-demo .chat-bubble.outgoing small { color: #c1dbd4; }
.conversation-readonly { display: flex; align-items: center; gap: 8px; padding: 11px 17px; border-top: 1px solid #344047; background: #202c33; color: #c2cbce; font-size: 10px; }
.conversation-readonly .whatsapp-logo { width: 17px; height: 17px; }
.conversation-demo .ai-workspace { border-color: #3a4245; background: #1c1f20; }

@media (max-width: 1150px) {
  .journey-node { --step-center-x: 32px; }
  .board-columns { gap: 9px; padding: 13px; }
  .board-column-cards { padding: 8px; }
  .lead-card { padding: 10px; }
}
@media (min-width: 761px) and (max-width: 1100px) {
  .journey-node { --step-center-x: 41px; }
  .journey-node:nth-child(3) { grid-column: 2; grid-row: 2; border-right: 0; }
  .journey-node:nth-child(4) { grid-column: 1; grid-row: 2; border-right: 1px solid #333; }
  .journey-node:nth-child(1) .signal,.journey-node:nth-child(2) .signal,.journey-node:nth-child(3) .signal { display: block; }
  .journey-node:nth-child(2) .signal { width: calc(100% - var(--step-center-x) - 34px); height: calc(100% + 1px); background: none; border-top: 2px solid #575757; border-right: 2px solid #575757; border-bottom: 2px solid #575757; border-radius: 0 10px 10px 0; transition: border-color .4s; }
  .journey-node:nth-child(2) .signal-fill { display: none; }
  [data-stage="2"] .journey-node:nth-child(2) .signal,[data-stage="3"] .journey-node:nth-child(2) .signal { border-color: #c8c8c8; }
  .journey-node:nth-child(3) .signal { left: calc(var(--step-center-x) - 100% + 19px); width: calc(100% - 38px); }
  .journey-node:nth-child(3) .signal-fill { transform-origin: right center; }
}
@media (max-width: 760px) {
  /* Reserve the first column for the step markers and their connector. */
  .journey-node { --step-center-x: 19px; --step-center-y: 45px; display: grid; grid-template-columns: 38px minmax(0,1fr); column-gap: 12px; padding-left: 0; }
  .story-step-head { grid-column: 1 / -1; position: relative; z-index: 4; flex-direction: row; align-items: center; gap: 12px; min-height: 44px; transform: none; }
  .story-step-head > div { min-width: 0; }
  .journey-node > [data-enter], .journey-node > .story-step-note { grid-column: 2; }
  .journey-node .signal { top: calc(var(--step-center-y) + 19px); left: var(--step-center-x); width: 2px; height: calc(100% - 38px + 1px); }
  .journey-node .signal-fill { transform-origin: top center; }
  .board-swipe-hint { display: block; padding: 12px 16px 0; color: #a7a7a7; font-size: 10px; }
  .board-columns { display: flex; gap: 12px; overflow-x: auto; overscroll-behavior-inline: contain; scroll-snap-type: x mandatory; padding: 12px 16px 16px; }
  .board-column { flex: 0 0 min(280px,80vw); scroll-snap-align: start; }
  .board-column-cards { padding: 10px; }
  .lead-card { padding: 12px; }
  .conversation-demo .conversation-content { min-height: 220px; }
}
@media (max-width: 470px) {
  .journey-node { --step-center-x: 19px; --step-center-y: 42px; }
  .hero-ui-logo { width: 28px; height: 28px; }
  .story-ad-bottom span { padding-inline: 3px; font-size: 7px; }
  .conversation-demo .conversation-content { padding: 18px 15px 22px; }
  .conversation-demo .chat-bubble { max-width: 90%; }
  .conversation-readonly { align-items: start; font-size: 9px; }
}

@media (prefers-reduced-motion: reduce) {
  .partners-page *, .partners-page *::before, .partners-page *::after { animation: none !important; transition: none !important; scroll-behavior: auto !important; }
}

.partners-page .footer__title { font-size: 11px; line-height: 1.4; letter-spacing: .1em; font-weight: 600; }

/* Official WhatsApp connection, cohort analytics and the task creation demo. */
.panel-kicker { display: block; color: #a8adb1; font-size: 10px; font-weight: 650; letter-spacing: .12em; line-height: 1.4; }
.coexistence-band { grid-column: 1 / -1; display: flex; align-items: center; gap: 20px; margin-top: 24px; padding: 22px 26px; border: 1px solid #404040; border-radius: 12px; background: linear-gradient(115deg,#181818,#141414 60%,#191919); }
.coexistence-symbol { display: grid; place-items: center; flex: 0 0 auto; width: 48px; height: 48px; border: 1px solid #4a4a4a; border-radius: 12px; background: #282828; }
.coexistence-symbol .whatsapp-logo { width: 26px; height: 26px; }
.coexistence-band > div:nth-child(2) { min-width: 0; }
.coexistence-band strong { display: block; margin-top: 4px; color: #ededed; font-size: 16px; font-weight: 590; line-height: 1.4; }
.coexistence-band p { margin: 5px 0 0; color: #b5b9b9; font-size: 12px; }
.coexistence-badge { display: inline-flex; align-items: center; gap: 7px; flex: 0 0 auto; margin-left: auto; padding: 8px 11px; border: 1px solid #6a6a6a; border-radius: 6px; color: #bbd4c7; font-size: 11px; white-space: nowrap; }
.coexistence-badge .icon { width: 13px; height: 13px; }
.coexistence-caveat { grid-column: 1 / -1; margin: -14px 0 0; color: #8f9494; font-size: 10px; }
.coexistence-caveat a { color: #bfc8c8; text-decoration: underline; text-underline-offset: 2px; }
.coexistence-caveat a:hover { color: #fff; }
.insights-section { border-top: 1px solid #262626; background: #0e0e0e; }
.metrics-overview { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 12px; margin-bottom: 18px; }
.metrics-overview > div { min-width: 0; padding: 18px 20px; border: 1px solid #383838; border-radius: 10px; background: #161616; }
.metrics-overview span,.metrics-overview small { display: block; color: #a2a6a7; font-size: 11px; }
.metrics-overview strong { display: block; margin: 6px 0 2px; color: #eceeef; font-size: clamp(23px,2.25vw,31px); font-weight: 570; letter-spacing: -.045em; line-height: 1.2; white-space: nowrap; }
.metrics-overview small { font-size: 10px; }
.insights-grid { display: grid; grid-template-columns: minmax(0,1.62fr) minmax(360px,1fr); gap: 18px; align-items: stretch; }
.insight-panel { min-width: 0; overflow: hidden; padding: 22px; border-color: #383838; background: #161616; }
.insight-panel-head { display: flex; align-items: flex-start; justify-content: space-between; gap: 15px; margin-bottom: 18px; }
.insight-panel-head h3 { margin-top: 4px; color: #eceeef; font-size: 18px; font-weight: 600; letter-spacing: -.025em; }
.insight-panel-head p { margin: 4px 0 0; color: #aeb1b1; font-size: 11px; line-height: 1.45; }
.insight-panel-head .ui-tag { font-size: 9px; }
.sankey-scroll { overflow-x: auto; overflow-y: hidden; border: 1px solid #393939; border-radius: 9px; background: #111111; scrollbar-color: #5b5e60 transparent; }
.sankey-chart { min-width: 710px; padding: 16px 10px 4px; }
.sankey-svg { display: block; }
#funnel-sankey { display: block; width: 100%; height: auto; }
#funnel-sankey .sankey-flow { opacity: .75; outline: none; cursor: pointer; transition: opacity .22s,filter .22s; }
#funnel-sankey .sankey-flow:hover,#funnel-sankey .sankey-flow:focus-visible,#funnel-sankey .sankey-flow.is-active { opacity: 1; filter: brightness(1.4); }
#funnel-sankey .sankey-flow:focus-visible { stroke: #eff1f2; stroke-width: 2px; }
#funnel-sankey .sankey-node { fill: #c1c5c7; }
#funnel-sankey .sankey-node.is-loss { fill: #737a7d; }
#funnel-sankey .sankey-label { fill: #d9dcdd; font-family: Inter,Arial,sans-serif; font-size: 15px; font-weight: 570; }
#funnel-sankey .sankey-count { fill: #a7adaf; font-family: Inter,Arial,sans-serif; font-size: 12px; }
.sankey-detail { min-height: 42px; margin-top: 12px; padding: 11px 13px; border: 1px solid #3a3a3a; border-radius: 7px; color: #c4c7c8; font-size: 11px; line-height: 1.5; }
.sankey-swipe-hint { display: none; }
.insight-note { margin: 14px 0 0; color: #929899; font-size: 10px; line-height: 1.5; }
.ltv-panel { display: flex; flex-direction: column; }
.ltv-table-wrap { overflow-x: auto; }
.ltv-table { width: 100%; border-collapse: collapse; }
.ltv-table th { padding: 12px 7px; border-block: 1px solid #404040; color: #9da2a4; font-size: 9px; font-weight: 550; letter-spacing: .08em; text-align: left; text-transform: uppercase; white-space: nowrap; }
.ltv-table th:last-child,.ltv-table td:last-child { text-align: right; }
.ltv-table td { padding: 14px 7px; border-bottom: 1px solid #383838; color: #dbdedf; font-size: 11px; white-space: nowrap; }
.ltv-table td:last-child { font-variant-numeric: tabular-nums; font-weight: 600; }
.rank-mark { display: inline-flex; align-items: center; justify-content: center; gap: 4px; padding: 4px 9px; border: 1px solid transparent; border-radius: 999px; background: linear-gradient(180deg,#f1f2f3,#c8cdd0); color: #24292b; font-size: 10px; font-weight: 450; line-height: 1.2; white-space: nowrap; box-shadow: inset 0 1px 0 rgba(255,255,255,.75); }
.rank-crown { display: block; width: 12px; height: 12px; flex: 0 0 auto; }
.rank-person { display: inline-flex; align-items: center; gap: 8px; }
.rank-avatar { display: grid; place-items: center; flex: 0 0 auto; width: 29px; height: 29px; border: 1px solid #555a5d; border-radius: 50%; background: #303030; color: #d9ddde; font-size: 9px; }
.rank-person strong,.rank-person small { display: block; }
.rank-person strong { color: #e6e7e8; font-size: 11px; font-weight: 550; }
.rank-person small { margin-top: 1px; color: #9da3a5; font-size: 9px; }
.ltv-explain { display: flex; align-items: flex-start; gap: 8px; margin-top: auto; padding-top: 18px; color: #a7adaf; font-size: 10px; line-height: 1.5; }
.ltv-explain .icon { width: 15px; height: 15px; }
.task-lab-section { border-top: 1px solid #262626; }
.task-lab { overflow: hidden; border-color: #383838; background: #141414; }
.task-lab-top { display: flex; align-items: center; justify-content: space-between; gap: 15px; min-height: 58px; padding: 12px 24px; border-bottom: 1px solid #3d3d3d; background: #191919; }
.task-lab-top > div { display: flex; align-items: center; gap: 9px; min-width: 0; }
.task-lab-top .icon { width: 16px; height: 16px; color: #d0d3d4; }
.task-lab-top strong { color: #e5e7e8; font-size: 13px; font-weight: 600; white-space: nowrap; }
.task-lab-top > span { color: #8f9496; font-size: 9px; letter-spacing: .08em; white-space: nowrap; }
.task-lab-body { display: grid; grid-template-columns: minmax(0,.88fr) minmax(0,1.12fr); }
.task-compose { padding: 26px; border-right: 1px solid #3d3d3d; }
.task-compose-head { margin-bottom: 18px; }
.task-compose-head h3 { margin-top: 5px; color: #eceeef; font-size: 20px; font-weight: 600; letter-spacing: -.03em; }
.task-compose-head p { margin: 4px 0 0; color: #aeb3b4; font-size: 11px; }
.task-field { display: grid; gap: 6px; margin-bottom: 13px; }
.task-field label { color: #c5c9cb; font-size: 11px; font-weight: 550; }
.task-field label > span:not(.optional) { color: #ddd; }
.task-field .optional { color: #8e9597; font-weight: 400; }
.task-field input,.task-field textarea,.task-field select { width: 100%; min-width: 0; padding: 10px 11px; border: 1px solid #464c4f; border-radius: 7px; outline: 0; background: #1e1e1e; color: #e7e9e9; font: inherit; font-size: 12px; line-height: 1.45; transition: border-color .2s,background .2s; }
.task-field input,.task-field select { min-height: 42px; }
.task-field textarea { min-height: 66px; resize: vertical; }
.task-field input:hover,.task-field textarea:hover,.task-field select:hover { border-color: #777e80; }
.task-field input:focus-visible,.task-field textarea:focus-visible,.task-field select:focus-visible { border-color: #c8cdd0; background: #292929; box-shadow: 0 0 0 3px rgba(210,215,217,.12); }
.task-field input[type="date"] { color-scheme: dark; }
.task-field-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; }
.task-compose-actions { display: flex; flex-wrap: wrap; align-items: center; gap: 12px; margin-top: 20px; }
.task-compose-actions .btn { min-height: 40px; padding: 10px 15px; font-size: 12px; }
.task-reset { padding: 8px 0; color: #aaaeb0; font-size: 11px; text-decoration: underline; text-underline-offset: 3px; }
.task-reset:hover { color: #e7e9ea; }
.task-demo-disclaimer { margin: 14px 0 0; color: #8f9698; font-size: 10px; }
.task-workspace { min-width: 0; padding: 26px; }
.task-workspace-head,.task-queue-head { display: flex; align-items: center; justify-content: space-between; gap: 10px; }
.task-live-indicator { display: inline-flex; align-items: center; gap: 6px; color: #a7c6b6; font-size: 10px; }
.task-live-indicator i { width: 5px; height: 5px; border-radius: 50%; background: #86c3a3; }
.task-live-card { margin-top: 17px; padding: 18px; border: 1px solid #737a7e; border-radius: 9px; background: linear-gradient(135deg,#292929,#222222); box-shadow: 0 8px 24px rgba(0,0,0,.12); }
.task-live-card.is-created { animation: task-confirm .6s ease-out; }
.task-live-card-top,.task-live-card-foot { display: flex; align-items: center; justify-content: space-between; gap: 10px; }
.task-priority { padding: 5px 8px; border: 1px solid #666d70; border-radius: 5px; color: #e1e4e5; font-size: 10px; }
.task-priority[data-priority="urgent"] { border-color: #b48376; color: #e4b3a6; }
.task-priority[data-priority="high"] { border-color: #b79e79; color: #e2cba8; }
.task-priority[data-priority="low"] { border-color: #617f70; color: #b2d3c0; }
.task-live-type { color: #969d9f; font-size: 9px; letter-spacing: .08em; }
.task-live-card > strong { display: block; margin: 17px 0 5px; color: #f0f1f1; font-size: 17px; font-weight: 590; letter-spacing: -.025em; line-height: 1.35; overflow-wrap: anywhere; }
.task-live-card > p { min-height: 26px; margin: 0 0 18px; color: #b6bdbf; font-size: 11px; line-height: 1.5; overflow-wrap: anywhere; }
.task-live-card-foot { flex-wrap: wrap; border-top: 1px solid #474747; padding-top: 12px; }
.task-live-card-foot > span { display: inline-flex; align-items: center; gap: 5px; color: #aeb5b7; font-size: 10px; }
.task-live-card-foot .icon { width: 13px; height: 13px; }
.task-queue-head { margin-top: 23px; padding-bottom: 10px; border-bottom: 1px solid #434343; }
.task-queue-head > div { display: flex; align-items: center; gap: 7px; }
.task-queue-head strong { color: #dfe3e4; font-size: 12px; font-weight: 580; }
.task-queue-head > span { color: #949c9e; font-size: 9px; letter-spacing: .08em; }
.task-queue { display: grid; gap: 7px; margin-top: 9px; }
.task-queue-item { display: flex; align-items: center; gap: 9px; min-width: 0; padding: 10px; border: 1px solid #393939; border-radius: 7px; background: #1c1c1c; }
.task-queue-item > div { min-width: 0; }
.task-queue-item strong,.task-queue-item div > span { display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.task-queue-item strong { color: #e2e5e6; font-size: 11px; font-weight: 550; }
.task-queue-item div > span { margin-top: 2px; color: #a4abad; font-size: 9px; }
.task-queue-line { width: 3px; height: 28px; flex: 0 0 auto; border-radius: 5px; background: #abb1b4; }
.task-queue-priority { flex: 0 0 auto; margin-left: auto; color: #bfc6c8; font-size: 9px; }
.task-queue-item.is-new { animation: task-arrive .6s cubic-bezier(.2,.8,.2,1) both; border-color: #80888b; }
.task-queue-item.is-done { opacity: .58; }
.task-queue-item.is-done strong { text-decoration: line-through; }
.task-feedback { margin: 12px 0 0; color: #aab2b4; font-size: 10px; }
@keyframes task-arrive { from { opacity: 0; transform: translateY(-10px) scale(.98); box-shadow: 0 0 0 1px rgba(220,226,229,.25); } to { opacity: 1; transform: translateY(0) scale(1); box-shadow: none; } }
@keyframes task-confirm { 35% { border-color: #c8d1cc; box-shadow: 0 0 0 5px rgba(163,200,176,.08); } }
@media (max-width: 1050px) {
  .insights-grid { grid-template-columns: 1fr; }
  .ltv-table td { padding-block: 12px; }
  .task-lab-top > span { display: none; }
}
@media (max-width: 760px) {
  .coexistence-band { flex-wrap: wrap; gap: 13px; padding: 20px; }
  .coexistence-band > div:nth-child(2) { flex: 1 1 calc(100% - 70px); }
  .coexistence-badge { margin-left: 61px; }
  .coexistence-caveat { margin-top: -20px; }
  .metrics-overview { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .task-lab-body { grid-template-columns: 1fr; }
  .task-compose { border-right: 0; border-bottom: 1px solid #3d3d3d; }
  .sankey-swipe-hint { display: block; margin: -7px 0 9px; color: #9da4a6; font-size: 10px; }
}
@media (max-width: 470px) {
  .metrics-overview { gap: 8px; }
  .metrics-overview > div { padding: 14px; }
  .metrics-overview strong { font-size: 22px; }
  .insight-panel,.task-compose,.task-workspace { padding: 18px; }
  .task-lab-top { padding-inline: 18px; }
  .task-lab-top .ui-tag { display: none; }
  .task-field-grid { grid-template-columns: 1fr; gap: 0; }
  .coexistence-symbol { width: 42px; height: 42px; }
  .coexistence-band > div:nth-child(2) { flex-basis: calc(100% - 55px); }
  .coexistence-badge { margin-left: 0; }
  .ltv-table td,.ltv-table th { padding-inline: 4px; }
  .rank-avatar { display: none; }
}
@media (prefers-reduced-motion: reduce) {
  .task-queue-item.is-new,.task-live-card.is-created { animation: none; }
}

/* Task cards follow the CRM Home components in an illustrative surface. */
.task-app { overflow: visible; border-color: #3a3a3a; background: radial-gradient(circle at 85% 0%,rgba(180,188,192,.08),transparent 38%),#111111; color: #e4e7e8; box-shadow: 0 24px 70px rgba(0,0,0,.2); }
.task-app-top { display: flex; align-items: center; justify-content: space-between; gap: 16px; padding: 19px 24px; border-bottom: 1px solid #383838; border-radius: 14px 14px 0 0; background: linear-gradient(110deg,#1b1b1b,#161616); }
.task-app-top > div { display: flex; align-items: center; gap: 11px; }
.task-app-top .icon { width: 18px; height: 18px; color: #c9d0d2; }
.task-app-top strong { color: #f1f2f2; font-size: 15px; }
.task-app-top > span { color: #939b9e; font-size: 10px; letter-spacing: .08em; }
.task-app-body { max-width: 940px; margin-inline: auto; padding: 30px; }
.task-app-heading,.task-app-heading > div { display: flex; align-items: center; gap: 9px; }
.task-app-heading { justify-content: space-between; margin-bottom: 17px; }
.task-app-heading .status-dot { width: 7px; height: 7px; box-shadow: 0 0 0 4px rgba(129,201,178,.11); }
.task-app-heading strong { color: #e8ebec; font-size: 15px; }
.task-app-heading > span { color: #939b9e; font-size: 11px; }
.task-app-count { padding: 4px 9px; border: 1px solid #424242; border-radius: 6px; background: #242424; color: #c7ced0; font-size: 11px; }
.task-app-list { display: grid; gap: 14px; }
.task-app-card { position: relative; border: 1px solid #3a3a3a; border-radius: 12px; background: #0c0c0c; box-shadow: 0 7px 20px rgba(0,0,0,.1); transition: border-color .25s,box-shadow .25s,transform .25s; }
.task-app-card.has-open-picker { z-index: 5; }
.task-app-card:hover { border-color: #717171; box-shadow: 0 14px 30px rgba(0,0,0,.18); transform: translateY(-2px); }
.task-app-card[open] { border-color: #606060; }
.task-app-card summary { display: flex; align-items: center; gap: 13px; padding: 17px 18px; border-radius: 11px; list-style: none; cursor: pointer; transition: background .2s; }
.task-app-card[open] summary { border-radius: 11px 11px 0 0; }
.task-app-card summary::-webkit-details-marker { display: none; }
.task-app-card summary:hover { background: #292929; }
.task-app-card summary:focus-visible { outline: 2px solid #c7d0d3; outline-offset: -3px; }
.task-app-icon { display: grid; place-items: center; flex: 0 0 38px; width: 38px; height: 38px; border: 1px solid #414b50; border-radius: 50%; background: #303030; color: #bdced4; transition: transform .25s,background .25s; }
.task-app-card:nth-child(1) .task-app-icon { border-color: #51495d; background: #36303e; color: #d3bfdc; }
.task-app-card:nth-child(2) .task-app-icon { border-color: #505050; background: #303030; color: #b6d4cb; }
.task-app-card:nth-child(3) .task-app-icon { border-color: #555555; background: #333333; color: #bed0df; }
.task-app-card:hover .task-app-icon { transform: scale(1.08); }
.task-app-icon .icon { width: 18px; height: 18px; }
.task-app-photo { display: block; width: 100%; height: 100%; border-radius: 50%; object-fit: cover; }
.task-app-summary { flex: 1; min-width: 0; }
.task-app-summary strong,.task-app-summary small { display: block; }
.task-app-summary strong { color: #f0f2f2; font-size: 14px; font-weight: 600; }
.task-app-summary small { margin-top: 3px; color: #a0a8aa; font-size: 11px; }
.task-app-chevron { flex: 0 0 8px; width: 8px; height: 8px; border-right: 1.5px solid #aab3b5; border-bottom: 1.5px solid #aab3b5; transform: rotate(45deg); transition: transform .25s; }
.task-app-card[open] .task-app-chevron { transform: rotate(225deg); }
.task-app-detail { display: grid; gap: 16px; padding: 17px; border-top: 1px solid #3a3a3a; border-radius: 0 0 11px 11px; background: linear-gradient(145deg,#181818,#141414); animation: task-detail-in .3s cubic-bezier(.2,.8,.2,1) both; }
.task-app-message { padding: 17px; border: 1px solid #3a3a3a; border-radius: 9px; background: #1c1c1c; }
.task-app-message > span { color: #a8b4b8; font-size: 10px; font-weight: 600; letter-spacing: .09em; text-transform: uppercase; }
.task-app-message p { margin: 8px 0 0; color: #e3e7e8; font-size: 13px; line-height: 1.6; }
.task-app-actions,.task-app-actions > div { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; }
.task-app-actions { justify-content: space-between; padding-top: 3px; }
.task-app-actions--end { justify-content: flex-end; }
.task-app-button { display: inline-flex; align-items: center; justify-content: center; min-height: 38px; padding: 9px 13px; border: 1px solid #505050; border-radius: 7px; background: #262626; color: #dce2e3; font-size: 11px; font-weight: 550; line-height: 1.25; cursor: pointer; transition: transform .2s,background .2s,border-color .2s,box-shadow .2s; }
.task-app-button:hover { border-color: #8c8c8c; background: #333333; transform: translateY(-2px); }
.task-app-button:focus-visible { outline: 2px solid #e2e8ea; outline-offset: 2px; }
.task-app-button--primary { border-color: #c6ced0; background: linear-gradient(180deg,#e5eaeb,#bdc7ca); color: #172022; box-shadow: 0 3px 10px rgba(0,0,0,.15); }
.task-app-button--primary:hover { border-color: #fff; background: #eef2f3; box-shadow: 0 7px 18px rgba(0,0,0,.24); }
.task-app-button:disabled { cursor: default; transform: none; opacity: .7; }
.task-app-button.is-copied { border-color: #88c7ad; background: #303030; color: #d7f5e6; animation: task-copy-pop .48s cubic-bezier(.2,.8,.2,1); }
.task-app-appointment { display: grid; gap: 16px; }
.task-app-fields { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 15px; padding: 18px; border: 1px solid #3a3a3a; border-radius: 9px; background: #1c1c1c; }
.task-app-field { display: grid; align-content: start; gap: 6px; min-width: 0; }
.task-app-fields .task-app-fields-wide { grid-column: 1 / -1; }
.task-app-field[hidden] { display: none; }
.task-app-field > label { color: #b8c1c3; font-size: 11px; font-weight: 550; }
.task-app-field input,.task-app-field select,.task-app-field textarea { display: block; width: 100%; min-width: 0; min-height: 43px; padding: 10px 11px; border: 1px solid #4a4a4a; border-radius: 7px; outline: 0; background: #151515; color: #e2e6e7; color-scheme: dark; font: inherit; font-size: 12px; line-height: 1.4; transition: border-color .2s,box-shadow .2s,background .2s; }
.task-app-field textarea { min-height: 70px; resize: vertical; }
.task-app-field input:hover,.task-app-field select:hover,.task-app-field textarea:hover { border-color: #828282; }
.task-app-field input:focus-visible,.task-app-field select:focus-visible,.task-app-field textarea:focus-visible { border-color: #d6dfe1; background: #212121; box-shadow: 0 0 0 3px rgba(194,211,216,.14); }
.task-app-field input:disabled,.task-app-field select:disabled,.task-app-field textarea:disabled { opacity: .7; cursor: default; }
.task-app-field small { color: #899699; font-size: 10px; }
.task-app-field .task-native-hidden { display: none; }
.task-modern-picker { position: relative; min-width: 0; }
.task-modern-trigger { display: flex; align-items: center; justify-content: space-between; gap: 12px; width: 100%; min-height: 43px; padding: 10px 12px; border: 1px solid #4a4a4a; border-radius: 8px; background: #151515; color: #e2e6e7; font: inherit; font-size: 12px; line-height: 1.4; text-align: left; cursor: pointer; transition: border-color .2s,background .2s,box-shadow .2s; }
.task-modern-trigger:hover { border-color: #909090; background: #202020; }
.task-modern-trigger:focus-visible,.task-modern-picker.is-open .task-modern-trigger { border-color: #c4c4c4; outline: 0; box-shadow: 0 0 0 3px rgba(200,200,200,.15); }
.task-modern-trigger:disabled { opacity: .6; cursor: default; }
.task-modern-trigger.is-placeholder .task-modern-value { color: #a1abad; }
.task-modern-trigger::after { content: ''; flex: 0 0 7px; width: 7px; height: 7px; margin-right: 3px; border-right: 1.5px solid #bdc8c6; border-bottom: 1.5px solid #bdc8c6; transform: rotate(45deg) translateY(-2px); transition: transform .2s; }
.task-modern-picker.is-open .task-modern-trigger::after { transform: rotate(225deg) translateY(-2px); }
.task-modern-value { overflow: hidden; min-width: 0; white-space: nowrap; text-overflow: ellipsis; }
.task-modern-menu { position: absolute; top: calc(100% + 7px); left: 0; z-index: 20; width: 100%; min-width: min(240px, calc(100vw - 44px)); max-height: 282px; padding: 6px; overflow: auto; border: 1px solid #585858; border-radius: 11px; background: #121212; box-shadow: 0 18px 42px rgba(0,0,0,.42),0 0 0 1px rgba(255,255,255,.03) inset; animation: task-picker-in .18s ease-out both; }
.task-modern-menu[hidden] { display: none; }
.task-modern-menu.is-up { top: auto; bottom: calc(100% + 7px); }
.task-modern-option { display: flex; align-items: center; gap: 9px; width: 100%; min-height: 38px; padding: 7px 9px; border: 0; border-radius: 7px; background: transparent; color: #dce4e2; font: inherit; font-size: 12px; text-align: left; cursor: pointer; }
.task-modern-option img { width: 25px; height: 25px; border-radius: 50%; object-fit: cover; }
.task-modern-option span { flex: 1; }
.task-modern-option:hover,.task-modern-option:focus-visible { outline: 0; background: #343434; }
.task-modern-option[aria-selected='true'] { background: #3a3a3a; color: #e8f9ed; }
.task-modern-option[aria-selected='true']::after { content: '✓'; color: #d0d0d0; }
.task-modern-option[data-value=''][aria-selected='true'] { background: transparent; color: #a1abad; }
.task-modern-option[data-value=''][aria-selected='true']::after { content: none; }
.task-modern-menu--date { width: min(316px,calc(100vw - 44px)); max-height: none; padding: 13px; }
.task-calendar-head { display: grid; grid-template-columns: 32px 1fr 32px; align-items: center; gap: 6px; margin-bottom: 12px; }
.task-calendar-head strong { color: #edf3ef; font-size: 12px; font-weight: 600; text-align: center; }
.task-calendar-nav { display: grid; place-items: center; width: 32px; height: 32px; border: 1px solid #505050; border-radius: 7px; background: #282828; color: #dfefe4; font: inherit; font-size: 23px; line-height: 1; cursor: pointer; }
.task-calendar-nav:hover:not(:disabled),.task-calendar-nav:focus-visible { outline: 0; border-color: #bcbcbc; background: #444444; }
.task-calendar-nav:disabled { opacity: .35; cursor: default; }
.task-calendar-week,.task-calendar-days { display: grid; grid-template-columns: repeat(7,minmax(0,1fr)); gap: 3px; }
.task-calendar-week { margin-bottom: 5px; color: #94a5a0; font-size: 10px; text-align: center; }
.task-calendar-day { display: grid; place-items: center; width: 100%; aspect-ratio: 1; border: 0; border-radius: 7px; background: transparent; color: #e0e9e3; font: inherit; font-size: 11px; cursor: pointer; }
.task-calendar-day:hover:not(:disabled),.task-calendar-day:focus-visible { outline: 0; background: #4a4a4a; }
.task-calendar-day[aria-pressed='true'] { background: #d0d0d0; color: #1b1b1b; font-weight: 700; }
.task-calendar-day:disabled { color: #64716b; cursor: default; }
.task-modern-menu--time { width: min(348px,calc(100vw - 44px)); max-height: 308px; padding: 12px; }
.task-modern-menu--time > strong { display: block; margin: 0 0 10px 3px; color: #dfeae3; font-size: 11px; }
.task-time-grid { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 6px; }
.task-time-option { min-height: 33px; border: 1px solid #484848; border-radius: 7px; background: #282828; color: #dce9df; font: inherit; font-size: 11px; cursor: pointer; }
.task-time-option:hover,.task-time-option:focus-visible { outline: 0; border-color: #c4c4c4; background: #454545; }
.task-time-option[aria-selected='true'] { border-color: #d4d4d4; background: #d0d0d0; color: #1b1b1b; font-weight: 700; }
.task-app-patient-picker { display: flex; align-items: center; gap: 9px; min-width: 0; }
.task-app-patient-picker img { flex: 0 0 29px; width: 29px; height: 29px; border-radius: 50%; object-fit: cover; }
.task-app-patient-picker .task-modern-picker { flex: 1; }
.task-app-card.is-completing { animation: task-finish .65s ease-out; }
.task-app-card.is-done { border-color: #626262; background: #151515; }
.task-app-card.is-done .task-app-summary small { color: #9ed5b6; }
.task-app-card.is-done .task-app-icon { border-color: #666666; background: #303030; color: #b6e0c5; }
.task-app-toast { position: fixed; right: 24px; bottom: 24px; z-index: 110; max-width: min(370px,calc(100vw - 36px)); padding: 12px 17px; border: 1px solid #7fae94; border-radius: 9px; background: #252525; color: #e6f7eb; box-shadow: 0 15px 40px rgba(0,0,0,.35); font-size: 13px; opacity: 0; transform: translateY(18px); pointer-events: none; }
.task-app-toast.is-visible { opacity: 1; transform: translateY(0); animation: task-toast-in .32s cubic-bezier(.2,.8,.2,1); }
.task-conversation-dialog { position: fixed; inset: 0; width: min(520px,calc(100vw - 28px)); max-height: min(690px,calc(100dvh - 36px)); margin: auto; padding: 0; border: 1px solid #505050; border-radius: 14px; background: #0c0c0c; color: #e9eded; box-shadow: 0 30px 90px rgba(0,0,0,.55); overflow: auto; }
.task-conversation-dialog[open] { animation: task-dialog-in .3s cubic-bezier(.2,.8,.2,1); }
.task-conversation-dialog::backdrop { background: rgba(0,0,0,.72); backdrop-filter: blur(5px); }
.task-conversation-header { display: flex; align-items: center; justify-content: space-between; gap: 14px; padding: 17px 20px; border-bottom: 1px solid #424242; background: #181818; }
.task-conversation-header > div { display: flex; align-items: center; gap: 11px; }
.task-conversation-avatar { display: block; width: 37px; height: 37px; border-radius: 50%; object-fit: cover; }
.task-conversation-header strong,.task-conversation-header span { display: block; }
.task-conversation-header strong { color: #f2f4f4; font-size: 14px; }
.task-conversation-header div div > span { margin-top: 2px; color: #a3adaf; font-size: 11px; }
.task-conversation-close { display: grid; place-items: center; width: 36px; height: 36px; border: 1px solid #505050; border-radius: 8px; color: #dce3e4; font-size: 24px; line-height: 1; cursor: pointer; }
.task-conversation-close:hover,.task-conversation-close:focus-visible { background: #2b2b2b; }
.task-conversation-messages { display: flex; flex-direction: column; gap: 13px; min-height: 280px; padding: 24px 20px; background: radial-gradient(circle at 0% 100%,rgba(160,160,160,.05),transparent 45%),#111111; }
.task-conversation-bubble { max-width: 82%; padding: 11px 13px 8px; border: 1px solid #444444; border-radius: 11px 11px 11px 3px; background: #222222; }
.task-conversation-bubble.is-clinic { align-self: flex-end; border-color: #555555; border-radius: 11px 11px 3px 11px; background: #303030; }
.task-conversation-bubble p { margin: 0; color: #e9eeee; font-size: 13px; line-height: 1.55; }
.task-conversation-bubble span { display: block; margin-top: 4px; color: #aebdb8; font-size: 10px; text-align: right; }
.task-conversation-note { margin: 0; padding: 12px 20px; border-top: 1px solid #383838; color: #9eaaad; font-size: 11px; }
@keyframes task-detail-in { from { opacity: 0; transform: translateY(-7px); } to { opacity: 1; transform: translateY(0); } }
@keyframes task-copy-pop { 40% { transform: scale(1.09); box-shadow: 0 0 0 5px rgba(136,199,173,.13); } }
@keyframes task-finish { 35% { border-color: #9bcbaa; box-shadow: 0 0 0 7px rgba(126,201,161,.13); transform: scale(1.012); } }
@keyframes task-toast-in { from { opacity: 0; transform: translateY(18px); } to { opacity: 1; transform: translateY(0); } }
@keyframes task-dialog-in { from { opacity: 0; transform: translateY(16px) scale(.97); } to { opacity: 1; transform: translateY(0) scale(1); } }
@keyframes task-picker-in { from { opacity: 0; transform: translateY(-5px) scale(.98); } to { opacity: 1; transform: translateY(0) scale(1); } }
@media (max-width: 760px) {
  .task-app-top > span,.task-app-heading > span { display: none; }
  .task-app-body { padding: 18px; }
}
@media (max-width: 470px) {
  .task-app-fields { grid-template-columns: 1fr; }
  .task-app-actions > div,.task-app-actions > .task-app-button { width: 100%; }
  .task-app-actions > div .task-app-button { flex: 1; }
  .task-app-toast { right: 18px; bottom: 18px; }
}
@media (prefers-reduced-motion: reduce) {
  .task-app-card,.task-app-card summary,.task-app-icon,.task-app-chevron,.task-app-button { transition: none; }
  .task-app-card:hover { transform: none; }
  .task-app-detail,.task-app-card.is-completing,.task-app-button.is-copied,.task-app-toast.is-visible,.task-conversation-dialog[open],.task-modern-menu { animation: none; }
}

/* Earnings: a prominent offer immediately after the hero. */
.partners-page .earnings-section {
  position: relative;
  padding-block: 118px 106px;
  border-block: 1px solid #303030;
  background: radial-gradient(ellipse 55% 38% at 79% 28%, rgba(225,225,225,.065), transparent 72%), #0e0e0e;
  scroll-margin-top: 82px;
}
.earnings-heading {
  display: grid;
  grid-template-columns: minmax(0,1.3fr) minmax(260px,.7fr);
  align-items: end;
  column-gap: clamp(40px,7vw,110px);
  max-width: none;
  margin: 0 0 53px;
  text-align: left;
}
.earnings-heading .eyebrow {
  grid-column: 1/-1;
  justify-content: flex-start;
  margin-bottom: 29px;
}
.earnings-heading h2 {
  max-width: 820px;
  margin: 0;
  font-size: clamp(44px,5.3vw,76px);
  line-height: 1.03;
  letter-spacing: -.065em;
}
.earnings-heading h2 span { color: #bfc2c5; }
.earnings-intro {
  padding: 3px 0 4px 26px;
  border-left: 1px solid #626262;
}
.earnings-intro p {
  max-width: 390px;
  margin: 0;
  color: #d4d4d4;
  font-size: 16px;
  line-height: 1.65;
}
.earnings-intro > span {
  display: block;
  margin-top: 18px;
  color: #929292;
  font-size: 12px;
  line-height: 1.5;
}
.earnings-calculator {
  grid-template-columns: 1.1fr .9fr;
  max-width: none;
  overflow: hidden;
  border: 1px solid #4a4a4a;
  border-radius: 18px;
  background: #151515;
  box-shadow: 0 28px 75px rgba(0,0,0,.3), inset 0 1px 0 rgba(255,255,255,.06);
}
.calc-header {
  grid-column: 1/-1;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
  min-height: 58px;
  padding: 14px 39px;
  border-bottom: 1px solid #353535;
  background: #1a1a1a;
}
.calc-header > span:first-child {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  color: #d9d9d9;
  font-size: 10px;
  font-weight: 650;
  letter-spacing: .16em;
}
.calc-header i {
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: #eee;
  box-shadow: 0 0 0 4px rgba(240,240,240,.1);
}
.calc-header > span:last-child { display: inline-flex; align-items: center; gap: 12px; color: #999; font-size: 11px; }
.calc-header .icon { width: 15px; height: 15px; }
.calc-control { padding: clamp(32px,4vw,58px); }
.calc-control label { color: #ddd; font-size: 16px; font-weight: 500; }
.calc-selection { align-items: end; margin: 23px 0 43px; }
.calc-selection > div { display: flex; align-items: baseline; gap: 12px; }
.calc-selection output { font-size: clamp(70px,7vw,104px); font-weight: 560; line-height: .95; letter-spacing: -.08em; }
.calc-selection > div > span { margin: 0; color: #aaa; font-size: 14px; }
.calc-selection .ui-tag { margin-bottom: 7px; padding: 8px 12px; border-color: #595959; border-radius: 99px; background: #252525; color: #e3e3e3; font-size: 11px; }
#clinicas-range {
  height: 7px;
  background: linear-gradient(to right,#e3e3e3 0%,#e3e3e3 var(--range-progress,23%),#393939 var(--range-progress,23%),#393939 100%);
}
#clinicas-range::-webkit-slider-thumb { width: 26px; height: 26px; border: 6px solid #f0f0f0; background: #777; box-shadow: 0 0 0 4px rgba(240,240,240,.12); transition: box-shadow .2s, transform .2s; }
#clinicas-range::-webkit-slider-thumb:hover { box-shadow: 0 0 0 8px rgba(240,240,240,.14); transform: scale(1.08); }
#clinicas-range::-moz-range-thumb { width: 14px; height: 14px; border: 6px solid #f0f0f0; background: #777; box-shadow: 0 0 0 4px rgba(240,240,240,.12); }
#clinicas-range:focus-visible { outline: 2px solid #e3e3e3; outline-offset: 13px; }
.range-limits { margin: 15px 0 39px; color: #9d9d9d; font-size: 11px; }
.calc-presets { gap: 9px; color: #a8a8a8; font-size: 12px; }
.calc-presets > span { margin-right: 5px; }
.calc-presets button { min-height: 39px; padding: 8px 13px; border-color: #4a4a4a; border-radius: 8px; color: #d0d0d0; font-size: 11px; transition: background .2s,border-color .2s,transform .2s; }
.calc-presets button.selected,.calc-presets button:hover { border-color: #c8c8c8; background: #313131; color: #fff; }
.calc-presets button:hover { transform: translateY(-2px); }
.calc-presets button:focus-visible { outline: 2px solid #eee; outline-offset: 3px; }
#calc-upgrade { margin: 35px 0 0; padding-top: 17px; border-top: 1px solid #3b3b3b; color: #c4c4c4; font-size: 12px; }
.calc-result {
  align-items: flex-start;
  padding: clamp(32px,4vw,58px);
  border-left: 1px solid #484848;
  background: radial-gradient(circle at 85% 0%,rgba(255,255,255,.09),transparent 45%), linear-gradient(135deg,#282828,#191919 72%);
}
.calc-result .calc-result-label { color: #c2c2c2; font-size: 10px; font-weight: 650; letter-spacing: .14em; }
.calc-result > strong { margin: 24px 0 37px; color: #fff; font-size: clamp(50px,5.4vw,82px); font-weight: 560; letter-spacing: -.07em; white-space: nowrap; }
.calc-annual { display: flex; flex-direction: column; gap: 8px; width: 100%; padding-top: 24px; border-top: 1px solid #595959; }
.calc-annual span { color: #a7a7a7; font-size: 10px; font-weight: 600; letter-spacing: .11em; }
.calc-annual b { color: #eee; font-size: 24px; font-weight: 550; letter-spacing: -.04em; }
.calc-result .btn { display: flex; justify-content: space-between; align-self: stretch; margin-top: 39px; min-height: 55px; }
.calc-note { max-width: none; margin: 16px auto 0; color: #929292; font-size: 11px; text-align: center; }
.tier-comparison { max-width: none; gap: 18px; margin-top: 48px; }
.commission-tier,.commission-tier.active {
  gap: 22px;
  min-height: 202px;
  padding: 25px;
  border: 1px solid #363636;
  border-radius: 13px;
  background: #141414;
}
.commission-tier.active { border-color: #727272; background: linear-gradient(145deg,#202020,#151515); }
.commission-tier h3 { font-size: 57px; }
.commission-tier p:last-child { font-size: 11px; }
.commission-tier li { font-size: 11px; }

@media (max-width: 980px) {
  .earnings-heading { grid-template-columns: 1fr; gap: 22px; }
  .earnings-heading .eyebrow { margin-bottom: 0; }
  .earnings-heading h2 { font-size: clamp(45px,6vw,65px); }
  .earnings-intro { max-width: 630px; }
  .earnings-intro p { max-width: none; }
  .calc-selection output { font-size: clamp(65px,7vw,85px); }
  .calc-result > strong { font-size: clamp(48px,5vw,66px); }
}
@media (max-width: 760px) {
  .partners-page .earnings-section { padding-block: 76px; }
  .earnings-heading { margin-bottom: 34px; }
  .earnings-heading h2 { font-size: clamp(39px,8vw,56px); }
  .earnings-intro { padding-left: 18px; }
  .earnings-intro p { font-size: 14px; }
  .earnings-calculator { grid-template-columns: 1fr; }
  .calc-header { padding-inline: 26px; }
  .calc-control,.calc-result { padding: 34px 30px; }
  .calc-result { border-left: 0; border-top: 1px solid #484848; }
  .calc-result > strong { font-size: clamp(52px,9vw,74px); }
  .calc-result .btn { align-self: stretch; }
  .tier-comparison { grid-template-columns: 1fr 1fr; margin-top: 31px; }
  .commission-tier { grid-template-columns: 1fr; }
}
@media (max-width: 540px) {
  .earnings-heading h2 { font-size: clamp(38px,10vw,50px); }
  .calc-header > span:last-child { display: none; }
  .calc-header { min-height: 53px; padding-inline: 23px; }
  .calc-control,.calc-result { padding: 29px 23px; }
  .calc-control label { font-size: 14px; }
  .calc-selection { align-items: flex-start; flex-direction: column; gap: 17px; margin-bottom: 35px; }
  .calc-selection output { font-size: 78px; }
  .calc-presets > span { width: 100%; }
  .calc-presets button { flex: 1; }
  .calc-result > strong { font-size: clamp(47px,12vw,64px); white-space: normal; }
  .tier-comparison { grid-template-columns: 1fr; }
  .commission-tier { min-height: 0; grid-template-columns: .7fr 1.3fr; padding: 22px; }
}
@media (prefers-reduced-motion: reduce) {
  #clinicas-range::-webkit-slider-thumb,.calc-presets button { transition: none; }
}

/* Product stories: contact capture, journey, lifecycle and mobile alerts. */
.partners-page .feature-story-section,.partners-page .lifecycle-section,.partners-page .notification-section { border-top: 1px solid #252525; background: #0c0c0c; scroll-margin-top: 85px; }
.partners-page .capture-section,.partners-page .notification-section { background: radial-gradient(ellipse 50% 55% at 75% 50%,rgba(160,168,173,.065),transparent 72%),#0c0c0c; }
.feature-intro { display: grid; grid-template-columns: 1.2fr .8fr; column-gap: clamp(35px,7vw,120px); align-items: end; margin-bottom: 43px; }
.feature-intro .eyebrow { grid-column: 1/-1; }
.feature-intro h2 { margin: 0; font-size: clamp(38px,4.7vw,66px); line-height: 1.06; }
.feature-intro > p:last-child { max-width: 440px; margin: 0 0 4px; color: #a8a8a8; font-size: 15px; }
.feature-stage,.lifecycle-shell { overflow: hidden; border: 1px solid #3b3b3b; border-radius: 18px; background: #141414; box-shadow: 0 28px 70px rgba(0,0,0,.25); }
.feature-stage-top { display: flex; align-items: center; justify-content: space-between; gap: 18px; min-height: 60px; padding: 14px 28px; border-bottom: 1px solid #323232; background: #1b1b1b; }
.feature-stage-top > span { display: inline-flex; align-items: center; gap: 10px; color: #c8c8c8; font-size: 10px; font-weight: 650; letter-spacing: .13em; }
.feature-steps button:focus-visible,.journey-motion-path button:focus-visible,.notification-picker button:focus-visible,.lifecycle-segments button:focus-visible,.lifecycle-campaign button:focus-visible { outline: 2px solid #e7e7e7; outline-offset: 3px; }
.feature-stage-bottom { display: flex; align-items: center; justify-content: space-between; gap: 30px; min-height: 83px; padding: 15px 28px; border-top: 1px solid #323232; }
.feature-stage-bottom p { margin: 0; color: #bdbdbd; font-size: 12px; text-align: right; }
.feature-steps { display: flex; flex-wrap: wrap; gap: 6px; }
.feature-steps button,.notification-picker button { display: inline-flex; align-items: center; gap: 8px; min-height: 36px; padding: 7px 11px; border: 1px solid transparent; border-radius: 7px; background: #202020; color: #858585; font-size: 10px; cursor: pointer; transition: color .25s,border-color .25s,background .25s,transform .25s; }
.feature-steps button span,.notification-picker button span { color: #c0c0c0; font-size: 11px; }
.feature-steps button:hover,.notification-picker button:hover { transform: translateY(-2px); color: #fff; }
.feature-steps button.is-active,.notification-picker button.is-active { border-color: #777; background: #343434; color: #fff; }
.capture-visual { display: grid; grid-template-columns: minmax(0,1fr) 92px minmax(0,1fr); align-items: center; gap: 0; min-height: 420px; padding: 46px clamp(25px,5vw,80px); }
.capture-person,.capture-crm { min-width: 0; min-height: 292px; overflow: hidden; border: 1px solid #414141; border-radius: 14px; background: #1c1c1c; }
.capture-person { max-width: 420px; width: 100%; justify-self: end; display: flex; flex-direction: column; }
.capture-person-head { display: flex; align-items: center; gap: 12px; min-height: 68px; padding: 13px 18px; border-bottom: 1px solid #373737; }
.capture-avatar { display: grid; place-items: center; flex: 0 0 auto; width: 37px; height: 37px; border: 1px solid #696969; border-radius: 50%; background: linear-gradient(135deg,#474747,#212121); color: #f4f4f4; font-size: 11px; font-weight: 700; }
.capture-person-head strong,.capture-person-head small { display: block; line-height: 1.3; }
.capture-person-head strong { color: #eee; font-size: 12px; }.capture-person-head small { margin-top: 4px; color: #8f8f8f; font-size: 10px; }
.capture-online { margin-left: auto; color: #88c7ae; font-size: 10px; }
.capture-chat { display: flex; flex: 1; flex-direction: column; align-items: flex-end; justify-content: flex-end; gap: 12px; padding: 22px 17px; background: radial-gradient(circle at 65% 0%,rgba(255,255,255,.04),transparent 52%),#171717; }
.capture-message { max-width: 285px; padding: 13px 15px; border: 1px solid #3b534a; border-radius: 13px 13px 3px 13px; background: #26392f; color: #e0e9e3; font-size: 12px; line-height: 1.45; transform-origin: right bottom; }
.capture-message small { display: block; margin-top: 8px; color: #94b1a3; font-size: 9px; text-align: right; }
.capture-typing { display: flex; align-items: center; gap: 4px; width: fit-content; padding: 12px 14px; border-radius: 12px 12px 3px 12px; background: #303030; }
.capture-typing i { width: 5px; height: 5px; border-radius: 50%; background: #c8c8c8; animation: captureDot 1s infinite ease-in-out; }.capture-typing i:nth-child(2) { animation-delay: .16s; }.capture-typing i:nth-child(3) { animation-delay: .32s; }
.capture-input { display: flex; justify-content: space-between; align-items: center; margin: 10px 17px 14px; padding: 7px 8px 7px 12px; border: 1px solid #484848; border-radius: 8px; color: #777; font-size: 10px; }.capture-input span:last-child { display: grid; place-items: center; width: 21px; height: 21px; border-radius: 5px; background: #383838; color: #ddd; }
.capture-connection { position: relative; }.capture-connection::before,.capture-connection::after { content: ''; position: absolute; }.capture-connection span { position: absolute; }
.capture-crm { position: relative; display: grid; grid-template-rows: auto minmax(0,1fr); max-width: 430px; width: 100%; justify-self: start; }
.capture-crm-head { display:flex;align-items:center;gap:10px;min-height:54px;padding:12px 17px;border-bottom:1px solid #373737;color:#aaa;font-size:9px;letter-spacing:.12em; }.capture-crm-head img { object-fit: contain; }.capture-live { margin-left:auto;color:#8abca5;font-size:8px; }
/* Overlap both states while reserving the height of their complete content. */
.capture-loading,.capture-result { grid-area: 2 / 1; display:flex; flex-direction:column; justify-content:center; align-items:center; padding:24px; transition:opacity .4s,transform .5s; }
.capture-loading strong { margin-top:20px;color:#eee;font-size:16px; }.capture-loading small { color:#939393;font-size:11px; }.capture-spinner { width:42px;height:42px;border:2px solid #4a4a4a;border-top-color:#e4e4e4;border-radius:50%;animation:spin 1s linear infinite; }
.capture-result { align-items:flex-start; justify-content:flex-start; padding:20px 25px; }.capture-success { display:grid;place-items:center;flex:0 0 auto;width:27px;height:27px;border:1px solid #40715e;border-radius:50%;background:#173327;color:#a7e2c5;font-size:15px; }.capture-result p { margin:8px 0 0;color:#8fc7af;font-size:9px;font-weight:700;letter-spacing:.14em; }.capture-result h3 { margin:0 0 12px;color:#f2f2f2;font-size:23px; }.capture-result > div { display:flex;justify-content:space-between;gap:15px;width:100%;padding:6px 0;border-top:1px solid #333;font-size:11px; }.capture-result > div span { color:#8f8f8f; }.capture-result > div strong { color:#ddd;font-weight:500;text-align:right; }
.capture-stage:not([data-stage="0"]) .capture-typing,.capture-stage[data-stage="0"] .capture-message { opacity:0;transform:translateY(8px) scale(.95);pointer-events:none; }.capture-stage:not([data-stage="0"]) .capture-message { opacity:1;transform:none;transition:opacity .3s,transform .4s; }
.capture-stage:not([data-stage="2"]) .capture-loading { opacity:0;transform:translateY(10px);pointer-events:none; }.capture-stage:not([data-stage="3"]) .capture-result { opacity:0;transform:translateY(14px);pointer-events:none; }.capture-stage[data-stage="3"] .capture-result { opacity:1;transform:none; }
.capture-stage[data-stage="0"] .capture-connection,.capture-stage[data-stage="1"] .capture-connection { opacity:.3; }.capture-stage[data-stage="2"] .capture-connection { opacity:1; }
@keyframes captureDot { 0%,60%,100% { transform:translateY(0);opacity:.4; } 30% { transform:translateY(-4px);opacity:1; } }@keyframes spin { to { transform:rotate(360deg); } }
.notification-layout { display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:clamp(45px,7vw,120px);align-items:center; }.notification-copy h2 { margin:0 0 24px;font-size:clamp(38px,4.2vw,60px);line-height:1.06; }.notification-copy > p:not(.eyebrow) { max-width:430px;font-size:15px; }.notification-picker { display:grid;gap:8px;margin-top:28px; }.notification-picker button { justify-content:flex-start;min-height:50px;padding:11px 16px;text-align:left; }.notification-picker button span { font-size:12px; }.notification-disclaimer { margin-top:16px!important;color:#888;font-size:11px!important; }.notification-demo { min-width:0; }.notification-visual { display:grid;grid-template-columns:minmax(0,1fr) 40px minmax(0,1fr);align-items:center;min-height:490px;padding:35px 25px; }.notification-crm { min-width:0;border:1px solid #454545;border-radius:11px;background:#1e1e1e;box-shadow:0 15px 25px rgba(0,0,0,.22); }.notification-crm > span { display:block;padding:13px 16px;border-bottom:1px solid #383838;color:#aaa;font-size:9px;letter-spacing:.13em; }.notification-crm-card { display:flex;align-items:flex-start;gap:10px;margin:16px;padding:14px;border:1px solid #5b5b5b;border-radius:8px;background:#292929;transition:transform .4s,box-shadow .4s; }.notification-crm-card.is-pulsing { transform:scale(1.04);box-shadow:0 0 0 5px rgba(255,255,255,.08); }.notification-crm-icon { display:grid;place-items:center;flex:0 0 auto;width:27px;height:27px;border-radius:7px;background:#404040;color:#fff; }.notification-crm-icon .icon { width:14px;height:14px; }.notification-crm-card small,.notification-crm-card strong,.notification-crm-card span { display:block; }.notification-crm-card small { color:#bdbdbd;font-size:8px;letter-spacing:.08em; }.notification-crm-card strong { margin:4px 0;color:#f3f3f3;font-size:12px;line-height:1.3; }.notification-crm-card span { color:#9d9d9d;font-size:10px; }.notification-crm-footer { display:flex;align-items:center;gap:8px;padding:0 16px 14px;color:#999;font-size:10px; }.notification-beam { display:flex;justify-content:center;gap:2px;color:#bcbcbc;font-size:27px; }.notification-beam span { animation:beamPulse 1.2s ease-in-out infinite; }.notification-beam span:nth-child(2) { animation-delay:.15s; }.notification-beam span:nth-child(3) { animation-delay:.3s; }@keyframes beamPulse { 50% { opacity:.25;transform:translateX(4px); } }
.phone { position:relative;display:flex;justify-content:center; }.phone-frame { position:relative;width:min(100%,225px);min-height:405px;overflow:hidden;border:5px solid #4a4a4a;border-radius:34px;background:radial-gradient(circle at 85% 80%,#4a4a4a,#242424 43%,#151515);box-shadow:0 15px 40px #000,inset 0 0 0 1px #777; }.phone-island { width:70px;height:17px;margin:8px auto 0;border-radius:20px;background:#090909; }.phone-clock { margin:36px 0 22px;color:#eee;font-size:54px;font-weight:350;line-height:1;text-align:center;letter-spacing:-.06em; }.phone-clock small { display:block;margin-top:8px;color:#bababa;font-size:8px;font-weight:600;letter-spacing:.1em; }.phone-notification { margin:9px;padding:12px;border:1px solid #666;border-radius:12px;background:rgba(174,174,174,.23);box-shadow:0 12px 24px rgba(0,0,0,.2);backdrop-filter:blur(12px);transition:transform .5s,opacity .5s; }.phone-notification-head { display:flex;align-items:center;gap:5px;color:#eee;font-size:8px; }.phone-notification-head img { object-fit:contain; }.phone-notification-head small { margin-left:auto;color:#bebebe;font-size:8px; }.phone-notification > strong { display:block;margin-top:8px;color:#fff;font-size:11px; }.phone-notification p { margin:2px 0 0;color:#dedede;font-size:10px;line-height:1.35; }.phone-home { position:absolute;bottom:8px;left:50%;width:64px;height:3px;border-radius:5px;background:#bbb;transform:translateX(-50%); }.notification-stage-caption { padding:14px 24px;border-top:1px solid #343434;color:#c2c2c2;font-size:11px;text-align:center; }.notification-demo.is-switching .phone-notification { opacity:0;transform:translateY(-28px) scale(.94); }
@media (max-width:1000px) { .feature-intro { grid-template-columns:1fr;gap:16px; }.feature-intro .eyebrow { margin-bottom:0; }.notification-layout { grid-template-columns:1fr;gap:35px; }.notification-copy > p:not(.eyebrow) { max-width:600px; }.notification-picker { grid-template-columns:repeat(3,1fr); }.notification-visual { max-width:680px;margin:auto; } }
@media (max-width:760px) { .partners-page .feature-story-section,.partners-page .lifecycle-section,.partners-page .notification-section { padding-block:75px; }.feature-intro { margin-bottom:30px; }.feature-intro h2 { font-size:clamp(37px,8vw,55px); }.capture-visual { grid-template-columns:1fr;gap:16px;min-height:0;padding:25px; }.capture-person,.capture-crm { max-width:none;min-height:260px; }.capture-connection { margin:auto; }.feature-stage-bottom { flex-direction:column;align-items:flex-start;gap:10px; }.feature-stage-bottom p { text-align:left; }.notification-picker { grid-template-columns:1fr; } }
@media (max-width:540px) { .feature-stage-top { padding:13px 17px; }.feature-stage-top > span { font-size:8px;letter-spacing:.08em; }.feature-stage-bottom { padding:16px; }.feature-steps { width:100%; }.feature-steps button { flex:1;justify-content:center;min-width:65px;padding:7px 5px;font-size:9px; }.feature-steps button span { font-size:9px; }.capture-visual { padding:16px; }.notification-visual { grid-template-columns:1fr;gap:10px;padding:20px; }.notification-crm { width:100%; }.notification-beam { transform:rotate(90deg); }.phone-frame { width:210px; } }
@media (prefers-reduced-motion:reduce) { .capture-typing i,.capture-spinner,.capture-connection span,.notification-beam span { animation:none; }.feature-steps button,.notification-picker button,.phone-notification,.capture-loading,.capture-result { transition:none; } }
.capture-draft-text { display:none;min-width:0;max-width:calc(100% - 30px);overflow:hidden;white-space:nowrap;color:#d8d8d8; }
.capture-stage[data-stage="0"] .capture-placeholder { display:none; }
.capture-stage[data-stage="0"] .capture-draft-text { display:block;animation:typeDraft 1.65s steps(32,end) both; }
@keyframes typeDraft { from { width:0; } to { width:100%; } }

@media (prefers-reduced-motion:reduce) { .capture-stage[data-stage="0"] .capture-draft-text { animation:none; } }
.stories-paused .capture-typing i,.stories-paused .capture-spinner,.stories-paused .capture-connection span,.stories-paused .notification-beam span,.stories-paused .capture-draft-text { animation-play-state:paused; }

/* Transfer cue: a soft light sweep travels once when the CRM starts registering. */
.capture-connection { height: 22px; background: none; opacity: .6; transition: opacity .35s; }
.capture-connection::before { top: 50%; left: 0; width: calc(100% - 9px); height: 1px; border-radius: 0; background: linear-gradient(90deg,#555,#858585); }
.capture-connection::after { top: calc(50% - 4px); right: 2px; left: auto; width: 7px; height: 7px; border: solid #a9a9a9; border-width: 0 1px 1px 0; border-radius: 0; background: none; transform: rotate(-45deg); }
.capture-connection span { top: calc(50% - 1px); left: 0; width: 34%; height: 2px; border-radius: 0; background: linear-gradient(90deg,transparent,#f0f0f0 65%,transparent); box-shadow: 0 0 9px rgba(255,255,255,.32); opacity: 0; animation: none; }
.capture-stage[data-stage="2"] .capture-connection span { animation: captureSweep 1.2s cubic-bezier(.25,.75,.3,1) both; }
.capture-stage[data-stage="3"] .capture-connection { opacity: .72; }
@keyframes captureSweep { 0% { transform: translateX(-100%); opacity: 0; } 16% { opacity: 1; } 82% { opacity: 1; } 100% { transform: translateX(290%); opacity: 0; } }
@media (max-width: 760px) {
  .capture-connection { width: 22px; height: 36px; background: none; }
  .capture-connection::before { top: 0; left: 50%; width: 1px; height: calc(100% - 9px); background: linear-gradient(#555,#858585); }
  .capture-connection::after { top: auto; right: 7px; bottom: 2px; left: auto; transform: rotate(45deg); }
  .capture-connection span { top: 0; left: calc(50% - 1px); width: 2px; height: 34%; background: linear-gradient(transparent,#f0f0f0 65%,transparent); }
  .capture-stage[data-stage="2"] .capture-connection span { animation: captureSweepVertical 1.2s cubic-bezier(.25,.75,.3,1) both; }
  @keyframes captureSweepVertical { 0% { transform: translateY(-100%); opacity: 0; } 16% { opacity: 1; } 82% { opacity: 1; } 100% { transform: translateY(290%); opacity: 0; } }
}
@media (prefers-reduced-motion: reduce) { .capture-stage[data-stage="2"] .capture-connection span { animation: none; } }

/* Journey: a readable timeline with motion attached to each recorded event. */
.partners-page .journey-motion-section { background: #0c0c0c; }
.journey-motion-stage { --journey-progress: 1; overflow: hidden; border: 1px solid #393939; border-radius: 13px; background: #171717; box-shadow: none; }
.journey-motion-top { min-height: 83px; padding: 20px clamp(25px,3vw,42px); border-bottom: 1px solid #383838; background: #1b1b1b; }
.journey-motion-top > div { display: grid; gap: 5px; }.journey-motion-top > div span,.journey-top-meta { color: #939393; font-size: 9px; font-weight: 700; letter-spacing: .13em; }.journey-motion-top > div strong { color: #f0f0f0; font-size: 22px; font-weight: 540; letter-spacing: -.035em; }.journey-top-meta { white-space: nowrap; }.journey-top-meta i { padding: 0 6px; color: #666; font-style: normal; }
.journey-motion-grid { display: grid; grid-template-columns: minmax(0,.92fr) minmax(0,1.08fr); min-height: 514px; }
.journey-motion-path { display: flex; flex-direction: column; padding: 22px clamp(25px,3vw,42px); border-right: 1px solid #383838; background: #171717; }
.journey-path-heading { display: flex; justify-content: space-between; gap: 15px; padding: 0 12px 15px 39px; border-bottom: 1px solid #343434; color: #909090; font-size: 9px; font-weight: 700; letter-spacing: .14em; }
.journey-motion-stage .journey-motion-path button { position: relative; display: grid; grid-template-columns: 29px minmax(0,1fr) 15px; align-items: center; gap: 10px; width: 100%; min-height: 94px; padding: 11px 12px; border: 0; border-bottom: 1px solid #343434; border-radius: 0; background: transparent; color: #e6e6e6; font: inherit; text-align: left; cursor: pointer; transition: background .3s; }
.journey-motion-stage .journey-motion-path button::before { content: ''; position: absolute; top: 0; bottom: 0; left: 0; width: 2px; background: #eee; transform: scaleY(0); transition: transform .35s cubic-bezier(.2,.8,.2,1); }.journey-motion-stage .journey-motion-path button:hover { background: #222; }.journey-motion-stage .journey-motion-path button.is-active { background: #252525; }.journey-motion-stage .journey-motion-path button.is-active::before { transform: scaleY(1); }
.journey-motion-stage .journey-motion-path button i { color: #777; font-size: 11px; font-style: normal; font-variant-numeric: tabular-nums; }.journey-motion-stage .journey-motion-path button > span { display: grid; gap: 4px; }.journey-motion-stage .journey-motion-path button strong { color: #ddd; font-size: 14px; font-weight: 560; }.journey-motion-stage .journey-motion-path button small { color: #858585; font-size: 11px; line-height: 1.35; }.journey-motion-stage .journey-motion-path button em { color: #696969; font-size: 15px; font-style: normal; opacity: 0; transform: translateX(-4px); transition: opacity .3s,transform .3s; }.journey-motion-stage .journey-motion-path button:hover em,.journey-motion-stage .journey-motion-path button.is-active em { opacity: 1; transform: none; }.journey-motion-stage .journey-motion-path button.is-active i,.journey-motion-stage .journey-motion-path button.is-active strong { color: #fff; }
.journey-motion-stage .journey-motion-path button:focus-visible { outline: 2px solid #f1f1f1; outline-offset: -3px; }
.journey-motion-card { display: flex; flex-direction: column; min-width: 0; background: #1d1d1d; }
.journey-motion-card-top { display: flex; align-items: center; gap: 12px; min-height: 82px; padding: 17px clamp(25px,3vw,42px); border-bottom: 1px solid #393939; }.journey-motion-card-top .capture-avatar { display: grid; place-items: center; flex: 0 0 auto; width: 39px; height: 39px; border: 1px solid #696969; border-radius: 50%; background: #313131; color: #eee; font-size: 11px; font-weight: 650; }.journey-motion-card-top > div { min-width: 0; }.journey-motion-card-top > div strong,.journey-motion-card-top > div small { display: block; }.journey-motion-card-top > div strong { color: #eee; font-size: 13px; font-weight: 570; }.journey-motion-card-top > div small { margin-top: 4px; color: #929292; font-size: 10px; }.journey-person-status { margin-left: auto; color: #b7b7b7; font-size: 10px; white-space: nowrap; }
.journey-motion-track { display: grid; grid-template-columns: 1fr auto; gap: 13px; padding: 26px clamp(25px,3vw,42px) 0; color: #999; font-size: 9px; font-weight: 700; letter-spacing: .14em; }.journey-motion-track [data-journey-progress] { color: #dadada; font-size: 10px; font-variant-numeric: tabular-nums; letter-spacing: .08em; }.journey-motion-bar { position: relative; grid-column: 1/-1; height: 2px; overflow: hidden; background: #494949; }.journey-motion-bar::after { content: ''; position: absolute; inset: 0; background: #eee; transform: scaleX(var(--journey-progress)); transform-origin: left; transition: transform .7s cubic-bezier(.2,.8,.2,1); }
.journey-motion-events { position: relative; flex: 1; min-height: 315px; margin: 0; padding: 0; overflow: hidden; }.journey-motion-events > [data-journey-event] { position: absolute; inset: 26px clamp(25px,3vw,42px); display: flex; flex-direction: column; justify-content: center; min-width: 0; opacity: 1; transform: none; transition: opacity .25s ease,transform .45s cubic-bezier(.2,.8,.2,1); }.journey-motion-events > [data-journey-event]:not(.is-active) { opacity: 0; transform: translateY(12px); pointer-events: none; }.journey-motion-events > [data-journey-event] small { color: #a2a2a2; font-size: 9px; font-weight: 700; letter-spacing: .13em; }.journey-motion-events > [data-journey-event] > strong { display: block; margin-top: 17px; color: #f1f1f1; font-size: clamp(29px,3vw,41px); font-weight: 530; line-height: 1.08; letter-spacing: -.045em; }.journey-motion-events > [data-journey-event] > p { max-width: 530px; margin: 14px 0 0; color: #b5b5b5; font-size: 12px; line-height: 1.6; }
.journey-event-detail { display: grid; gap: 7px; width: 100%; margin-top: 24px; padding-top: 17px; border-top: 1px solid #3e3e3e; color: #e2e2e2; font-size: 12px; line-height: 1.45; }.journey-event-detail b { color: #969696; font-size: 9px; font-weight: 700; letter-spacing: .12em; }.journey-event-detail i { padding-inline: 5px; color: #939393; font-style: normal; }
.journey-motion-card-foot { display: flex; justify-content: space-between; align-items: center; gap: 15px; min-height: 55px; padding: 12px clamp(25px,3vw,42px); border-top: 1px solid #393939; color: #8f8f8f; font-size: 10px; }.journey-motion-card-foot > span:first-child { font-size: 9px; font-weight: 700; letter-spacing: .12em; }.journey-motion-card-foot i { padding-inline: 4px; font-style: normal; }
.journey-motion-bottom { display: flex; justify-content: space-between; align-items: center; gap: 18px; min-height: 62px; padding: 13px clamp(25px,3vw,42px); border-top: 1px solid #383838; background: #191919; }.journey-motion-status { color: #d0d0d0; font-size: 11px; line-height: 1.45; }.journey-motion-bottom > span:last-child { color: #8e8e8e; font-size: 10px; white-space: nowrap; }.journey-motion-bottom i { padding-inline: 4px; font-style: normal; }
.journey-motion-stage.is-animating .journey-motion-events > [data-journey-event].is-active small,.journey-motion-stage.is-animating .journey-motion-events > [data-journey-event].is-active strong,.journey-motion-stage.is-animating .journey-motion-events > [data-journey-event].is-active p,.journey-motion-stage.is-animating .journey-motion-events > [data-journey-event].is-active .journey-event-detail { animation: journeyContentIn .55s cubic-bezier(.2,.8,.2,1) both; }.journey-motion-stage.is-animating .journey-motion-events > [data-journey-event].is-active strong { animation-delay: .04s; }.journey-motion-stage.is-animating .journey-motion-events > [data-journey-event].is-active p { animation-delay: .08s; }.journey-motion-stage.is-animating .journey-motion-events > [data-journey-event].is-active .journey-event-detail { animation-delay: .12s; }
@keyframes journeyContentIn { from { opacity: .35; transform: translateY(8px); } to { opacity: 1; transform: none; } }
@media (max-width: 900px) { .journey-motion-grid { grid-template-columns: minmax(0,.85fr) minmax(0,1.15fr); }.journey-person-status { display: none; } }
@media (max-width: 760px) { .journey-motion-grid { grid-template-columns: 1fr; }.journey-motion-path { border-right: 0; border-bottom: 1px solid #383838; }.journey-motion-stage .journey-motion-path button { min-height: 76px; }.journey-motion-events { min-height: 310px; } }
@media (max-width: 540px) { .journey-motion-top { padding: 21px; }.journey-top-meta { font-size: 8px; }.journey-motion-path { padding: 15px 20px 20px; }.journey-motion-stage .journey-motion-path button { min-height: 72px; }.journey-motion-stage .journey-motion-path button strong { font-size: 13px; }.journey-motion-stage .journey-motion-path button small { font-size: 10px; }.journey-motion-card-top { padding: 14px 22px; }.journey-motion-track { padding: 23px 22px 0; }.journey-motion-events { min-height: 335px; }.journey-motion-events > [data-journey-event] { inset: 23px 22px; }.journey-motion-events > [data-journey-event] > strong { font-size: 29px; }.journey-motion-card-foot { padding: 12px 22px; }.journey-motion-bottom { align-items: flex-start; flex-direction: column; gap: 5px; padding: 15px 22px; }.journey-motion-bottom > span:last-child { white-space: normal; } }
@media (prefers-reduced-motion: reduce) { .journey-motion-stage *, .journey-motion-stage *::before, .journey-motion-stage *::after { animation: none !important; transition: none !important; } }
.stories-paused .journey-motion-stage *, .stories-paused .journey-motion-stage *::before, .stories-paused .journey-motion-stage *::after { animation-play-state: paused !important; }

/* Lifecycle: restrained portfolio data, with movement tied to the selected segment. */
.partners-page .lifecycle-section { background: #0c0c0c; }
.lifecycle-shell { overflow: hidden; border: 1px solid #393939; border-radius: 13px; background: #171717; box-shadow: none; }
.lifecycle-top { display: flex; justify-content: space-between; align-items: center; gap: 30px; min-height: 100px; padding: 25px clamp(25px,3vw,42px); border-bottom: 1px solid #383838; background: #1b1b1b; }
.lifecycle-top .panel-kicker { color: #999; font-size: 10px; letter-spacing: .13em; }
.lifecycle-top h3 { margin: 6px 0 0; color: #f1f1f1; font-size: 28px; font-weight: 560; letter-spacing: -.04em; }
.lifecycle-total { display: flex; align-items: center; gap: 15px; color: #d9d9d9; }
.lifecycle-total strong { font-size: 44px; font-weight: 500; line-height: 1; letter-spacing: -.06em; font-variant-numeric: tabular-nums; }
.lifecycle-total > span { display: grid; gap: 3px; font-size: 12px; line-height: 1.25; }
.lifecycle-total small { color: #828282; font-size: 10px; }
.lifecycle-overview { display: grid; grid-template-columns: minmax(0,1fr) auto; gap: 22px 35px; align-items: end; padding: 28px clamp(25px,3vw,42px) 32px; border-bottom: 1px solid #383838; background: #191919; }
.lifecycle-overview-copy > span,.lifecycle-list-head,.lifecycle-detail-head,.lifecycle-period > span,.lifecycle-context > span { color: #909090; font-size: 9px; font-weight: 700; letter-spacing: .14em; }
.lifecycle-overview-copy p { margin: 7px 0 0; color: #c2c2c2; font-size: 13px; line-height: 1.5; }
.lifecycle-overview-stat { display: flex; align-items: baseline; gap: 9px; white-space: nowrap; }.lifecycle-overview-stat strong { color: #f2f2f2; font-size: 27px; font-weight: 520; letter-spacing: -.05em; font-variant-numeric: tabular-nums; }.lifecycle-overview-stat span { color: #929292; font-size: 11px; }
.lifecycle-distribution { display: flex; grid-column: 1/-1; gap: 3px; height: 20px; overflow: hidden; }
.lifecycle-distribution span { display: block; width: var(--share); min-width: 3px; height: 100%; background: #575757; opacity: .64; transition: opacity .45s,background .45s; }
.lifecycle-distribution span:nth-child(2) { background: #777; }.lifecycle-distribution span:nth-child(3) { background: #aaa; }.lifecycle-distribution span:nth-child(4) { background: #666; }.lifecycle-distribution span:nth-child(5) { background: #888; }
.lifecycle-distribution span.is-selected { background: #e9e9e6; opacity: 1; }
.lifecycle-grid { display: grid; grid-template-columns: minmax(0,1.02fr) minmax(0,.98fr); }
.lifecycle-segments { display: flex; flex-direction: column; padding: 20px clamp(25px,3vw,42px) 24px; border-right: 1px solid #383838; background: #171717; }
.lifecycle-list-head { display: flex; justify-content: space-between; padding: 0 30px 15px 39px; border-bottom: 1px solid #343434; }
.lifecycle-segments button { position: relative; display: grid; grid-template-columns: 29px minmax(0,1fr) auto 15px; align-items: center; gap: 10px; width: 100%; min-height: 80px; padding: 11px 12px; border: 0; border-bottom: 1px solid #343434; border-radius: 0; background: transparent; color: #e6e6e6; font: inherit; text-align: left; cursor: pointer; transition: background .3s,color .3s; }
.lifecycle-segments button::before { content: ''; position: absolute; top: 0; bottom: 0; left: 0; width: 2px; background: #eee; transform: scaleY(0); transition: transform .35s cubic-bezier(.2,.8,.2,1); }
.lifecycle-segments button:hover { background: #222; }.lifecycle-segments button.is-selected { background: #252525; }.lifecycle-segments button.is-selected::before { transform: scaleY(1); }
.lifecycle-row-index { color: #777; font-size: 11px; font-variant-numeric: tabular-nums; }.lifecycle-row-label { display: grid; gap: 4px; }.lifecycle-row-label strong { color: #ddd; font-size: 14px; font-weight: 560; }.lifecycle-row-label small { color: #858585; font-size: 11px; line-height: 1.3; }.lifecycle-row-count { color: #d0d0d0; font-size: 26px; font-weight: 480; font-variant-numeric: tabular-nums; letter-spacing: -.05em; }.lifecycle-row-arrow { color: #696969; font-size: 15px; transform: translateX(-4px); opacity: 0; transition: opacity .3s,transform .3s; }
.lifecycle-segments button.is-selected .lifecycle-row-index,.lifecycle-segments button.is-selected .lifecycle-row-label strong,.lifecycle-segments button.is-selected .lifecycle-row-count { color: #fff; }.lifecycle-segments button.is-selected .lifecycle-row-arrow,.lifecycle-segments button:hover .lifecycle-row-arrow { opacity: 1; transform: none; }
.lifecycle-segments button:focus-visible,.lifecycle-campaign button:focus-visible { outline: 2px solid #f1f1f1; outline-offset: -3px; }
.lifecycle-detail { display: flex; flex-direction: column; min-width: 0; padding: 28px clamp(25px,3vw,42px) 34px; background: #1d1d1d; }
.lifecycle-detail-head { display: flex; justify-content: space-between; gap: 14px; padding-bottom: 22px; border-bottom: 1px solid #3b3b3b; }.lifecycle-detail-head span:last-child { color: #a7a7a7; font-size: 10px; font-variant-numeric: tabular-nums; letter-spacing: .08em; }
.lifecycle-detail-number { display: flex; align-items: baseline; gap: 15px; margin: 26px 0 27px; }.lifecycle-detail-number strong { color: #f4f4f4; font-size: clamp(70px,7vw,100px); font-weight: 480; line-height: .9; letter-spacing: -.075em; font-variant-numeric: tabular-nums; }.lifecycle-detail-number span { color: #a8a8a8; font-size: 13px; line-height: 1.4; }.lifecycle-detail-number b { color: #f0f0f0; font-size: 19px; font-weight: 560; text-transform: capitalize; }
.lifecycle-period { display: grid; gap: 9px; padding: 0 0 20px; border-bottom: 1px solid #393939; }.lifecycle-period strong { color: #e1e1e1; font-size: 13px; font-weight: 530; line-height: 1.5; }
.lifecycle-context { padding: 20px 0 25px; }.lifecycle-context p { max-width: 430px; margin: 9px 0 0; color: #b4b4b4; font-size: 12px; line-height: 1.6; }
.lifecycle-campaign { display: flex; align-items: center; justify-content: space-between; gap: 16px; width: 100%; margin-top: auto; padding: 16px 0 0; border: 0; border-top: 1px solid #393939; background: transparent; }.lifecycle-campaign strong,.lifecycle-campaign small { display: block; }.lifecycle-campaign strong { color: #eee; font-size: 13px; font-weight: 560; }.lifecycle-campaign small { margin-top: 5px; color: #919191; font-size: 11px; }.lifecycle-campaign button { display: inline-flex; align-items: center; gap: 8px; flex: 0 0 auto; min-height: 38px; padding: 8px 12px; border: 1px solid #737373; border-radius: 5px; background: transparent; color: #f1f1f1; font: inherit; font-size: 11px; font-weight: 600; cursor: pointer; transition: background .25s,border-color .25s,color .25s; }.lifecycle-campaign button:hover { border-color: #f1f1f1; background: #f1f1f1; color: #171717; }.lifecycle-campaign button .icon { width: 12px; height: 12px; color: currentColor; }
.lifecycle-draft { display: flex; width: 100%; margin-top: 17px; padding: 17px; border: 1px solid #484848; border-radius: 6px; background: #242424; animation: lifeDetailIn .4s ease both; }.lifecycle-draft[hidden] { display: none; }.lifecycle-draft > div { min-width: 0; flex: 1; }.lifecycle-draft small,.lifecycle-draft strong,.lifecycle-draft > div > span { display: block; }.lifecycle-draft small { color: #a4a4a4; font-size: 9px; font-weight: 700; letter-spacing: .12em; }.lifecycle-draft strong { margin-top: 7px; color: #f0f0f0; font-size: 13px; font-weight: 590; }.lifecycle-draft > div > span { margin-top: 5px; color: #a9a9a9; font-size: 11px; line-height: 1.4; }.lifecycle-draft-fields { display: grid; gap: 9px; margin-top: 14px; padding-top: 13px; border-top: 1px solid #414141; }.lifecycle-draft-fields > span { display: grid; grid-template-columns: 92px minmax(0,1fr); gap: 8px; }.lifecycle-draft-fields b { color: #969696; font-size: 10px; font-weight: 500; }.lifecycle-draft-fields em { color: #e0e0e0; font-size: 10px; font-style: normal; line-height: 1.5; }
.lifecycle-shell.is-switching .lifecycle-detail-number,.lifecycle-shell.is-switching .lifecycle-period,.lifecycle-shell.is-switching .lifecycle-context { animation: lifeDetailIn .45s cubic-bezier(.2,.8,.2,1) both; }.lifecycle-shell.is-switching .lifecycle-period { animation-delay: .035s; }.lifecycle-shell.is-switching .lifecycle-context { animation-delay: .07s; }
@keyframes lifeDetailIn { from { opacity: .45; transform: translateY(6px); } to { opacity: 1; transform: none; } }
@media (max-width: 760px) { .lifecycle-grid { grid-template-columns: 1fr; }.lifecycle-segments { border-right: 0; border-bottom: 1px solid #383838; }.lifecycle-detail { min-height: 0; }.lifecycle-overview { grid-template-columns: 1fr; gap: 13px; }.lifecycle-overview-stat { order: 2; }.lifecycle-distribution { order: 1; grid-column: 1; } }
@media (max-width: 540px) { .lifecycle-top { align-items: flex-start; flex-direction: column; gap: 18px; padding: 23px; }.lifecycle-top h3 { font-size: 26px; }.lifecycle-total strong { font-size: 37px; }.lifecycle-overview { padding: 23px; }.lifecycle-overview-stat { white-space: normal; }.lifecycle-distribution { height: 16px; }.lifecycle-segments { padding: 15px 20px 19px; }.lifecycle-list-head { padding-left: 39px; }.lifecycle-segments button { min-height: 73px; gap: 7px; }.lifecycle-row-label strong { font-size: 13px; }.lifecycle-row-label small { font-size: 10px; }.lifecycle-row-count { font-size: 23px; }.lifecycle-detail { padding: 24px 23px 29px; }.lifecycle-detail-number { margin: 24px 0; }.lifecycle-detail-number strong { font-size: 78px; }.lifecycle-campaign { align-items: flex-start; flex-direction: column; }.lifecycle-campaign button { width: 100%; justify-content: center; }.lifecycle-draft-fields > span { grid-template-columns: 1fr; gap: 2px; } }
@media (prefers-reduced-motion: reduce) { .lifecycle-shell *, .lifecycle-shell *::before, .lifecycle-shell *::after { animation: none !important; transition: none !important; } }
.stories-paused .lifecycle-shell *, .stories-paused .lifecycle-shell *::before, .stories-paused .lifecycle-shell *::after { animation-play-state: paused !important; }

/* Atendimento: a source transcript and an evidence-led review. */
.partners-page .service-evaluation-section { border-top: 1px solid #292929; background: #0c0c0c; scroll-margin-top: 85px; }
.service-evaluation-section .feature-intro h2 span { color: #e7e7e7; }
.service-evaluation-shell { --evaluation-progress: 20%; overflow: hidden; border: 1px solid #393939; border-radius: 13px; background: #171717; box-shadow: none; }
.service-evaluation-top { display: flex; align-items: center; justify-content: space-between; gap: 24px; min-height: 83px; padding: 19px clamp(25px,3vw,42px); border-bottom: 1px solid #383838; background: #1b1b1b; }
.service-evaluation-top > div { display: grid; gap: 5px; }
.service-evaluation-top > div > span,.service-evaluation-state { color: #929292; font-size: 9px; font-weight: 700; letter-spacing: .13em; }
.service-evaluation-top strong { color: #f0f0f0; font-size: 22px; font-weight: 540; letter-spacing: -.035em; }
.service-evaluation-state { white-space: nowrap; }.service-evaluation-state i,.service-evaluation-foot i { padding-inline: 5px; color: #6a6a6a; font-style: normal; }
.service-evaluation-grid { display: grid; grid-template-columns: minmax(0,.84fr) minmax(0,1.16fr); }
.service-evaluation-source { display: flex; flex-direction: column; min-width: 0; padding: 27px clamp(25px,3vw,42px) 31px; border-right: 1px solid #383838; background: #171717; }
.service-evaluation-source-head,.service-evaluation-report-head > div > span,.service-evaluation-summary > span,.service-evaluation-tabs-head,.service-evaluation-insight-heading,.service-evaluation-next > span,.service-evaluation-source-note > span { color: #929292; font-size: 9px; font-weight: 700; letter-spacing: .13em; }
.service-evaluation-source-head { display: flex; justify-content: space-between; gap: 15px; padding-bottom: 18px; border-bottom: 1px solid #383838; }.service-evaluation-source-head span:last-child { color: #b6b6b6; }
.service-evaluation-person { display: flex; align-items: center; gap: 11px; margin: 23px 0 8px; }.service-evaluation-person .capture-avatar { flex: 0 0 auto; width: 35px; height: 35px; border: 1px solid #656565; background: #333; color: #e8e8e8; font-size: 11px; }.service-evaluation-person > span:nth-child(2) { min-width: 0; }.service-evaluation-person strong,.service-evaluation-person small { display: block; }.service-evaluation-person strong { color: #e9e9e9; font-size: 13px; font-weight: 580; }.service-evaluation-person small { margin-top: 3px; color: #929292; font-size: 11px; line-height: 1.35; }.service-evaluation-person-time { margin-left: auto; color: #797979; font-size: 10px; white-space: nowrap; font-variant-numeric: tabular-nums; }
.service-evaluation-chat { display: grid; align-content: start; gap: 9px; flex: 1; padding: 14px 0 27px; }.service-evaluation-bubble { width: 100%; padding: 16px 17px 16px 18px; border: 1px solid #373737; border-left: 2px solid #555; border-radius: 2px; background: #1c1c1c; color: #c9c9c9; transition: background .4s,border-color .4s,color .4s; }.service-evaluation-bubble.is-clinic { background: #1c1c1c; }.service-evaluation-bubble.is-evidence { border-color: #777; border-left-color: #ededed; background: #252525; color: #f0f0f0; }.service-evaluation-bubble small { display: block; margin-bottom: 10px; color: #9a9a9a; font-size: 9px; font-weight: 700; letter-spacing: .09em; }.service-evaluation-bubble p { margin: 0; color: inherit; font-size: 13px; line-height: 1.6; }
.service-evaluation-source-note { margin-top: auto; padding-top: 18px; border-top: 1px solid #383838; }.service-evaluation-source-note p { max-width: 330px; margin: 6px 0 0; color: #a6a6a6; font-size: 12px; line-height: 1.55; }
.service-evaluation-report { display: flex; flex-direction: column; min-width: 0; padding: 27px clamp(25px,3vw,42px) 31px; background: #1d1d1d; }.service-evaluation-report-head { display: flex; justify-content: space-between; align-items: center; gap: 20px; }.service-evaluation-report-head > div { display: grid; gap: 7px; }.service-evaluation-report-head strong { color: #efefef; font-size: 22px; font-weight: 540; letter-spacing: -.035em; }.service-evaluation-report-head > span { color: #898989; font-size: 9px; font-weight: 650; letter-spacing: .1em; white-space: nowrap; }
.service-evaluation-summary { margin-top: 22px; padding: 18px 0 21px; border-top: 1px solid #3b3b3b; border-bottom: 1px solid #3b3b3b; }.service-evaluation-summary p { max-width: 630px; margin: 8px 0 0; color: #c7c7c7; font-size: 13px; line-height: 1.65; }
.service-evaluation-analysis { display: grid; grid-template-columns: minmax(185px,.43fr) minmax(0,.57fr); margin-top: 22px; min-height: 360px; border: 1px solid #424242; }.service-evaluation-tabs { display: flex; flex-direction: column; min-width: 0; border-right: 1px solid #424242; background: #1b1b1b; }.service-evaluation-tabs-head { display: flex; justify-content: space-between; gap: 10px; min-height: 48px; padding: 17px 16px 13px; border-bottom: 1px solid #393939; }.service-evaluation-tabs-head span { color: #777; font-variant-numeric: tabular-nums; }
.service-evaluation-tabs button { position: relative; display: flex; align-items: center; gap: 11px; width: 100%; flex: 1; min-height: 58px; padding: 12px 13px 12px 16px; border: 0; border-bottom: 1px solid #353535; border-radius: 0; background: transparent; color: #b7b7b7; font: inherit; font-size: 12px; font-weight: 560; text-align: left; cursor: pointer; transition: background .3s,color .3s; }.service-evaluation-tabs button:last-child { border-bottom: 0; }.service-evaluation-tabs button::before { content: ''; position: absolute; top: 0; bottom: 0; left: 0; width: 2px; background: #ededed; transform: scaleY(0); transition: transform .35s cubic-bezier(.2,.8,.2,1); }.service-evaluation-tabs button:hover { background: #222; color: #e5e5e5; }.service-evaluation-tabs button.is-selected { background: #292929; color: #fff; }.service-evaluation-tabs button.is-selected::before { transform: scaleY(1); }.service-evaluation-tabs button i { flex: 0 0 auto; color: #777; font-size: 10px; font-style: normal; font-variant-numeric: tabular-nums; }.service-evaluation-tabs button span { flex: 1; line-height: 1.3; }.service-evaluation-tabs button em { color: #777; font-size: 14px; font-style: normal; opacity: 0; transform: translateX(-4px); transition: opacity .3s,transform .3s; }.service-evaluation-tabs button:hover em,.service-evaluation-tabs button.is-selected em { opacity: 1; transform: none; }.service-evaluation-tabs button.is-selected i { color: #d2d2d2; }.service-evaluation-tabs button:focus-visible { outline: 2px solid #f1f1f1; outline-offset: -3px; }
.service-evaluation-insight { display: flex; flex-direction: column; min-width: 0; padding: 27px clamp(22px,2.4vw,33px) 25px; background: #222; }.service-evaluation-insight-heading { display: flex; justify-content: space-between; gap: 14px; }.service-evaluation-insight-heading span:last-child { color: #777; font-variant-numeric: tabular-nums; }.service-evaluation-insight h3 { margin: 19px 0 10px; color: #f1f1f1; font-size: clamp(21px,2vw,28px); font-weight: 540; line-height: 1.16; letter-spacing: -.04em; }.service-evaluation-insight > p { margin: 0; color: #bdbdbd; font-size: 13px; line-height: 1.6; }.service-evaluation-insight blockquote { margin: 21px 0; padding: 13px 0 13px 15px; border-left: 2px solid #a8a8a8; color: #dfdfdf; font-size: 13px; font-style: normal; line-height: 1.55; }.service-evaluation-next { margin-top: auto; padding-top: 16px; border-top: 1px solid #424242; }.service-evaluation-next p { margin: 7px 0 0; color: #e5e5e5; font-size: 13px; line-height: 1.55; }
.service-evaluation-progress { height: 2px; margin-top: 22px; background: #414141; }.service-evaluation-progress span { display: block; width: var(--evaluation-progress); height: 100%; background: #ececec; transition: width .65s cubic-bezier(.2,.8,.2,1); }
.service-evaluation-foot { display: flex; align-items: center; justify-content: space-between; gap: 15px; min-height: 60px; padding: 14px clamp(25px,3vw,42px); border-top: 1px solid #383838; background: #191919; color: #a1a1a1; font-size: 10px; }.service-evaluation-foot > span:first-child { font-size: 9px; font-weight: 700; letter-spacing: .12em; }.service-evaluation-foot > span:last-child { color: #c7c7c7; }
.service-evaluation-shell.is-switching .service-evaluation-insight > * { animation: evaluationReveal .5s cubic-bezier(.2,.8,.2,1) both; }.service-evaluation-shell.is-switching .service-evaluation-insight > :nth-child(2) { animation-delay: .035s; }.service-evaluation-shell.is-switching .service-evaluation-insight > :nth-child(3) { animation-delay: .07s; }.service-evaluation-shell.is-switching .service-evaluation-insight > :nth-child(4) { animation-delay: .105s; }.service-evaluation-shell.is-switching .service-evaluation-insight > :nth-child(5) { animation-delay: .14s; }
@keyframes evaluationReveal { from { opacity: .45; transform: translateY(7px); } to { opacity: 1; transform: none; } }
@media (max-width: 1000px) { .service-evaluation-grid { grid-template-columns: 1fr; }.service-evaluation-source { border-right: 0; border-bottom: 1px solid #383838; }.service-evaluation-chat { grid-template-columns: repeat(2,minmax(0,1fr)); }.service-evaluation-report { min-height: 0; } }
@media (max-width: 760px) { .partners-page .service-evaluation-section { padding-block: 75px; }.service-evaluation-analysis { grid-template-columns: 1fr; }.service-evaluation-tabs { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); border-right: 0; border-bottom: 1px solid #424242; }.service-evaluation-tabs-head { grid-column: 1/-1; }.service-evaluation-tabs button { min-height: 54px; border-right: 1px solid #353535; }.service-evaluation-tabs button:last-child { grid-column: 1/-1; }.service-evaluation-insight { min-height: 310px; } }
@media (max-width: 540px) { .service-evaluation-top { align-items: flex-start; flex-direction: column; gap: 12px; padding: 21px; }.service-evaluation-top strong { font-size: 20px; }.service-evaluation-state { font-size: 8px; }.service-evaluation-source,.service-evaluation-report { padding: 22px; }.service-evaluation-person-time { display: none; }.service-evaluation-chat { grid-template-columns: 1fr; }.service-evaluation-report-head { align-items: flex-start; flex-direction: column; gap: 11px; }.service-evaluation-report-head strong { font-size: 21px; }.service-evaluation-tabs button { gap: 7px; padding: 10px; font-size: 11px; }.service-evaluation-insight { padding: 23px; }.service-evaluation-foot { align-items: flex-start; flex-direction: column; gap: 5px; padding: 16px 22px; } }
@media (prefers-reduced-motion: reduce) { .service-evaluation-shell *, .service-evaluation-shell *::before, .service-evaluation-shell *::after { animation: none !important; transition: none !important; } }
.stories-paused .service-evaluation-shell *, .stories-paused .service-evaluation-shell *::before, .stories-paused .service-evaluation-shell *::after { animation-play-state: paused !important; }

/* Partner hero: one commercial promise, one connected product story. */
.partner-hero { padding-top: 160px; background: #0c0c0c; }
.hero-layout { grid-template-columns: minmax(0,.94fr) minmax(0,1.06fr); gap: clamp(46px,5vw,80px); align-items: center; }
.hero-copy { min-width: 0; }
.hero-copy .eyebrow { margin-bottom: 27px; }
.hero-copy h1 { display: grid; gap: 2px; margin: 0 0 28px; color: #f2f2f2; font-size: clamp(52px,4.7vw,70px); font-weight: 560; line-height: .99; letter-spacing: -.063em; }
.hero-title-line { display: block; }
.hero-copy h1 .hero-title-accent { color: #b7bcc0; background: none; -webkit-text-fill-color: currentColor; }
.hero-description { max-width: 535px; margin: 0 0 29px; color: #bcbcbc; font-size: 16px; line-height: 1.65; }
.hero-actions { gap: 10px; }
.hero-actions .btn { min-height: 51px; padding-inline: 20px; }
.hero-commercial { display: flex; align-items: center; gap: 17px; margin-top: 38px; padding: 20px; border-top: 1px solid #353535; border-bottom: 1px solid #353535; }
.hero-commercial > strong { flex: 0 0 auto; color: #f1f1f1; font-size: 42px; font-weight: 500; line-height: 1; letter-spacing: -.065em; font-variant-numeric: tabular-nums; }
.hero-commercial > strong span { padding-inline: 2px; color: #7f7f7f; font-size: .65em; }
.hero-commercial > strong small { margin-left: 2px; font-size: .54em; font-weight: 540; }
.hero-commercial > div { display: grid; gap: 2px; min-width: 0; }.hero-commercial b { color: #e1e1e1; font-size: 12px; font-weight: 550; line-height: 1.35; }.hero-commercial > div span { color: #8f8f8f; font-size: 10px; line-height: 1.35; }
.hero-commercial > a { display: inline-flex; align-items: center; gap: 7px; flex: 0 0 auto; margin-left: auto; color: #c9c9c9; font-size: 11px; white-space: nowrap; }.hero-commercial > a:hover { color: #fff; }.hero-commercial > a .icon { width: 13px; height: 13px; transition: transform .25s; }.hero-commercial > a:hover .icon { transform: translateX(3px); }
.hero-terms { margin: 14px 0 0; color: #8f8f8f; font-size: 11px; }.hero-terms span { padding-inline: 6px; color: #626262; }
.hero-product { width: 100%; max-width: none; margin: 0; }
.hero-product .demo-caption { margin-bottom: 14px; font-size: 9px; }.hero-product .demo-caption i { color: #666; font-style: normal; }
.hero-case { overflow: hidden; border: 1px solid #494949; border-radius: 13px; background: #191919; box-shadow: 0 24px 64px rgba(0,0,0,.2); }
.hero-case-top { display: flex; align-items: center; justify-content: space-between; gap: 20px; min-height: 72px; padding: 17px 23px; border-bottom: 1px solid #393939; background: #202020; }
.hero-case-top > div { display: grid; gap: 4px; }.hero-case-top > div > span,.hero-case-top-index { color: #929292; font-size: 9px; font-weight: 650; letter-spacing: .11em; }.hero-case-top i { padding-inline: 3px; color: #5e5e5e; font-style: normal; }.hero-case-top strong { color: #ececec; font-size: 18px; font-weight: 550; letter-spacing: -.035em; }.hero-case-top-index { white-space: nowrap; }
.hero-case-person { display: flex; align-items: center; gap: 11px; min-height: 76px; padding: 16px 23px; border-bottom: 1px solid #363636; }.hero-case-person img { display: block; flex: 0 0 auto; width: 42px; height: 42px; border-radius: 50%; object-fit: cover; }.hero-case-person > div { display: grid; gap: 3px; min-width: 0; }.hero-case-person strong { color: #e9e9e9; font-size: 13px; font-weight: 590; }.hero-case-person > div span { color: #9c9c9c; font-size: 11px; line-height: 1.35; }.hero-case-status { flex: 0 0 auto; margin-left: auto; padding: 5px 8px; border: 1px solid #4c4c4c; border-radius: 4px; color: #c8c8c8; font-size: 9px; white-space: nowrap; }
.hero-case-body { padding: 19px 23px 18px; }.hero-case-heading { display: flex; justify-content: space-between; gap: 16px; padding-bottom: 10px; color: #999; font-size: 9px; font-weight: 700; letter-spacing: .11em; }.hero-case-heading span:last-child { color: #c8c8c8; font-variant-numeric: tabular-nums; }
.hero-case-timeline { position: relative; }.hero-case-track { position: absolute; z-index: 0; top: 18px; bottom: 26px; left: 16px; width: 1px; background: #444; }.hero-case-track > span { display: block; width: 100%; height: calc(var(--hero-progress,1) * 100%); background: #e4e4e4; transition: height .75s cubic-bezier(.2,.8,.2,1); }
.hero-case-timeline ol { position: relative; z-index: 1; margin: 0; padding: 0; list-style: none; }.hero-case-timeline li { display: grid; grid-template-columns: 33px minmax(0,1fr); gap: 16px; align-items: start; min-height: 79px; padding: 10px 12px 10px 0; border-top: 1px solid #363636; color: #a1a1a1; transition: background .35s,color .35s; }.hero-case-timeline li:last-child { border-bottom: 1px solid #363636; }.hero-case-timeline li.is-active { background: #262626; color: #ededed; }
.hero-case-number { display: grid; place-items: center; width: 32px; height: 32px; border: 1px solid #5a5a5a; border-radius: 50%; background: #1c1c1c; color: #a8a8a8; font-size: 10px; font-weight: 650; font-variant-numeric: tabular-nums; transition: border-color .35s,background .35s,color .35s; }.hero-case-timeline li.is-complete .hero-case-number { border-color: #aaa; color: #dedede; }.hero-case-timeline li.is-active .hero-case-number { border-color: #eee; background: #eee; color: #202020; }
.hero-case-timeline li > div { min-width: 0; padding-top: 1px; }.hero-case-timeline small,.hero-case-timeline strong,.hero-case-timeline p { display: block; }.hero-case-timeline small { color: #8f8f8f; font-size: 8px; font-weight: 650; letter-spacing: .1em; line-height: 1.4; }.hero-case-timeline strong { margin-top: 3px; color: #d0d0d0; font-size: 13px; font-weight: 570; line-height: 1.35; }.hero-case-timeline p { margin: 1px 0 0; color: #8f8f8f; font-size: 10px; line-height: 1.35; }.hero-case-timeline li.is-active small { color: #b3b3b3; }.hero-case-timeline li.is-active strong { color: #f4f4f4; }.hero-case-timeline li.is-active p { color: #b9b9b9; }.hero-case-timeline li.is-active > div { animation: heroCaseIn .55s cubic-bezier(.2,.8,.2,1) both; }
.hero-case-foot { display: flex; align-items: center; justify-content: space-between; gap: 14px; min-height: 48px; padding: 12px 23px; border-top: 1px solid #393939; background: #202020; color: #aaa; font-size: 10px; }.hero-case-foot i { padding-inline: 4px; color: #777; font-style: normal; }.hero-case-foot span:last-child { color: #d0d0d0; white-space: nowrap; }
.hero-demo-note { position: static; margin: 10px 0 0; color: #7f7f7f; font-size: 9px; text-align: right; }
.partner-strip { grid-template-columns: repeat(3,minmax(0,1fr)); gap: 42px; margin-top: 75px; padding-block: 30px 35px; }.partner-strip > div { min-width: 0; }.partner-strip > div > span { display: block; margin: 0 0 8px; color: #858585; font-size: 9px; font-weight: 700; letter-spacing: .12em; }.partner-strip > div > strong { display: block; color: #e5e5e5; font-size: 16px; font-weight: 560; line-height: 1.3; letter-spacing: -.025em; }.partner-strip > div > p { max-width: 290px; margin: 6px 0 0; color: #a2a2a2; font-size: 11px; line-height: 1.55; }
@keyframes heroCaseIn { from { opacity: .45; transform: translateY(7px); } to { opacity: 1; transform: none; } }
@keyframes heroRise { from { opacity: 0; transform: translateY(15px); } to { opacity: 1; transform: none; } }
.hero-copy .eyebrow,.hero-title-line,.hero-description,.hero-actions,.hero-commercial,.hero-terms,.hero-product { animation: heroRise .85s cubic-bezier(.2,.8,.2,1) both; }.hero-title-line:first-child { animation-delay: .06s; }.hero-title-line:last-child { animation-delay: .14s; }.hero-description { animation-delay: .22s; }.hero-actions { animation-delay: .3s; }.hero-commercial,.hero-product { animation-delay: .37s; }.hero-terms { animation-delay: .43s; }

@media (max-width: 1050px) { .hero-layout { gap: 42px; }.hero-commercial { flex-wrap: wrap; }.hero-commercial > a { margin-left: 0; } }
@media (max-width: 980px) { .hero-layout { grid-template-columns: 1fr; gap: 39px; }.hero-copy { max-width: 680px; }.hero-copy h1 { font-size: clamp(55px,7vw,73px); }.hero-product { max-width: 680px; margin-inline: 0; }.partner-strip { gap: 27px; } }
@media (max-width: 760px) { .partner-hero { padding-top: 126px; }.hero-copy h1 { font-size: clamp(46px,8.2vw,64px); }.hero-description { font-size: 15px; }.hero-product { max-width: 620px; }.partner-strip { grid-template-columns: 1fr; gap: 0; margin-top: 54px; padding-block: 0; }.partner-strip > div { padding-block: 19px; border-bottom: 1px solid #303030; }.partner-strip > div:last-child { border-bottom: 0; }.partner-strip > div > p { max-width: 480px; } }
@media (max-width: 540px) { .hero-layout { gap: 31px; }.hero-copy .eyebrow { margin-bottom: 23px; }.hero-copy h1 { font-size: clamp(41px,10.8vw,48px); line-height: 1.01; margin-bottom: 22px; }.hero-description { margin-bottom: 23px; font-size: 14px; }.hero-actions { display: grid; grid-template-columns: 1fr; }.hero-actions .btn { justify-content: space-between; min-height: 48px; }.hero-commercial { display: grid; grid-template-columns: auto 1fr; gap: 8px 14px; margin-top: 26px; padding: 17px 14px; }.hero-commercial > strong { font-size: 37px; }.hero-commercial > a { grid-column: 1/-1; margin: 5px 0 0; }.hero-case-top { padding: 15px 16px; }.hero-case-top-index { display: none; }.hero-case-person { gap: 9px; padding: 13px 16px; }.hero-case-person img { width: 37px; height: 37px; }.hero-case-person strong { font-size: 12px; }.hero-case-person > div span { font-size: 10px; }.hero-case-status { font-size: 8px; padding: 4px 5px; }.hero-case-body { padding: 15px 16px; }.hero-case-timeline li { min-height: 77px; gap: 10px; }.hero-case-timeline strong { font-size: 12px; }.hero-case-timeline p { font-size: 9px; }.hero-case-foot { gap: 7px; padding: 11px 16px; font-size: 9px; }.hero-case-foot span:last-child { white-space: normal; text-align: right; }.partner-strip { margin-top: 46px; } }
@media (prefers-reduced-motion: reduce) { .hero-copy .eyebrow,.hero-title-line,.hero-description,.hero-actions,.hero-commercial,.hero-terms,.hero-product,.hero-case-timeline li.is-active > div { animation: none !important; }.hero-case-track > span,.hero-case-timeline li,.hero-case-number { transition: none !important; } }

/* Hero story: ten connected scenes, with a persistent frame and patient. */
.hj-shell { overflow: hidden; border: 1px solid #484848; border-radius: 14px; background: #181818; box-shadow: 0 30px 70px #0004; }
.hj-top { display:flex;align-items:center;gap:13px;min-height:76px;padding:18px 25px;border-bottom:1px solid #373737;background:#202020; }
.hj-top > img { object-fit:contain; }.hj-top > span:nth-child(2) { color:#999;font-size:9px;letter-spacing:.1em; }.hj-top small { display:block;margin-top:5px;color:#e4e4e4;font-size:13px;letter-spacing:-.02em; }.hj-live { margin-left:auto;color:#999;font-size:8px;letter-spacing:.09em; }
.hj-stage { display:grid; isolation:isolate; background:linear-gradient(135deg,#20202000,#ffffff03); }
.hj-scene { grid-area:1/1; display:flex;flex-direction:column;min-width:0;padding:27px 26px 20px;opacity:0;visibility:hidden;transform:translateY(9px);transition:opacity .4s,transform .55s cubic-bezier(.2,.8,.2,1),visibility .4s;pointer-events:none; }
.hj-scene.is-active { z-index:1;opacity:1;visibility:visible;transform:none;pointer-events:auto; }
.hj-scene header { min-height:82px; }.hj-kicker { display:block;color:#aaa;font-size:9px;font-weight:600;letter-spacing:.13em; }.hj-scene h2 { margin:11px 0 0;color:#f0f0f0;font-size:clamp(23px,2vw,29px);font-weight:550;line-height:1.14;letter-spacing:-.045em; }
.hj-visual { display:flex;align-items:center;justify-content:center;min-width:0;height:315px;position:relative; }.hj-caption { min-height:44px;margin:18px 0 0;color:#aaa;font-size:12px;line-height:1.55;max-width:450px; }
.hj-paper,.hj-chat { width:100%;border:1px solid #464646;border-radius:10px;background:#222;box-shadow:0 12px 28px #0002;overflow:hidden; }.hj-paper { padding:21px; }.hj-paper-label { padding-bottom:15px;border-bottom:1px solid #414141;color:#a8a8a8;font-size:9px;font-weight:600;letter-spacing:.1em; }
.hj-field { display:flex;justify-content:space-between;align-items:center;gap:15px;min-height:39px;border-bottom:1px solid #373737;font-size:12px; }.hj-field > span { color:#999; }.hj-field strong { color:#e2e2e2;font-size:12px;font-weight:500;text-align:right; }
.hj-contact { display:flex;align-items:center;gap:12px;margin:17px 0 10px; }.hj-contact img { border-radius:50%;object-fit:cover; }.hj-contact strong,.hj-contact span { display:block; }.hj-contact strong { color:#eee;font-size:17px;font-weight:550;letter-spacing:-.025em; }.hj-contact span { margin-top:3px;color:#999;font-size:10px; }
.hj-result { display:flex;align-items:center;gap:8px;margin-top:15px;color:#9ec6b4;font-size:11px;line-height:1.4; }.hj-result .icon { flex-shrink:0;width:16px;height:16px; }
.hj-chat { position:relative;height:290px;display:flex;flex-direction:column;padding:0 18px 15px;background:#1b1b1b; }.hj-chat-head { display:flex;align-items:center;gap:10px;margin-inline:-18px;padding:15px 18px;border-bottom:1px solid #3b3b3b;background:#262626;color:#ddd;font-size:12px; }.hj-chat-head > .icon { width:27px;height:27px; }.hj-chat-head small { display:block;margin-top:2px;color:#939393;font-size:9px; }.hj-origin { align-self:center;margin-top:17px;color:#999;font-size:10px; }.hj-origin span { padding-inline:10px; }.hj-bubble { align-self:flex-end;max-width:87%;margin-top:auto;padding:13px 15px;border:1px solid #40594d;border-radius:10px 10px 2px 10px;background:#283a31;color:#e4e9e6;font-size:13px;line-height:1.5; }.hj-bubble small { display:block;margin-top:5px;text-align:right;font-size:9px;color:#a4b8ab; }
.hj-compose { display:flex;align-items:center;gap:10px;margin-top:15px;min-height:30px;padding:7px 10px;border:1px solid #454545;border-radius:6px;color:#a5a5a5;font-size:10px; }.hj-compose > span { overflow:hidden;white-space:nowrap; }.hj-compose .icon { margin-left:auto;width:15px;height:15px;flex-shrink:0; }.hj-typing { position:absolute;right:20px;top:127px;display:flex;gap:4px;padding:12px;background:#333;border-radius:12px;opacity:0; }.hj-typing i { width:4px;height:4px;border-radius:50%;background:#bbb; }
.hj-quote { margin:15px 0;padding:2px 0 2px 13px;border-left:2px solid #777;color:#d2d2d2;font-size:13px;line-height:1.6; }.hj-quote mark { color:#eee;background:#444;padding:2px 3px; }.hj-quote cite { display:block;margin-top:9px;color:#999;font-style:normal;font-size:10px; }.hj-next { display:grid;gap:7px;margin-top:17px;padding:13px;background:#2d2d2d;border:1px solid #494949;border-radius:6px; }.hj-next small { color:#aaa;font-size:8px;letter-spacing:.1em; }.hj-next strong { color:#e5e5e5;font-size:12px;font-weight:500;line-height:1.5; }
.hj-push-flow { position:relative;width:100%;height:100%;display:flex;align-items:center; }.hj-device { position:relative;flex:0 0 63%;height:310px;padding:33px 12px 18px;border:3px solid #6b6b6b;border-radius:30px;background:linear-gradient(155deg,#212121,#363636);box-shadow:0 18px 25px #0004; }.hj-island { position:absolute;top:9px;left:35%;width:30%;height:13px;border-radius:20px;background:#101010; }.hj-device-time { color:#ececec;font-size:48px;font-weight:350;line-height:1.2;text-align:center;letter-spacing:-.065em; }.hj-device-label { display:block;margin-top:2px;text-align:center;color:#a6a6a6;font-size:8px;letter-spacing:.1em; }.hj-push { margin-top:21px;padding:13px;border:1px solid #777;border-radius:13px;background:#525252;box-shadow:0 12px 20px #0003; }.hj-push > div { display:flex;align-items:center;gap:6px;color:#eee;font-size:8px; }.hj-push img { width:17px;height:20px;object-fit:contain; }.hj-push small { margin-left:auto;color:#c1c1c1;font-size:8px; }.hj-push > strong { display:block;margin-top:10px;color:#fff;font-size:13px;font-weight:550;line-height:1.3; }.hj-push p { margin:5px 0 0;color:#d1d1d1;font-size:11px;line-height:1.45; }.hj-home { position:absolute;bottom:9px;left:35%;width:30%;height:3px;background:#aaa;border-radius:10px; }
.hj-push-destination { z-index:2;flex:0 0 58%;margin-left:-21%;margin-top:100px;padding:15px;background:#262626;box-shadow:0 15px 35px #0008; }.hj-push-destination .hj-paper-label { font-size:8px;padding-bottom:10px; }.hj-push-destination .hj-field { font-size:10px;gap:7px; }.hj-push-destination .hj-field strong { font-size:10px; }.hj-push-destination .hj-result { font-size:10px; }.hj-mini-message { padding:11px 0;color:#eee;font-size:13px;line-height:1.4; }.hj-mini-message small { display:block;margin-top:6px;color:#aaa;font-size:9px; }
.hj-booking { display:flex;align-items:center;gap:22px;padding:24px 0; }.hj-booking > div { flex:0 0 77px;padding:9px 8px;border:1px solid #626262;border-radius:7px;background:#333;text-align:center; }.hj-booking > div small,.hj-booking > div span { display:block;color:#bbb;font-size:8px;letter-spacing:.12em; }.hj-booking > div strong { display:block;margin:3px 0;color:#eee;font-size:43px;font-weight:450;line-height:1.1; }.hj-booking section > span { color:#ddd;font-size:11px;font-variant-numeric:tabular-nums; }.hj-booking section strong { display:block;margin:6px 0;color:#eee;font-size:17px;font-weight:500;line-height:1.3;letter-spacing:-.02em; }.hj-booking section small { color:#999;font-size:10px; }
.hj-review-row { display:flex;align-items:center;gap:10px;padding:15px 0;border-bottom:1px solid #404040; }.hj-review-row > span { align-self:flex-start;color:#888;font-size:10px; }.hj-review-row small { display:block;color:#aaa;font-size:8px;letter-spacing:.08em; }.hj-review-row strong { display:block;margin-top:5px;color:#e6e6e6;font-size:12px;font-weight:500; }.hj-review-row .icon { margin-left:auto;color:#a3c6b5;width:17px;height:17px; }
.hj-arrival { display:grid;justify-items:center;gap:10px;padding:20px 0; }.hj-check-large { display:grid;place-items:center;width:58px;height:58px;border:1px solid #658272;border-radius:50%;background:#2c3931;color:#b0d5bf; }.hj-check-large .icon { width:29px;height:29px; }.hj-arrival > strong { color:#eee;font-size:27px;font-weight:500;letter-spacing:-.04em; }.hj-arrival > span:last-child { color:#aaa;font-size:11px; }.hj-attendance { display:flex;justify-content:space-between;align-items:center;gap:5px;padding:11px 0;border-block:1px solid #414141;font-size:10px;color:#aaa; }.hj-attendance i { font-style:normal;color:#777; }.hj-attendance strong { color:#b6d4c4;font-weight:500; }
.hj-followup-head { display:flex;align-items:center;gap:11px;padding-top:17px; }.hj-followup-head > .icon { width:26px;height:26px;flex-shrink:0;color:#ccc; }.hj-followup-head strong { display:block;color:#eee;font-size:15px;font-weight:550;line-height:1.3; }.hj-followup-head span { display:block;margin-top:4px;color:#999;font-size:9px; }
.hj-overview { width:100%;display:grid;grid-template-columns:1fr 1fr;border:1px solid #484848;border-radius:9px;overflow:hidden; }.hj-overview > div { display:flex;align-items:center;gap:9px;min-height:96px;padding:15px;border-bottom:1px solid #414141;background:#242424; }.hj-overview > div:nth-child(odd) { border-right:1px solid #414141; }.hj-overview > div:nth-last-child(-n+2) { border-bottom:0; }.hj-overview > div > span { align-self:flex-start;color:#888;font-size:9px; }.hj-overview section { min-width:0; }.hj-overview strong { display:block;color:#e5e5e5;font-size:12px;font-weight:550; }.hj-overview small { display:block;margin-top:5px;color:#a2a2a2;font-size:10px;line-height:1.4; }.hj-overview .icon { width:13px;height:13px;flex-shrink:0;color:#9bb5a7;margin-left:auto; }
.hj-controls { padding:0 25px 12px;border-top:1px solid #373737;background:#202020; }.hj-segments { display:grid;grid-template-columns:repeat(10,minmax(0,1fr));gap:5px; }.hj-segments button { position:relative;min-width:0;height:30px;padding:0;border:0;background:none;cursor:pointer; }.hj-segments button::before,.hj-segments button span { position:absolute;top:14px;left:0;width:100%;height:2px;background:#505050; }.hj-segments button::before { content:''; }.hj-segments button span { transform:scaleX(0);transform-origin:left;background:#eee; }.hj-segments button.is-complete span { transform:scaleX(1);background:#929292; }.hj-segments button[aria-pressed="true"] span { transform:scaleX(1); }.hj-controls-bottom { display:flex;justify-content:space-between;align-items:center;gap:10px;color:#aaa;font-size:10px;font-variant-numeric:tabular-nums; }.hj-controls-bottom > div { display:flex;gap:6px; }.hj-controls-bottom button { display:grid;place-items:center;width:32px;height:32px;border:1px solid #535353;border-radius:5px;background:#292929;color:#ddd;cursor:pointer; }.hj-controls-bottom button:hover { background:#404040;color:#fff; }.hj-controls-bottom .icon { width:15px;height:15px; }[data-hero-prev] .icon { transform:rotate(180deg); }.hero-journey button:focus-visible { outline:2px solid #eee;outline-offset:3px; }
/* Micro-sequences restart only when their scene becomes active. */
.hero-journey .hj-segments button[aria-pressed="true"] span { animation:hjProgress var(--scene-duration,5s) linear both; }
.hj-scene.is-active .hj-paper > *,.hj-scene.is-active .hj-overview > div { animation:hjReveal .65s cubic-bezier(.2,.8,.2,1) both; }
.hj-scene.is-active .hj-paper > :nth-child(2),.hj-scene.is-active .hj-overview > :nth-child(2) { animation-delay:.3s; }.hj-scene.is-active .hj-paper > :nth-child(3),.hj-scene.is-active .hj-overview > :nth-child(3) { animation-delay:.55s; }.hj-scene.is-active .hj-paper > :nth-child(4),.hj-scene.is-active .hj-overview > :nth-child(4) { animation-delay:.8s; }.hj-scene.is-active .hj-paper > :nth-child(5),.hj-scene.is-active .hj-overview > :nth-child(5) { animation-delay:1.05s; }.hj-scene.is-active .hj-overview > :nth-child(6) { animation-delay:1.3s; }
.hj-scene.is-active .hj-message-arrives { animation:hjMessage .65s 1.35s cubic-bezier(.2,.8,.2,1) both; }.hj-scene.is-active .hj-typing { animation:hjTyping 1.4s both; }.hj-scene.is-active .hj-typing i { animation:captureDot .65s 2; }.hj-scene.is-active .hj-typing i:nth-child(2) { animation-delay:.12s; }.hj-scene.is-active .hj-typing i:nth-child(3) { animation-delay:.24s; }.hj-scene.is-active .hj-compose > span { animation:hjDraft 1.2s steps(35,end) both; }.hj-scene.is-active .hj-push { animation:hjPush .75s .5s cubic-bezier(.2,.8,.2,1) both; }.hj-scene.is-active .hj-push-destination { animation:hjReveal .85s 1.65s cubic-bezier(.2,.8,.2,1) both; }.hj-scene.is-active .hj-push-destination > * { animation-delay:2s; }.hj-scene.is-active .hj-check-large { animation:hjMessage .65s .45s both; }
@keyframes hjReveal { from { opacity:0;transform:translateY(10px); } to { opacity:1;transform:none; } }
@keyframes hjMessage { from { opacity:0;transform:translateY(10px) scale(.95); } to { opacity:1;transform:none; } }
@keyframes hjPush { from { opacity:0;transform:translateY(-22px) scale(.97); } to { opacity:1;transform:none; } }
@keyframes hjTyping { 0%,85% { opacity:1; } 100% { opacity:0; } }
@keyframes hjDraft { from { clip-path:inset(0 100% 0 0); } to { clip-path:inset(0); } }
@keyframes hjProgress { from { transform:scaleX(0); } to { transform:scaleX(1); } }
.hero-journey[data-motion-state="paused"] * { animation-play-state:paused !important; }
.hero-journey[data-motion-state="static"] * { animation:none !important;transition:none !important; }
@media (max-width:540px) { .hj-top { min-height:66px;padding:14px 17px;gap:10px; }.hj-live { font-size:7px; }.hj-top small { font-size:12px; }.hj-scene { padding:23px 16px 17px; }.hj-scene header { min-height:85px; }.hj-scene h2 { font-size:25px; }.hj-kicker { font-size:8px; }.hj-visual { height:315px; }.hj-paper { padding:16px; }.hj-paper-label { font-size:8px; }.hj-field,.hj-field strong { font-size:11px; }.hj-caption { font-size:11px;min-height:51px;margin-top:16px; }.hj-device { flex-basis:70%;padding-inline:10px; }.hj-push { padding:11px; }.hj-push-destination { flex-basis:63%;margin-left:-33%;padding:12px;margin-top:142px; }.hj-push > strong { font-size:12px; }.hj-push p { font-size:10px; }.hj-push-destination .hj-field { flex-wrap:wrap;gap:0;padding-block:7px; }.hj-push-destination .hj-field strong { text-align:left; }.hj-booking { gap:15px; }.hj-booking section strong { font-size:15px; }.hj-overview > div { padding:12px 10px;gap:7px; }.hj-overview .icon { display:none; }.hj-controls { padding-inline:16px; }.hero-journey .hero-demo-note { font-size:8px;line-height:1.5; }.hj-followup-head strong { font-size:14px; } }
@media (prefers-reduced-motion:reduce) { .hero-journey *, .hero-journey *::before { animation:none !important;transition:none !important; } }
/* Keep the notification and the team's response readable together. */
.hj-push-flow { gap:14px; }
.hj-device { flex-basis:53%; }
.hj-push-destination { flex:1 1 0;min-width:0;margin:55px 0 0;padding:13px; }
.hj-push-destination .hj-field { display:block;padding-block:9px; }
.hj-push-destination .hj-field > span,.hj-push-destination .hj-field strong { display:block;text-align:left; }
.hj-push-destination .hj-field strong { margin-top:4px; }
@media (max-width:540px) { .hj-push-flow { gap:10px; }.hj-device { flex-basis:55%;height:294px;padding-inline:8px;border-radius:25px; }.hj-device-time { font-size:40px; }.hj-device-label { font-size:7px; }.hj-push { padding:10px 8px; }.hj-push > div { gap:4px;font-size:7px; }.hj-push img { width:14px;height:17px; }.hj-push small { font-size:7px; }.hj-push > strong { font-size:12px; }.hj-push p { font-size:10px; }.hj-push-destination { margin:58px 0 0;padding:11px; }.hj-push-destination .hj-paper-label { font-size:7px;line-height:1.5; }.hj-push-destination .hj-result { align-items:flex-start;font-size:10px; }.hj-mini-message { font-size:12px; } }

/* Fit the complete story and its controls inside shorter desktop viewports. */
@media (min-width: 981px) and (max-height: 820px) {
  .partner-hero { padding-top: 102px; }
  .hero-layout { gap: clamp(40px, 4vw, 60px); }
  .hero-copy .eyebrow { margin-bottom: 18px; }
  .hero-copy h1 { font-size: clamp(45px, 3.6vw, 56px); margin-bottom: 19px; }
  .hero-description { max-width: 500px; margin-bottom: 20px; font-size: 14px; line-height: 1.55; }
  .hero-actions .btn { min-height: 44px; }
  .hero-commercial { margin-top: 22px; padding-block: 12px; }
  .hero-commercial > strong { font-size: 37px; }
  .hero-terms { margin-top: 9px; }
  .hero-product .demo-caption { margin-bottom: 8px; }
  .hj-top { min-height: 59px; padding: 12px 19px; }
  .hj-top > img { width: 23px; height: 27px; }
  .hj-scene { padding: 15px 19px 12px; }
  .hj-scene header { min-height: 58px; }
  .hj-scene h2 { margin-top: 7px; font-size: 24px; }
  .hj-visual { height: 250px; }
  .hj-caption { min-height: 36px; margin-top: 10px; font-size: 11px; }
  .hj-paper { padding: 14px 17px; }
  .hj-paper-label { padding-bottom: 10px; }
  .hj-contact { margin: 11px 0 7px; }
  .hj-contact img { width: 39px; height: 39px; }
  .hj-field { min-height: 30px; }
  .hj-result { margin-top: 9px; }
  .hj-chat { height: 237px; }
  .hj-chat-head { padding-block: 11px; }
  .hj-origin { margin-top: 10px; }
  .hj-compose { margin-top: 9px; }
  .hj-quote { margin-block: 8px; }
  .hj-next { margin-top: 10px; padding: 10px; }
  .hj-push-flow { gap: 12px; }
  .hj-device { height: 242px; padding-top: 29px; }
  .hj-device-time { font-size: 38px; }
  .hj-push { margin-top: 11px; }
  .hj-push-destination { margin-top: 30px; }
  .hj-booking { padding-block: 16px; }
  .hj-review-row { padding-block: 8px; }
  .hj-arrival { gap: 7px; padding-block: 12px; }
  .hj-check-large { width: 49px; height: 49px; }
  .hj-followup-head { padding-top: 11px; }
  .hj-overview > div { min-height: 76px; padding: 11px 14px; }
  .hj-controls { padding-inline: 19px; padding-bottom: 9px; }
  .hj-segments button { height: 24px; }
  .hj-segments button::before,.hj-segments button span { top: 11px; }
  .hj-controls-bottom button { width: 29px; height: 29px; }
  .hero-demo-note { margin-top: 6px; }
  .partner-strip { margin-top: 42px; }
}
@media (min-width: 981px) and (max-height: 820px) {
  .hj-arrival { gap: 3px; padding-block: 6px; }
  .hj-followup-head { padding-top: 8px; }
}
@media (max-width: 360px) {
  .hj-visual { height: auto; min-height: 315px; }
}
@media (min-width: 981px) and (max-height: 660px) {
  .partner-hero { padding-top: 82px; }
  .hero-copy h1 { font-size: clamp(43px, 3.4vw, 52px); }
  .hero-description { margin-bottom: 15px; }
  .hero-commercial { margin-top: 16px; }
  .hj-top { min-height: 52px; padding-block: 9px; }
  .hj-scene { padding-block: 12px 9px; }
  .hj-scene header { min-height: 52px; }
  .hj-caption { min-height: 32px; margin-top: 7px; }
  .hero-demo-note { display: none; }
}

/* Compact, content-aligned navigation for the partner landing page. */
@media (min-width: 761px) {
  .partners-page .header {
    max-width: calc(var(--container) + var(--gutter) * 2);
    height: 56px;
    padding-inline: var(--gutter);
  }
  .partners-page .header__inner { gap: 22px; }
  .partners-page .header__brand img { height: 32px; }
  .partners-page .header__menu { gap: 24px; }
  .partners-page .header__cta .btn--sm {
    min-height: 34px;
    padding: 7px 13px;
    font-size: 11px;
  }
}
@media (max-width: 760px) {
  .partners-page .header {
    height: 52px;
    padding-inline: 8px;
  }
  .partners-page .header__brand img { height: 31px; }
  .partners-page .header__toggle { width: 40px; height: 40px; }
}
@media (max-width: 360px) {
  .hj-stage { display: block; }
  .hj-scene { display: none; }
  .hj-scene.is-active { display: flex; }
}

/* Product film: automatic loop, with a stable 16:9 surface. */
.partners-page .crm-film-section { border-top: 1px solid var(--stroke); }
.crm-film-heading { display: grid; grid-template-columns: 1.1fr .8fr; align-items: end; gap: 18px 64px; margin-bottom: 40px; }
.crm-film-heading .eyebrow { grid-column: 1 / -1; margin-bottom: 0; }
.crm-film-heading h2 { margin: 0; }
.crm-film-heading > p:last-child { max-width: 430px; margin: 0; font-size: 15px; }
.crm-film-player { margin: 0; overflow: hidden; border: 1px solid var(--stroke); border-radius: var(--radius); background: var(--black); box-shadow: 0 24px 65px rgba(0,0,0,.25); }
.crm-film-player video { display: block; width: 100%; height: auto; aspect-ratio: 16 / 9; background: var(--black); }
.crm-film-player video:focus-visible { outline: 2px solid var(--primary-light); outline-offset: -3px; }
.crm-film-player figcaption { display: flex; align-items: center; justify-content: space-between; gap: 16px; padding: 17px 23px; border-top: 1px solid var(--stroke); color: var(--body); font-size: 12px; }
.crm-film-duration { display: inline-flex; align-items: center; gap: 7px; white-space: nowrap; }
.crm-film-duration .icon { width: 14px; height: 14px; }
@media (max-width: 1024px) { .crm-film-heading { column-gap: 34px; } }
@media (max-width: 767px) { .partners-page .crm-film-section { padding-block: 76px; }.crm-film-heading { grid-template-columns: 1fr; gap: 18px; margin-bottom: 28px; }.crm-film-heading > p:last-child { max-width: 560px; }.crm-film-player figcaption { align-items: flex-start; flex-direction: column; gap: 8px; padding: 15px 17px; } }

.partners-page .crm-film-actions { display: flex; align-items: center; flex-wrap: wrap; justify-content: flex-end; gap: 16px; margin-left: auto; }
.partners-page .crm-film-restart { flex: 0 0 auto; white-space: nowrap; }
.partners-page .crm-film-restart:focus-visible { outline: 2px solid var(--primary-light); outline-offset: 3px; }
@media (max-width: 767px) { .partners-page .crm-film-actions { justify-content: flex-start; margin-left: 0; gap: 12px; } }
