// DEFAULT FONT SETTINGS.
// 18px
.navbar .navbar-brand,
.carousel .sub-title,
h4.author,
.hestia-about p,
.card-product .price,
.card-product .price h4,
.blog-sidebar .widget h5,
.shop-sidebar .widget h5,
blockquote,
.media .media-heading,
.woocommerce #reviews #comments ol.commentlist li .comment-text p.meta {
  font-size: $font-size-h6;
}

a:not(.btn) {
  transition: .3s ease;
}

a:not(.btn):not(.button):not(.added_to_cart):hover {
  opacity: .75;
}

// 16px
.media p,
h3#ship-to-different-address {
  font-size: $font-size-body;
}

// 14px
body,
.btn,
.form-control,
.woocommerce #reviews #comments label {
  font-size: $font-size-description;
}

// 12px
.navbar,
.navbar a,
.label,
.footer .footer-menu a,
.media-footer a,
.hestia-top-bar {
  font-size: $font-size-small;
}

// General
body {
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-weight: 300;
  line-height: 1.618;
}

ul, ol,
.blog-post .section-text p,
output {
  line-height: 1.618;
}

h1, h2, h3, h4, h5, h6 {
  font-weight: 500;
  line-height: 1.618;
}

h5.description,
h5.subscribe-description,
.card-product .price h4,
h4.author {
  font-weight: 300;
}

span.category {
  font-weight: 500;
  text-transform: uppercase;
  font-size: 12px;
  margin: 10px 0;
  display: block;
}

.hestia-title,
.title,
.card-title,
.info-title,
.footer-brand,
.footer-big h4,
.footer-big h5,
.media .media-heading,
.woocommerce ul.products[class*="columns-"] li.product-category h2 {
  font-weight: 700;
}

.hestia-title {
  word-break: break-word;
}

button,
input[type="submit"],
input[type="button"],
.btn {
  font-size: 12px;
  font-weight: 400;
}

.btn {
  &:not(.btn-just-icon):not(.btn-fab) i {
    font-size: 18px;
  }

  &.btn-just-icon {
    font-size: 20px;
    line-height: 20px;

    &.btn-lg {
      font-size: 22px;
    }
  }

  i {
    font-size: 17px;
  }
}

legend {
  font-size: 21px;
}

output {
  font-size: 14px;
}

button,
input,
select,
textarea {
  font-size: inherit;
  line-height: inherit;
}

.form-control {
  font-size: 14px;
  line-height: 1.42857;
}

.form-control::-moz-placeholder,
.form-control:-ms-input-placeholder,
.form-control::-webkit-input-placeholder,
.checkbox label,
.radio label,
label {
  &,
  .form-group & {
    font-size: 14px;
    font-weight: 400;
    line-height: 1.42857;
  }
}

.form-control,
.form-group .form-control {
  &::-moz-placeholder,
  &:-ms-input-placeholder,
  &::-webkit-input-placeholder {
    font-weight: 400;
  }
}

.form-group {
  label.control-label {
    font-size: 11px;
    font-weight: 400;
    line-height: 1.07143;
  }

  &.label-floating label.control-label,
  &.label-placeholder label.control-label {
    font-size: 14px;
    line-height: 1.42857;
  }

  &.label-static label.control-label,
  &.label-floating.is-focused label.control-label,
  &.label-floating:not(.is-empty) label.control-label {
    font-size: 11px;
    line-height: 1.07143;
  }
}

label.control-label {
  font-size: 11px;
  font-weight: 400;
  line-height: 1.07143;
}

label.subscribe-label {
  font-weight: 300;
}

table > thead > tr > th {
  font-size: 17px;
  font-weight: 300;
}

.help-block {
  font-size: 11px;
}

.hestia-info,
.info {
  .icon > i {
    font-size: 61.6px;
  }
}

.info-horizontal .icon > i {
  font-size: 36.4px;
}

.media {
  .media-heading {
    font-size: 18.2px;
  }

  p {
    font-size: 16px;
    /*line-height: 25.6px;*/
  }
}

.wp-caption-text {
  font-size: 14px;
  font-weight: 700;
}

.blog-post {
  .comment-reply-link {
    font-size: 12px;
    font-weight: 400;
  }

  .section-blog-info {
    .card-profile {
      .description {
        font-size: 14px;
      }
    }
  }
}

