/* Blue's home screen under the hero, and the integrations section. Set in RM Forma like the pricing; the greeting
   keeps the product's own serif. Uses the page's colour tokens (ui/prototype.css). Prefixes: hm-, ig-. */
.hm,.ig{--sans:"RM Forma",ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;
  --card:color-mix(in srgb,var(--ink) 4.5%,var(--bg));--line:color-mix(in srgb,var(--ink) 10%,transparent);position:relative}
.hm *,.ig *{font-family:var(--sans)}
/* Blue's home is the hero now (Sasi, 2026-11-02): the old hero section is hidden, not deleted */
#top{display:none!important}

/* ---------- Blue's home ---------- */
.hm{padding:150px 0 12vh}
/* no window frame: Blue's home sits on the page itself */
.hm-win{max-width:1060px;margin:0 auto}
.hm-body{padding:40px 0 0;text-align:center}
.hm .hm-hi{margin:0 auto;max-width:13em;font-family:var(--serif);font-weight:500;font-size:clamp(42px,6vw,86px);letter-spacing:-.01em;line-height:1.02;color:var(--ink)}
.hm .hm-hi em,.hm .hm-hi span{font-family:var(--serif)}
.hm-hi em{font-style:normal;color:var(--blue)}
.hm-ask{margin:22px 0 8px;font-size:19px;color:var(--ink-soft)}
.hm-note{margin:0 0 22px;font-size:13px;color:var(--ink-soft);opacity:.8}
.hm-box{max-width:820px;margin:0 auto;padding:22px 24px 18px;border-radius:22px;text-align:left;background:var(--card);box-shadow:inset 0 0 0 1px var(--line)}
.hm-input{margin:2px 0 26px;min-height:1.5em;font-size:17px;color:var(--ink-soft)}
.hm-input .live{color:var(--ink)}
.hm-caret{display:inline-block;width:1.5px;height:1.1em;margin-left:2px;vertical-align:-.15em;background:var(--blue);animation:hmBlink 1s steps(1) infinite}
@keyframes hmBlink{50%{opacity:0}}
.hm-row2{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap}
.hm-chips{display:flex;flex-wrap:wrap;gap:8px}
.hm svg{fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.hm-chips span{display:inline-flex;align-items:center;gap:8px}
.hm-chips svg{width:15px;height:15px}
.hm-side{display:flex;align-items:center;gap:14px;color:var(--ink-soft)}
.hm-clip svg{width:18px;height:18px;display:block}
.hm-voice{display:flex;align-items:center;gap:10px;height:40px;padding:0 14px;border-radius:99px;background:color-mix(in srgb,var(--ink) 8%,transparent)}
.hm-voice svg{width:20px;height:16px;display:block}
.hm-voice i{width:1px;height:18px;background:var(--line)}
.hm-chips span{padding:9px 16px;border-radius:99px;font-size:14px;color:var(--ink);box-shadow:inset 0 0 0 1px var(--line)}
.hm-chips span.on{color:var(--blue);background:color-mix(in srgb,var(--blue) 12%,transparent);box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--blue) 45%,transparent)}
.hm-tools{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:10px;margin:26px 0 0}
.hm-tools>span{font-size:14px;color:var(--ink-soft);margin-right:8px}
.hm-tools img,.hm-more{width:56px;height:56px;padding:13px;box-sizing:border-box;border-radius:14px;background:color-mix(in srgb,var(--ink) 9%,var(--bg));object-fit:contain}
.hm-more{display:grid;place-items:center;font-size:22px;color:var(--ink-soft);text-decoration:none;padding:0}
.hm-more:hover{color:var(--ink)}
.hm-ctas{display:flex;justify-content:center;gap:10px;margin-top:30px}
.hm-today{max-width:900px;margin:52px auto 0;text-align:left}
.hm-h{margin:0 0 12px;font-family:var(--serif)!important;font-size:24px;color:var(--ink)}
.hm-h span{font-size:14px;color:var(--ink-soft);margin-left:6px}
.hm-row{display:grid;grid-template-columns:auto 150px 1fr auto;align-items:center;gap:16px;padding:14px 18px;background:var(--card);box-shadow:inset 0 0 0 1px var(--line)}
.hm-row:first-of-type{border-radius:16px 16px 0 0}
.hm-row:last-of-type{border-radius:0 0 16px 16px;margin-top:-1px}
.hm-ic{width:34px;height:34px;border-radius:10px;display:grid;place-items:center;color:#fff}
.hm-ic svg{width:17px!important;height:17px!important}
.hm-row b{font-size:15.5px;font-weight:600;color:var(--ink)}
.hm-row>span:not(.hm-ic){font-size:15px;color:var(--ink-soft)}
.hm-row em{font-style:normal;font-size:14px;padding:7px 15px;border-radius:99px;color:var(--ink);box-shadow:inset 0 0 0 1px var(--line)}
.hm .hm-fine{margin:16px 0 0;text-align:center;font-size:13px;color:var(--ink-soft)}

/* ---------- integrations: one big number, three drifting rows of real logos, the directory behind a button ---------- */
.ig{padding:14vh 0}
.ig-head{text-align:center}
.ig-head .slate{font-size:12px;font-weight:600;letter-spacing:.14em;margin:0 0 10px}
.ig .ig-big{margin:0;font-size:clamp(84px,12vw,170px);font-weight:600;letter-spacing:-.06em;line-height:.9;font-variant-numeric:lining-nums;
  background:linear-gradient(180deg,#fff 20%,var(--blue));-webkit-background-clip:text;background-clip:text;color:transparent}
.ig-head h2{margin:10px auto 0;max-width:none;font-weight:600;letter-spacing:-.035em;line-height:1.04;font-size:clamp(32px,4.4vw,58px)}
.ig .ig-sub{margin:16px auto 28px;max-width:34em;font-size:17px;line-height:1.55;color:var(--ink-soft)}
.ig-open{appearance:none;border:0;cursor:pointer;display:inline-flex;align-items:center;gap:14px;height:54px;padding:0 10px 0 26px;border-radius:99px;
  font-size:15.5px;font-weight:600;color:var(--bg);background:var(--ink)}
.ig-open i{display:grid;place-items:center;width:34px;height:34px;border-radius:50%;font-style:normal;color:#fff;background:var(--blue);transition:transform .25s}
.ig-open:hover i{transform:translateX(3px)}
.ig-open.on i{transform:rotate(90deg)}
.ig-rows{margin-top:60px;display:grid;gap:14px;overflow:hidden;
  -webkit-mask:linear-gradient(90deg,transparent,#000 12%,#000 88%,transparent);mask:linear-gradient(90deg,transparent,#000 12%,#000 88%,transparent)}
.ig-row{display:flex;gap:14px;width:max-content;animation:igSlide 70s linear infinite}
.ig-row.rev{animation-direction:reverse;animation-duration:80s}
.ig-row.slow{animation-duration:95s}
.ig-rows:hover .ig-row{animation-play-state:paused}
.ig-chip{display:flex;align-items:center;gap:12px;height:64px;padding:0 22px 0 12px;border-radius:16px;white-space:nowrap;font-size:15px;color:var(--ink);
  background:var(--card);box-shadow:inset 0 0 0 1px var(--line)}
.ig-chip img,.ig-chip .ig-mono{width:40px;height:40px;border-radius:10px;object-fit:contain}
.ig-mono{display:grid;place-items:center;font-weight:600;color:var(--ink);background:color-mix(in srgb,var(--ink) 10%,transparent)}
@keyframes igSlide{to{transform:translateX(-50%)}}
@media (prefers-reduced-motion:reduce){.ig-row{animation:none}}
/* the directory */
.ig-dir{margin-top:64px;padding-top:36px;box-shadow:inset 0 1px 0 var(--line)}
.ig-controls{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:22px}
.ig-controls input,.ig-controls select{height:48px;border-radius:12px;border:0;outline:0;font-size:15px;color:var(--ink);background:var(--card);box-shadow:inset 0 0 0 1px var(--line)}
.ig-controls input{flex:1;min-width:240px;padding:0 18px}
.ig-controls select{padding:0 40px 0 16px;appearance:none;cursor:pointer;
  background-image:linear-gradient(45deg,transparent 50%,var(--ink-soft) 50%),linear-gradient(135deg,var(--ink-soft) 50%,transparent 50%);
  background-position:calc(100% - 20px) 21px,calc(100% - 15px) 21px;background-size:5px 5px;background-repeat:no-repeat}
.ig-controls input:focus,.ig-controls select:focus{box-shadow:inset 0 0 0 1.5px var(--blue)}
.ig-grid{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:8px;max-height:620px;overflow:auto;padding-right:4px}
.ig-grid li{display:grid;grid-template-columns:36px 1fr;grid-template-rows:auto auto;column-gap:12px;align-items:center;padding:12px 14px;border-radius:12px;background:var(--card);box-shadow:inset 0 0 0 1px var(--line)}
.ig-grid li img,.ig-grid li .ig-mono{grid-row:1 / 3;width:36px;height:36px;border-radius:9px;object-fit:contain}
.ig-grid li b{font-size:14px;font-weight:600;color:var(--ink);line-height:1.2}
.ig-grid li small{font-size:12px;color:var(--ink-soft)}
.ig-grid li.ig-none{grid-column:1 / -1;display:block;padding:28px;text-align:center;font-size:15px;color:var(--ink-soft)}
.ig .ig-count{margin:14px 0 0;font-size:13.5px;color:var(--ink-soft)}
.ig .ig-fine{margin:40px 0 0;font-size:12px;color:var(--ink-soft);opacity:.8}
.ig-open:focus-visible,.hm-more:focus-visible{outline:2px solid var(--blue);outline-offset:3px}

@media (max-width:960px){
}
@media (max-width:720px){
  .hm{padding-top:110px}
  .hm-body{padding:28px 0 0}
  .hm-side{display:none}
  .hm-row{grid-template-columns:auto 1fr auto;gap:10px}
  .hm-row>span:not(.hm-ic){grid-column:2;grid-row:2;font-size:13.5px}
  .hm-row em{grid-row:1 / span 2;grid-column:3}
  .hm-tools img,.hm-more{width:42px;height:42px;padding:9px}
}
@media (prefers-reduced-motion:reduce){.hm-caret{animation:none}.ig-grid li{transition:none}}
/* "Join the beta" in the composer: the one action here; it opens the join list as an app inside the box */
.hm-join{position:relative;display:inline-flex;align-items:center;gap:8px;height:40px;padding:0 8px 0 14px;border-radius:99px;font-size:14px;font-weight:600;
  text-decoration:none;color:#fff;background:linear-gradient(135deg,#8aa6ff,#5b74f0 60%,#7a5cf0);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.35),0 8px 24px -8px color-mix(in srgb,var(--blue) 80%,transparent);transition:transform .15s,box-shadow .2s}
.hm-join:hover{transform:translateY(-1px);box-shadow:inset 0 1px 0 rgba(255,255,255,.35),0 12px 30px -8px color-mix(in srgb,var(--blue) 95%,transparent)}
.hm-join svg{width:16px;height:16px;fill:#fff;stroke:none}
.hm-join em{font-style:normal;font-size:11.5px;font-weight:600;letter-spacing:.04em;padding:3px 8px;border-radius:99px;background:rgba(255,255,255,.22)}
.hm-join:focus-visible{outline:2px solid var(--ink);outline-offset:3px}
/* the app view */
.hm-box{transition:box-shadow .3s}
.hm-box.hm-on{box-shadow:inset 0 0 0 1.5px color-mix(in srgb,var(--blue) 55%,transparent),0 30px 80px -30px color-mix(in srgb,var(--blue) 55%,transparent)}
.hm-app{animation:hmOpen .35s cubic-bezier(.2,.8,.2,1)}
@keyframes hmOpen{from{opacity:0;transform:translateY(6px) scale(.99)}to{opacity:1;transform:none}}
.hm-apphead{display:flex;align-items:center;gap:10px;padding-bottom:14px;margin-bottom:16px;box-shadow:inset 0 -1px 0 var(--line)}
.hm-apphead img{width:30px;height:auto}
.hm-apphead b{font-size:15px;font-weight:600;color:var(--ink)}
.hm-apphead span{font-size:13.5px;color:var(--ink-soft)}
.hm-close{appearance:none;border:0;cursor:pointer;margin-left:auto;width:32px;height:32px;border-radius:50%;font-size:20px;line-height:1;color:var(--ink-soft);background:color-mix(in srgb,var(--ink) 8%,transparent)}
.hm-close:hover{color:var(--ink)}
.hm-log{display:flex;flex-direction:column;gap:10px;max-height:300px;overflow-y:auto;padding:2px 2px 6px}
.hm-msg{display:flex;animation:hmOpen .3s cubic-bezier(.2,.8,.2,1)}
.hm .hm-msg p{margin:0;max-width:86%;padding:11px 15px;border-radius:18px;font-size:15px;line-height:1.55;color:var(--ink);text-align:left}
.hm-msg.blue p{background:color-mix(in srgb,var(--ink) 7%,var(--bg));border-bottom-left-radius:6px}
.hm-msg.blue a{color:var(--blue)}
.hm-msg.you{justify-content:flex-end}
.hm .hm-msg.you p{color:#fff;background:var(--blue);border-bottom-right-radius:6px}
.hm-msg.typing p{display:flex;gap:5px;padding:14px 16px}
.hm-msg.typing i{width:7px;height:7px;border-radius:50%;background:var(--ink-soft);animation:hmDot 1s infinite}
.hm-msg.typing i:nth-child(2){animation-delay:.15s}.hm-msg.typing i:nth-child(3){animation-delay:.3s}
@keyframes hmDot{0%,60%,100%{opacity:.3}30%{opacity:1}}
.hm-form{display:flex;align-items:center;gap:10px;margin-top:14px}
.hm-form input:not(.sr){flex:1;height:48px;padding:0 16px;border:0;outline:0;border-radius:14px;font-size:16px;color:var(--ink);
  background:color-mix(in srgb,var(--ink) 6%,var(--bg));box-shadow:inset 0 0 0 1px var(--line)}
.hm-form input:not(.sr):focus{box-shadow:inset 0 0 0 1.5px var(--blue)}
.hm-send{appearance:none;border:0;cursor:pointer;display:grid;place-items:center;width:44px;height:44px;border-radius:50%;background:var(--blue)}
.hm-send svg{width:18px;height:18px;fill:none;stroke:#fff;stroke-width:2.4;stroke-linecap:round;stroke-linejoin:round}
.hm-quick{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}
.hm-quick:empty{display:none}
.hm-quick button{appearance:none;border:0;cursor:pointer;height:38px;padding:0 16px;border-radius:99px;font-size:14px;font-weight:500;color:var(--ink);
  background:none;box-shadow:inset 0 0 0 1px var(--line)}
.hm-quick button.solid{color:var(--bg);background:var(--ink);box-shadow:none;font-weight:600}

/* "Works across": the set of tiles swaps between the suite's apps and the integrations */
.hm-set{display:flex;flex-wrap:wrap;justify-content:center;gap:10px;transition:opacity .3s,transform .3s}
.hm-set.out{opacity:0;transform:translateY(4px)}
.hm-set img,.hm-set .hm-t{width:56px;height:56px;box-sizing:border-box;border-radius:14px}
.hm-t{display:grid;place-items:center;background:color-mix(in srgb,var(--ink) 9%,var(--bg))}
.hm-t img{width:30px;height:30px;padding:0;background:none;border-radius:6px;object-fit:contain}
.hm-own{display:grid;place-items:center;width:40px;height:40px;border-radius:11px;color:#fff}
.hm-own svg{width:20px!important;height:20px!important}
#hmToolsLabel{min-width:12.5em;text-align:right}
@media (max-width:720px){.hm-set img,.hm-set .hm-t{width:44px;height:44px}.hm-own{width:32px;height:32px}.hm-own svg{width:16px!important;height:16px!important}#hmToolsLabel{min-width:0;text-align:center;width:100%}}
/* hidden means hidden, whatever display a rule sets */
.hm [hidden]{display:none!important}
/* the join button takes the right end of the row; attach and voice step aside on the landing */
.hm-row2 .hm-side{display:none}
.hm-row2{flex-wrap:nowrap}
.hm-row2 .hm-join{margin-left:auto;flex:none}
@media (max-width:860px){.hm-row2{flex-wrap:wrap}.hm-row2 .hm-join{margin-left:0}}
