/*---------------- general ----------------*/
body {
  font-family: "freight-sans-pro",sans-serif;
}

a {
  color: #7d7d7d;
  transition: color 0.2s ease-in-out;
}
a:hover {
  color: #ababab;
  transition: color 0.3s ease-in-out;
}

p {
  font-size: 14px;
}
p.intro-text, 
.gform_description {
  font-size: 25px;
  font-family: "leitura-news",serif;
  line-height: 1.4;
}

h1, h2, h3, h4, h5, h6 {
  margin-top: 0;
  margin-bottom: 0;
}

h2.leitura-heading {
  font-size: 25px;
  font-family: "leitura-news",serif;
}
h2.section-heading {
  margin-bottom: 21px;
}
h2.inner-content-heading {
  margin-bottom: 35px;
}

.left-off-canvas-menu h3 {
  font-family: "freight-sans-pro",sans-serif;
}

h3.freight-heading {
  font-family: "freight-sans-pro",sans-serif;
  font-size: 14px;
  font-weight: 700;
  text-transform: uppercase;
  color: #ababab;
}
h3.small-heading {
  margin-bottom: 19px;
}
h3.footer-heading {
  margin-bottom: 7px;
}
h3.gallery-item-heading {
  font-family: "leitura-news",serif;
  font-size: 18px;
  margin-bottom: 21px;
  margin-top: 21px;
}

.dentist-list {
  margin-left: 0;
}
.dentist-list li {
  font-size: 14px;
  font-weight: bold;
}

.body-link {
  color: inherit;
}
.body-link:hover {
  color: #ababab;
}

@font-face {
  font-family: 'icomoon';
  src: url("../fonts/icomoon.eot?qjmpod");
  src: url("../fonts/icomoon.eot?#iefixqjmpod") format("embedded-opentype"), url("../fonts/icomoon.woff?qjmpod") format("woff"), url("../fonts/icomoon.ttf?qjmpod") format("truetype"), url("../fonts/icomoon.svg?qjmpod#icomoon") format("svg");
  font-weight: normal;
  font-style: normal;
}

