/*
	Reset Defaults
*/
* {
  margin: 0;
  padding: 0;
  scroll-behavior: smooth; }

a {
  text-decoration: none; }

ul {
  list-style: none; }

/*
	Media Query Mixins
*/
/*
	Define Colors
*/
/*
	Extended Classes
*/
.container, .grid-item, .row .sidebar .sidebar-container, .btn, nav ul #quote::before, section#hero .hero-img, section#services-summary .NCQA-row, section#about .about-container, section#difference .difference-grid .difference-img, section#standard .bar, section#standard .turn-around, section#standard .stats, section#about .container .staff-img, section#sticky-quote a {
  background-color: inherit;
  border-radius: 10px;
  box-shadow: 0 0 4px 0 rgba(35, 35, 35, 0.5); }

.container {
  background-color: #F7F7F7;
  margin: 20px;
  padding: 20px; }
  @media (min-width: 768px) {
    .container {
      margin: 40px;
      padding: 40px; } }

/*
	Global Styling
*/
body {
  font-family: priori-sans, sans-serif;
  background-color: #E2E2E2; }

h1 {
  color: inherit;
  font-size: 60px;
  font-weight: 700; }
  @media (min-width: 768px) {
    h1 {
      font-size: 88px; } }

h2 {
  color: inherit;
  font-size: 48px;
  font-weight: 700; }

h3 {
  color: inherit;
  font-size: 36px;
  font-weight: 700; }

h4 {
  color: inherit;
  font-size: 32px;
  font-weight: 500; }

h5 {
  color: inherit;
  font-size: 24px;
  font-weight: 400; }

p {
  color: #232323;
  font-size: 36px;
  font-weight: 400; }

section {
  margin: 0 auto;
  display: block;
  max-width: 2000px; }

.container h1 {
  color: #232323;
  margin-bottom: 40px; }

.grid-item {
  color: #232323;
  padding: 20px;
  overflow: hidden;
  position: relative; }
  @media (min-width: 768px) {
    .grid-item {
      padding: 40px; } }

.row {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: center; }
  @media (min-width: 1200px) {
    .row {
      flex-direction: row; } }
  .row .main-col {
    flex: 4; }
  .row .sidebar {
    flex: 1;
    position: relative;
    top: 0px;
    margin: 0 20px 20px 20px;
    width: calc(100% - 40px); }
    @media (min-width: 768px) {
      .row .sidebar {
        width: calc(100% - 80px);
        margin: 0 40px 40px 40px; } }
    @media (min-width: 1200px) {
      .row .sidebar {
        position: sticky;
        position: -webkit-sticky;
        top: 40px;
        margin: 0 40px 40px 0; } }
    .row .sidebar .sidebar-container {
      background-color: #0FA5A1;
      margin: 0;
      padding: 20px; }
      @media (min-width: 768px) {
        .row .sidebar .sidebar-container {
          padding: 40px; } }
      .row .sidebar .sidebar-container h2, .row .sidebar .sidebar-container h3 {
        color: #F7F7F7;
        margin-bottom: 20px; }
      .row .sidebar .sidebar-container p {
        color: #F7F7F7;
        font-size: 24px; }
      .row .sidebar .sidebar-container a {
        color: #F7F7F7;
        font-size: 24px;
        display: block; }
      .row .sidebar .sidebar-container a:last-child {
        margin-bottom: 0; }
      @media (hover) {
        .row .sidebar .sidebar-container a:hover {
          text-decoration: underline; } }

.btn {
  color: inherit;
  font-size: 24px;
  font-weight: 700;
  text-transform: uppercase;
  background-color: transparent;
  border: 2px solid #0FA5A1;
  padding: 10px;
  transition: 0.3s ease-in-out; }
  @media (min-width: 768px) {
    .btn {
      font-size: 36px;
      padding: 20px; } }

@media (hover) {
  .btn:hover {
    box-shadow: 0 0 0 4px #0FA5A1; } }

a.text-link {
  color: #0FA5A1;
  font-size: 36px;
  font-weight: 700; }

@media (hover) {
  a.text-link:hover {
    text-decoration: underline; } }

/*
	Navigation
*/
nav {
  width: 100%;
  height: 100px;
  display: flex;
  align-items: center;
  position: relative;
  z-index: 999; }
  nav .logo {
    margin-left: 20px;
    position: absolute;
    left: 0;
    top: 20px; }
    @media (min-width: 768px) {
      nav .logo {
        margin-left: 40px;
        position: relative;
        top: auto; } }
  nav ul {
    width: 100%;
    visibility: hidden; }
    @media (min-width: 768px) {
      nav ul {
        display: flex;
        flex-wrap: wrap;
        align-content: center;
        justify-content: flex-end;
        visibility: visible; } }
    nav ul li {
      margin-left: 0; }
      @media (min-width: 768px) {
        nav ul li {
          margin-left: 40px; } }
      nav ul li a {
        color: #232323;
        font-size: 48px;
        font-weight: 400;
        font-style: normal;
        opacity: 0.9; }
        @media (min-width: 768px) {
          nav ul li a {
            font-size: 24px; } }
      @media (hover) {
        nav ul li a:hover {
          text-decoration: underline;
          opacity: 1; } }
      nav ul li .active {
        text-decoration: underline;
        opacity: 1; }
    @media (min-width: 768px) {
      nav ul .notHome {
        margin-right: 40px; } }
    nav ul #quote a {
      color: #232323;
      font-weight: 400; }
      @media (min-width: 768px) {
        nav ul #quote a {
          color: #F7F7F7;
          font-weight: 700; } }
      @media (min-width: 2000px) {
        nav ul #quote a {
          color: #232323; } }
    nav ul #quote {
      padding: 0 40px;
      position: relative; }
      @media (min-width: 2000px) {
        nav ul #quote {
          padding: 0 40px 0 0; } }
    nav ul #quote::before {
      content: "";
      width: 100%;
      height: auto;
      background-color: #0FA5A1;
      border-radius: 0 0 0 10px;
      position: absolute;
      top: -37px;
      right: 0;
      z-index: -1; }
      @media (min-width: 768px) {
        nav ul #quote::before {
          height: 100vh; } }
      @media (min-width: 2000px) {
        nav ul #quote::before {
          opacity: 0; } }
  nav .nav-bar-icon {
    position: absolute;
    right: 20px;
    top: 34px;
    visibility: visible; }
    @media (min-width: 768px) {
      nav .nav-bar-icon {
        visibility: hidden; } }
  nav .close-btn {
    color: #232323;
    font-size: 48px;
    transform: rotate(45deg);
    position: absolute;
    right: 22px;
    top: 23px;
    visibility: hidden; }

