:root {
    /*--superphonic-dark-blue: #1f4855;*/
    --superphonic-dark-blue: #8047b2;
    --superphonic-paper-purple: #8047b2;
    --superphonic-dark-purple: #4a2a67;
    --superphonic-blue: #40b4da;
    --superphonic-yellow: #f1ca3c;
    --superphonic-gray: #d9d9d9;
    --paper-blue: #7cd6f4;
    --paper-green: #96f47c;
    --paper-yellow: rgb(251, 226, 83);
    --paper-red: rgb(251, 91, 83);
}

@font-face {
    font-family: 'League Spartan';
    font-style: normal;
    font-weight: 400;
    font-display: swap;
    src: url('../fonts/LeagueSpartan/LeagueSpartan.woff');
    unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

/* General Body and Text Styles */
html, body {
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
    background-color: #fafafa;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    text-rendering: optimizeLegibility;
}



a, .btn-link {
    color: var(--paper-blue);
}

.btn-primary {
    color: #fff;
    /* background-color: var(--paper-blue); */
    background-color: var(--superphonic-paper-purple);
    border-color: var(--superphonic-dark-blue);
    font-weight: bold;
    border-radius: 0.5rem;
    padding-left: 1.5rem;
    padding-right: 1.5rem;
    min-width: 8rem;
}

.btn-primary:disabled,
.btn-primary[disabled],
.btn-primary[disabled]:hover {
    color: #aaa;
    background-color: var(--superphonic-blue);
    border-color: #6dbcd7;
    box-shadow: none;
    font-weight: normal;
}

.btn-primary:hover {
    color: #fff;
    border-color: var(--superphonic-dark-purple);
    background-color: var(--superphonic-dark-purple);
}

.btn-secondary {
    border-color: var(--superphonic-dark-purple);
    color: #fff !important;
}

.btn-secondary:hover {
    background: var(--superphonic-blue);
    color: #fff;
}

.btn-outline-secondary {
    min-width: 8rem;
}



.btn-danger {
    background-color: var(--paper-red);
    color: rgb(106, 39, 35);
    border-color: rgb(203, 75, 68);
    font-weight: bold;
    border-radius: 0.5rem;
    padding-left: 1.5rem;
    padding-right: 1.5rem;
    min-width: 8rem;
}

.bkg {
    background:  linear-gradient(to bottom, transparent, #fff), linear-gradient(to right bottom, rgb(252,240,241), #e9f0f3, #fff, rgb(252,240,241), #e9f0f3, #fff);
}

span.bg-gradient {
    background-color: #7cd6f4 !important;
    
}

.text-glow {
    text-shadow: 0 0 10px rgb(192 219 255 / 55%), 0 0 2px rgb(65 120 255 / 14%);
}

.blast {
    cursor:  pointer;
}

.text-gradient {
    background: linear-gradient(to right, #30CFD0, #c43ad6);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}

.home-hero-subtitle {
    font-weight: normal;
    color: #222;
}

.home-hero-cta {
    margin-bottom:15px
}

#how-it-works .list-group-item {
    font-size: larger;
}


.feature-icon svg {
    color: #673ab7;
}


.product-list-check {
    color: #3fb4da;
    padding-right:1rem;
}

.text-gradient {
    background: linear-gradient(to right, #30CFD0, #c43ad6);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}





.home-image {
    width: 7rem;
}

.home-logo {
    width: 3rem;
}







.app-badge-google {
  width: 200px;      /* Sets the default width */
  min-width: 120px;  /* Prevents it from getting too small */
  height: auto;      /* img-fluid normally does this, but it's good to be explicit */
}

/* You might want one for the Apple badge, too */
.app-badge-apple {
  width: 160px;
  min-width: 120px;
  height: auto;
}




/*
 * =========================================
 * Phone Mockup Styles
 * =========================================
 */

.phone-mockup {
  /* Centers the phone frame in the column */
  display: flex;
  justify-content: center;
  align-items: center;
  padding-top: 1.5rem; /* Extra space for the notch */
}

.phone-frame {
  position: relative;
  max-width: 320px; /* Set the max width of the phone */
  width: 100%;
  
  /* The phone 'bezel' */
  background: #000;
  border-radius: 40px; /* Rounded corners for the phone */
  padding: 12px; /* This creates the black border around the video */
  
  /* I copied this shadow from your #card-example to match your site's style */
  box-shadow: rgba(31,72,85, 0.4) 5px 5px, 
              rgba(31,72,85, 0.3) 10px 10px, 
              rgba(31,72,85, 0.2) 15px 15px, 
              rgba(31,72,85, 0.1) 20px 20px, 
              rgba(31,72,85, 0.05) 25px 25px;
}

/* This creates the 'notch' at the top */
.phone-frame::before {
  content: '';
  position: absolute;
  top: 0px;
  left: 50%;
  transform: translateX(-50%);
  width: 100px;
  height: 25px;
  background: #000;
  border-bottom-left-radius: 15px;
  border-bottom-right-radius: 15px;
  z-index: 10;
}

.app-video {
  width: 100%;
  height: auto;
  display: block;
  
  /* This rounds the video corners to fit inside the frame's padding */
  border-radius: 28px; 
}