[class^="icon-"], [class*=" icon-"] {
  font-family: 'icomoon';
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  /* Better Font Rendering =========== */
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.icon-twitter:before {
  content: "\e600";
}

.icon-facebook:before {
  content: "\e601";
}

.icon-googleplus:before {
  content: "\e602";
}

.archive-entry {
  border-bottom: 1px solid #ededed;
  padding-bottom: 28px;
  padding-top: 28px;
}

.pagelink {
  padding: 7px;
}

/*------------------------ nne boilerplate ------------------------*/
* {
  margin: 0;
  padding: 0;
  -webkit-font-smoothing: antialiased;
}

a {
  text-decoration: none;
}

ul {
  list-style-type: none;
}

.container-table {
  display: table;
}

.container-cell {
  display: table-cell;
  vertical-align: middle;
  height: 100%;
}

.full-width {
  width: 100%;
}

.full-width-height {
  width: 100%;
  height: 100%;
}

.caps {
  text-transform: uppercase;
}

.absolute-left-top {
  position: absolute;
  top: 0;
  left: 0;
}

.absolute-top {
  position: absolute;
  top: 0;
}

/*---------------- mixins ----------------*/
.left-off-canvas-menu {
  padding: 35px 0 0 22px;
}
.left-off-canvas-menu h3 {
  color: #ffffff;
  font-size: 21px;
  margin-bottom: 1.1rem;
  margin-left: 1.1rem;
}
.left-off-canvas-menu li {
  margin-bottom: 2%;
}
.left-off-canvas-menu a {
  color: #ffffff;
  text-transform: uppercase;
  font-weight: 700;
}
.left-off-canvas-menu a:hover {
  color: #efefef;
}

/*---------------- header, nav ----------------*/

.tab-bar .menu-icon span {
  line-height: 13px;
  font-weight: 700;
}

.info-header {
  padding: 28px 28px;
}

.logo-container img {
  padding-top: 7px;
}

.contact-container {
  padding: 21px 0 0 0;
}
.contact-container p {
  color: #ababab;
  font-size: 14px;
  line-height: 17px;
  margin-bottom: 0;
}

.main-nav-container {
  background-color: #f1f1f1;
  width: 100%;
  z-index: 9999;
}

.main-nav {
  height: 63px;
  padding-left: 28px;
}

.main-nav ul {
  margin-bottom: 0;
  margin-left: 0;
}

.main-nav li {
  margin-left: 0;
  margin-right: 2.2%;
  display: inline-block;
}
.main-nav a {
  color: #ababab;
  font-size: 15px;
  font-weight: 700;
  text-transform: uppercase;
}
.main-nav a:hover {
  color: #7d7d7d;
}

.sub-header-container {
  background: url("../images/homebanner.jpg");
  background-repeat: no-repeat;
  background-size: cover;
}

.sub-header {
  padding: 35px 28px;
}
.sub-header .pink-button {
  border: 1px solid #d4517c;
}
.sub-header h1 {
  color: #ffffff;
  font-family: "leitura-news",serif;
  margin-bottom: 14px;
  line-height: 1;
}
.sub-header h2 {
  color: #ffffff;
  font-family: "freight-sans-pro",sans-serif;
  font-size: 16px;
  line-height: 21px;
}
.sub-header h3 {
  color: #ffffff;
}

.about-social-links {
  padding-top: 15px;
}

.about-social-links ul {
  margin-left: 0;
}

.about-social-links li {
  display: inline-block;
}

.social-links h3 {
  margin: 21px 0 0 0;
}
.social-links ul {
  padding-top: 14px;
  margin-bottom: 0;
}

.pink-button-container {
  margin-right: 10px;
}

a.pink-button {
  background: -webkit-linear-gradient(#e248b8, #d641ad);
  background: -o-linear-gradient(#e248b8, #d641ad);
  background: linear-gradient(#e248b8, #d641ad);
  border: 1px solid #d4517c;
  -webkit-border-radius: 3px; 
  -moz-border-radius: 3px; 
  border-radius: 3px; 
}
a.pink-button:hover {
  color: #ffffff;
  background: -webkit-linear-gradient(#f277d0, #e24fba);
  background: -o-linear-gradient(#f277d0, #e24fba);
  background: linear-gradient(#f277d0, #e24fba);
}
a.rectangle {
  display: inline-block;
  color: #ffffff;
  font-size: 14px;
  font-weight: 700;
  padding: 5px 21px;
  text-transform: uppercase;
}
a.round {
  border-radius: 100%;
  color: #ffffff;
  display: block;
  padding: 7px 0 0 0;
  width: 35px;
  height: 35px;
  text-align: center;
}

.link {
  transition: color 0.2s ease-in-out;
}
.link:hover {
  transition: color 0.3s ease-in-out;
}

/*---------------- content ----------------*/
.innerpage-article {
  padding-left: 28px;
  padding-right: 56px;
}

.innerpage-image {
  margin-bottom: 28px;
}

.indented-content {
  padding: 0 28px;
}

.content-side-image {
  margin-bottom: 28px;
}

.content-side-element .rectangle {
  margin-bottom: 35px;
}

.orbit-container {
  background-color: #ededed;
  margin-bottom: 28px;
}
.orbit-container img {
  width: 100%;
  height: auto;
}

.slider h3 {
  padding: 21px 0 0 28px;
}
.slider h2 {
  padding: 0 0 0 28px;
}

.large-container {
  padding-bottom: 56px;
}

.home .large-container {
  padding-bottom: 0;
  margin-top: 21px;
}

.gallery-container {
  padding-top: 56px;
}

.map {
  margin-bottom: 28px;
}

.testi-image {
  float: left;
  max-width: 224px;
}

.testi-text {
  float: none;
  padding-left: 28px;
  overflow: hidden;
}
.testi-text h2 {
  margin-bottom: 7px;
  text-align: left!important;
}
.testi-text p {
  line-height: 18px;
}

.locations {
  margin-top: 28px;
}

.location p {
  line-height: 18px;
}

.home-content-container {
  background-color: #f7f7f7;
  padding: 56px 0 0 0;
}

/* ------------------- Services -------------------*/
.service h2 {
  margin-bottom: 21px;
}
.service ul {
  margin-left: 0;
}

/* ------------------- Dental Consultant -------------------*/
.dental-consultant-block {
  margin-bottom: 56px;
}

.dental-consultant-block .image-container img,
.dentist-item .image-container img {
  -moz-border-radius: 100%;
  -webkit-border-radius: 100%;
  border-radius: 100%;
  -khtml-border-radius: 100%;
}

.image-container {
  width: 112px;
}

.dental-consultant-details {
  width: auto;
  overflow: hidden;
}
.dental-consultant-details p {
  margin-bottom: 7px;
}

.dental-consultant-name {
  width: 100%;
}
.dental-consultant-name > div {
  float: left;
}
.dental-consultant-name .name {
  width: 50%;
}
.dental-consultant-name .dentist-link {
  width: 25%;
  text-align: right;
  text-transform: uppercase;
}
.dental-consultant-name .dentist-link .link {
  color: inherit;
}
.dental-consultant-name .dentist-link .link:hover {
  color: #ababab;
}
.dental-consultant-name p {
  font-weight: bold;
}
.dental-consultant-name .position {
  font-weight: normal;
}

/* ------------------- Dentist Side List -------------------*/
.dentist-item {
  margin-bottom: 28px;
}
.dentist-item .name {
  padding: 28px 0 0 14px;
  height: 100%;
  overflow: hidden;
}
.dentist-item .name p {
  margin-bottom: 0;
}
.dentist-item .name p:first-child {
  font-weight: bold;
}
.dentist-item:last-child {
  margin-bottom: 56px;
}

/*---------------- footer ----------------*/
.f-pagelinks-container {
  background-color: #f7f7f7;
  padding: 35px 0 42px 0;
}

.f-pagelink-img {
  margin-bottom: 14px;
}

.f-pagelink-description {
  text-align: center;
}
.f-pagelink-description .date {
  margin-bottom: 0;
}
.f-pagelink-description h2 {
  margin-bottom: 7px;
}

.f-logolinks-container {
  background-color: #ededed;
}

.f-cardslink ul {
  margin-left: 0;
}
.f-cardslink li {
  display: inline-block;
}

.f-dotlink > div:nth-child(1) p {
  line-height: 20px;
}
.f-dotlink > div:nth-child(2) {
  padding: 7px 0 0 7px;
}

.f-main-container {
  background: -webkit-linear-gradient(#ce379e, #db51b4);
  background: -o-linear-gradient(#ce379e, #db51b4);
  background: linear-gradient(#ce379e, #db51b4);
}

.f-main-footer {
  color: #ffffff;
  text-transform: uppercase;
}

.f-copyright p {
  font-size: 16px;
  margin-bottom: 10px;
}

.f-mainlinks ul {
  float: right;
}
.f-mainlinks li {
  margin-left: 35px;
}
.f-mainlinks a {
  color: #ffffff;
  font-size: 16px;
  font-weight: 700;
}
.f-mainlinks a:hover {
  color: #dddddd;
}

/* -- gravity forms --*/
#gform_submit_button_1,
#gform_submit_button_3 {
  font-family: "freight-sans-pro",sans-serif!important; 
  display: inline-block!important;
  color: #ffffff!important;
  font-size: 14px!important;
  font-weight: 700!important;
  padding: 5px 21px!important;
  text-transform: uppercase!important;
  border: 0!important;
  background: -webkit-linear-gradient(#e248b8, #d641ad)!important;
  background: -o-linear-gradient(#e248b8, #d641ad)!important;
  background: linear-gradient(#e248b8, #d641ad)!important;
  cursor: pointer!important;
  -webkit-transition: background 1000ms ease-in-out!important;
  -moz-transition: background 1000ms ease-in-out!important;
  -o-transition: background 1000ms ease-in-out!important;
  -ms-transition: background 1000ms ease-in-out!important;
  transition: background 1000ms ease-in-out!important;
  border: 1px solid #d4517c!important;
  -webkit-border-radius: 3px!important; 
  -moz-border-radius: 3px!important; 
  border-radius: 3px!important; 
}

#gform_submit_button_1:hover,
#gform_submit_button_3:hover {
  color: #ffffff!important;
  background: -webkit-linear-gradient(#f277d0, #e24fba)!important;
  background: -o-linear-gradient(#f277d0, #e24fba)!important;
  background: linear-gradient(#f277d0, #e24fba)!important;
}

.gform_wrapper input[type=text], 
.gform_wrapper input[type=url], 
.gform_wrapper input[type=email], 
.gform_wrapper input[type=tel], 
.gform_wrapper input[type=number], 
.gform_wrapper input[type=password],
.gform_wrapper textarea {
	border: 1px solid #ccc!important;
	padding: 7px!important;
	max-width: 100%!important;
  font-size: 14px!important;
}

.gform_wrapper .ginput_complex .ginput_left, 
.gform_wrapper .ginput_complex .ginput_right, 
.gform_wrapper .ginput_complex .ginput_full {
	overflow: visible!important;
}

.gform_wrapper .ginput_complex label, 
.gform_wrapper .gfield_time_hour label, 
.gform_wrapper .gfield_time_minute label, 
.gform_wrapper .gfield_date_month label, 
.gform_wrapper .gfield_date_day label, 
.gform_wrapper .gfield_date_year label, 
.gform_wrapper .instruction {
	font-size: 12px!important;
	font-family: "freight-sans-pro",sans-serif!important;
	font-weight: 600!important;
}

.gform_wrapper div.validation_error {
	color: #7d7d7d!important;
	font-size: 15px!important;
	font-family: "freight-sans-pro",sans-serif!important;
  font-weight: normal!important;
	line-height: 24px!important;
	padding: 28px 0 0!important;
	border-top: 1px solid #ededed!important;
}

.gform_wrapper .gfield_required,
.gform_wrapper .gfield_error .gfield_label {
	color: #ce379e!important;
	font-family: "freight-sans-pro",sans-serif!important;
}

.gform_wrapper li.gfield.gfield_error,
.gform_wrapper li.gfield.gfield_error.gfield_contains_required.gfield_creditcard_warning,
.gform_wrapper li.gfield_error div.ginput_complex.ginput_container label, 
.gform_wrapper li.gfield_error ul.gfield_checkbox, 
.gform_wrapper li.gfield_error ul.gfield_radio,
.gform_wrapper .validation_message {
	background-color: #F8EFE5!important;
	font-family: "freight-sans-pro",sans-serif!important;
	color: #7d7d7d!important;
}

.gform_wrapper li.gfield.gfield_error.gfield_contains_required {
	border-top: 1px solid #E4DED7!important;
	border-bottom: 1px solid #E4DED7!important;
	background-color: #F8EFE5!important;
}

.gform_wrapper li.gfield_error input[type=text], 
.gform_wrapper li.gfield_error input[type=url], 
.gform_wrapper li.gfield_error input[type=email], 
.gform_wrapper li.gfield_error input[type=tel], 
.gform_wrapper li.gfield_error input[type=number], 
.gform_wrapper li.gfield_error input[type=password], 
.gform_wrapper li.gfield_error textarea {
	border: 1px solid #CFC3B5!important;
}

#field_3_1, #field_3_5 {
  display: block!important;
  clear: none!important;
  float: left!important;
}

#input_3_4 {
  margin-top: 20px!important;
  height: 118px!important;
}

#gform_wrapper_3 .gform_footer {
  padding: 0!important;
  margin: 14px 0 0 0!important;
}

.gform_wrapper .top_label input.large,
.gform_wrapper .top_label select.large,
.gform_wrapper .top_label textarea.textarea {
  width: 100% !important;
}

.inquire-now-btn {
  background-color: #030303;
  border-top-left-radius: 5px;
  border-top-right-radius: 5px;
  font-size: 15px;
  font-weight: 700;
  letter-spacing: 1px;
  position: fixed;
  bottom: 0;
  right: 10px;
  padding: 16px 17px;
  text-transform: uppercase;
}

/* ------------------------------ Small screens ------------------------------ */
/* ------------------------------ Define mobile styles ------------------------------ */
@media only screen {
  .logo-container {
    text-align: center;
  }

  .contact-container {
    text-align: center;
  }

  .sub-header h1 {
    font-size: 28px;
  }

  .orbit-container {
    height: auto;
  }

  .innerpage-content {
    padding: 35px 0 0 0;
  }
  
  blockquote {
    border-left: 0;
    padding: 0 35px 0 0;
  }
  
  .innerpage-content .leitura-heading {
    text-align: center;
  }
  
  .innerpage-content .article-header h1 {
    font-family: "freight-sans-pro",sans-serif;
  }

  .innerpage-image {
    width: 100%;
    padding-left: 28px;
    padding-right: 28px;
  }

  .content-side {
    padding: 28px 0 0;
    text-align: center;
    margin-top: 28px;
    background: #ededed;
  }

  .service {
    text-align: center;
    padding: 0 28px;
  }
  
  .service-class {
    margin-bottom: 15px;
    padding-right: 10px;
  }
  
  .service-class .service ul li {
    line-height: 20px;
    padding: 5px 42px;
    text-align: center;
  }

  .image-container {
    float: none;
    margin: 0 auto;
  }

  .dental-consultant-name .name {
    margin-top: 21px;
    text-align: center;
    width: 100%;
  }
  .dental-consultant-name .dentist-link {
    width: 50%;
  }
  .dental-consultant-name .dentist-link:nth-child(2) {
    text-align: right;
    padding-right: 28px;
  }
  .dental-consultant-name .dentist-link:nth-child(3) {
    text-align: left;
    padding-left: 14px;
  }

  .dentist-side-element {
    width: 100%;
  }

  .dentist-item {
    width: 50%;
    float: left;
  }

  .f-pagelink {
    padding: 0 0 0 0;
    text-align: center;
  }
  .f-pagelink .lightbox-thumb {
    width: 100%;
    height: auto;
  }
  .gallery-content > .grid-container.row {
    margin-bottom: 21px;
  }
  .clearing-assembled .clearing-container .carousel > ul {
    width: auto !important;
  }
  .clearing-feature li.clearing-featured-img {
    width: 100%;
  }

  .f-pagelinks-container {
    padding-left: 21px;
    padding-right: 21px;
  }

  .f-logolinks {
    padding: 28px;
    text-align: center;
  }

  .f-dotlink, .f-recepientlink {
    margin-top: 28px;
  }

  .f-recepientlink {
    margin-bottom: 28px;
  }

  .f-main-footer {
    padding: 28px;
  }

  .f-copyright {
    text-align: center;
  }

  .orbit-container .orbit-prev,
  .orbit-container .orbit-next {
    top: 30%;
  }

  .contact-form-container {
    padding-top: 35px;
  }

  .main-nav-container {
    position: fixed;
    top: 0;
    padding-top: 14px;
    padding-bottom: 14px;
  }

  .main-nav ul {
    line-height: 17px;
  }

  .main-nav li {
    width: 45%;
    text-align: center;
  }

  .main-nav li a {
    font-size: 12px;
  }

  .info-header {
    padding-top: 125px;
  }

  .about-social-links ul {
    text-align: center;
  }

  #field_3_1 {
    width: 100%;
    padding-bottom: 20px;
  }

  #field_3_5 {
    width: 100%;
  }

  #input_3_1 {
    width: 100%;
  }

  #input_3_5 {
    width: 100%;
  }
}
/* ---------- max-width 640px, mobile-only styles,use when QAing mobile issues ---------- */
/* ------------------------------ Medium screens ------------------------------ */
/* --------------------------- min-width 641px, medium screens --------------------------- */
@media only screen and (min-width: 40.063em) {
  .sub-header h1 {
    font-size: 42px;
  }

  .content-side {
    text-align: left;
  }

  .content-side-element {
    float: left;
    padding-left: 28px;
    width: 50%;
    text-align: center;
  }

  .dentist-side-element {
    width: 100%;
  }

  .locations {
    margin-top: 0;
  }

  .f-logolinks {
    padding: 42px 0 0 0;
  }

  .service {
    text-align: left;
    padding: 0 28px;
  }

  .image-container {
    float: left;
  }

  .dental-consultant-details {
    padding-left: 21px;
  }

  .dental-consultant-name .name {
    width: 50%;
    margin-top: 0;
    text-align: left;
  }
  .dental-consultant-name .dentist-link {
    width: 25%;
    text-align: right;
  }
  .dental-consultant-name .dentist-link:nth-child(2) {
    padding-right: 0;
  }
  .dental-consultant-name .dentist-link:nth-child(3) {
    text-align: right;
    padding-left: 0;
  }

  .orbit-container .orbit-prev,
  .orbit-container .orbit-next {
    top: 35%;
  }

  .main-nav-container {
    padding-bottom: 7px;
  }

  .main-nav ul {
    line-height: 1.6;
  }

  .main-nav li {
    width: 22%;
  }

  .main-nav li a {
    font-size: 15px;
  }

  .info-header {
    padding-top: 110px;
  }

  #field_3_5, #field_3_1 {
    width: 50%;
    padding-bottom: 0;
  }

  #input_3_1 {
    width: 90%;
  }

  #input_3_5 {
    width: 100%;
  }
}
/* -------- min-width 641px and max-width 1024px, use when QAing tablet-only issues -------- */
@media only screen and (min-width: 40.063em) and (max-width: 64em) {
  .content-side-image {
    width: 100%;
  }

  .large-container, .grid-container {
    padding: 0 28px;
  }
}
/* ------------------------------ Large screens ------------------------------ */
/* ---------------------------- min-width 1025px, large screens ---------------------------- */
@media only screen and (min-width: 64.063em) {
  
  .content-side {
    margin-top: 0;
    background: transparent;
  }
  
  .logo-container {
    text-align: left;
  }

  .orbit-container {
    height: 286px;
  }

  .orbit-bullets {
    float: right;
    padding-right: 28px;
    margin-top: -69px;
  }

  .innerpage-content {
    padding: 56px 0;
  }

  .innerpage-image {
    padding-left: 0;
    padding-right: 0;
  }

  .gallery-content {
    padding-bottom: 28px;
  }

  .contact-container {
    text-align: right;
  }

  .content-side {
    padding: 0 0 0 28px;
  }

  .content-side-bordered {
    padding-right: 28px;
    border-left: 1px solid #ededed;
  }

  .content-side-element {
    float: none;
    padding-left: 0;
    width: 100%;
    text-align: left;
  }

  .dentist-item {
    width: 100%;
    float: none;
  }

  .services-content {
    padding-left: 28px;
    padding-right: 28px;
  }

  .service {
    padding: 0;
  }

  .f-pagelinks-container {
    padding-left: 0;
    padding-right: 0;
  }

  .f-logolinks {
    height: 154px;
    text-align: left;
  }

  .f-main-footer {
    height: 196px;
    padding: 28px 0 0 0;
  }

  .f-copyright {
    text-align: left;
  }

  .f-dotlink, .f-recepientlink {
    margin-top: 0;
    padding-left: 14px;
  }

  .f-dotlink > div {
    float: left;
  }

  .contact-form-container {
    padding-top: 00;
  }

  .main-nav-container {
    position: relative;
    padding-top: 0;
    padding-bottom: 0;
  }

  .main-nav {
    padding-top: 19px;
  }

  .main-nav li {
    width: auto;
    text-align: left;
  }

  .info-header {
    padding-top: 21px;
  }

  .about-social-links ul {
    text-align: left;
  }
}