.nav-bar.responsive {
  background-color: #F7F7F7;
  width: 100%;
  height: 100vh;
  position: fixed;
  left: 0;
  top: 0;
  z-index: 9999; }

.nav-bar-ul.responsive {
  text-align: center;
  visibility: visible;
  display: block;
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%); }

.nav-bar-icon.responsive {
  opacity: 0; }

.close-btn.responsive {
  visibility: visible; }

/*
	HOMEPAGE ******************************************************************************************************************
*/
/*
	Hero Section
*/
section#hero {
  width: 100%;
  height: auto; }
  @media (min-width: 768px) {
    section#hero {
      height: calc(100vh - 100px); } }
  section#hero .hero-container {
    margin: 0 20px 20px 20px;
    position: relative; }
    @media (min-width: 768px) {
      section#hero .hero-container {
        margin: 0 40px 40px 40px; } }
  section#hero .hero-img {
    height: calc(100vh - 120px);
    background-image: url("images/hero.jpg");
    background-repeat: no-repeat;
    background-position: center center;
    background-size: cover;
    overflow: hidden;
    min-height: 400px;
    position: relative;
    z-index: 997; }
    @media (min-width: 768px) {
      section#hero .hero-img {
        height: calc(100vh - 140px);
        z-index: 999; } }
    section#hero .hero-img .hero-img-content-container {
      width: 80%;
      margin: 0 auto;
      position: absolute;
      top: 50%;
      left: 50%;
      transform: translate(-50%, -50%);
      text-align: center; }
      @media (min-width: 768px) {
        section#hero .hero-img .hero-img-content-container {
          margin: 40px;
          left: 0;
          top: auto;
          bottom: 20px;
          transform: none;
          text-align: left; } }
      section#hero .hero-img .hero-img-content-container h1 {
        color: #F7F7F7;
        line-height: 0.88;
        margin-bottom: 40px; }
      section#hero .hero-img .hero-img-content-container .btn {
        color: #F7F7F7; }