// Carousel
.carousel .carousel-control i {
  font-size: 50px;
}

// Cards
.card {
  .footer .stats {
    line-height: 30px;

    i {
      font-size: 18px;
    }
  }

  .category i {
    line-height: 0;
  }
}

.card-product {
  .footer {
    h4 {
      line-height: 1.2;
    }
  }
}

.card-title,
.card-product .category {
  line-height: 1.4;
}

.card-pricing .card-title {
  font-size: 60px;
  line-height: 35px;

  small {
    font-size: 18px;

    &:first-child {
      font-size: 26px;
    }
  }
}

// Navbar
.navbar {
  .navbar-brand {
    line-height: 30px;
  }

  .navbar-nav > li > a {
    font-weight: 400;

    i {
      font-size: 20px;
    }
  }

  .dropdown-menu {
    li > a {
      font-size: 13px;

      > i {
        font-size: 20px;
      }

      i {
        font-size: 20px;
      }
    }
  }

  .hestia-mm-heading > span {
    font-size: 14px;
    font-weight: 600;
  }
}

.hestia-mm-description {
  font-size: 12px;
  font-weight: 400;
}

// Top bar
.hestia-top-bar {
  line-height: 40px;

  .widget {
    &,
    h5,
    .textwidget {
      line-height: normal;
    }

    &.widget_search,
    &.widget_product_search {
      .label-floating {
        font-size: inherit;

        &.is-empty {
          font-size: inherit;
          font-weight: 300;
        }

        &.is-focused {
          .control-label {
            font-size: inherit;
            line-height: 20px;
          }
        }
      }

      form.form-group {
        input[type=search] {
          font-size: inherit;
          font-weight: 300;
        }

        &:before {
          font-size: 18px;
        }
      }
    }
  }

  ul {
    line-height: inherit;

    li a {
      font-size: inherit;
      line-height: inherit;

      &:before {
        font-size: 16px;
      }
    }
  }
}

// Pagination
.pagination {
  a,
  span {
    font-size: 12px;
    font-weight: 400;
    line-height: 30px;
  }
}

// Footer
.footer {
  .widget h5 {
    line-height: 1.4;
  }
}

.footer-big {
  .footer-menu li a[href*="mailto:"],
  .footer-menu li a[href*="tel:"] {
    font-size: 0;

    &:before {
      font-size: 16px;
    }
  }

  ul li a {
    font-weight: 500;
  }
}

// Sections
h5.description {
  line-height: 1.5;
}

.hestia-about {
  font-weight: 300;

  h1, h2, h3, h4, h5 {
    font-weight: 700;
  }
}

// Widgets
.widget {
  h5 {
    font-weight: 700;
  }
}

.searchform,
.search-form,
.woocommerce-product-search {
  &:after {
    font-size: 18px;
  }
}

.header-widgets-wrapper {
  .widget {
    &,
    h5,
    .textwidget {
      line-height: inherit;
    }
  }

  ul {
    line-height: inherit;

    li a {
      font-size: inherit;
      line-height: inherit;

      &:before {
        font-size: 16px;
      }
    }
  }
}

aside .widget a {
  font-weight: 500;
}

.star-rating {
  line-height: 1;
  font-size: 12px;
}



// WooCommerce - Cart
.woocommerce-cart {
  .shop_table .actions .coupon .input-text {
    font-size: 14px;
  }

  table.shop_table {
    th {
      font-size: 13px;
      font-weight: 300;
    }

    .product-name a {
      font-size: 16px;
      font-weight: 500;
      line-height: 30px;
    }

    td.actions {
      input[type=submit], button[type=submit] {
        font-size: 14px;
      }
    }
  }

  p.units-info {
    line-height: 1.5;
    font-size: 14px;
  }

  .wc-gzd-additional-wrapper {
    p {
      font-size: 14px;
      font-weight: 700;
    }
  }
}

// WooCommerce - Checkout
.woocommerce-checkout {
  .form-row label {
    font-weight: 300;
  }

  .woocommerce-checkout-payment {
    .form-row .woocommerce-form__label-for-checkbox,
    li > label {
      font-weight: 400;
    }
  }

  .woocommerce-shipping-fields {
    h3 {
      label {
        line-height: 1;

        span {
          font-weight: 300;
        }
      }
    }
  }

  .col-md-12 {
    #customer_details {
      label {
        font-weight: 500;
      }
    }
  }

  .shop_table {
    tr {
      td {
        p.units-info {
          font-size: 12px;
        }
      }
    }

    .wc-gzd-additional-info {
      font-size: 14px;
    }
  }
}

