/* CSS RESET */
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, footer, header, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font: inherit;
  vertical-align: baseline; }

/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section {
  display: block; }

body {
  line-height: 1; }

ol, ul {
  list-style: none; }

blockquote, q {
  quotes: none; }

blockquote:before, blockquote:after,
q:before, q:after {
  content: '';
  content: none; }

table {
  border-collapse: collapse;
  border-spacing: 0; }

/* ****************************************************** */
@font-face {
  font-family: 'showcasesans';
  src: url("fonts/showcase/latinotype_-_showcasesans-webfont.woff2") format("woff2"), url("fonts/showcase/latinotype_-_showcasesans-webfont.woff") format("woff");
  font-weight: normal;
  font-style: normal; }

@font-face {
  font-family: 'showcasesans_mini';
  src: url("fonts/showcase/latinotype_-_showcasesansmini-webfont.woff2") format("woff2"), url("fonts/showcase/latinotype_-_showcasesansmini-webfont.woff") format("woff");
  font-weight: normal;
  font-style: normal; }

@font-face {
  font-family: 'showcaseslab';
  src: url("fonts/showcase/latinotype_-_showcaseslab-webfont.woff2") format("woff2"), url("fonts/showcase/latinotype_-_showcaseslab-webfont.woff") format("woff");
  font-weight: normal;
  font-style: normal; }

@font-face {
  font-family: 'museo_sans500';
  src: url("fonts/museosans/museosans_500-webfont.woff2") format("woff2"), url("fonts/museosans/museosans_500-webfont.woff") format("woff");
  font-weight: normal;
  font-style: normal; }

@font-face {
  font-family: 'museo_sans300';
  src: url("fonts/museosans/museosans-300-webfont.woff2") format("woff2"), url("fonts/museosans/museosans-300-webfont.woff") format("woff");
  font-weight: normal;
  font-style: normal; }

@font-face {
  font-family: 'museo_sans700';
  src: url("fonts/museosans-bold/museosans-700-webfont.woff2") format("woff2"), url("fonts/museosans-bold/museosans-700-webfont.woff") format("woff");
  font-weight: normal;
  font-style: normal; }

/* ******************************************************* */
body {
  background: url(images/background.jpg) no-repeat center center fixed;
  -webkit-background-size: cover;
  -moz-background-size: cover;
  -o-background-size: cover;
  background-size: cover;
  font-family: showcasesans_mini; }
  @media screen and (max-width: 900px) {
    body {
      overflow-x: hidden; } }
  body.lighter {
    background: url(images/background_35.jpg) no-repeat center center fixed;
    -webkit-background-size: cover;
    -moz-background-size: cover;
    -o-background-size: cover;
    background-size: cover; }

.center {
  text-align: center; }

/* mobile hamburger menu ************************************/
@media screen and (max-width: 900px) {
  .mobileactive {
    opacity: 0; }
  .main-chunk.toggle-content {
    display: none; } }

@media screen and (min-width: 900px) {
  #hamburger {
    display: none; } }

/* end mobile hamburger menu ************************************/
.testblue {
  background-color: blue !important;
  transition-property: background-color;
  transition-duration: 1s; }

a {
  color: #2479bd;
  cursor: pointer; }
  a:hover {
    opacity: 0.8;
    cursor: pointer; }

b {
  font-family: 'museo_sans700'; }

img.star {
  width: 10px !important;
  display: inline-block !important;
  line-height: inherit !important; }

