@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800;900&family=Space+Mono:wght@400;700&display=swap');

:root {
  /* --- BRAND COLORS (sampled from cwiq.io hero) --- */
  --cwiq-purple:        #4F1858;   /* primary brand purple (aubergine) */
  --cwiq-purple-dark:   #2D0F35;   /* top of hero gradient */
  --cwiq-purple-mid:    #3A1444;
  --cwiq-purple-light:  #5A2161;   /* bottom of hero gradient */
  --cwiq-magenta:       #A73F97;   /* accent (logo speed lines) */
  --cwiq-magenta-dark:  #842D78;
  --cwiq-cream:         #E9E6DB;   /* primary cream (logo text) */
  --cwiq-cream-dim:     #c8c4b8;
  --cwiq-text-body:     #1a1a1a;
  --cwiq-bg-page:       #F7F5F1;   /* warm off-white body bg */
  --cwiq-border:        #e5e0d6;

  /* Status colors */
  --cwiq-green:         #15803d;
  --cwiq-yellow:        #b45309;
  --cwiq-orange:        #c2410c;
  --cwiq-red:           #b91c1c;
}

/* ==========================================================================
   EMBEDDED LOGO (base64 SVG — no external image dependencies)
   Aspect ratio: 279.79 × 48.61  (~5.75 : 1)
   Use:
     <div class="cwiq-logo"></div>           (header — 36px tall)
     <div class="cwiq-logo cwiq-logo--sm"></div>   (footer — 24px tall)
   ========================================================================== */
