:root {
  --nav-offset: 80px;
}

/* default, will be updated in JS */
#navSpacer {
  height: var(--nav-offset);
}

html {
  scroll-behavior: smooth;
}

/* Keep content from sitting under the fixed navbar on initial load */
main {
  padding-top: var(--nav-offset);
}

body {
  font-size: 16px;
  font-weight: 400;
  line-height: 25px;
  color: #222;
  font-family: "Inter", sans-serif;
  -webkit-font-smoothing: antialiased;
  background-color: #f6f6f6;
}

.Inter {
  font-family: "Inter", sans-serif;
  font-optical-sizing: auto;
  font-style: normal;
}

.Montserrat {
  font-family: "Montserrat", sans-serif;
  font-optical-sizing: auto;
  font-style: normal;
}

._100 {font-weight: 100;} ._200 {font-weight: 200;}  ._300 {font-weight: 300;} ._400 {font-weight: 400;} ._500 {font-weight:500;} ._600 {font-weight: 600;} ._700 {font-weight: 700;} ._800 {font-weight: 800;} ._900 {font-weight: 900;}


h1,
h2,
h3,
h4,
h5,
h6 {
  font-weight: 600;
  margin: 0px;
  font-family: "Montserrat", sans-serif;
  color: #222;
}

h1, .h1 {
      font-size: 2rem;
      font-weight: 300;
}

h2, .h2 {
  font-size: 1.6rem;
  line-height: 1.4;
}

h3, .h3 {
  font-size: 1.3rem;
}

h4, .h4 {
  font-size: 1.12rem;
}

p {
  font-size: 1.1rem;
  line-height: 1.75rem;
}

ul {
  padding: 0;
  margin: 0;
  list-style: none;
}

a {
  transition: all 0.2s ease-in-out 0s;
}

.bg-yellow {
  background-color: #FFFD00;
}

a:focus,
.btn:focus,
.btn:active:focus {
  box-shadow: none;
  outline: 0 none;
}

a,
a:active,
a:focus,
a:active {
  text-decoration: underline;
}

.navbar-nav .nav-link.active,
.navbar-nav .nav-link.show {
  color: #222;
  background-color: #FFFD00;
  border-radius: 4px;
}

.navbar {
  transition: box-shadow .2s ease, border-color .2s ease;
  padding: 1rem 0;
}
/* navigation */

.navbar .navbar-brand {
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  transition: opacity .3s ease;
}

#primaryNav {
  padding: 0 2rem;
}

#primaryNav .nav-link {
  margin: 0.75rem 0;
  padding-left: 1rem;
  padding-right: 1rem;
}


/* === CSS-only Hamburger ↔ X (even spacing, centered) === */
.navbar .navbar-toggler {
  color: #212529;
  /* use #fff on dark navs */
  border: none;
  --bar-w: 22px;
  --bar-h: 2px;
  --bar-gap: 6px;
  --bar-color: currentColor;
  --t: .22s ease;
  padding: .25rem .5rem;
}

.navbar .navbar-toggler-icon {
  position: relative;
  display: inline-block;
  width: var(--bar-w);
  height: calc(3*var(--bar-h) + 2*var(--bar-gap));
  /* 3 lines + 2 gaps */
  /* THREE evenly spaced lines */
  background:
    linear-gradient(var(--bar-color) 0 0) center top / 100% var(--bar-h) no-repeat,
    linear-gradient(var(--bar-color) 0 0) center center / 100% var(--bar-h) no-repeat,
    linear-gradient(var(--bar-color) 0 0) center bottom / 100% var(--bar-h) no-repeat;
  transition: background var(--t);
}

/* Hidden X bars (appear when open) */
.navbar .navbar-toggler-icon::before,
.navbar .navbar-toggler-icon::after {
  content: "";
  position: absolute;
  left: 50%;
  top: 50%;
  width: var(--bar-w);
  height: var(--bar-h);
  background: var(--bar-color);
  border-radius: var(--bar-h);
  transform-origin: center;
  transform: translate(-50%, -50%) rotate(0) scaleX(0);
  transition: transform var(--t);
}

/* OPEN state: hide hamburger, show X */
.navbar .navbar-toggler[aria-expanded="true"] .navbar-toggler-icon {
  background: none;
}

.navbar .navbar-toggler[aria-expanded="true"] .navbar-toggler-icon::before {
  transform: translate(-50%, -50%) rotate(45deg) scaleX(1);
}

.navbar .navbar-toggler[aria-expanded="true"] .navbar-toggler-icon::after {
  transform: translate(-50%, -50%) rotate(-45deg) scaleX(1);
}

