/*
Theme Name: Sharkfin 2020
Author: Sharkfin Media Ltd
Author URI: https://sharkfinmedia.com/
Description: Sharkfin Media Fully Mobile Wordpress Theme
Version: Sharkfin 2020
*/
body, html {
  margin: 0;
  padding: 0;
  font-family: 'Work Sans', sans-serif;
  height: 100%;
  line-height: 220%;
  font-weight: 300; background: #000000
}
h1, h2, h3, h4, h5 {
  font-weight: 300;
  line-height: normal;
  color: #fff
}
img {
  max-width: 100%;
  height: auto;
}
strong {
  color: #fff
}

strong {
  font-weight: 600;
}
a {
  color: #fff
}
.ticker-holder {
  display: block;
  width: 100%;
  padding: 1% 0%;
  background: #007db7;
  color: #fff;
  font-size: 20px
}
.ticker-holder a {
  color: #fff;
  text-decoration: none
}
.flex-control-paging li a {
  background: #CCC !important;
  border-radius: 50% !important;
}
.flex-control-paging li a.flex-active {
  background: #007db7 !important;
  box-shadow: none !important;
  border-radius: 50% !important
}
.top-logo {
  display: block;
  background: #007db7;
  display: none;
  text-align: center;
  padding: 10px
}
.top-logo img {
  display: block;
  width: 60%;
  text-align: center;
  margin: 0px auto
}
.top-logo strong {
  color: #fff;
}
.top-logo a {
  text-decoration: none
}
.logo-holder {
  float: left;
  height: 120px;
  width: 387px;
  padding: 20px;
  text-align: center;
  background: #007db7;
  overflow: hidden;
}
.logo-holder strong {
  color: #fff;
}
.logo-holder img {
  height: 120px
}
.top-image {
  min-height: 600px; text-align: center
}
.top-image img { width:400px; margin: 3% 15%
}
.contact-holder {
  float: right;
  width: calc(100% - 427px);
  background: #007db7;
  text-align: right;
  font-size: 19px;
  color: #fff;
  line-height: 170%
}
.contact-holder a, .contact-holder strong {
  text-decoration: none;
  color: #fff
}
.contact-holder a:hover {
  color: #fff
}
.contact-holder-darken {
  background: linear-gradient(rgba(0, 0, 0, 0.2), rgba(0, 0, 0, 0.2));
  height: 56px;
  padding: 10px 0% 24px 5%;
}
.mobile-contact {
  display: none
}
.quad-vert-home {
  width: 15%;
  float: left;
}
.flexbox {
  clear: both;
  display: flex;
  flex-wrap: wrap;
}
.flexbox .col {
  flex: 1;
}
.flexbox .col77 {
  background: #000;
  color: #222;
  order: 2;
  flex: 1 0 77%;
  min-width: 0;
}
.flexbox .col100 {
  background: #000;
  color: #fff;
  order: 2;
  flex: 1 0 100%;
  min-width: 0;
}
li {background: #222!important}
.flexbox .col13 {
  background: #007db7;
  order: 1;
  flex: 1 0 13%;
  padding: 3% 5%;
  color: #fff;
  min-width: 0;
}
.flexbox .col13 a, .flexbox .col13 h1, .flexbox .col13 h2, .flexbox .col13 h3 {
  color: #fff;
  text-decoration: none
}
.flexbox .col13 h2, .flexbox .col13 h3 {
  color: #fff;
  text-decoration: none
}
.flexbox .col13 a:hover {
  color: #fff;
}
.flexbox .col13 [type="submit"] {
  width: 100%
}
.flexbox .col13 .post-date {
  display: block;
  color: #fff;
  font-size: 12px
}
.flexbox .col13 strong {
  color: #fff;
}
.flexbox .col13 .woocommerce-Price-amount, .flexbox .col13 .new-price {
  color: #fff !important;
  font-weight: 600 !important
}
.flexbox .col47 {
  flex: 1 0 47%;
}
.flexbox .col25 {
  flex: 1 0 25%;
}
.flexbox .col20 {
  flex: 1 0 20%;
}
.flexbox .col6 {
  flex: 1 0 6%;
}
.flexbox .col29_33 {
  flex: 1 0 29.33%;
}
.divider {
  display: block;
  clear: both;
  width: 100%
}
.padding-5 {padding: 5%}
.offset {
  position: relative;
  top: -300px;
  margin-bottom: -300px
}


.offer {
  background: #fff;
  color: #007db7;
  padding: 20px
}
.offer h2, .offer h3 {
  color: #007db7 !important
}
.top-holder {
  padding: 0px;
  background: url(images/image.jpg);
  background-size: cover;
  background-position: center
}
.title-holder {
  display: block;
  line-height: normal;
  padding: 10%
}
.title-holder h1, .title-holder h2, .title-holder h3 {
  color: #fff;
  text-align: center;
  line-height: normal;
  text-shadow: 1px 1px 3px rgba(0, 0, 0, 1);
  padding: 0px;
  margin: 0px
}
.title-holder h1 {
  font-size: 100px;
  font-weight: 900;
}
.title-holder h2 {
  font-size: 70px;
  padding: 20px 0px 0px 0px;
  font-weight: 600;
}
.title-holder h3 {
  font-size: 40px;
  padding: 20px 0px 40px 0px;
  font-weight: 600;
}
.icon-container {
  display: block;
  width: 90%;
  padding: 2.5% 5%;
  background-color: #fff;
  text-align: center
}
.icon-holder {
  display: inline-block
}
.icon-holder img {
  padding: 10px;
  height: 50px;
  text-align: center
}
.full-width-holder {
  display: block;
  width: 90%;
  padding: 2.5% 5%;
  background-color: #fff
}
.full-width-holder a {
  color: #222;
  text-decoration: none
}
.full-width-holder-default {
  padding-top: 122px;
}
.full-width-holder-colour-solid {
  display: block;
  width: 90%;
  padding: 40px 5%;
  background-color: #007db7;
  color: #fff;
}
.full-width-holder-colour-image {
  display: block;
  width: 90%;
  padding: 2% 5%;
  color: #fff;
  text-align: center;
  background: linear-gradient(rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0.5)), url(images/image.jpg) center;
  background-size: cover !important;
  background-attachment: fixed !important
}
.full-width-holder-logos {
  display: block;
  width: 100%;
  background-color: #fff;
  text-align: center
}
.full-width-holder-logos img {
  padding: 1%
}
.full-width-holder-footer {
  display: block;
  width: 90%;
  padding: 5%;
  background-color: #222
}
.full-width-holder-footer p, .full-width-holder-footer h1, .full-width-holder-footer h2 {
  color: #fff;
}
.full-width-holder-colour-image a, .full-width-holder-colour-image strong, .full-width-holder-colour-image h1, .full-width-holder-colour-image h2, .full-width-holder-colour-solid h3, .full-width-holder-colour-solid a {
  color: #fff;
}
.full-width-holder-footer strong {
  color: #007db7 !important;
  text-decoration: none;
}
.full-width-holder-footer a {
  color: #fff !important;
  text-decoration: none;
}
.img-blog {
  max-width: 100%;
  background: #fff;
}
.img-rounded {
  clear: both;
  width: 100%;
  border-radius: 30px;
  height: auto;
}
.separator {
  clear: both
}
.triple {
  display: table-cell;
  width: 30%;
  vertical-align: top;
  padding: 0px
}
.triple a {
  text-decoration: none;
  color: #222
}
.hover-zoom-triple {
    width: 30%;
    padding-top: 30%;
    margin: 0;
    float: left;
    margin-right: 5%;
    -webkit-transition: all 1s ease-in-out;
    transition: all 1s ease-in-out;
    background-size: 100%;
    background-position: center;
    background-repeat: no-repeat;
    position: relative;
}
.hover-zoom-triple:hover {
    background-size: 120%;
}
.hover-zoom-triple p {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    background-color: #007db7;
    text-align: center;
    color: #fff;
    padding: 8%;
    margin: 0;
    box-sizing: border-box;
}
.hover-zoom-triple p:hover {
    background-color: #222;
    color: #007db7
}
.hover-zoom-quad {
    width: 21.25%;
    padding-top: 21.25%;
    margin: 0;
    float: left;
    margin-right: 5%;
    -webkit-transition: all 1s ease-in-out;
    transition: all 1s ease-in-out;
    background-size: 100%;
    background-position: center;
    background-repeat: no-repeat;
    position: relative;
}
.hover-zoom-quad:hover {
    background-size: 120%;
}
.hover-zoom-quad p {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    background-color: #007db7;
    text-align: center;
    color: #fff;
    padding: 8%;
    margin: 0;
    box-sizing: border-box;
}
.hover-zoom-quad p:hover {
    background-color: #222;
    color: #007db7
}
.quad {
  display: table-cell;
  width: 47.5%;
  vertical-align: top;
}
.gap {
  display: table-cell;
  width: 5%;
  vertical-align: top;
  padding: 0px
}
.double {
  display: table-cell;
  width: 47.5%;
  vertical-align: top;
  padding: 0px
}
.circle {
  border-radius: 50%;
}
.img-rounded {
  max-width: 100%;
  clear: both;
  max-width: 100%;
  border-radius: 30px;
  height: auto;
  float: left;
  margin-right: 40px;
  margin-bottom: 40px
}
.separator {
  clear: both;
}