.across-top nav {
  margin: 10px;
  display: inline-block;
  font-size: 22px; }
  @media screen and (max-width: 900px) {
    .across-top nav {
      width: 100%;
      height: auto;
      display: block;
      margin: auto; } }
  .across-top nav li {
    float: left; }
    @media screen and (max-width: 900px) {
      .across-top nav li {
        float: none;
        width: 100%;
        text-align: center; } }
    .across-top nav li a {
      padding: 10px 20px;
      margin: 3px;
      color: #9c3b73;
      text-decoration: none; }
      @media screen and (max-width: 900px) {
        .across-top nav li a {
          display: block;
          border-bottom: 1px solid #c9c6c8; } }
      @media screen and (max-width: 900px) {
        .across-top nav li a.first {
          border-top: 1px solid #c9c6c8; } }
      .across-top nav li a:hover {
        color: #2479bd; }
      .across-top nav li a#home {
        background-image: url(images/logo_heart.png);
        background-size: 67%;
        background-position: 13px -12px;
        background-repeat: no-repeat;
        margin-top: -3px;
        display: block;
        text-indent: -10000px; }
        @media screen and (max-width: 900px) {
          .across-top nav li a#home {
            background-image: url(images/logo.png);
            margin: auto;
            width: 50%;
            background-size: 100%;
            background-position: 0 0;
            max-width: 240px;
            border-bottom: 0px; } }
      .across-top nav li a#home:hover {
        opacity: 0.75; }

.across-top ul.social {
  float: right;
  display: inline-block;
  margin: 0px 20px; }
  @media screen and (max-width: 900px) {
    .across-top ul.social {
      width: 200px;
      height: 40px;
      margin: auto;
      float: none;
      display: block;
      margin-top: 10px; } }
  .across-top ul.social li {
    float: left;
    width: 30px;
    height: 30px;
    margin: 10px; }
    .across-top ul.social li a {
      width: 30px;
      height: 30px;
      background-image: url(images/icons_social.png);
      background-size: 30px 119px;
      display: inline-block;
      text-indent: -10000px;
      background-size: cover; }
      .across-top ul.social li a.facebook {
        background-position: 0px 0px;
        opacity: 0.75; }
        .across-top ul.social li a.facebook:hover {
          opacity: 1; }
      .across-top ul.social li a.twitter {
        background-position: 0px -30px;
        opacity: 0.75; }
        .across-top ul.social li a.twitter:hover {
          opacity: 1; }
      .across-top ul.social li a.instagram {
        background-position: 0px -180px;
        opacity: 0.75; }
        .across-top ul.social li a.instagram:hover {
          opacity: 1; }
      .across-top ul.social li a.linkedin {
        background-position: 0px -210px;
        opacity: 0.75; }
        .across-top ul.social li a.linkedin:hover {
          opacity: 1; }

/* for mobile nav toggling */
#mobilenav.across-top {
  transition-duration: 0.5s;
  transition-property: opacity; }

.main-chunk.quiet {
  opacity: 0;
  visibility: hidden; }

#nav-icon3 {
  width: 25px;
  height: 25px;
  -webkit-transform: rotate(0deg);
  -moz-transform: rotate(0deg);
  -o-transform: rotate(0deg);
  transform: rotate(0deg);
  -webkit-transition: .5s ease-in-out;
  -moz-transition: .5s ease-in-out;
  -o-transition: .5s ease-in-out;
  transition: .5s ease-in-out;
  cursor: pointer;
  margin: 10px; }

#nav-icon3 span {
  display: block;
  position: absolute;
  height: 3px;
  width: 100%;
  background: #2479bd;
  border-radius: 4px;
  opacity: 1;
  left: 0;
  -webkit-transform: rotate(0deg);
  -moz-transform: rotate(0deg);
  -o-transform: rotate(0deg);
  transform: rotate(0deg);
  -webkit-transition: .25s ease-in-out;
  -moz-transition: .25s ease-in-out;
  -o-transition: .25s ease-in-out;
  transition: .25s ease-in-out; }

#nav-icon3 span:nth-child(1) {
  top: 0px; }

#nav-icon3 span:nth-child(2) {
  top: 7px; }

#nav-icon3 span:nth-child(3) {
  top: 14px; }

#nav-icon3 span:nth-child(1) {
  top: 0px; }

#nav-icon3 span:nth-child(2), #nav-icon3 span:nth-child(3) {
  top: 7px; }

#nav-icon3 span:nth-child(4) {
  top: 14px; }

#nav-icon3.open span:nth-child(1) {
  top: 18px;
  width: 0%;
  left: 50%; }