/* Reduced motion */
@media (prefers-reduced-motion: reduce) {

  .navbar .navbar-toggler-icon,
  .navbar .navbar-toggler-icon::before,
  .navbar .navbar-toggler-icon::after {
    transition: none;
  }
}

/* Shadow style when page is scrolled */
.navbar.is-scrolled {
  box-shadow: 0 8px 24px rgba(0, 0, 0, .08);
}

.section {
  padding: 40px 0;
}

/* comparison table  */
.comparison-table {
    display: grid;
    grid-template-columns: 1fr 1fr;
    text-align: center;
    border-radius: 1rem;
    overflow: hidden;
  }
  .comparison-table h3 {
    color: #fff;
  }
  .comparison-header {
    background-color: #222222;
    color: #fff;
    font-weight: 600;
    padding: 1.8rem 1rem;
  }
  .highlight-column {
    background-color: #FFFD00;
    color: #000;
    font-weight: 500;
    padding: 1.8rem 1rem;
    border-bottom: 1px solid #0000004b;
  }
  .cell {
    padding: 1.8rem 1rem;
    border-bottom: 1px solid #c4c4c4;
  }
  .icon {
    display: block;
    font-size: 18px;
    margin-bottom: 5px;
  }

/* end comparison table  */

.how-it-works .card {
  overflow: hidden;
  border: none;
  box-shadow: none !important;
  background-color: #f6f6f6;
}

.card h4 {
  font-weight: 600;
  padding-bottom: .5rem;
}

/*-- custom heading --*/
.text-center {
  text-align: center;
}


.subheading {
  padding-bottom: 1rem;
  text-transform: capitalize;
  font-weight: 600;
  font-size: 2rem;
  line-height: 135%;
}

.btn {
  border-radius: 0;
  text-decoration: none !important;
}

.btn-main {
  color: #000;
  border-radius: 30px;
  border: 3px solid #FFFD00;
  font-size: 18px;
  font-weight: 500;
  padding: 1rem 2rem;
  display: inline-block;
  background-color: #FFFD00;
  box-shadow: 0 15px 40px #ffff0078;
}
.btn-main:hover, .btn-main:focus {
  background-color: #FFFD00;
  border: 3px solid #222;
  box-shadow: none;
}
.btn-main:active, .btn-main .active, .btn-main.active,
.btn:active, .btn .active, .btn.active  {
  background-color: #000 !important;
  color: #FFFD00 !important;
  border-color: #000 !important;
  box-shadow: none;
}

.btn-main-sm {
  padding: 12px 35px;
  text-transform: uppercase;
  font-size: 14px;
  font-weight: bold;
}

.btn-main-dark {
  background:none;
  color: #222;
  border-color: #222;
}
.btn-main-dark:hover {
  background-color: #000;
  color: #FFFD00;
  border-color: #000;
}


.form-control {
  display: block;

}
.form-control::-moz-placeholder,
.form-control::placeholder {
  font-size: 80%;
}

textarea.form-control {
  height: 150px;
}

.form-floating>label {
  left: 0.5rem;
}

footer {
  text-align: center;
  padding: 50px 0px;
  border-top: 1px solid #ddd;
}

footer .footer-logo {
  display: block;
}

footer p.copyright-text {
  font-weight: 300;
  font-size: 12px;
  margin-top: 15px;
}

footer p.copyright-text a {
  color: #282828;
}

.footer-menu li a {
  color: #222;
  font-size: .75rem;
}

/* Small devices (landscape phones, 576px and up) */

@media (min-width: 576px) {
  
}



/* Medium devices (tablets, 768px and up) */

@media (min-width: 768px) {
  
}



/* Large devices (desktops, 992px and up) */

@media (min-width: 992px) {

  .navbar .navbar-brand {
      position: static;
      transform: none;
    }
  #primaryNav .nav-link {
      margin: 0;
    }

}



/* X-Large devices (large desktops, 1200px and up) */

@media (min-width: 1200px) { 
 }



/* XX-Large devices (larger desktops, 1400px and up) */

@media (min-width: 1400px) { 
  h1, .h1 {
    font-size: 3.5rem;
    line-height: 56px;
  }

  h2, .h2 {
    font-size: 1.75rem;
    line-height: 35px;
  }

  h3, .h3 {
    font-size: 1.5rem;
    line-height: 25px;
  }

  h4,.h4 {
    font-size: 1.25rem;
    line-height: 24px;
    font-weight: 400;
  }
}