/*
	Services Section
*/
section#services-summary .NCQA-row {
  width: 100%;
  display: flex;
  align-items: center;
  flex-direction: column;
  position: relative; }
  @media (min-width: 768px) {
    section#services-summary .NCQA-row {
      flex-direction: row; } }
  section#services-summary .NCQA-row .line-container {
    height: 0;
    width: 100%;
    overflow: hidden;
    padding-top: 10px;
    padding-right: 0;
    position: absolute;
    left: 0;
    top: 210px; }
    @media (min-width: 768px) {
      section#services-summary .NCQA-row .line-container {
        width: 0;
        height: 100%;
        overflow: hidden;
        padding-top: 0;
        padding-right: 10px;
        position: absolute;
        top: 0;
        left: 280px; } }
  section#services-summary .NCQA-row .line {
    height: 2px;
    width: 100%;
    box-shadow: 0 0 4px 0 rgba(35, 35, 35, 0.5); }
    @media (min-width: 768px) {
      section#services-summary .NCQA-row .line {
        width: 2px;
        height: 100%; } }
  section#services-summary .NCQA-row .NCQA-seal {
    margin: 20px auto; }
    @media (min-width: 768px) {
      section#services-summary .NCQA-row .NCQA-seal {
        margin: 40px; } }
  section#services-summary .NCQA-row p {
    margin: 20px; }
    @media (min-width: 768px) {
      section#services-summary .NCQA-row p {
        margin: 40px; } }
    section#services-summary .NCQA-row p .underline {
      text-decoration: underline; }

section#services-summary .services-grid {
  display: grid;
  grid-gap: 20px;
  margin: 80px 0; }
  @media (min-width: 768px) {
    section#services-summary .services-grid {
      grid-template-rows: 1fr 1fr;
      grid-template-columns: 1fr 1fr;
      grid-gap: 40px; } }
  section#services-summary .services-grid .grid-item {
    border: 2px solid #0FA5A1;
    transition: 0.3s ease-in-out; }
    section#services-summary .services-grid .grid-item h3 {
      margin-left: 20px;
      position: relative;
      z-index: 999; }
      @media (min-width: 768px) {
        section#services-summary .services-grid .grid-item h3 {
          margin-left: 0; } }
    section#services-summary .services-grid .grid-item h3::before {
      content: "";
      width: 10px;
      height: 10px;
      background-color: #0FA5A1;
      border-radius: 50px;
      position: absolute;
      left: -20px;
      top: 15px;
      z-index: -1;
      transition: 0.6s ease-in-out; }
  @media (hover) {
    section#services-summary .services-grid .grid-item:hover {
      box-shadow: 0 0 0 4px #0FA5A1; } }

section#services-summary .services-attr-grid {
  display: grid;
  grid-gap: 20px;
  margin-top: 160px; }
  @media (min-width: 768px) {
    section#services-summary .services-attr-grid {
      grid-template-rows: 1fr 1fr;
      grid-template-columns: 1fr 1fr;
      grid-gap: 40px; } }
  @media (min-width: 1440px) {
    section#services-summary .services-attr-grid {
      grid-template-rows: 1fr;
      grid-template-columns: 1fr 1fr 1fr 1fr; } }
  section#services-summary .services-attr-grid .grid-item h3 {
    text-align: center; }
  section#services-summary .services-attr-grid .grid-item .service-attr-icon-container {
    width: 200px;
    height: 200px;
    background-color: #F7F7F7;
    border-radius: 50%;
    box-shadow: 0 0 4px 0 rgba(35, 35, 35, 0.5);
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 40px auto;
    position: relative;
    z-index: 9999; }
    section#services-summary .services-attr-grid .grid-item .service-attr-icon-container .service-attr-icon {
      width: 100px;
      height: auto; }
  section#services-summary .services-attr-grid .grid-item .line-container {
    width: 100%;
    overflow: hidden;
    padding-bottom: 10px;
    position: absolute;
    left: 0;
    top: 260px;
    z-index: 1; }
    section#services-summary .services-attr-grid .grid-item .line-container .line {
      width: 100%;
      height: 2px;
      box-shadow: 0 0 4px 0 rgba(35, 35, 35, 0.5); }