.cwiq-logo {
  display: inline-block;
  background-image: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyNzkuNzkgNDguNjEiPjxnIGRhdGEtbmFtZT0iQ2FwYSAyIj48ZyBkYXRhLW5hbWU9IkNhcGEgMSI+PHBhdGggZD0iTTIwIDRhMyAzIDAgMSAxLTMtMyAzIDMgMCAwIDEgMyAzbTQuMzctM2gxOC4wOWwuMTQuMDUuMTMuMDUuMTQuMDYuMTMuMjQuMTIuMDcuMTMuMDguMTEuMDlhLjQ3LjQ3IDAgMCAxIC4xMi4wOWwuMTEuMDkuMS4xLjEuMTFhLjUyLjUyIDAgMCAxIC4xLjExbC4wOS4xMS4wOC4xMi4wOC4xMmEuODMuODMgMCAwIDEgLjA3LjEzLjU0LjU0IDAgMCAxIC4wNy4xM2wuMDYuMTN2LjE0YS41Ny41NyAwIDAgMSAwIC4xNC41Ny41NyAwIDAgMSAwIC4xNC41OC41OCAwIDAgMSAwIC4xNHYxLjI5YS41Ny41NyAwIDAgMSAwIC4xNC41Ny41NyAwIDAgMSAwIC4xNHYuMTRsLS4wNi4xM2EuODMuODMgMCAwIDEtLjA3LjEzbC0uMDcuMTMtLjA4LjEyLS4wNi4xMi0uMDkuMTFhLjUyLjUyIDAgMCAxLS4xLjExbC0uMS4xMS0uMS4xLS4xMS4wOS0uMTIuMDktLjExLjA5YS41Ny41NyAwIDAgMC0uMTMuMDhsLS4xNC4wNy0uMTMuMDYtLjE0LjA2SDIzLjE2bC0uMTMtLjA2LS4xMy0uMDYtLjEzLS4wNy0uMTItLjA4LS4xMi0uMDlhLjk0Ljk0IDAgMCAxLS4xMi0uMDlsLS4xMS0uMDktLjEtLjEtLjA2LS4xMS0uMTQtLjExdi0uMTFsLS4wOC0uMTItLjA4LS4xMnMtLjA1LS4wOS0uMDctLjEzYS44My44MyAwIDAgMC0uMDctLjEzLjY5LjY5IDAgMCAxIDAtLjEzTDIxLjU0IDV2LS4xNGEuNTcuNTcgMCAwIDEgMC0uMTRWMy4zYS41Ny41NyAwIDAgMSAwLS4xNHYtLjE0bC4wNi0uMTRhLjY5LjY5IDAgMCAxIDAtLjEzLjgzLjgzIDAgMCAwIC4wNy0uMTNsLjA3LS4xMy4wOC0uMTIuMTgtLjEydi0uMTFsLjEtLjExLjEtLjExLjEtLjEuMTEtLjA5LjEyLS4wOS4xMi0uMDkuMTItLjA4LjEzLS4wNy4xMy0uMDYuMTMtLjA2LjE0LS4wNS4xMy0uMDVoLjg2TTUyLjA3IDRhMyAzIDAgMSAxLTMtMyAzIDMgMCAwIDEgMyAzbS0xMy43MiA4LjI2YTMgMyAwIDEgMS0zLTMgMyAzIDAgMCAxIDMgM00xNyAyMC41YTMgMyAwIDEgMS0zLTMgMyAzIDAgMCAxIDMgM20xMC45MyA4LjI1YTMgMyAwIDEgMS0zLTMgMyAzIDAgMCAxIDMgM004Ljc5IDM3YTMgMyAwIDEgMS0zLTMgMyAzIDAgMCAxIDMgM002LjYxIDkuM2gyMi44NGwuMTQuMDYuMTMuMDcuMTIuMDdhLjU3LjU3IDAgMCAxIC4xMy4wOGwuMTEuMDguMTIuMDkuMTEuMS4xLjEuMTEuMS4wOS4xMS4wOS4xMmEuNzYuNzYgMCAwIDEgLjA4LjExbC4wOC4xM2EuNzUuNzUgMCAwIDEgLjA3LjEyTDMxIDExbC4wNi4xNHYuMTNsLjA1LjE0di4xNGEuNzQuNzQgMCAwIDEgMCAuMTR2MS4wMWEuNzcuNzcgMCAwIDAgMCAuMTUgMSAxIDAgMCAxIDAgLjE0di4xNHMwIC4wOS0uMDUuMTQgMCAuMDkgMCAuMTNsLS4wNi4xM2EyNjgwNDUwNzQ5OTY4OSAyNjgwNDUwNzQ5OTY4OSAwIDAgMS0uMTQuMjYuODMuODMgMCAwIDEtLjA4LjEybC0uMDguMTItLjA5LjEyLS4wOS4xMS0uMTEuMS0uMS4xLS4xMS4xLS4xMi4wOS0uMTEuMDhhLjU3LjU3IDAgMCAxLS4xMy4wOGwtLjEyLjA3LS4xMy4wNy0uMTkuMDUtLjEzLjA1SDUuNjFMNS40OCAxNWwtLjE0LS4wNi0uMTMtLjA3LS4xMi0uMDdhLjU3LjU3IDAgMCAxLS4wOS0uMDhsLS4xMi0uMDgtLjExLS4wOS0uMTEtLjEtLjExLS4xLS4xLS4xLS4wOS0uMTEtLjEzLS4xNC0uMDgtLjEyYS44My44MyAwIDAgMS0uMDgtLjEyLjU0LjU0IDAgMCAxLS4wNy0uMTEuNTQuNTQgMCAwIDEtLjA3LS4xM2wtLjA2LS4xM2EuNjkuNjkgMCAwIDEtLjA1LS4xM3MwLS4xIDAtLjE0di0uMTRhMSAxIDAgMCAxIDAtLjE0di0xLjE2YS43NC43NCAwIDAgMSAwLS4xNHYtLjI4czAtLjA5LjA1LS4xM2wuMDYtLjEzLjA3LS4xNGEuNzUuNzUgMCAwIDEgLjA3LS4xMmwuMDgtLjEzYS40NC40NCAwIDAgMSAuMDgtLjExbC4wOS0uMTIuMDktLjExLjEtLjEuMTEtLjEuMTEtLjEuMTEtLjA5TDUgOS44YS41Ny41NyAwIDAgMSAuMTMtLjA4bC4xMi0uMDcuMTMtLjA3LjE0LS4wNmguNDFhLjM1LjM1IDAgMCAxIC4xNCAwaC41OG0xNSA4LjI0aDEyLjc2bC4xNC4wNS4xMy4wNi4xMy4wNi4xMy4wNy4xMi4wOC4xMi4wOWEuNDcuNDcgMCAwIDEgLjEyLjA5bC4xMS4wOS4xLjEuMS4xMS4xLjExLjA5LjExLjA4LjEyLjEyLjFzMCAuMDguMDcuMTNsLjA3LjEzYS41LjUgMCAwIDEgMCAuMTNsLjA2LjE0di4xM2ExIDEgMCAwIDEgMCAuMTR2MS40NGEuNTcuNTcgMCAwIDEgMCAuMTR2LjE0bC0uMDYuMTNhLjc4Ljc4IDAgMCAxIDAgLjE0LjU0LjU0IDAgMCAwLS4wNy4xM0wzNiAyMmwtLjA4LjEzLS4wOC4xMi0uMDkuMTEtLjEuMTEtLjEuMTEtLjEuMS0uMTEuMDktLjEyLjA5LS4xMi4wOS0uMTIuMDctLjEzLjA4LS4xMy4wNi0uMTMuMDYtLjE0LjA1LS4xMy4wNUgyMC43OWwtLjE0LS4wNS0uMTQtLjA1LS4xMy0uMDYtLjEzLS4wNi0uMTMtLjFIMjBsLS4xMi0uMDktLjExLS4wOS0uMTEtLjA5LS4xMS0uMS0uMS0uMTEtLjA5LS4xMS0uMDktLjExLS4wOS0uMTJzLS4wNS0uMDgtLjA3LS4xM0wxOSAyMS45di0uMTNsLS4wNi0uMTRhLjUuNSAwIDAgMS0uMDUtLjEzLjc4Ljc4IDAgMCAxLS4wNS0uMTRzMC0uMDkgMC0uMTR2LS4xNGEuNzguNzggMCAwIDEgMC0uMTQuNzcuNzcgMCAwIDEgMC0uMTUuNjYuNjYgMCAwIDEgMC0uMTR2LS4xNWEuNjYuNjYgMCAwIDEgMC0uMTQuNzYuNzYgMCAwIDEgMC0uMTUuNjguNjggMCAwIDEgMC0uMTQuNTkuNTkgMCAwIDEgMC0uMTR2LS4yOWEuNjkuNjkgMCAwIDEgLjA1LS4xMy41OC41OCAwIDAgMSAuMDUtLjE0bC4wNi0uMTMuMDYtLjEzLjA4LS4xMy4wNy0uMTIuMDktLjEyLjA5LS4xMS4wOS0uMTEuMS0uMTEuMTEtLjEuMTEtLjA5LjExLS4wOUwyMCAxOGwuMTItLjA4LjEzLS4wNy4xMy0uMDYuMTMtLjA2LjE0LS4wNWgxTTQyLjUgOS4zaDUuMjVsLjE0LjA2LjEzLjA3LjEyLjA3LjEzLjA4LjExLjA4LjEyLjA5LjExLjEuMS4xLjEuMS4xLjExLjA5LjEyYS43Ni43NiAwIDAgMSAuMDguMTFsLjA4LjEzYS43NS43NSAwIDAgMSAuMDcuMTJsLjA3LjEzLjA2LjE0di4xM2wuMDUuMTR2LjE0YS43NC43NCAwIDAgMSAwIC4xNC41OS41OSAwIDAgMCAwIC4xNHYuODdhLjc3Ljc3IDAgMCAwIDAgLjE1IDEgMSAwIDAgMSAwIC4xNHYuMTRzMCAuMDktLjA1LjE0IDAgLjA5IDAgLjEzbC0uMDYuMTNhMjE0NDM2MDU5OTk3NjEuODIgMjE0NDM2MDU5OTk3NjEuODIgMCAwIDEtLjE0LjI2QTE5NTQ1NjkxODQ3MDc3LjEzIDE5NTQ1NjkxODQ3MDc3LjEzIDAgMCAxIDQ5IDE0bC0uMDkuMTItLjEuMTEtLjEuMS0uMS4xLS4xMS4xLS4xMi4wOS0uMTEuMDgtLjEzLjA4LS4xMi4wNy0uMTMuMDctLjE0LjA2LS4xMy4wNUg0MS41bC0uMTMtLjAzLS4xMy0uMDYtLjE0LS4wNy0uMS0uMDctLjEyLS4wOC0uMTItLjA4LS4xMi0uMDktLjExLS4xLS4xLS4xYS45NC45NCAwIDAgMS0uMS0uMWwtLjEtLjExLS4xMS0uMTQtLjEyLS4xdi0uMTJzLS4wNS0uMDgtLjA3LS4xMyAwLS4wOC0uMDctLjEzbC0uMDYtLjEzYS42OS42OSAwIDAgMCAwLS4xM3YtLjE0YS43NC43NCAwIDAgMSAwLS4xNHYtLjI5YS42OC42OCAwIDAgMCAwLS4xNC43Ni43NiAwIDAgMCAwLS4xNXYtLjI5YS42MS42MSAwIDAgMCAwLS4xNC43Ny43NyAwIDAgMCAwLS4xNXYtLjI4YS43NC43NCAwIDAgMSAwLS4xNHYtLjE0YS42OS42OSAwIDAgMCAwLS4xM2wuMDYtLjE0czAtLjA4LjA3LS4xM2wuMDctLjEyLjA4LS4xM2ExIDEgMCAwIDEgLjA4LS4xMWwuMDktLjEyLjEtLjExYS45NC45NCAwIDAgMSAuMS0uMWwuMS0uMS4xMS0uMS4xMi0uMDkuMTItLjA4LjEtLjA4LjEyLS4wNy4xNC0uMDcuMTMtLjA2aDEuMTNNMyAyNS43OWgxNS43OGwuMTQuMDUuMTQuMDUuMTMuMDYuMTMuMDcuMTMuMDcuMTIuMDguMTIuMDguMTEuMDkuMTEuMDkuMTEuMTFhLjk0Ljk0IDAgMCAxIC4xLjFsLjA5LjExLjA5LjExLjA5LjEycy4wNS4wOC4wNy4xM2wuMDguMTIuMDYuMTMuMDYuMTRhLjY5LjY5IDAgMCAxIC4wNS4xM2wuMDUuMTRhLjc0Ljc0IDAgMCAwIDAgLjE0di4xNGEuNzguNzggMCAwIDEgMCAuMTQuNzcuNzcgMCAwIDEgMCAuMTUuNjYuNjYgMCAwIDEgMCAuMTR2LjI5YS43Ni43NiAwIDAgMSAwIC4xNS42OC42OCAwIDAgMSAwIC4xNC43Ny43NyAwIDAgMSAwIC4xNXYuMTRhLjU3LjU3IDAgMCAwIDAgLjE0czAgLjA5LS4wNS4xNGEuNjkuNjkgMCAwIDEtLjA1LjEzbC0uMDYuMjQtLjA2LjEzLS4wOC4xMy0uMDcuMTItLjA5LjEyLS4wOS4xMi0uMDkuMTEtLjEuMS0uMTEuMWEuNTIuNTIgMCAwIDEtLjExLjFsLS4xMS4wOS0uMTIuMDgtLjEyLjA4LS4xMy4wNy0uMTMuMDctLjEzLjA2LS4xNC4wNUgxLjk2bC0uMTMtLjA1LS4xMy0uMDYtLjEzLS4wNy0uMTMtLjA3LS4xMi0uMDgtLjEyLS4wOC0uMTItLjEyLS4wOC0uMDYtLjEtLjEtLjEtLjEtLjEtLjExLS4wOS0uMTItLjExLS4xMi0uMDgtLjEyczAtLjA4LS4wNy0uMTMgMC0uMDgtLjA3LS4xM2wtLjA2LS4xM2EuNjkuNjkgMCAwIDAgMC0uMTN2LS4xNGExIDEgMCAwIDEgMC0uMTR2LS4yOUEuNjguNjggMCAwIDAgMCAyOWEuNzYuNzYgMCAwIDAgMC0uMTV2LS4yNWEuNjYuNjYgMCAwIDAgMC0uMTQuNzcuNzcgMCAwIDAgMC0uMTV2LS4yOGEuNzQuNzQgMCAwIDEgMC0uMTR2LS4xNGEuNjkuNjkgMCAwIDAgMC0uMTNsLjA2LS4xNHMwLS4wOC4wNy0uMTNsLjA3LS4xMi4zLS4xMy4wOC0uMS4wOS0uMTEuMS0uMTEuMS0uMS4xLS4xMS4xMS0uMDkuMTItLjA5LjEyLS4wOC4xMi0uMDguMTMtLjA3LjEzLS4wNy4xMy0uMDlIMmwuMTQtLjA1SDNtMjkuNTUgMGg0Ljk4bC4xNC4wNS4xNC4wNS4xMy4wNi4xMy4wNy4xMy4wNy4xMi4wOC4xMi4wOC4xMS4wOS4xMS4wOS4xMS4xMS4xLjEuMDkuMTEuMDQuMDlhLjgzLjgzIDAgMCAxIC4wOC4xMi41Ny41NyAwIDAgMSAuMDguMTMuNzUuNzUgMCAwIDEgLjA3LjEybC4wNy4xMy4wNi4xNGEuNjkuNjkgMCAwIDEgLjA1LjEzdi4xNGEuNzQuNzQgMCAwIDAgMCAuMTR2MS40NGEuNTcuNTcgMCAwIDAgMCAuMTR2LjE0YzAgLjA1IDAgLjA5LS4wNS4xM2wtLjA2LjEzYS41NC41NCAwIDAgMS0uMDcuMTMuNTQuNTQgMCAwIDEtLjA3LjEzbC0uMDguMTItLjA4LjEyLS4wOS4xMi0uMDkuMTEtLjEuMS0uMTEuMS0uMTEuMS0uMTEuMDktLjEyLjA4LS4xMi4wOC0uMTMuMDctLjEzLjA3LS4xMy4wNi0uMTQuMDVoLTYuMTFsLS4xNC0uMDUtLjEzLS4wNi0uMTMtLjA3LS4xMS0uMDktLjEyLS4wOC0uMTItLjA4LS4xMi0uMTNhOTI0NzU4MjI0MzI5NS45NSA5MjQ3NTgyMjQzMjk1Ljk1IDAgMCAxLS4yMi0uMmwtLjEtLjFhLjUyLjUyIDAgMCAwLS4xLS4xMS44My44MyAwIDAgMS0uMDgtLjEybC0uMDktLjEyLS4wNS0uMDhzMC0uMDgtLjA3LS4xM2wtLjA5LS4xNC0uMDYtLjEzLS4wNi0uMTN2LS43MWEuNzYuNzYgMCAwIDEgMC0uMTUuNjYuNjYgMCAwIDEgMC0uMTQuNzYuNzYgMCAwIDEgMC0uMTUuNjYuNjYgMCAwIDEgMC0uMTR2LS43MWwuMDYtLjEzLjA2LS4xNC4wNi0uMTMuMDctLjEyLjA4LS4xMy4wOS0uMTIuMDgtLjExLjEtLjExLjEtLjFhMS4xNCAxLjE0IDAgMCAxIC4xMS0uMTFsLjExLS4wOS4xMS0uMDkuMTItLjA4LjEyLS4wOC4xMy0uMDcuMTMtLjA3LjEzLS4wNi4xNC0uMDUuMTMtLjA1aC44Nk0xMy4xOSAzNGg2LjM3bC4xNC4wNi4xMy4wNi4xMy4wNi4xMy4wNy4xMi4wOC4xMi4wOC4xMS4wOS4xMS4xLjExLjEuMS4xMS4wOS4xLjA5LjEyLjA5LjEyLjA3LjEyLjA4LjEzLjA2LjEzLjA2LjEzYS42OS42OSAwIDAgMSAuMDUuMTNzMCAuMS4wNS4xNCAwIC4xIDAgLjE0di4xNGEuNzcuNzcgMCAwIDEgMCAuMTUuNjguNjggMCAwIDEgMCAuMTQuNzYuNzYgMCAwIDEgMCAuMTV2LjE0YS43Ni43NiAwIDAgMSAwIC4xNS42Ni42NiAwIDAgMSAwIC4xNC43Ny43NyAwIDAgMSAwIC4xNS43OC43OCAwIDAgMSAwIC4xNHYuMjhsLS4wNS4xNGEuNjkuNjkgMCAwIDEtLjA1LjEzbC0uMDYuMTQtLjA2LjEzLS4wOC4xMmMwIC4wNS0uMDUuMDktLjA3LjEzbC0uMDkuMTItLjA5LjExLS4wOS4xMS0uMS4xMS0uMTEuMS0uMTEuMDktLjExLjA5LS4xMi4wOC0uMTIuMDgtLjA5LjI3LS4xMy4wNy0uMTMuMDYtLjE0LjA1aC03LjQxbC0uMTQtLjA1LS4xMy0uMDYtLjEzLS4wNy0uMTMtLjA3LS4xMi0uMDgtLjEyLS4wOC0uMTEtLjA5LS4xMS0uMDktLjExLS4xTDExIDM5bC0uMS0uMTEtLjA5LS4xMS0uMDgtLjEyLS4wOC0uMTMtLjA3LS4xMi0uMDYtLjEzLS4wNi0uMTQtLjA2LS4xNHYtLjcxYS42Ni42NiAwIDAgMSAwLS4xNC43Ni43NiAwIDAgMSAwLS4xNS42Ni42NiAwIDAgMSAwLS4xNC43Ni43NiAwIDAgMSAwLS4xNVYzNmwuMDYtLjEzLjA2LS4xMy4wNi0uMTNjMC0uMDUuMDUtLjA5LjA3LS4xM2wuMDgtLjEyYS44My44MyAwIDAgMCAuMDgtLjEybC4wOS0uMTIuMS0uMTIuMS0uMTEuMTEtLjEuMTEtLjEuMTEtLjA5LjEyLS4wOC4xMi0uMDguMTMtLjA3LjEzLS4wNi4xMy0uMDYuMTQtLjA2aC45OW0xMi42OCAwaDYuNzRsLjE0LjA2LjEzLjA2LjEzLjA2LjEzLjA3LjEyLjA4LjEyLjA4LjExLjA5LjExLjEuMTEuMS4xLjExLjA5LjEuMDkuMTIuMDguMTJhLjgzLjgzIDAgMCAxIC4wOC4xMiA2NzAxMTI2ODc0OTIzLjk0IDY3MDExMjY4NzQ5MjMuOTQgMCAwIDAgLjE0LjI2bC4wNi4xM2EuNjkuNjkgMCAwIDEgMCAuMTNzMCAuMS4wNS4xNHYuMTRhMSAxIDAgMCAxIDAgLjE0djEuMTZhLjc0Ljc0IDAgMCAxIDAgLjE0di40M2wtLjA2LjE0LS4wNy4xM2EuNzUuNzUgMCAwIDEtLjA3LjEyLjU3LjU3IDAgMCAxLS4wOC4xM2wtLjA4LjEyLS4wOS4xMS0uMDkuMTEtLjEuMTEtLjExLjEtLjExLjA5LS4xMS4wOS0uMTIuMDgtLjEyLjA4LS4xOS4wNi0uMTMuMDctLjEzLjA2LS4xNC4wNWgtNy43M2wtLjEzLS4wNS0uMTMtLjA2LS4xMy0uMDctLjEzLS4wNy0uMTItLjA4LS4xMi0uMDgtLjExLS4wOS0uMTEtLjA5YS45NC45NCAwIDAgMC0uMS0uMWwtLjEtLjExLS4xLS4xMS0uMDktLjExLS4wOC0uMTItLjA4LS4xMy0uMDctLjEyYS44My44MyAwIDAgMC0uMDctLjEzLjc4Ljc4IDAgMCAxLS4wNS0uMTRsLS4wNy0uMTJ2LS4xNGEuNzQuNzQgMCAwIDEgMC0uMTR2LTEuNDRhMSAxIDAgMCAxIDAtLjE0VjM2bC4wNi0uMTNhLjY5LjY5IDAgMCAxIC4wNS0uMTNsLjA3LS4xM2MwLS4wNSAwLS4wOS4wNy0uMTNsLjA4LS4xMi4wOC0uMTIuMDktLjEyLjEtLjFhLjUyLjUyIDAgMCAxIC4xLS4xMWwuMS0uMWEuNTIuNTIgMCAwIDAgLjExLS4xbC4xMi0uMDkuMTItLjA4LjEyLS4wOC4xMy0uMDcuMTMtLjA2LjEzLS4wNmgxbS0xNS42NSA4LjA3aDE4LjEzbC4xNC4wNWguMTNsLjE0LjA2LjEzLjA2LjEyLjA4LjEyLjA3LjEyLjA5LjEyLjA5LjExLjA5LjEuMS4xLjExYS41Mi41MiAwIDAgMSAuMS4xMWwuMDkuMTFhLjgzLjgzIDAgMCAxIC4wOC4xMmwuMDguMTIuMDcuMTNhLjgzLjgzIDAgMCAxIC4wNy4xM2wuMDYuMTMuMDUuMTRhLjU3LjU3IDAgMCAxIDAgLjE0IDIuMTUgMi4xNSAwIDAgMSAuMDcuMjh2MS4xNWEuOC44IDAgMCAxIDAgLjE1IDEgMSAwIDAgMSAwIC4xNHYuMTNsLS4wNS4xNC0uMDYuMTNhLjU0LjU0IDAgMCAxLS4wNy4xMy44My44MyAwIDAgMS0uMDcuMTNsLS4wOC4xMi0uMDguMTItLjA5LjExYS41Mi41MiAwIDAgMS0uMS4xMS41Mi41MiAwIDAgMS0uMS4xMWwtLjEuMS0uMTEuMS0uMTIuMDktLjEyLjA4LS4xMi4wOC0uMTIuMDctLjEzLjA2LS4xNC4wNi0uMTMuMDZIOS4yM2wtLjE0LjE0YS43NS43NSAwIDAgMS0uMDktLjA5bC0uMTMtLjA2LS4xMy0uMDctLjEyLS4wOC0uMTItLjA4LS4xMi0uMDktLjExLS4xLS4xLS4xYS41Mi41MiAwIDAgMS0uMS0uMTFsLS4xLS4xMS0uMTMtLjExLS4wOC0uMTItLjA4LS4xMi0uMDctLjEzLS4wNy0uMTNhLjY5LjY5IDAgMCAxIDAtLjEzbC0uMDYtLjE0di0uMTNhMSAxIDAgMCAxIDAtLjE0di0xLjQ0YS41Ny41NyAwIDAgMSAwLS4xNHYtLjE0bC4wNi0uMTRhMS4xMiAxLjEyIDAgMCAxIDAtLjEzLjgzLjgzIDAgMCAwIC4wNy0uMTNzIDAtLjA4LjA3LS4xM2wuMDgtLjEyLjA4LS4xMi4wOS0uMTEuMS0uMTEuMS0uMTEuMS0uMS4xMS0uMDQuMTItLjA5LjEyLS4wOS4xMi0uMDcuMTMtLjA4LjE3LS4xMS4xMy0uMDZoLjE0bC4xMy0uMDVoLjg2bTI0Ljc5IDBoNi41N2wuMTQuMDVoLjE0bC4xMy4wNi4xMy4wNi4xMi4wOC4xMy4wNy4xMi4wOS4xMS4wOS4xMS4wOS4xMS4xLjEuMTEuMDkuMTEuMDkuMTEuMDguMTJhLjgzLjgzIDAgMCAxIC4wOC4xMmwuMDcuMTNhLjgzLjgzIDAgMCAxIC4wNy4xM2wuMDYuMTN2LjE0czAgLjA5LjA1LjE0di4xNGEuNTcuNTcgMCAwIDEgMCAuMTR2MS4xNWEuODMuODMgMCAwIDEgMCAuMTV2LjE0czAgLjA5LS4wNS4xM3YuMTRsLS4wNi4xM2EuNTQuNTQgMCAwIDEtLjA3LjEzIDEuNTUgMS41NSAwIDAgMS0uMTUuMjVsLS4wOC4xMi0uMDkuMTEtLjA5LjExLS4xLjExLS4xMS4xLS4xMS4xLS4xMS4wOS0uMTIuMDgtLjEzLjA4LS4xMi4wNy0uMTMuMDYtLjEzLjA2LS4xNC4wNmgtNy42MUwzNCA0OGgtLjEybC0uMTQtLjA2LS4xMy0uMDYtLjEyLS4wNy0uMTItLjA4LS4xMi0uMDgtLjEyLS4wOS0uMTEtLjEtLjEtLjEtLjFhLjUyLjUyIDAgMCAxLS4xLS4xMS41Mi41MiAwIDAgMS0uMS0uMTFsLS4wOS0uMTQtLjA4LS4xMi0uMDgtLjEyLS4wNy0uMTNzIDAtLjA4LS4wNy0uMTNsLS4wNi0uMTNhLjc4Ljc4IDAgMCAwLS4wNS0uMTR2LS4xM2ExIDEgMCAwIDEgMC0uMTR2LS4yOWEuNTkuNTkgMCAwIDAgMC0uMTQuNzYuNzYgMCAwIDAgMC0uMTV2LS4yOWEuNzEuNzEgMCAwIDAgMC0uMTQuNzcuNzcgMCAwIDAgMC0uMTV2LS4yOGEuNTcuNTcgMCAwIDEgMC0uMTR2LS4xNGEuNzguNzggMCAwIDAgLjA1LS4xNGwuMDYtLjEzLjA3LS4xMy4wNy0uMTMuMDgtLjEyLjA4LS4xMi4wOS0uMTEuMS0uMTEuMS0uMTFMMzMgNDNsLjExLS4wOS4xMi0uMDkuMTItLjA5LjEyLS4wNy4xMi0uMDguMTMtLjA2LjE0LS4wNmguMTNsLjE0LS4wNUgzNSIgc3R5bGU9ImZpbGw6I2E3M2Y5NyIvPjxwYXRoIGQ9Ik01Mi42IDQ3Ljc3Yy0xNC44NyAwLTI0Ljc2LTguODQtMjQuNzYtMjAuNjkgMC0xNS40NCAxNC44Ny0yNi4yNCAzMy0yNi4yNGgzMy43N2wtMTIuOSAxMy42OEg1OC40MmMtOC42MyAwLTE0LjE3IDIuOTUtMTQuMTcgMTEuMjIgMCA1LjY4IDQuMDcgOC41NiAxMC43MyA4LjU2aDMzLjY3TDc1Ljg5IDQ3Ljc3Wm04OC45NC0xNy42MWExMjEuMzQgMTIxLjM0IDAgMCAxLTQuNzctMTIuMDZjLTEuNTQgMi4zMS0zLjQ0IDQuNzctOS4wNSAxMmwtMTAgMTNjLTIuNTIgMy4yMi01LjYxIDUuNTQtOS44OSA1LjU0cy03LjM2LTIuMzktNy44Ni03LjNjLTEuMzMtMTMuNDYtMi41Mi0yNy0zLjc4LTQwLjQ3aDE2LjEzbDEuNTQgMTguNTJjLjE0IDEuNC4xNCAyLjg4LjE0IDQuMTRhMzQuMzEgMzQuMzEgMCAwIDEtLjIxIDQuMjFjMS45LTIuODggNS4xOS03LjM3IDguODQtMTIuMjFsNy4yMy05LjYxQzEzMy43NS43NyAxMzYuMjggMCAxNDAuMjEgMHM2LjMxLjcgOC4yNyA1Ljg5bDQuMzUgMTEuMjJjMi4zOSA2LjMyIDIuOTUgOC40MiAzLjg2IDEwLjYuNy0yLjI1IDEuODItNS4wNSAzLjA5LThMMTY3Ljg0Ljg0aDE1LjkybC0xOC41MSA0MC40N2MtMi4yNSA0LjkxLTYuMjUgNy4zLTEwLjM4IDcuMy00LjQyIDAtNi41My0yLjE4LTcuODYtNS41NGwtNS40Ny0xMi45MVptMzkuNyAxNy42MUwxODkuNTIuODRoMTYuMmwtOC4yOCA0Ni45M1ptNTIuNzQgMGMtMTQuNTkgMC0yNS4xOC02Ljg4LTI1LjE4LTE5Ljg1IDAtMTguNjYgMTMtMjcuODUgMzkuNzctMjcuODUgMjAuNyAwIDMxLjIyIDYuMjQgMzEuMjIgMTkuODVhMTguMzUgMTguMzUgMCAwIDEtNC4yOCAxMi4yMWgtMTcuMDVjMy42NS0yLjI1IDQuOTEtNiA0LjkxLTEwLjQ2IDAtNi44Ny01LTcuOTItMTcuMzItNy45Mi0xOC44IDAtMjEgMi0yMSAxMi44MyAwIDYgNC4wNyA3LjcyIDEwLjk0IDcuNzJoMS4yNmEyMS4yNSAyMS4yNSAwIDAgMSAzLjQ0LjIxIDI1Ljc3IDI1Ljc3IDAgMCAxLTYuNTktNC44NGwtMi4xOC0yaDIxLjE4bDIxLjUgMjAuMVoiIHN0eWxlPSJmaWxsOiNlOWU2ZGIiLz48L2c+PC9nPjwvc3ZnPg==");
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center;
  height: 36px;
  width: 210px;
  vertical-align: middle;
}
.cwiq-logo--sm {
  height: 24px;
  width: 140px;
}