img.alignright {
  float: right;
  margin: 0 0 2em 2em;
}
img.alignleft {
  float: left;
  margin: 0 2em 2em 0;
}
img.aligncenter {
  display: block;
  margin-left: auto;
  margin-right: auto;
}
.alignright {
  float: right;
}
.alignleft {
  float: left;
}
.aligncenter {
  display: block;
  margin-left: auto;
  margin-right: auto;
}
input:not([type="radio"]):not([type="checkbox"]) {
  -webkit-appearance: none;
  border-radius: 0;
}
input[type="text"], input[type="email"], input[type="tel"], input[type="number"], input[type="password"], textarea, .wcj_product_input_fields, select {
  font-size: inherit;
  font-family: inherit;
  padding: 5%;
  width: 90%;
  border: none;
}
[type="submit"] {
  font-size: inherit;
  font-family: inherit;
  border: none;
  display: block;
  background: #007db7;
  cursor: pointer;
  color: #fff;
  padding: 5%;
}
[type="submit"]:hover {
  color: #fff
}
.forminator-button {
  background: #007db7 !important;
  font-size: inherit !important
}
.forminator-label--validation, {
  background: #222 !important;
  font-weight: 300 !important;
  color: #fff !important;
  font-size: inherit !important
}
.forminator-label--validation, .forminator-label--limit {
  font-weight: 300 !important;
  font-size: inherit !important
}
.envira-caption {
  padding: 0px;
  margin: 0px
}
.envira-caption h2 {
  font-size: 20px;
  padding: 10px 0px 0px 0px;
  margin: 0px
}
.envira-caption p {
  padding: 0px;
  margin: 0px
}
.envira-album-title {color: #FFFFFF!important}
.button {
  display: inline-block;
  padding: 10px 30px;
  background: #007db7;
  color: #fff;
}
.button a {
  color: #fff;
  text-decoration: none;
}
.button:hover {
  color: #fff;
}
.button-white {
  display: inline-block;
  padding: 10px 30px;
  background: #fff !important;
  color: #222 !important;
}
.button-white a {
  color: #222 !important;
  text-decoration: none;
}
.button-white:hover {
  color: #007db7 !important;
}
.button-black {
  display: inline-block;
  padding: 10px 30px;
  background: #222;
  color: #fff;
}
.button-black a {
  color: #fff;
  text-decoration: none;
}
.button-black:hover {
  color: #007db7;
}
.videoWrapper {
  position: relative;
  padding-bottom: 56.25%; /* 16:9 */
  padding-top: 25px;
  height: 0;
}
.videoWrapper iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
.social-media {
  display: table;
  margin: 0 0;
  z-index: 0;
}
.social-media ul {
  padding: 0;
  margin: 0;
  list-style: none;
  position: relative
}
.social-media ul li {
  display: inline-block;
  padding-right: 20px;
  float: left;
}
.social-media ul li:last-child {
  padding-right: 0px
}
.facebook-button {
  background: #3c5a99;
  border-radius: 34px;
  width: 50px;
  height: 58px;
  padding-left: 18px;
  padding-top: 10px;
  text-align: left !important
}
.facebook-button a {
  text-decoration: none;
  color: #FFF;
}
.facebook-button:hover {
  background: #999;
  transition: color .24s linear, background .24s linear;
}
.twitter-button {
  background: #03aced;
  border-radius: 34px;
  width: 56px;
  height: 54px;
  padding-left: 12px;
  padding-top: 14px;
  text-align: left !important
}
.twitter-button a {
  text-decoration: none;
  color: #fff
}
.twitter-button:hover {
  background: #999;
  transition: color .24s linear, background .24s linear;
}
.google-button {
  background: #dd5044;
  border-radius: 34px;
  width: 60px;
  height: 54px;
  padding-left: 8px;
  padding-top: 14px;
  text-align: left !important
}
.google-button a {
  text-decoration: none;
  color: #FFF;
}
.google-button:hover {
  background: #999;
  transition: color .24s linear, background .24s linear;
}
.linkedin-button {
  background: #0177b5;
  border-radius: 34px;
  width: 54px;
  height: 55px;
  padding-left: 14px;
  padding-top: 13px;
  text-align: left !important
}
.linkedin-button a {
  text-decoration: none;
  color: #FFF;
}
.linkedin-button:hover {
  background: #999;
  transition: color .24s linear, background .24s linear;
}
.pinterest-button {
  background: #bd081c;
  border-radius: 34px;
  width: 54px;
  height: 55px;
  padding-left: 14px;
  padding-top: 13px;
  text-align: left !important
}
.pinterest-button a {
  text-decoration: none;
  color: #FFF;
}
.pinterest-button:hover {
  background: #999;
  transition: color .24s linear, background .24s linear;
}
.instagram-button {
  background: radial-gradient(circle at 30% 107%, #fdf497 0%, #fdf497 5%, #fd5949 45%, #d6249f 60%, #285AEB 90%);
  border-radius: 34px;
  width: 56px;
  height: 55px;
  padding-left: 12px;
  padding-top: 13px;
  text-align: left !important
}
.instagram-button a {
  text-decoration: none;
  color: #FFF;
}
.instagram-button:hover {
  background: #999;
  transition: color .24s linear, background .24s linear;
}
.youtube-button {
  background: #f00;
  border-radius: 34px;
  width: 47px;
  height: 54px;
  padding-left: 21px;
  padding-top: 14px;
  text-align: left !important
}
.youtube-button a {
  text-decoration: none;
  color: #FFF;
}
.youtube-button:hover {
  background: #999;
  transition: color .24s linear, background .24s linear;
}

/* Overlay Buttons ************************************************************************/


/* Main container */
.overlay-image {
    position: relative;
    width: 100%;
}
/* Original image */
.overlay-image .image {
    display: block;
    width: 100%;
    height: auto
}
/* Original text overlay */
.overlay-image .text {
    font-weight: 300;
    color: #222;
    font-size: 28px;
    line-height: 1.25em;
    text-shadow: 0px 0px 4px rgba(0,0,0,0);
    text-align: center;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 90%;
    padding: 7.5% 5%;
    background: rgba(255,255,255,0.85)
}
.overlay-image .text p {
    font-size: 28px;
    line-height: normal;
    text-shadow: 0px 0px 2px rgba(0,0,0,0);
    padding: 0px auto;
    margin: 0px auto
}
/********* Overlay on hover *******/

/* New overlay on hover */
.overlay-image .hover {
    position: absolute;
    top: 0;
    height: 100%;
    width: 100%;
    opacity: 0;
    transition: .5s ease;
}
/* New overlay appearance on hover */
.overlay-image:hover .hover {
    opacity: 1;
    filter: grayscale(100%)
}
/********* Background and text only overlay on hover *******/

.overlay-image .normal {
    transition: .5s ease;
}
.overlay-image:hover .normal {
    opacity: 0;
}
.overlay-image .hover {
    background-color: rgba(0,0,0,0.5);
}
/* Responsive Menu Pro ****************************************************************/
#responsive-menu-pro-container {
  padding-right: 5%;
  padding-top: 33px
}
#responsive-menu-pro-header #responsive-menu-pro-header-bar-logo img {
  margin-top: 0px;
}
/* Navigation ************************************************************************/