/*
	About Section
*/
section#about .about-container {
  padding-bottom: 40px; }
  @media (min-width: 768px) {
    section#about .about-container {
      padding-bottom: 60px; } }
  @media (min-width: 768px) {
    section#about .about-container .about-img {
      height: 600px;
      background-image: url("images/team.jpg");
      background-repeat: no-repeat;
      background-position: center center;
      background-size: cover;
      overflow: hidden;
      border-radius: 10px 10px 0 0;
      display: block; } }
  section#about .about-container .about-mobile-img {
    width: 100%;
    height: auto; }
    @media (min-width: 768px) {
      section#about .about-container .about-mobile-img {
        display: none; } }
  section#about .about-container p {
    margin: 40px 20px; }
    @media (min-width: 768px) {
      section#about .about-container p {
        margin: 40px; } }
  section#about .about-container .btn {
    color: #232323;
    margin: 20px; }
    @media (min-width: 768px) {
      section#about .about-container .btn {
        margin: 40px; } }

/*
	The Difference Section
*/
section#difference .difference-grid {
  display: grid;
  grid-gap: 20px;
  margin-top: 80px; }
  @media (min-width: 768px) {
    section#difference .difference-grid {
      grid-template-rows: 1fr 1fr;
      grid-template-columns: 1fr 1fr;
      grid-gap: 40px; } }
  section#difference .difference-grid .difference-img {
    width: 100px;
    height: auto; }
  section#difference .difference-grid h3 {
    margin: 20px 0; }
    @media (min-width: 768px) {
      section#difference .difference-grid h3 {
        margin: 40px 0; } }

/*
	Our Standard Section
*/
section#standard .bar {
  width: 100%;
  height: 20px;
  background-color: #E2E2E2;
  margin: 20px 0;
  position: relative; }

section#standard .turn-around {
  margin: 20px 0;
  padding: 20px; }
  @media (min-width: 768px) {
    section#standard .turn-around {
      margin: 40px 0;
      padding: 40px; } }
  section#standard .turn-around h3 {
    padding: 20px 0; }
    @media (min-width: 768px) {
      section#standard .turn-around h3 {
        padding: 40px 0; } }
  section#standard .turn-around #gemini-bar {
    width: 75%;
    background-color: #0FA5A1; }
  section#standard .turn-around #comp-bar {
    width: 100%;
    background-color: #E2E2E2; }

section#standard .stats {
  margin: 20px 0;
  padding: 20px; }
  @media (min-width: 768px) {
    section#standard .stats {
      margin: 40px 0;
      padding: 40px; } }
  section#standard .stats .stat::before {
    content: "";
    background-color: #0FA5A1;
    border-radius: 10px;
    width: inherit;
    height: 100%;
    position: absolute;
    left: 0; }
  section#standard .stats #comp-rate::before {
    width: 97%; }
  section#standard .stats #accuracy-rate::before {
    width: 95%; }

/*
	SERVICES PAGE ******************************************************************************************************************
*/
section#services .container {
  margin: 0 20px 20px 20px; }
  @media (min-width: 768px) {
    section#services .container {
      margin: 0 40px 40px 40px; } }
  section#services .container .container {
    margin: 20px 0 0 0; }
    @media (min-width: 768px) {
      section#services .container .container {
        margin: 40px 0 0 0; } }
    section#services .container .container h3 {
      padding-top: 40px; }
    section#services .container .container .col-container {
      display: flex;
      flex-direction: row;
      flex-wrap: wrap;
      align-items: flex-start;
      justify-content: flex-start;
      margin: 20px 20px 0 20px; }
      section#services .container .container .col-container .col-3 {
        margin-right: 40px; }
        @media (min-width: 768px) {
          section#services .container .container .col-container .col-3 {
            margin-right: 120px; } }
      section#services .container .container .col-container ul {
        list-style: circle; }
        section#services .container .container .col-container ul li {
          color: #232323;
          font-size: 24px;
          margin-bottom: 10px; }
        section#services .container .container .col-container ul li:last-child {
          margin-bottom: 0; }

section#services hr {
  border: 2px solid #0FA5A1;
  margin: 20px 0; }

section#services hr#divider {
  border: 2px solid #E2E2E2;
  margin: 40px 0; }

