/* Additions on top of the Framer landing. */
#__framer-badge-container, #__framer-editorbar-container { display: none !important; }
[data-framer-name="Overlay - Open"] { display: none !important; }   /* the template's sales popup */
#clients { display: none !important; }                               /* invented client-logo wall */
a[href*="privacy-policy"], a[href*="terms-conditions"] { display: none !important; }

/* our mascot next to the CACTUS wordmark */
.framer-1gh1gq8 > * { display: flex !important; align-items: center; white-space: nowrap; }
.framer-1gh1gq8 > *::before { content: ""; width: 30px; height: 30px; margin-right: 8px; flex: none; background: url("/logo-128.png?v=4") center / contain no-repeat; }

.cp-ca {
  position: fixed; left: 20px; bottom: 20px; z-index: 50; display: inline-flex; align-items: center; gap: 10px; cursor: pointer;
  font: 500 11px "Geist Mono", ui-monospace, monospace; letter-spacing: .04em; text-transform: uppercase; color: #111;
  background: rgba(245, 245, 243, .92); border: 1px solid rgba(0, 0, 0, .14); padding: 7px 8px 7px 8px; backdrop-filter: blur(8px);
  opacity: 0; transform: translateY(6px); transition: opacity .6s, transform .6s, border-color .3s;
}
.cp-ca.show { opacity: 1; transform: none; }
.cp-ca:hover { border-color: #111; }
.cp-ca img { width: 22px; height: 22px; object-fit: contain; }
.cp-ca code { font: 12px "Geist Mono", ui-monospace, monospace; text-transform: none; color: #3d6bff; }
.cp-ca em { font-style: normal; color: #fff; background: #111; padding: 4px 8px; }
@media (max-width: 600px) { .cp-ca span { display: none; } .cp-ca { left: 12px; bottom: 12px; } }

/* ---- Cactus theme: the logo's greens, lime, terracotta and sand, over Framer's colour tokens ---- */
body, body[data-framer-theme], html body {
  --token-739be3f2-fa61-4356-bd43-469d8ef05213: #f6f1e4 !important;   /* paper → sand */
  --token-15c226fb-29b2-4262-8993-207f199ea664: rgba(14, 58, 36, .2) !important;   /* hairlines */
  --token-b75925c2-8700-46d6-92f5-49460cd8264f: rgba(14, 58, 36, .72) !important;  /* muted text */
  --token-e102923c-5e53-46d8-8527-f11a5c3f97cc: #0e3a24 !important;   /* ink + buttons → deep cactus green */
  background: #f6f1e4 !important;
}
::selection { background: #c2f520; color: #0e3a24; }
/* the phase-style tags and hover accents pick up the cactus lime */
a:hover [data-framer-name="Primary Small"], a:hover [data-framer-name="Primary Large"] { filter: brightness(1.15); }

/* X button beside "Launch App" in the header */
.cx-x { display: inline-grid; place-items: center; width: 45px; height: 45px; margin-right: 10px; flex: none; align-self: center;
  border: 1px solid rgba(14, 58, 36, .25); color: #0e3a24; background: #fffcf3; transition: border-color .25s, background .25s; }
.cx-x:hover { border-color: #0e3a24; background: #c2f520; }
@media (max-width: 809px) { .cx-x { display: none !important; } }
/* phones: the header has no room, so X floats bottom-right */
.cx-xf { display: none; }
@media (max-width: 809px) {
  .cx-xf { display: grid; place-items: center; position: fixed; right: 14px; bottom: 14px; z-index: 60; width: 44px; height: 44px;
    color: #0e3a24; background: #fffcf3; border: 1px solid rgba(14, 58, 36, .28); box-shadow: 0 6px 18px rgba(14, 58, 36, .12); }
}