#nav-icon3.open span:nth-child(2) {
  -webkit-transform: rotate(45deg);
  -moz-transform: rotate(45deg);
  -o-transform: rotate(45deg);
  transform: rotate(45deg); }

#nav-icon3.open span:nth-child(3) {
  -webkit-transform: rotate(-45deg);
  -moz-transform: rotate(-45deg);
  -o-transform: rotate(-45deg);
  transform: rotate(-45deg); }

#nav-icon3.open span:nth-child(4) {
  top: 18px;
  width: 0%;
  left: 50%; }

/* end mobile nav toggling */
.main-chunk {
  width: 90%;
  margin: 150px auto;
  display: block;
  transition: visibility 0.5s, opacity 0.5s; }
  @media screen and (max-width: 900px) {
    .main-chunk {
      position: absolute;
      top: 0;
      left: 3%;
      width: 93%;
      margin-top: 70px; } }
  @media screen and (min-width: 900px) {
    .main-chunk.internal-pages {
      margin: auto;
      display: block;
      width: 90%; } }
  .main-chunk .bullet {
    color: #2479bd; }
  .main-chunk img {
    width: 100%;
    display: block;
    margin: auto;
    max-width: 600px; }
    @media screen and (max-width: 900px) {
      .main-chunk img {
        width: 90%;
        min-width: 300px; } }
  .main-chunk .sub-chunk {
    text-align: center;
    color: #9c3b73;
    font-size: 26px;
    letter-spacing: 1px;
    max-width: 740px;
    width: 90%;
    display: block;
    margin: auto; }
    @media screen and (max-width: 900px) {
      .main-chunk .sub-chunk {
        line-height: 14px;
        font-size: 20px; } }
    .main-chunk .sub-chunk .line::after, .main-chunk .sub-chunk .line::before {
      content: "";
      display: inline-block;
      background-color: rgba(155, 192, 221, 0.72);
      height: 2px;
      line-height: 0px;
      margin-top: 20px;
      width: 25%;
      margin-bottom: 2px; }
      @media screen and (max-width: 900px) {
        .main-chunk .sub-chunk .line::after, .main-chunk .sub-chunk .line::before {
          content: "";
          display: inline-block;
          background-color: rgba(155, 192, 221, 0.72);
          height: 2px;
          line-height: 0px;
          margin-top: 20px;
          width: 5%;
          margin-bottom: 2px; } }
    .main-chunk .sub-chunk .line span.white {
      padding: 0 5px;
      display: inline;
      margin-top: 27px;
      color: #2479bd; }
    .main-chunk .sub-chunk .sub-head-text {
      width: 100%;
      display: block;
      font-size: 30px;
      margin-bottom: -10px; }
      @media screen and (max-width: 900px) {
        .main-chunk .sub-chunk .sub-head-text {
          display: inline-block;
          margin-top: 11px; } }
    .main-chunk .sub-chunk a.button-contact {
      width: 250px;
      height: 60px;
      display: inline-block;
      background-image: url(images/button_contact.png);
      text-indent: -10000px;
      background-size: contain;
      background-repeat: no-repeat;
      margin-top: 20px; }
      @media screen and (max-width: 900px) {
        .main-chunk .sub-chunk a.button-contact {
          width: 200px; } }
    .main-chunk .sub-chunk a:hover {
      opacity: 0.75; }

/* css for internal-pages wrapper class */
.main-chunk.internal-pages {
  bottom: 0; }
  @media screen and (min-width: 900px) {
    .main-chunk.internal-pages {
      max-width: 820px;
      margin-top: 30px; } }
  .main-chunk.internal-pages p.footer-text {
    display: block;
    text-align: center;
    font-family: 'showcasesans';
    font-size: 10px;
    padding: 0;
    line-height: 12px;
    padding-bottom: 50px;
    padding-top: 50px;
    background: -moz-radial-gradient(center, ellipse cover, rgba(255, 255, 255, 0.5) 0%, rgba(255, 255, 255, 0) 53%, rgba(255, 255, 255, 0) 100%);
    /* FF3.6-15 */
    background: -webkit-radial-gradient(center, ellipse cover, rgba(255, 255, 255, 0.5) 0%, rgba(255, 255, 255, 0) 53%, rgba(255, 255, 255, 0) 100%);
    /* Chrome10-25,Safari5.1-6 */
    background: radial-gradient(ellipse at center, rgba(255, 255, 255, 0.5) 0%, rgba(255, 255, 255, 0) 53%, rgba(255, 255, 255, 0) 100%);
    /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#99ffffff', endColorstr='#00ffffff',GradientType=1 ); }
  .main-chunk.internal-pages h1 {
    text-indent: -10000px;
    display: block;
    background-repeat: no-repeat;
    background-size: contain;
    height: 60px;
    margin-left: 2%; }
    @media screen and (max-width: 900px) {
      .main-chunk.internal-pages h1 {
        height: 40px; } }
    .main-chunk.internal-pages h1.header-about {
      background-image: url(images/headers/header_about.png); }
    .main-chunk.internal-pages h1.header-services {
      background-image: url(images/headers/header_services.png); }
    .main-chunk.internal-pages h1.header-rates {
      background-image: url(images/headers/header_rates.png); }
    .main-chunk.internal-pages h1.header-contact {
      background-image: url(images/headers/header_contact.png); }
    .main-chunk.internal-pages h1.header-blog {
      background-image: url(images/headers/header_blog.png); }
    .main-chunk.internal-pages h1.header-specialties {
      background-image: url(images/headers/header-specialties.png); }
  .main-chunk.internal-pages h2 {
    font-family: 'showcasesans';
    font-size: 17px;
    letter-spacing: 0.5px;
    color: #2479bd;
    font-weight: bold;
    padding-left: 4%;
    padding-bottom: 4px; }
    .main-chunk.internal-pages h2.display-mobile {
      display: none;
      /* don't show on desktop */ }
      @media screen and (max-width: 900px) {
        .main-chunk.internal-pages h2.display-mobile {
          display: block;
          padding-bottom: 10px;
          font-size: 20px; } }
  .main-chunk.internal-pages p {
    font-family: 'museo_sans300';
    font-size: 15px;
    color: #686868;
    line-height: 18px;
    padding-left: 4%;
    padding-bottom: 18px; }
    @media screen and (max-width: 900px) {
      .main-chunk.internal-pages p {
        font-size: 12px; } }
    .main-chunk.internal-pages p.indent {
      padding-left: 8%; }
    .main-chunk.internal-pages p.heavy {
      font-family: 'museo_sans500'; }
  .main-chunk.internal-pages img {
    min-width: initial;
    width: 100%;
    margin: auto;
    display: block; }
  .main-chunk.internal-pages .rightimg {
    float: right;
    width: 35%;
    text-align: center; }
    @media screen and (max-width: 900px) {
      .main-chunk.internal-pages .rightimg {
        display: block;
        width: 66%;
        padding: 0px 50% 20px 50%;
        margin: 0px -32%; } }
  .main-chunk.internal-pages .divider {
    width: 100%;
    background-image: url(images/divider_pink.png);
    background-size: contain;
    background-repeat: no-repeat;
    padding: 18px 0; }
  .main-chunk.internal-pages .right {
    float: left;
    width: 35%;
    text-align: center;
    padding-left: 4%;
    max-width: 300px; }
    @media screen and (max-width: 900px) {
      .main-chunk.internal-pages .right {
        width: 65%;
        text-align: center;
        margin: auto;
        float: none;
        padding: 0px; } }
  .main-chunk.internal-pages .left {
    display: inline-block;
    float: left;
    width: 50%; }
    @media screen and (max-width: 900px) {
      .main-chunk.internal-pages .left {
        width: 100%;
        margin-bottom: -20px; } }
  .main-chunk.internal-pages .contact-wrapper {
    display: inline-block;
    text-align: center;
    width: 100%;
    margin: auto;
    margin-bottom: 20px;
    margin-top: 20px; }
    @media screen and (max-width: 900px) {
      .main-chunk.internal-pages .contact-wrapper {
        margin: auto;
        display: block;
        margin-bottom: 20px;
        margin-top: 20px; }
        .main-chunk.internal-pages .contact-wrapper h2 {
          font-size: 12px;
          padding: 0 10%; } }
  .main-chunk.internal-pages a.button-contact {
    width: 146px;
    height: 50px;
    display: inline-block;
    background-image: url(images/button_contactme.png);
    text-indent: -10000px;
    background-size: contain;
    background-repeat: no-repeat; }
    @media screen and (max-width: 900px) {
      .main-chunk.internal-pages a.button-contact {
        width: 160px; } }
  .main-chunk.internal-pages a:hover {
    opacity: 0.75; }

/* end css for internal-pages wrapper class */
footer {
  width: 100%;
  position: fixed;
  bottom: 0;
  left: 0;
  text-align: right;
  color: white;
  background: -moz-linear-gradient(top, transparent 0%, rgba(0, 0, 0, 0.65) 100%);
  /* FF3.6-15 */
  background: -webkit-linear-gradient(top, transparent 0%, rgba(0, 0, 0, 0.65) 100%);
  /* Chrome10-25,Safari5.1-6 */
  background: linear-gradient(to bottom, transparent 0%, rgba(0, 0, 0, 0.65) 100%);
  /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#00000000', endColorstr='#a6000000',GradientType=0 ); }
  footer.notfixed {
    position: absolute; }
  footer p.footer-text {
    padding: 20px 15px;
    text-align: center; }

/* forcing sticky nav to stay at bottom through js */
@media screen and (min-width: 900px) {
  .stickyfoot:after {
    bottom: 0; }
  .stick {
    position: absolute;
    bottom: 100px; } }

/* css for service page tabs */
.container {
  display: inline-block;
  width: 100%;
  margin-bottom: 20px; }
  .container .lighten {
    opacity: 0.6; }
  .container ul.tabs {
    margin: 0px;
    padding: 0px;
    list-style: none; }
  .container ul.tabs li {
    display: inline-block;
    padding: 10px 15px;
    cursor: pointer;
    background-color: rgba(255, 255, 255, 0.5);
    box-shadow: 0px -8px 10px 1px rgba(119, 119, 119, 0.4);
    -moz-box-shadow: 0px -8px 10px 1px rgba(119, 119, 119, 0.4);
    -webkit-box-shadow: -5px -5px 10px -4px rgba(119, 119, 119, 0.4); }
    .container ul.tabs li:hover h2 {
      color: #2479bd;
      border-bottom: 1px solid #2479bd;
      padding-left: 0px;
      padding-bottom: 0px;
      pointer: cursor; }
    @media screen and (max-width: 900px) {
      .container ul.tabs li {
        display: none; } }
    .container ul.tabs li h2 {
      font-size: 12px;
      color: #9c3b73;
      padding-left: 0px;
      padding-bottom: 0px; }
  .container ul.tabs li.current {
    background: -moz-linear-gradient(top, rgba(255, 255, 255, 0.7) 0%, white 100%);
    /* FF3.6-15 */
    background: -webkit-linear-gradient(top, rgba(255, 255, 255, 0.7) 0%, white 100%);
    /* Chrome10-25,Safari5.1-6 */
    background: linear-gradient(to bottom, rgba(255, 255, 255, 0.7) 0%, white 100%);
    /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#b3ffffff', endColorstr='#ffffff',GradientType=0 );
    position: relative;
    box-shadow: 0px -8px 10px 1px rgba(119, 119, 119, 0.4);
    -moz-box-shadow: 0px -8px 10px 1px rgba(119, 119, 119, 0.4);
    -webkit-box-shadow: -5px -5px 10px -4px rgba(119, 119, 119, 0.4); }
    .container ul.tabs li.current:hover h2 {
      border-bottom: none; }
    .container ul.tabs li.current h2 {
      font-size: 16px;
      color: #2479bd; }
  .container .tab-content {
    display: none;
    background: #ededed;
    padding: 15px;
    background-color: rgba(255, 255, 255, 0.7); }
    @media screen and (min-width: 900px) {
      .container .tab-content {
        box-shadow: 0px 0px 10px 1px rgba(119, 119, 119, 0.4);
        -moz-box-shadow: 0px 0px 10px 1px rgba(119, 119, 119, 0.4);
        -webkit-box-shadow: 0px 0px 10px 1px rgba(119, 119, 119, 0.4); } }
    @media screen and (max-width: 900px) {
      .container .tab-content {
        display: block; } }
    .container .tab-content p {
      padding-left: 1%; }
  .container .tab-content.current {
    display: inherit; }

/* LISTS */
.list {
  margin-left: 8%;
  display: inline-block;
  font-family: "museo_sans300";
  font-size: 15px;
  margin-top: -10px;
  color: #686868;
  margin-bottom: 18px; }
  @media screen and (max-width: 900px) {
    .list {
      font-size: 12px; } }
  .list li {
    padding-bottom: 4px;
    list-style-type: circle; }

/* ACCORDION STYLINGS */
/* Style the buttons that are used to open and close the accordion panel */
button.accordion {
  background-color: rgba(255, 255, 255, 0.7);
  cursor: pointer;
  width: 100%;
  text-align: left;
  border: none;
  outline: none;
  transition: 0.4s;
  font-family: 'showcasesans';
  font-size: 17px;
  letter-spacing: 0.5px;
  color: #2479bd;
  font-weight: bold;
  padding: 14px 4% 12px 4%;
  margin-bottom: 6px; }
  @media screen and (max-width: 900px) {
    button.accordion {
      padding: 14px 20% 8px 4%;
      font-size: 14px; } }
  button.accordion a {
    text-decoration: none; }

/* Add a background color to the button if it is clicked on (add the .active class with JS), and when you move the mouse over it (hover) */
button.accordion.active, button.accordion:hover {
  background-color: white;
  color: #9c3b73;
  -webkit-box-shadow: 0px 0px 2px 1px rgba(0, 0, 0, 0.1);
  -moz-box-shadow: 0px 0px 2px 1px rgba(0, 0, 0, 0.1);
  box-shadow: 0px 0px 2px 1px rgba(0, 0, 0, 0.1); }

button.accordion.active a {
  color: #9c3b73; }

/* Style the accordion panel. Note: hidden by default */
div.panel {
  padding: 0 18px;
  background-color: rgba(255, 255, 255, 0.7);
  max-height: 0;
  overflow: hidden;
  transition: opacity 0.3s ease-in-out;
  opacity: 0; }
  div.panel u {
    font-family: 'museo_sans700';
    text-decoration: none;
    display: inline-block;
    padding-left: 3px; }
  div.panel li {
    padding-bottom: 10px;
    line-height: 110%; }
    @media screen and (max-width: 900px) {
      div.panel li {
        line-height: 150%; } }
  div.panel .minitext {
    font-size: 10px;
    line-height: 100%; }
  div.panel .date {
    font-size: 12px; }

div.panel.show {
  opacity: 1;
  max-height: inherit;
  /* Whatever you like, as long as its more than the height of the content (on all screen sizes) */
  margin-top: -6px;
  margin-bottom: 10px;
  padding-top: 20px; }

button.accordion:after {
  content: '+';
  /* Unicode character for "plus" sign (+) */
  font-size: 26px;
  color: #2479bd;
  float: right;
  margin-bottom: -7px; }
  @media screen and (max-width: 900px) {
    button.accordion:after {
      margin-right: -20%; } }

button.accordion.active:after {
  content: '-';
  /* Unicode character for "minus" sign (-) */
  color: #9c3b73;
  font-size: 40px;
  margin-bottom: -12px;
  margin-top: -10px; }

/*# sourceMappingURL=styles.css.map */