/* ==========================================================================
   GLOBAL
   ========================================================================== */
body, .layout-content {
  font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif !important;
  background-color: var(--cwiq-bg-page) !important;
  color: var(--cwiq-text-body) !important;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.container { max-width: 1100px !important; }

h1, h2, h3, h4, h5, h6 {
  font-family: 'Inter', sans-serif !important;
  color: var(--cwiq-text-body);
  letter-spacing: -0.01em;
}

.components-section h2,
.unresolved-incidents h2,
.incidents-list h2 {
  text-transform: uppercase;
  letter-spacing: 0.12em !important;
  font-weight: 600 !important;
  font-size: 0.875rem !important;
  color: #6b7280 !important;
  margin-top: 48px !important;
  margin-bottom: 16px !important;
}

/* ==========================================================================
   MASTHEAD / HEADER — deep aubergine gradient like cwiq.io
   ========================================================================== */
.masthead-container,
.custom-header-container {
  background-color: var(--cwiq-purple) !important;
  background-image:
    /* Subtle magenta glow center-low (mimics cwiq.io radial highlight) */
    radial-gradient(ellipse 1100px 600px at 50% 90%, rgba(167,63,151,0.18) 0%, transparent 65%),
    /* Main aubergine gradient — dark at top, slightly lighter toward bottom */
    linear-gradient(180deg,
      #2D0F35 0%,
      #3A1444 30%,
      #4F1858 70%,
      #5A2161 100%) !important;
  background-size: cover !important;
  background-position: center !important;
  background-repeat: no-repeat !important;
  padding: 0 !important;
  min-height: 0 !important;
  height: auto !important;
  position: relative;
  overflow: hidden;
}

/* ==========================================================================
   STATUS BANNER
   ========================================================================== */
.page-status {
  border-radius: 4px !important;
  border: none !important;
  font-weight: 600 !important;
  padding: 18px 22px !important;
  margin: 32px 0 24px !important;
  box-shadow: 0 1px 3px rgba(0,0,0,0.06) !important;
  font-size: 1rem !important;
  letter-spacing: 0.01em;
  display: flex !important;
  align-items: center !important;
  justify-content: flex-start !important;
  min-height: 64px;
  text-align: left !important;
}
.page-status.status-none     { background-color: var(--cwiq-green)  !important; color:#fff !important; }
.page-status.status-minor    { background-color: var(--cwiq-yellow) !important; color:#fff !important; }
.page-status.status-major    { background-color: var(--cwiq-orange) !important; color:#fff !important; }
.page-status.status-critical { background-color: var(--cwiq-red)    !important; color:#fff !important; }

/* ==========================================================================
   COMPONENTS
   ========================================================================== */
.components-section .component-container {
  background:#fff !important;
  border:1px solid var(--cwiq-border) !important;
  border-radius:4px !important;
  margin-bottom:4px !important;
  transition: border-color 0.15s ease, box-shadow 0.15s ease;
}
.components-section .component-container:hover {
  border-color: var(--cwiq-magenta) !important;
  box-shadow: 0 1px 4px rgba(167,63,151,0.10);
}
.components-section .component-inner-container { padding: 14px 18px !important; }

.component-status { font-weight:500 !important; font-size:0.875rem !important; }
.component-status.status-green   { color: var(--cwiq-green)  !important; }
.component-status.status-yellow  { color: var(--cwiq-yellow) !important; }
.component-status.status-orange  { color: var(--cwiq-orange) !important; }
.component-status.status-red     { color: var(--cwiq-red)    !important; }

.component-container.is-group .name {
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.06em;
  color: var(--cwiq-purple);
  font-size: 0.95rem;
}

/* ==========================================================================
   METRICS
   ========================================================================== */
.metric, .metric-container {
  background:#fff !important;
  border:1px solid var(--cwiq-border) !important;
  border-radius:4px !important;
  padding:18px !important;
  margin-bottom:12px !important;
}
.metric .metric-name, .metric-container .name {
  font-weight:600 !important;
  color: var(--cwiq-text-body) !important;
}
/* Data line — the actual metric values (Highcharts series path) */
.metric .highcharts-graph,
.metric-container .highcharts-graph,
.metric svg path.highcharts-graph,
.metric-container svg path.highcharts-graph {
  stroke: var(--cwiq-magenta) !important;
  stroke-width: 2 !important;
}

/* Filled area under the line */
.metric .highcharts-area,
.metric-container .highcharts-area {
  fill: var(--cwiq-magenta) !important;
  fill-opacity: 0.1 !important;
  stroke: none !important;
}

/* Gridlines, axis lines, tick marks — light, sit in the background */
.metric .highcharts-grid-line,
.metric .highcharts-grid path,
.metric .highcharts-axis-line,
.metric .highcharts-tick,
.metric-container .highcharts-grid-line,
.metric-container .highcharts-grid path,
.metric-container .highcharts-axis-line,
.metric-container .highcharts-tick {
  stroke: #e5e1d6 !important;
  stroke-width: 1 !important;
  opacity: 1 !important;
}

/* Axis labels (time + value text on the chart edges) — soft grey */
.metric .highcharts-axis-labels text,
.metric-container .highcharts-axis-labels text {
  fill: #9ca3af !important;
}

/* Metric moved next to its matching component */
.metric.paired-metric {
  margin: -2px 0 16px 24px !important;
  padding: 12px 18px 16px !important;
  background: #fbf9f5 !important;
  border: 1px solid var(--cwiq-border) !important;
  border-top: none !important;
  border-left: 3px solid var(--cwiq-magenta) !important;
  border-radius: 0 0 4px 4px !important;
}
.metric.paired-metric .metric-name {
  font-size:0.75rem !important;
  font-weight:600 !important;
  text-transform:uppercase;
  letter-spacing:0.08em;
  color:#6b7280 !important;
}
.metric.paired-metric .metric-average {
  font-size:0.875rem !important;
  color:var(--cwiq-magenta) !important;
  font-weight:600 !important;
}
.metric.paired-metric .graph-container,
.metric.paired-metric .highcharts-container,
.metric.paired-metric svg.highcharts-root {
  width: 100% !important;
  max-width: 100% !important;
}

/* ==========================================================================
   UPTIME BARS
   ========================================================================== */
.uptime-day .uptime-day-graphic { border-radius:0 !important; }
.uptime-day .uptime-day-graphic.green { background-color: var(--cwiq-green) !important; }

/* ==========================================================================
   INCIDENTS
   ========================================================================== */
.unresolved-incidents .incident-title,
.incidents-list .incident-title { color: var(--cwiq-purple) !important; font-weight:600 !important; }
.incident-update-text { color: #374151 !important; line-height:1.6 !important; }
.incident-link-state { color: var(--cwiq-magenta) !important; }

/* ==========================================================================
   BUTTONS — dark pill with cream text (matches cwiq.io "Request Trial" CTA)
   ========================================================================== */
.btn, .btn-default, .button,
a.subscribe-btn, #subscribe-btn,
.btn:link, .btn:visited, .btn:active, .btn:focus,
.btn-default:link, .btn-default:visited, .btn-default:active, .btn-default:focus,
.button:link, .button:visited, .button:active, .button:focus {
  background-color: #1a1a1a !important;
  border: none !important;
  color: var(--cwiq-cream) !important;
  border-radius: 999px !important;             /* pill shape like cwiq.io */
  font-weight: 700 !important;
  letter-spacing: 0.05em !important;
  text-transform: none !important;
  font-size: 0.8125rem !important;
  padding: 12px 22px !important;
  transition: background-color 0.15s ease, color 0.15s ease !important;
  box-shadow: none !important;
  text-decoration: none !important;
}
.btn *, .btn-default *, .button * { color: var(--cwiq-cream) !important; }
.btn:hover, .btn-default:hover, .button:hover,
a.subscribe-btn:hover, #subscribe-btn:hover {
  background-color: var(--cwiq-magenta) !important;
  color: #ffffff !important;
}
.btn:hover *, .btn-default:hover *, .button:hover * { color: #ffffff !important; }

/* ==========================================================================
   LINKS
   ========================================================================== */
a, a:visited { color: var(--cwiq-magenta) !important; }
a:hover { color: var(--cwiq-magenta-dark) !important; }

/* ==========================================================================
   FOOTER
   ========================================================================== */
.custom-footer-container {
  background-color: var(--cwiq-purple-dark);
  color: var(--cwiq-cream-dim);
  padding: 40px 0;
  margin-top: 64px;
  border-top: 1px solid rgba(167,63,151,0.15);
}
.custom-footer-container a { color: var(--cwiq-cream-dim) !important; transition: color 0.15s ease; }
.custom-footer-container a:hover { color: var(--cwiq-magenta) !important; }

.powered-by { opacity: 0.5; font-size: 0.7rem !important; }