.wrapper {
  display: inline-flex;
  justify-content: center;
  font-size: 18px; color: #fff
}
.wrapper i {
  transition: all ease-in-out 150ms;
}
.wrapper a:nth-child(1) {
  color: #fff;
  padding-right: 12px !important
}
.wrapper a:nth-child(2) {
  color: #fff;
  padding-right: 12px !important
}
.wrapper a:nth-child(3) {
  color: #fff;
}
.wrapper i:hover, .menu-nav a:hover {
  margin-top: -3px;
  color: #fff
}
.menu-nav {
  clear: both; font-size: 18px;
  margin-top: 10px !important
}
.menu-nav a, .menu-nav strong {
  color: #fff
}
.menu-nav a:hover {
  color: #fff
}

/* Woocommerce ************************************************************************/
.woocommerce-loop-category__title, .woocommerce-loop-product__title {
    background: #007db7!important;
    padding: 20px 5px!important;
    text-align: center!important;
    color: #FFF!important;
}
.woocommerce ul.products li.product a img {
    margin: 0px!important
}
mark.count {
    background-color: #007db7!important;
    color: #FFF!important
}
.star-rating {
    color: #007db7!important
}
a.remove:before {
    color: #007db7;
}
.woocommerce #respond input#submit.alt, .woocommerce a.button.alt, .woocommerce button.button.alt, .woocommerce input.button.alt {
    background: #007db7!important
}
.woocommerce #respond input#submit, .woocommerce a.button, .woocommerce button.button, .woocommerce input.button {
    font-weight: 300!important
}
.price {
    color: #007db7!important;
    font-weight: 600!important
}
.woocommerce-info, .woocommerce-message {
    border-top-color: #007db7!important;
}
.woocommerce-message::before, .woocommerce-info::before {
    color: #007db7!important;
}
.woocommerce-cart .cart .cart_item a.remove::before {
    color: #007db7!important;
}
.woocommerce-Price-amount, .new-price {
    color: #007db7!important;
    font-weight: 600!important
}
.onsale {
    background: #007db7!important
}
.woocommerce a.remove {
    color: #007db7!important
}
.input-text {
    margin-right: 20px;
    margin-bottom: 20px
}
.label {
    font-size: 20px; background: #000000;
    color: #fff; font-weight: 300!important
}
select {
    font-size: inherit;
    font-family: inherit;
    border: #222 1px solid;
    padding: 5px
}
.input-text.qty.text {
    font-size: inherit;
    font-family: inherit;
    padding: 5%;
    width: 90%; border: #222 1px solid
}
.input-text {
  margin-right: 20px;
  margin-bottom: 20px
}
#envirabox-title-float-wrap, .caption {
  display: none !important
}
#mega-menu-wrap-sharkfin-menu #mega-menu-sharkfin-menu > li.mega-menu-flyout ul.mega-sub-menu li.mega-menu-item a.mega-menu-link {
  background: #007db7 !important;
  color: #fff !important
}
#mega-menu-wrap-sharkfin-menu #mega-menu-sharkfin-menu > li.mega-menu-flyout ul.mega-sub-menu li.mega-menu-item a.mega-menu-link:hover {
  background: #007db7 !important;
  filter: brightness(115%);
}
#mega-menu-wrap-sharkfin-menu #mega-menu-sharkfin-menu > li.mega-menu-flyout ul.mega-sub-menu li.mega-menu-item ul.mega-sub-menu a.mega-menu-link {
  background: #007db7 !important;
  filter: brightness(115%);
}
#mega-menu-wrap-sharkfin-menu #mega-menu-sharkfin-menu > li.mega-menu-flyout ul.mega-sub-menu li.mega-menu-item ul.mega-sub-menu a.mega-menu-link:hover {
  background: #007db7 !important;
  filter: brightness(100%);
}
.pt-cv-wrapper .btn-success {
  color: #fff !important;
  background-color: #007db7 !important;
  border-color: #007db7 !important;
  border-radius: 0px !important
}
.pt-cv-wrapper .pagination > .active > a, .pt-cv-wrapper .pagination > .active > a:focus, .pt-cv-wrapper .pagination > .active > a:hover, .pt-cv-wrapper .pagination > .active > span, .pt-cv-wrapper .pagination > .active > span:focus, .pt-cv-wrapper .pagination > .active > span:hover {
  background-color: #007db7 !important;
  border-color: #007db7 !important;
}
.pt-cv-wrapper .pagination > li > a, .pt-cv-wrapper .pagination > li > span, {
  color: #007db7 !important;
}
/* First Break Point ************************************************************************/
@media screen and (max-width:1280px) {
  .offset .padding-5 h1 {
    font-size: 50px; margin-bottom: 120px
  }
  .padding-5 {
    padding: 3% 5%
  }
  .offset {
    top: -200px;
    margin-bottom: -200px
  }
  .flexbox .col77 {
    order: 1;
  }
  .flexbox .col13 {
    order: 2;
  }
  .top-image {
    min-height: 500px;
    background-attachment: inherit !important
  }
  .side-logo {
    display: none
  }
  .mega-menu-toggle {
    height: 50px !important;
    line-height: 50px !important
  }
  .flexbox .col77, .flexbox .col29_33, .flexbox .col6 {
    flex: none;
    display: block;
    width: 100%
  }
  .flexbox .col13 {
    display: block;
    padding-bottom: 10%
  }
  .flexbox .col25, .flexbox .col20 {
    flex-basis: 50%;
  }
  .logo-holder, .contact-holder {
    float: none;
    width: 100%;
    text-align: left
  }
  .top-holder {
    padding: 7.5% 0px;
  }
  .social-media-sidebar-holder {}
  .info-container-home, .info-container {
    padding-top: 0px;
  }
  .sidebar, .info-container {
    padding-top: 5%;
  }
  .full-width-holder-default {
    padding-top: 0px
  }
  .full-width-holder {
    padding-top: 2.5%
  }
  .full-width-holder-colour-image {
    background-attachment: inherit !important;
  }
  .title-holder h1 {
    font-size: 80px;
  }
  .title-holder h2 {
    font-size: 40px;
  }
  .title-holder h3 {
    font-size: 30px;
  }
  .logo-holder {
    display: none
  }
  .top-logo {
    display: block
  }
  .top-info-holder {
    display: block;
    text-align: center;
  }
  .nav-holder {
    position: inherit;
    background: #222;
    height: auto
  }
  .burger-holder {
    padding-right: 5%
  }
  .burger-nav {
    display: block;
    height: 36px;
    width: 100%;
    background: url(icons/burger.png) no-repeat right center;
    cursor: pointer;
    padding-top: 22px;
  }
  .google-maps {
    position: relative;
    padding-bottom: 75%;
    // This is the aspect ratio height: 0;
    overflow: hidden;
  }
  .google-maps iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
  }
}
/* Second Break Point ************************************************************************/
@media screen and (max-width:768px) {
  .offset .padding-5 h1 {
    font-size: 30px; margin-bottom: 90px
  }
  .offset {
    top: -130px;
    margin-bottom: -130px
  }
  .top-image {
    min-height: 400px;
    background-attachment: inherit !important
  }
  .mobile-contact {
    display: block
  }
  .desktop-contact {
    display: none
  }
  .title-holder h1 {
    font-size: 50px;
  }
  .quad, .triple, .double, .gap {
    display: block;
    width: 100%;
  }
  .top-logo img {
    width: 100%
  }
  .top-holder {
    padding: 10% 0px;
  }
  .quad-vert-home {
    margin-top: 0px;
    width: 50%;
    height: 50%;
    min-height: 300px;
  }
  .quad-vert-home p {
    bottom: 40%;
    padding: 20px 0px 20px 0px;
    height: 20%;
  }
  .full-width-holder-colour-solid, .full-width-holder-colour-image, .full-width-holder, .full-width-holder-footer {
    width: 90%;
  }
  .img-blog {
    display: none
  }
  .hover-zoom-triple, .hover-zoom-quad {
    width: 100%;
    padding-top: 100%;
    margin-bottom: 10%
  }
  .double {
    display: block;
    width: 100%
  }
}