@import url("/product-ctas.css");
/* Native polish is deliberately additive: generated Framer CSS, its responsive
   breakpoints, typography, page compositions and artwork remain source-owned. */
html { scroll-behavior: smooth; }
body { min-height: 100dvh; }
/* Shared marketing CTA feedback. No click handlers or destination changes.
   Individual transforms preserve source-owned centering/positioning. */
a:is([data-clai-cta="signup"],[data-clai-cta="demo"],[data-clai-footer-link="Sign up"],[data-clai-book-route="/book"],[href="/book"],[href^="/book?"]) {
  transition:translate .16s ease,scale .12s ease,box-shadow .16s ease,filter .16s ease,background-color .16s ease;
  -webkit-tap-highlight-color:rgba(40,110,80,.15);
}
@media (hover:hover) and (pointer:fine) {
  a:is([data-clai-cta="signup"],[data-clai-cta="demo"],[data-clai-footer-link="Sign up"],[data-clai-book-route="/book"],[href="/book"],[href^="/book?"]):hover {
    translate:0 -2px;
    filter:brightness(.96);
    box-shadow:0 5px 14px #16392320,0 0 0 1px #38765624;
  }
  :is(footer,.cmf-footer,[data-framer-name="Footer"]) a:is([data-clai-cta="signup"],[data-clai-cta="demo"],[data-clai-footer-link="Sign up"],[href="/book"],[href^="/book?"]):hover {
    translate:none;filter:none;box-shadow:none;
    text-decoration:underline;text-underline-offset:4px;
  }
}
a:is([data-clai-cta="signup"],[data-clai-cta="demo"],[data-clai-footer-link="Sign up"],[data-clai-book-route="/book"],[href="/book"],[href^="/book?"]):focus-visible {
  outline:2px solid #276c50!important;outline-offset:4px;
}
a:is([data-clai-cta="signup"],[data-clai-cta="demo"],[data-clai-footer-link="Sign up"],[data-clai-book-route="/book"],[href="/book"],[href^="/book?"]):active {
  translate:0 0;scale:.985;filter:brightness(.92);
}
@media (prefers-reduced-motion:reduce) {
  a:is([data-clai-cta="signup"],[data-clai-cta="demo"],[data-clai-footer-link="Sign up"],[data-clai-book-route="/book"],[href="/book"],[href^="/book?"]) {
    transition:none!important;translate:none!important;scale:none!important;
  }
}
a:focus-visible, button:focus-visible, [role="button"]:focus-visible {
  outline: 2px solid #b9e88c;
  outline-offset: 4px;
}
.clai-native-desktop-menu {
  position:fixed; top:58px; left:50%; z-index:2147481000;
  opacity:0; transform:translate(-50%,-4px); pointer-events:none;
  transition:opacity .14s ease,transform .14s ease;
}
.clai-native-desktop-menu[aria-hidden="false"] {
  opacity:1; transform:translate(-50%,0); pointer-events:auto;
}
.clai-native-desktop-menu__panel {
  width:656px; height:190px; padding:8px;
  display:grid; grid-template-columns:repeat(3,208px); grid-auto-rows:174px; gap:8px;
  border-radius:8px; background:#fff; color:#222;
  box-shadow:0 10px 30px #10130f1a;
}
.clai-native-desktop-menu__panel[hidden] { display:none; }
.clai-native-desktop-menu__panel--solutions {
  width:1088px; height:240px; padding:8px 8px 28px;
  grid-template-columns:repeat(5,208px); grid-auto-rows:204px; gap:8px;
}
.clai-native-menu-card {
  width:208px; min-width:0; padding:34px 24px 0; display:flex; flex-direction:column; align-items:flex-start;
  color:#171917; text-decoration:none;
  font-family:ClaiSans,sans-serif; font-size:14px; line-height:20px;
}
.clai-native-menu-card:hover .clai-native-menu-card__title { text-decoration:underline; text-underline-offset:3px; }
.clai-native-menu-card__icon {
  width:40px; height:40px; margin-bottom:10px; display:grid; place-items:center;
  color:#777c75; background:#f5f6f4; border-radius:7px;
}
.clai-native-menu-card__icon svg { width:19px; height:19px; }
.clai-native-desktop-menu__panel--solutions .clai-native-menu-card__icon { margin-bottom:20px; }
.clai-native-menu-card__status {
  margin:0 0 10px; padding:0 4px; border-radius:8px;
  color:rgba(57,156,67,.9); background:#e7ffdc; font-size:12px; line-height:20px;
}
.clai-native-menu-card__title { font-weight:500; line-height:20px; }
.clai-native-menu-card__copy { margin-top:6px; color:#7c7c7c; font-size:14px; line-height:20px; }
.clai-native-mobile-menu {
  display:none; position:fixed; z-index:2147481000; inset:0 0 auto;
  height:auto; max-height:100dvh; overflow-y:auto; padding:0 16px 16px; color:#242624; background:#fff;
  opacity:0; transform:translateY(-5px); pointer-events:none;
  transition:opacity .16s ease,transform .16s ease;
}
.clai-native-mobile-menu[aria-hidden="false"] {
  display:block; opacity:1; transform:translateY(0); pointer-events:auto;
}
.clai-native-mobile-menu__head {
  height:56px; display:flex; align-items:center; justify-content:space-between;
}
.clai-native-mobile-menu__head img { display:block; width:102px; height:auto; }
.clai-native-mobile-menu__head button {
  width:24px; height:28px; padding:0; border:0; background:transparent;
  color:#202220; font:400 22px/1 ClaiSans,sans-serif; cursor:pointer;
}
.clai-native-mobile-menu nav {
  display:grid; grid-auto-rows:minmax(48px,auto); justify-items:center;
  padding-top:18px;
}
.clai-native-mobile-menu nav>a:not(.clai-native-mobile-menu__signup) {
  display:grid; place-items:center; color:#55585a;
  text-decoration:none; font:400 15px/1.2 ClaiSans,sans-serif;
}
.clai-native-mobile-menu__signup {
  position:relative; width:100%; min-height:32px;
  display:grid; place-items:center; border-radius:8px;
  color:#343637; background:#f3f3f3; text-decoration:none;
  font:400 14px/1 ClaiSans,sans-serif;
}
.clai-native-billing {
  display:flex; width:max-content; gap:3px; margin:18px auto 22px; padding:4px;
  border:1px solid rgba(90,100,91,.24); border-radius:99px;
  background:rgba(255,255,255,.72); position:relative; z-index:2;
}
.clai-native-billing button {
  border:0; border-radius:99px; padding:8px 16px; color:#484c46;
  background:transparent; font:inherit; font-size:13px; cursor:pointer;
}
.clai-native-billing button.is-active { color:#f5f5ef; background:#272a26; }
.clai-native-billing button:focus-visible { outline-color:#a5c77b; }
[data-framer-name="Frame 3"][hidden] { display:none!important; }
.clai-chat-scroll {
  overflow-x:auto; overflow-y:hidden; box-sizing:border-box; width:100vw;
  min-width:100vw; max-width:100vw; margin-left:calc(50% - 50vw);
  padding-left:var(--clai-chat-inset,40px); padding-right:var(--clai-chat-inset,40px);
  -webkit-overflow-scrolling:touch; scrollbar-width:none; touch-action:pan-x pan-y;
}
.clai-chat-scroll::-webkit-scrollbar { display:none; }
.clai-chat-row {
  display:flex!important; flex-direction:row!important; gap:16px!important;
  width:max-content!important; position:relative!important; transform:none!important;
}
.clai-chat-row>div {
  position:static!important; inset:auto!important; transform:none!important; opacity:1!important;
  display:block!important; flex:0 0 300px!important; width:300px!important; height:450px!important;
}
.clai-chat-row>div>div { width:100%!important; height:100%!important; }
.clai-chat-row>div[data-clai-chat-loop] { pointer-events:none; }
.clai-chat-row>div.clai-native-chat-active {
  z-index:4!important; transform:translateY(-4px)!important;
}
.clai-native-chat-response {
  display:block; max-width:245px; margin:12px 14px 0 auto; padding:10px 13px;
  border-radius:12px; color:#323632; background:#ededed;
  font:400 12px/1.45 ClaiSans,sans-serif; text-align:left;
  animation:clai-chat-answer-in .3s ease-out both;
}
.clai-broker-command [data-framer-name="Frame 46"],
.clai-broker-command [data-framer-name="Frame 5"] {
  opacity:0; transition:opacity .24s ease-out;
}
.clai-broker-command-ready [data-framer-name="Frame 46"],
.clai-broker-command-ready [data-framer-name="Frame 5"] { opacity:1; }
.clai-broker-card-active { animation:clai-broker-deal-sequence 6.2s cubic-bezier(.22,.7,.25,1) both; }
.clai-broker-signature-active [data-clai-signature-stroke] {
  stroke-dasharray:560; stroke-dashoffset:560;
}
.clai-broker-signature-active [data-clai-signature-stroke="draw"] {
  animation:clai-signature-draw 2.1s cubic-bezier(.38,.05,.18,1) .08s forwards;
}
.clai-native-chat-active { transform:translateY(-4px); }
@keyframes clai-broker-deal-sequence {
  0% { opacity:.4; transform:translateY(32px) rotate(-8deg); }
  19% { opacity:1; transform:translateY(0) rotate(-2deg); }
  38% { transform:translateY(-9px) rotate(2.4deg); }
  58% { transform:translateY(-2px) rotate(-2.6deg); }
  79% { transform:translateY(-6px) rotate(1.1deg); }
  100% { opacity:1; transform:translateY(0) rotate(-2deg); }
}
@keyframes clai-signature-draw {
  0% { stroke-dashoffset:560; }
  100% { stroke-dashoffset:0; }
}
@keyframes clai-chat-answer-in {
  0% { opacity:0; transform:translateY(8px); }
  100% { opacity:1; transform:translateY(0); }
}
[data-clai-motion-paused="true"] *, [data-clai-motion-paused="true"] *::before,
[data-clai-motion-paused="true"] *::after {
  animation-play-state:paused!important; scroll-behavior:auto!important;
}
@media (prefers-reduced-motion: reduce) {
  *,*::before,*::after { scroll-behavior:auto!important; animation-duration:.01ms!important; animation-iteration-count:1!important; transition-duration:.01ms!important; }
  .clai-broker-card-active,.clai-broker-signature-active [data-clai-signature-stroke="draw"],
  .clai-native-chat-response { animation:none; }
  .clai-native-chat-active { transform:none; }
  .clai-native-desktop-menu,.clai-native-mobile-menu { transition:none; }
}
@media (min-width:810px) and (max-width:1119px) {
  .clai-native-desktop-menu { max-width:calc(100vw - 32px); }
  .clai-native-desktop-menu__panel,
  .clai-native-desktop-menu__panel--solutions {
    width:calc(100vw - 32px); height:auto; min-height:190px;
    grid-template-columns:repeat(3,minmax(0,1fr)); grid-auto-rows:minmax(174px,auto);
  }
  .clai-native-desktop-menu__panel--solutions {
    min-height:240px; padding-bottom:28px;
    grid-template-columns:repeat(5,minmax(0,1fr)); grid-auto-rows:minmax(204px,auto);
  }
  .clai-native-menu-card { width:auto; }
}
@media (max-width:809px) {
  .clai-native-desktop-menu { display:none!important; }
}
@media (min-width:810px) {
  .clai-native-mobile-menu { display:none!important; }
}