#add_payment_method .wc-proceed-to-checkout a.checkout-button,
.woocommerce-cart .wc-proceed-to-checkout a.checkout-button,
.woocommerce-checkout .wc-proceed-to-checkout a.checkout-button {
  font-size: 12px;
  font-weight: 400;
}

// WooCommerce - Account
.woocommerce-account {
  .woocommerce-button,
  .woocommerce-Button,
  a.button {
    line-height: 20px !important;
  }

  .woocommerce-MyAccount-content h2 {
    font-weight: 600;
  }
}

.added_to_cart.wc-forward {
  font-weight: 400;
  font-size: 10px;
  line-height: 30px;
}

.variations tr {
  .label {
    font-size: 14px;
  }
}

// WooCommerce - Alerts
.woocommerce-info,
.woocommerce-error,
.woocommerce-message {
  line-height: 20px;

  li {
    line-height: 1.5;
  }

  > a.button {
    font-size: 12px;
    font-weight: bold;
  }
}

.woocommerce-info a {
  font-weight: 700;
}

.woocommerce-message {
  a:not(.button) {
    font-weight: 800;
  }
}

// Responsive max 991px
@media (max-width: 991px) {
  .woocommerce-account input.woocommerce-Button.button {
    font-size: 11px;
  }

  .woocommerce-breadcrumb {
    line-height: 33px;
  }
}

// Responsive min 769px
@media (min-width: 769px) {
  .navbar.full-screen-menu .navbar-nav > li a {
    font-size: 17px;
  }
}

// Responsive max 768px
@media (max-width: 768px) {
  h4.author {
    font-size: 16px;
  }
  .woocommerce-cart {
    table.shop_table {
      dl.variation {
        dd,
        dt {
          font-size: 16px;
          line-height: 30px;
        }

        dd p {
          font-size: 16px;
        }
      }

      td.product-name {
        line-height: 30px;
      }
    }
  }

  .woocommerce-checkout {
    td.product-name {
      dl.variation {
        dt,
        dd {
          font-size: 16px;
        }

        dd p {
          font-size: 16px;
        }
      }
    }
  }

  .navbar {
    .navbar-nav {
      li > a {
        > i,
        i {
          font-size: 22px;
        }
      }

      li {
        .caret {
          font-size: 20px;
        }

        .dropdown {


          > i,
          i {
            font-size: 20px;
          }
        }
      }

      .dropdown .dropdown-menu li a {
        line-height: 20px;

        .caret {
          line-height: 1;
        }
      }
    }
  }
}

@media (max-width: 480px) {
  .woocommerce .woocommerce-ordering,
  .woocommerce-page .woocommerce-ordering {
    select {
      font-size: 12px;
    }
  }
}

// end DEFAULT FONT SETTINGS. - - - - -

body {
  direction: ltr;
  color: $color-secondary;
  font-family: $primary-font;
}

h1, h2, h3, h4, h5, h6 {
  font-family: $primary-font;
}

a {
  @extend %transition-all-3s-ease;
  color: $color-primary;

  &:hover, &:focus {
    color: $color-primary-hover;
    text-decoration: none;
  }
}

blockquote p {
  font-style: italic;
}

h3 {
  margin: 20px 0 10px;
}

h5 {
  margin-bottom: 15px;
}

.hestia-title, .title, .card-title, .info-title, .footer-brand, .footer-big h4, .footer-big h5, .media .media-heading, .woocommerce ul.products[class*="columns-"] li.product-category h2 {
  font-family: $secondary-font;

  &, a, a:hover {
    color: $color-secondary;
    text-decoration: none;
    word-wrap: break-word;
  }
}

.page-header .hestia-title {
  line-height: 1.4;
}

.title-in-content {
  line-height: 1.3;
}

h1.title,
h1.hestia-title,
.pricing h2.title,
.pricing h2.hestia-title,
.contactus h2.title,
.contactus h2.hestia-title {
  margin-bottom: 30px;
}