/*
	ABOUT PAGE ******************************************************************************************************************
*/
section#about .container {
  margin: 0 20px 20px 20px; }
  @media (min-width: 768px) {
    section#about .container {
      margin: 0 40px 40px 40px; } }
  section#about .container .container {
    margin: 20px 0 0 0; }
    @media (min-width: 768px) {
      section#about .container .container {
        margin: 40px 0 0 0; } }
  section#about .container .staff-row {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center; }
    @media (min-width: 768px) {
      section#about .container .staff-row {
        flex-direction: row;
        align-items: flex-start; } }
    section#about .container .staff-row .staff-col h2 {
      text-align: center;
      margin-top: 20px; }
      @media (min-width: 768px) {
        section#about .container .staff-row .staff-col h2 {
          text-align: left; } }
    section#about .container .staff-row .staff-col h3 {
      text-align: center; }
      @media (min-width: 768px) {
        section#about .container .staff-row .staff-col h3 {
          text-align: left; } }
    section#about .container .staff-row .col-1 {
      flex: 1; }
    section#about .container .staff-row .col-2 {
      flex: 2; }
    section#about .container .staff-row p {
      margin: 20px 0 0 0; }
      @media (min-width: 768px) {
        section#about .container .staff-row p {
          margin: 0 0 0 40px; } }
  section#about .container .staff-img {
    width: 100%;
    height: auto; }
  section#about .container .employee-grid {
    display: grid;
    grid-template-rows: 1fr 1fr 1fr;
    grid-template-columns: 1fr 1fr;
    grid-gap: 20px;
    margin-top: 20px; }
    @media (min-width: 768px) {
      section#about .container .employee-grid {
        grid-template-rows: 1fr 1fr;
        grid-template-columns: 1fr 1fr 1fr;
        grid-gap: 40px;
        margin-top: 40px; } }
    section#about .container .employee-grid h4 {
      margin-top: 20px; }

/*
	PRIVACY POLICY LINK + PAGE ******************************************************************************************************************
*/
.privacy-policy {
  text-align: center;
  margin: 40px 0;
  padding: 40px 0; }

section#privacy-policy .container {
  margin: 0 20px 20px 20px; }
  @media (min-width: 768px) {
    section#privacy-policy .container {
      margin: 0 40px 40px 40px; } }
  section#privacy-policy .container .container {
    margin: 40px 0 0 0; }
    section#privacy-policy .container .container h2 {
      padding-bottom: 20px; }
    section#privacy-policy .container .container ul {
      list-style: circle;
      padding: 10px 40px; }
      section#privacy-policy .container .container ul li {
        font-size: 36px; }

/*
	Sticky Quote
*/
section#sticky-quote a {
  color: #F7F7F7;
  font-size: 18px;
  font-weight: 700;
  background-color: #0FA5A1;
  border-radius: 10px 0 0 0;
  padding: 20px;
  position: fixed;
  right: 0;
  bottom: 0px;
  transition: 0.3s ease-in-out;
  z-index: 9999; }
  @media (min-width: 768px) {
    section#sticky-quote a {
      z-index: 6; } }

@media (hover) {
  section#sticky-quote a:hover {
    padding-bottom: 40px; } }

/*
	Footer
*/
footer {
  width: 100%;
  height: auto;
  padding: 40px 0;
  background-color: #232323;
  display: flex;
  align-items: center;
  flex-direction: column;
  position: relative;
  z-index: 10000; }
  @media (min-width: 768px) {
    footer {
      height: 160px;
      padding: 0;
      flex-direction: row; } }
  footer .logo-footer {
    width: 80px;
    height: auto;
    margin: 0 0 40px 0; }
    @media (min-width: 768px) {
      footer .logo-footer {
        margin: 0 0 0 40px; } }
  footer ul {
    width: 100%;
    display: flex;
    align-content: center;
    justify-content: center;
    flex-direction: column;
    text-align: center; }
    @media (min-width: 768px) {
      footer ul {
        justify-content: flex-end;
        flex-direction: row; } }
    footer ul li {
      margin: 0 0 40px 0; }
      @media (min-width: 768px) {
        footer ul li {
          margin: 0 40px 0 0; } }
      footer ul li a {
        color: #F7F7F7;
        font-size: 24px;
        font-weight: 400;
        font-style: normal;
        opacity: 0.9;
        transition: 0.3s ease-in-out; }
      @media (hover) {
        footer ul li a:hover {
          text-decoration: underline;
          opacity: 1; } }
      footer ul li .active {
        text-decoration: underline;
        opacity: 1; }
    footer ul li:last-child {
      margin: 0; }
    footer ul #footer-quote {
      height: 100%;
      padding: 0 40px;
      position: relative; }
    @media (min-width: 768px) {
      footer ul #footer-quote::before {
        content: "";
        width: 100%;
        height: 160px;
        background-color: #0FA5A1;
        position: absolute;
        top: -67px;
        right: 0; } }
    footer ul #footer-quote a {
      font-weight: 400;
      opacity: 0.9; }
      @media (min-width: 768px) {
        footer ul #footer-quote a {
          font-weight: 700; } }
