@import url('https://fonts.googleapis.com/css2?family=Kalam:wght@300;400;700&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Edu+SA+Beginner:wght@400..700&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Pompiere&display=swap');

.kalam-light {
  font-family: "Kalam", cursive;
  font-weight: 300;
  font-style: normal;
}

.kalam-regular {
  font-family: "Kalam", cursive;
  font-weight: 400;
  font-style: normal;
}

.kalam-bold {
  font-family: "Kalam", cursive;
  font-weight: 700;
  font-style: normal;
}

/*
// <weight>: Use a value from 400 to 700
// <uniquifier>: Use a unique and descriptive class name
*/

.edu-sa-beginner-<uniquifier> {
  font-family: "Edu SA Beginner", cursive;
  font-optical-sizing: auto;
  font-weight: <weight>;
  font-style: normal;
}

.pompiere-regular {
  font-family: "Pompiere", sans-serif;
  font-weight: 400;
  font-style: normal;
}

/* GLOBAL STYLES
-------------------------------------------------- */

body {
  color: #1C1C1C;
  text-rendering: optimizelegibility;
  font-family: "Kalam", cursive;
  background: #f3f3f3;
    background-image: -moz-linear-gradient(top, #f3f3f3, #e1e1e1);
    background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#f3f3f3), to(#e1e1e1));
    background-image: -webkit-linear-gradient(top, #f3f3f3, #e1e1e1);
    background-image: -o-linear-gradient(top, #f3f3f3, #e1e1e1);
    background-image: linear-gradient(to bottom, #f3f3f3, #e1e1e1);
}

.btn {
  text-shadow: 1px 1px rgba(0, 0, 0, 0.7);
  color: #1C1C1C;
  font-size: 22px;
  background: #f3f3f3;
    background-image: -moz-linear-gradient(top, #f3f3f3, #e1e1e1);
    background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#f3f3f3), to(#e1e1e1));
    background-image: -webkit-linear-gradient(top, #f3f3f3, #e1e1e1);
    background-image: -o-linear-gradient(top, #f3f3f3, #e1e1e1);
    background-image: linear-gradient(to bottom, #f3f3f3, #e1e1e1);
  border-color: rgba(56, 56, 56, 0);
  font-family: "Kalam", cursive;
}

.btn:hover {
  text-decoration: none;
  background: #ca082a;
  color: #FFFFFF;
    background-image: -moz-linear-gradient(top, #ca082a, #4e0000);
    background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#ca082a), to(#4e0000));
    background-image: -webkit-linear-gradient(top, #ca082a, #4e0000);
    background-image: -o-linear-gradient(top, #ca082a, #4e0000);
    background-image: linear-gradient(to bottom, #ca082a, #4e0000);
  border-color: rgba(56, 56, 56, 0);
}

p {
  font-family: "Pompiere", sans-serif;
}

h1 {
  font-family: "Kalam", cursive;
}

a {
  text-decoration: none;
}

a:hover {
  text-decoration: none;
}

.profile-picture {
  width: 100%;
  height: auto;
  display: block;
  position: relative;
}

.services-list {
  font-size: 20px;
  list-style: none;
  font-family: "Kalam", cursive;
  line-height: 2;
  color: #1C1C1C;
}

/* FLASHING CONTENT
---------------------------------------------------*/

.flash:hover {
   animation-name: flash;
    animation-duration: 1.2s;
    animation-timing-function: linear;
    animation-iteration-count: infinite;
    animation-direction: alternate;
    animation-play-state: running;
}

@-webkit-keyframes flash {
  0% { -webkit-text-shadow: 0 0 5px #000000; }
  50% { -webkit-text-shadow: 0 0 10px #000000; }
  100% { -webkit-text-shadow: 0 0 5px #000000; }
}

@-moz-keyframes flash {
  0% { -moz-text-shadow: 0 0 5px #000000; }
  50% { -moz-text-shadow: 0 0 10px #000000; }
  100% { -moz-text-shadow: 0 0 5px #000000; }
}

@-o-keyframes flash {
  0% { text-shadow: 0 0 5px #000000; }
  50% { text-shadow: 0 0 10px #000000; }
  100% { text-shadow: 0 0 5px #000000; }
}

@keyframes flash {
  0% { text-shadow: 0 0 5px #000000; }
  50% { text-shadow: 0 0 10px #000000; }
  100% { text-shadow: 0 0 5px #000000; }
}

/* CUSTOMIZE THE CAROUSEL
-------------------------------------------------- */

/* Carousel base class */
.carousel {
  height: 800px;
  margin-bottom: 60px;
  position: absolute;
  top: 0px;
  left: 0px;
  display: block;
  width: 100%;
  z-index: 2;
}
/* Since positioning the image, we need to help out the caption */
.carousel-caption {
  z-index: 10;
  top: 12%;
}
.carousel-style-target {
  font-style: italic;
}
.carousel-control {
  z-index: 20;
}
/* Declare heights because of positioning of img element */
.carousel .item {
  height: 800px;
  background-color: #777;
}
.carousel-inner {
    z-index: 3;
    display: block;
    width: 100%;
    position: relative;
}
.carousel .item {
    background-color: rgba(0, 0, 0, 0.0);
}
.carousel-inner > .item > img {
  position: absolute;
  top: 0;
  left: 0;
  min-width: 100%;
  height: 550px;
}

h1.carousel-title {
  font-family: "Kalam", cursive;
  color: #FFFFFF;
  text-shadow: 2px 2px #000000;
  font-size: 50px;
  padding: 0px;
  margin: 0px;
}

/* CONTENT SEGMENT
-------------------------------------------------- */

.top-screen {
  height: 800px;
  float: left;
  position: relative;
  display: block;
  width: 100%;
  background: url(darken-tile.png) repeat center center;
}

.top-box {
  float: left;
  position: relative;
  display: block;
  width: 100%;
}

.content-segment {
  width: 100%;
  float: left;
  display: block;
}
.extended-segment {
  position: absolute;
  top: 0px;
  left: 0px;
  display: block;
  width: 100%;
  z-index: 2;
}
.middle-white {
  background: #FFFFFF;
  -moz-box-shadow: inset 2px 2px 5px rgba(0,0,0,0.6);
  -webkit-box-shadow: inset 2px 2px 5px rgba(0,0,0,0.6);
  box-shadow: inset 2px 2px 5px rgba(0,0,0,0.6);
}
.left-menu {
  list-style: none;
  padding: 40px 0px 0px 0px;
  margin: 0px 0px 0px 0px;
  display: block;
  height: 100%;
}
h1.menu-heading {
  font-size: 30px;
  background: #f3f3f3;
    background-image: -moz-linear-gradient(top, #f3f3f3, #e1e1e1);
    background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#f3f3f3), to(#e1e1e1));
    background-image: -webkit-linear-gradient(top, #f3f3f3, #e1e1e1);
    background-image: -o-linear-gradient(top, #f3f3f3, #e1e1e1);
    background-image: linear-gradient(to bottom, #f3f3f3, #e1e1e1);
  border: 1px solid #333333;
  color: #C3C3C3;
  text-align: center;
  padding: 20px;
  margin: 0px 0px 20px 0px;
  border-radius: 6px;
}
li.left-menu-item {
  font-size: 22px;
  font-family: "Kalam", cursive;
  background: #f3f3f3;
    background-image: -moz-linear-gradient(top, #f3f3f3, #e1e1e1);
    background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#f3f3f3), to(#e1e1e1));
    background-image: -webkit-linear-gradient(top, #f3f3f3, #e1e1e1);
    background-image: -o-linear-gradient(top, #f3f3f3, #e1e1e1);
    background-image: linear-gradient(to bottom, #f3f3f3, #e1e1e1);
  border: 1px solid #333333;
  color: #C3C3C3;
  text-align: center;
  padding: 15px;
  margin: 0px 0px 20px 0px;
  border-radius: 6px;
  text-decoration: none;
}
li.left-menu-item:hover {
  color: #000000;
  background: #f3f3f3;
    background-image: -moz-linear-gradient(top, #f3f3f3, #e1e1e1);
    background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#f3f3f3), to(#e1e1e1));
    background-image: -webkit-linear-gradient(top, #f3f3f3, #e1e1e1);
    background-image: -o-linear-gradient(top, #f3f3f3, #e1e1e1);
    background-image: linear-gradient(to bottom, #f3f3f3, #e1e1e1);
  border-color: rgba(56, 56, 56, 0);
  text-decoration: none;
}
.social_icons {
    font-size: 55px;
    text-align: center;
    padding-top: 20px;
    margin-top: 15px;
}
a.social-icon {
  color: #1C1C1C;
  text-shadow: 1px 1px #333333;
}
a.social-icon:hover {
  color: #ca082a;
  text-shadow: 2px 2px #000000;
}
.middle-red-promo {
  width: 100%;
  float: left;
  display: block;
  background: #ca082a;
  color: #FFFFFF;
    background-image: -moz-linear-gradient(top, #ca082a, #4e0000);
    background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#ca082a), to(#4e0000));
    background-image: -webkit-linear-gradient(top, #ca082a, #4e0000);
    background-image: -o-linear-gradient(top, #ca082a, #4e0000);
    background-image: linear-gradient(to bottom, #ca082a, #4e0000);
  -moz-box-shadow: 0px -2px 5px rgba(0,0,0,0.6), 2px 0px 5px rgba(0,0,0,0.6);
  -webkit-box-shadow: 0px -2px 5px rgba(0, 0, 0, 0.6), 2px 0px 5px rgba(0,0,0,0.6);
  box-shadow: 0px -2px 5px rgba(0, 0, 0, 0.6), 2px 0px 5px rgba(0,0,0,0.6);
}
.red-bar-letter {
    float: left;
    display: block;
    width: 30%;
    position: relative;
    height: auto;
    padding: 20% 0;
}
.supplement-bar {
  width: 100%;
  float: left;
  display: block;
  background: #FFFFFF;
  -moz-box-shadow: inset 2px 2px 5px rgba(0,0,0,0.6), inset 0px -2px 5px rgba(0,0,0,0.6);
  -webkit-box-shadow: inset 2px 2px 5px rgba(0,0,0,0.6), inset 0px -2px 5px rgba(0,0,0,0.6);
  box-shadow: inset 2px 2px 5px rgba(0,0,0,0.6), inset 0px -2px 5px rgba(0,0,0,0.6);
}
.white-bar {
  width: 100%;
  float: left;
  display: block;
  padding: 35px 0px 65px 0px;
  background: #333333;
    background-image: -moz-linear-gradient(top, #333333, #1C1C1C);
    background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#333333), to(#1C1C1C));
    background-image: -webkit-linear-gradient(top, #333333, #1C1C1C);
    background-image: -o-linear-gradient(top, #333333, #1C1C1C);
    background-image: linear-gradient(to bottom, #333333, #1C1C1C);
  border-bottom: 1px solid rgba(56, 56, 56, 0);
  border-top: 1px solid #1C1C1C;
}
.black-bar {
  width: 100%;
  float: left;
  display: block;
  background: #f3f3f3;
    background-image: -moz-linear-gradient(top, #f3f3f3, #e1e1e1);
    background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#f3f3f3), to(#e1e1e1));
    background-image: -webkit-linear-gradient(top, #f3f3f3, #e1e1e1);
    background-image: -o-linear-gradient(top, #f3f3f3, #e1e1e1);
    background-image: linear-gradient(to bottom, #f3f3f3, #e1e1e1);
  -moz-box-shadow: 0px -2px 5px rgba(0,0,0,0.6);
  -webkit-box-shadow: 0px -2px 5px rgba(0,0,0,0.6);
  box-shadow: 0px -2px 5px rgba(0,0,0,0.6);
}
.main-image {
    float: left;
    width: 100%;
    position: relative;
    display: block;
    border-radius: 250px 250px 250px;
    box-shadow: 1px 1px 4px #000000;
}
.main-content-spacer {
  width: 100%;
  display: block;
  position: relative;
  padding: 100px 0px 100px 0px;
}
.red-content-spacer {
  width: 100%;
  display: block;
  position: relative;
  padding: 50px 0px 45px 0px;
}
.last-content {
  padding-bottom: 40px;
}

h2.main-page-title {
  color: #333333;
  margin: 0px 0px 30px 0px;
  padding: 5px 0px 5px 0px;
  font-size: 50px;
  text-shadow: 0px 0px rgba(0, 0, 0, 0.0);
  text-align: center;
}

p.page-content {
  font-size: 35px;
  color: #333333;
  font-family: "Pompiere", sans-serif;
  text-shadow: 0px 0px rgba(0, 0, 0, 0.0);
  line-height: 1.0;
  font-style: italic;
}

p.red-page-content {
  font-size: 21px;
  color: #FFFFFF;
  font-family: "Pompiere", sans-serif;
  text-shadow: 2px 2px #000000;
}

.main-page-title {
  font-size: 20px;
  color: #FFFFFF;
  font-family: "Kalam", cursive;
  text-shadow: 2px 2px #000000;
  padding: 10px 0px 5px 0px;
  margin: 0px;
}
.slogan-line {
  font-size: 36px;
  color: #333333;
  font-family: "Edu SA Beginner", cursive;
  text-shadow: 0px 0px rgba(0, 0, 0, 0.0);
  text-transform: uppercase;
  line-height: 2.0;
  font-style: normal;
  text-align: center;
}
/* MARKETING CONTENT
-------------------------------------------------- */

/* Pad the edges of the mobile views a bit */
.marketing {
  padding-right: 15px;
  padding-left: 15px;
}

/* Center align the text within the three columns below the carousel */
.marketing .col-lg-4 {
  margin-bottom: 20px;
  text-align: center;
}
.marketing h2 {
  font-weight: normal;
}
.marketing .col-lg-4 p {
  margin-right: 10px;
  margin-left: 10px;
}

img.service-image {
    width: 100%;
    padding: 0px 25% 0px 25%;
    float: left;
    position: relative;
    display: block;
}

.segment-title {
  text-align: center;
}

.segment-content {
  text-align: center;
  font-size: 24px;
}

.page-button {
  text-shadow: 0 0 0 BLACK;
  width: 100%;
}

/* Contact Form
-------------------------------------------------- */

.contact-form {
  padding-top: 15px;
  width: 100%;
  height: auto;
  display: block;
  position: relative;
}


/* Featurettes
------------------------- */

.column-image {
  width: 100%;
  height: auto;
  display: block;
  position: relative;
}


/* FOOTER MENU
-------------------------- */
.first-listing {
  border-radius: 4px 4px 0px 0px;
  border-bottom: 1px solid rgba(0, 0, 0, 0.2);
}

.prior-listing {
  border-bottom: 1px solid rgba(0, 0, 0, 0.2);
}

.last-option {
  border-bottom: none;
  border-radius: 0px 0px 4px 4px;
}

a.terms-text {
  font-size: 15px;
  text-decoration: none;
  color: #1C1C1C;
  font-family: "Kalam", cursive;
}

a.menu-item {
  font-size: 18px;
  color: inherit;
  line-height: 1.4;
}

a.menu-item:hover {
  color: #FFFFFF;
  text-decoration: none;
}

.subject-menu-title {
  font-family: "Kalam", cursive;
  font-size: 24px;
  color: #FFFFFF;
  text-align: center;
  margin: 0px auto;
  padding: 10px 0px 5px 0px;
  width: 100%;
  float: left;
  text-shadow: 2px 2px #000000;
}

.social-media-text {
  font-family: "Kalam", cursive;
  color: #1C1C1C;
  font-size: 18px;
  width: 100%;
  text-align: center;
}

a.subject-menu-title:hover {
  color: #ca082a;
  text-decoration: none;
}

p.footer-black-text {
  color: #1C1C1C;
  text-shadow: 0px 0px rgba(0, 0, 0, 0.0);
  font-size: 22px;
}

ul.foot-subject-menu {
  float: left;
  display: block;
  position: relative;
  width: 80%;
  padding: 0px;
  margin: 0px 10%;
  list-style: none;
  background: #f3f3f3;
    background-image: -moz-linear-gradient(top, #f3f3f3, #e1e1e1);
    background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#f3f3f3), to(#e1e1e1));
    background-image: -webkit-linear-gradient(top, #f3f3f3, #e1e1e1);
    background-image: -o-linear-gradient(top, #f3f3f3, #e1e1e1);
    background-image: linear-gradient(to bottom, #f3f3f3, #e1e1e1);
  border-radius: 4px;
box-shadow: 4px 4px 4px rgba(0, 0, 0, 0.7);
}

li.service-groups {
  color: #1C1C1C;
  text-align: center;
  margin: 0px auto;
  padding: 10px 0px;
  line-height: 1.2;
}

.service-groups:hover {
  background: #ca082a;
  color: #FFFFFF;
    background-image: -moz-linear-gradient(top, #ca082a, #4e0000);
    background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#ca082a), to(#4e0000));
    background-image: -webkit-linear-gradient(top, #ca082a, #4e0000);
    background-image: -o-linear-gradient(top, #ca082a, #4e0000);
    background-image: linear-gradient(to bottom, #ca082a, #4e0000);
  text-decoration: none;
}

ul.foot-menu {
  list-style: none;
  padding: 0px;
  margin: 0px;
  width: 100%;
  display: block;
}

img.menu-foot-logo {
  margin: 0px auto;
}

li.privacy-links {
  width: 33%;
  float: left;
  position: relative;
  text-align: center;
  border-right: 1px solid #333333;
}

li.last-link {
  border: none;
}

.footer-license {
    display: block;
    position: relative;
    float: left;
    padding-top: 15px;
}

/* FOOTER BAR
------------------------- */

.footer-sub {
  width: 100%;
  position: fixed;
  color: #1C1C1C;
  text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25);
  bottom: 0px;
  left: 0px;
  right: 0px;
  float: left;
  background: #f3f3f3;
    background-image: -moz-linear-gradient(top, #f3f3f3, #e1e1e1);
    background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#f3f3f3), to(#e1e1e1));
    background-image: -webkit-linear-gradient(top, #f3f3f3, #e1e1e1);
    background-image: -o-linear-gradient(top, #f3f3f3, #e1e1e1);
    background-image: linear-gradient(to bottom, #f3f3f3, #e1e1e1);
  border-top: 1px solid rgba(56, 56, 56, 0);
  z-index: 9999;
  -moz-box-shadow: 0px -2px 5px rgba(0,0,0,0.6);
  -webkit-box-shadow: 0px -2px 5px rgba(0,0,0,0.6);
  box-shadow: 0px -2px 5px rgba(0,0,0,0.6);
}

.footer-text {
  text-align: center;
  padding-top: .4%;
  padding-bottom: .4%;
  font-size: 14px;
  letter-spacing: .5px;
}

a.footer-link {
  color: #1C1C1C;
  text-decoration: none;
}

/* FORM STYLES
-------------------------------------------------- */

.appnitro {
  padding: 0px;
  margin: 0px;
}



/* RESPONSIVE CSS
-------------------------------------------------- */

@media (min-width: 768px) {

  /* Remove the edge padding needed for mobile */
  .marketing {
    padding-right: 0;
    padding-left: 0;
  }

  /* Navbar positioning foo */
  .navbar-wrapper {
    margin-top: 20px;
  }
  .navbar-wrapper .container {
    padding-right: 15px;
    padding-left:  15px;
  }
  .navbar-wrapper .navbar {
    padding-right: 0;
    padding-left:  0;
  }

  /* The navbar becomes detached from the top, so we round the corners */
  .navbar-wrapper .navbar {
    border-radius: 4px;
  }

  /* Bump up size of carousel content */
  .carousel-caption p {
    margin-bottom: 20px;
    font-size: 30px;
    line-height: 1.4;
    text-shadow: 2px 2px #000000;
  }

  .featurette-heading {
    font-size: 50px;
  }
}

@media (min-width: 992px) {
  .featurette-heading {
    margin-top: 120px;
  }
}