h2.title,
h2.hestia-title {
  margin-bottom: 10px;
}

.carousel {

  h1.hestia-title,
  h2.title {
    font-family: $primary-font;
  }

  span.sub-title {
    display: block;
    margin: 10px 0 0;
    font-family: $secondary-font;
  }

  .buttons {
    margin-top: 60px;
  }
}

.description, .card-description, .footer-big {
  color: $color-body-text;
}

.card-description.entry-content {
  color: $color-secondary;
}

.subscribe-line-image .subscribe-description {
  color: #efefef;
}

.text-warning {
  color: $color-warning;
}

.text-primary {
  color: $color-primary;
}

.text-danger {
  color: $color-danger;
}

.text-success {
  color: $color-success;
}

.text-info {
  color: $color-info;
}

.text-rose {
  color: $color-rose;
}

.text-gray {
  color: $color-body-text;
}

// Gutenberg colors.
.has-black-color {
  color: #000;
}

.has-white-color {
  color: #fff;
}

.has-background.has-black-background-color {
  background-color: #000;
}

.has-background.has-white-background-color {
  background-color: #fff;
}

.single-post,
.page:not(.woocommerce-page) {
  .blog-post .section-text {
    h1, h2, h3, h4, h5, h6,
    p {
      margin: 0 0 15px;

      &.form-submit {
        margin: 0 0 10px;
      }
    }
  }
}

.tooltip {
  &.in {
    opacity: 1;
    -webkit-transform: translate3d(0, 0px, 0);
    -ms-transform: translate3d(0, 0px, 0);
    transform: translate3d(0, 0px, 0);
  }

  opacity: 0;
  -webkit-transition: opacity, -webkit-transform 0.2s ease;
  transition: opacity, -webkit-transform 0.2s ease;
  transition: opacity, transform 0.2s ease;
  transition: opacity, transform 0.2s ease, -webkit-transform 0.2s ease;
  -webkit-transform: translate3d(0, 5px, 0);
  -ms-transform: translate3d(0, 5px, 0);
  transform: translate3d(0, 5px, 0);

  &.left .tooltip-arrow {
    border-left-color: #fff;
  }

  &.right .tooltip-arrow {
    border-right-color: #fff;
  }

  &.top .tooltip-arrow {
    border-top-color: #fff;
  }

  &.bottom .tooltip-arrow {
    border-bottom-color: #fff;
  }
}

.tooltip-inner {
  min-width: 130px;
  padding: 10px 15px;
  border: none;
  border-radius: 3px;
  color: #555;
  background: #fff;
  -webkit-box-shadow: 0 8px 10px 1px rgba(0, 0, 0, 0.14), 0 3px 14px 2px rgba(0, 0, 0, 0.12), 0 5px 5px -3px rgba(0, 0, 0, 0.2);
  box-shadow: 0 8px 10px 1px rgba(0, 0, 0, 0.14), 0 3px 14px 2px rgba(0, 0, 0, 0.12), 0 5px 5px -3px rgba(0, 0, 0, 0.2);
  font-size: 12px;
  line-height: 1.5;
  text-transform: none;
}

.screen-reader-text {
  clip: rect(1px, 1px, 1px, 1px);
  position: absolute !important;
  height: 1px;
  width: 1px;
  overflow: hidden;

  &:focus {
    background-color: #f1f1f1;
    border-radius: 3px;
    -webkit-box-shadow: 0 0 2px 2px rgba(0, 0, 0, 0.6);
    box-shadow: 0 0 2px 2px rgba(0, 0, 0, 0.6);
    clip: auto !important;
    color: #21759b;
    display: block;
    font-size: 14px;
    font-weight: bold;
    height: auto;
    left: 5px;
    line-height: normal;
    padding: 15px 23px 14px;
    text-decoration: none;
    top: 5px;
    width: auto;
    z-index: 100000;
    /* Above WP toolbar. */
  }
}

.container {
  max-width: 100%;
}

//@media (min-width: 992px) and (max-width: 1300px) {
@media (min-width: 749px) {
  .container {
    max-width: 748px;
  }
}

@media (min-width: 768px) {
  .container {
    max-width: 750px;
  }
}

@media (min-width: 992px) {
  .container {
    max-width: 970px;
  }
}

@media (min-width: 1200px) {
  .container {
    max-width: 2000px;
  }
}
