/*
 * Styles
 */

/* ABSTRACTS */

/* fonts */
@import url('https://fonts.googleapis.com/css2?family=Mulish:wght@400;600;700&display=swap');


/* colour

gray        #6e6e6e
black       black
green       #6eb43f
dark green  #63b22e

*/


/* BASE */

/* global */

* {
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

html,
body {
  margin: 0px;
  padding: 0px;
}


@media screen and (max-width: 1024px) {
  html {
    font-size: 16px;
  }
}

@media screen and (min-width: 1025px) and (max-width: 1300px) {
  html {
    font-size: 11px;
  }
}

@media screen and (min-width: 1301px) and (max-width: 1919px) {
  html {
    font-size: 14px;
  }
}

@media screen and (min-width: 1301px) and (max-width: 1919px) and (min-width: 1301px) and (max-width: 1919px) {
  html {
    font-size: 14px;
  }
}

@media only screen and (min-width: 1301px) and (max-width: 1919px) and (min-width: 1301px) and (max-width: 1919px) and (-webkit-min-device-pixel-ratio: 1.25),
  only screen and (min-width: 1301px) and (max-width: 1919px) and (min-width: 1301px) and (max-width: 1919px) and (min-resolution: 120dpi),
  only screen and (min-width: 1301px) and (max-width: 1919px) and (min-width: 1301px) and (max-width: 1919px) and (min-resolution: 1.25dppx) {
  html {
    font-size: 10px;
  }
}

body {
  font-family: 'Mulish', sans-serif;
  font-size: 100%;
  font-weight: 400;
  color: #6e6e6e;
}

/* Wrapping element */
.body-content {
  padding-left: 15px;
  padding-right: 15px;
}


/* typography */

h1,
h2,
h3,
h4,
h5,
h6 {
  color: black;
}

h1 {
  font-size: 28px;
  font-weight: 700;
  line-height: 200%;
}

h2 {
  font-size: 22px;
  font-weight: 600;
}

h3 {
  font-size: 18px;
  line-height: 200%;
}

h4 {
  font-size: 16px;
}

h5 {
  font-size: 15px;
}

h6 {
  font-size: 14px;
  font-weight: bold;
}

p, .paragraph {
  font: 600 1.25rem/2.6875rem 'Mulish', sans-serif;
}

/* anchors */

a:hover {
  text-decoration: none;
}


/* utilities */

.label-align {
  text-align: right !important;
}

@media screen and (max-width: 767px) {
  .label-align {
      text-align: left !important;
  }
}

.text-black {
  color: black;
}


/* forms */

.form-control::placeholder { /* Chrome, Firefox, Opera, Safari 10.1+ */
  color: gray;
  opacity: 1; /* Firefox */
}

.form-control:-ms-input-placeholder { /* Internet Explorer 10-11 */
  color: gray;
}

.form-control::-ms-input-placeholder { /* Microsoft Edge */
  color: gray;
}


/* button */

.value-button {
  min-width: 80px;
}

@media screen and (max-width: 1199px) {
  .value-button {
      min-width: 64px;
  }
}
@media screen and (max-width: 767px) {
  .value-button {
      min-width: 50px;
  }
}


/* COMPONENTS */


/* carousel */

.carousel-caption p {
  font-size: 20px;
  line-height: 1.4;
}

/* Make .svg files in the carousel display properly in older browsers */
.carousel-inner .item img[src$=".svg"] {
  width: 100%;
}

@media screen and (max-width: 767px) {
  .carousel-caption {
      display: none;
  }
}

/* hero */

.hero {
  position:relative;
  z-index: 5;
}

.hero img.main {
  display: block;
  width: 100%;
  height: 70vh;
  min-height: 600px;
  object-fit: cover;
}


@media screen and (max-width: 1024px) {
  .hero img.main {
    height: 90vh;
  }
}

.hero .overlay {
  position: absolute;
  z-index: 1;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  align-items: center;
  padding: 85px 15px 15px 15px;
  background-color: rgba(0,0,0,0.6);
}

.hero .overlay img.go-anywhere-logo {
  display: block;
  margin-top: auto;
  width: 100%;
  max-width: 33.47937rem;
  height: auto;
}

@media screen and (max-width: 1024px) {
  .hero .overlay img.go-anywhere-logo {
    max-width: 16.09437rem;
  }
}

.hero .overlay .actions {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  margin-top: auto;
  margin-bottom: 4rem;
  text-align: center;
}

.hero .overlay .actions > .action {
  position: relative;
  flex: 0 1 26rem;
  display: block;
  margin: 1.5rem;
  padding: 2rem;
  border: 2px solid white;
  border-radius: 0.4rem;
  background-color: rgba(255,255,255,0);
  transition: background 300ms ease-in-out, border 300ms ease-in-out
}

.hero .overlay .actions > .action h2,
.hero .overlay .actions > .action p {
  color: white;
}

.hero .overlay .actions > .action h2 > i {
  margin-right: 1rem;
}

.hero .overlay .actions > .action:hover {
  background: #0093C8;
  border-color: #0093C8;
}

.hero .overlay .actions > .action.active {
  border-color: #6eb43f;
  background-color: rgba(255,255,255,0.2);
}

.hero .overlay .actions > .action.disabled {
  border-color: #6e6e6e;
  pointer-events: none;
}

@media screen and (max-width: 1024px) {
  .hero .overlay .actions > .action {
    flex: 0 1 18rem;
    margin: 0.5rem;
  }

  .hero .overlay .actions > .action h2 {
    font-size: 18px;
  }
  .hero .overlay .actions > .action p {
    margin-bottom: 0;
    font-size: 1rem;
    line-height: 1.2;
  }
  
}


/* QR code generator */

#qrCode {
  margin: 1.5rem;
}


/* frames */

#previewFrame,
#tandcViewFrame,
#privacyStatementViewFrame {
  width: 100%;
  height: 660px;
}

@media screen and (max-width: 767px) {
  #previewFrame,
  #tandcViewFrame,
  #privacyStatementViewFrame {
      height: 400px;
  }
}


/*
 *
 * temp from site.css
 *
 */

/* shopping cart icon */

.shoppingCartIconWide {
  background: url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iaXNvLTg4NTktMSI/PjwhRE9DVFlQRSBzdmcgUFVCTElDICItLy9XM0MvL0RURCBTVkcgMS4xLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL0dyYXBoaWNzL1NWRy8xLjEvRFREL3N2ZzExLmR0ZCI+PHN2ZyB2ZXJzaW9uPSIxLjEiIGlkPSJDYXBhXzEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIHg9IjBweCIgeT0iMHB4IiB3aWR0aD0iMjhweCIgaGVpZ2h0PSIzMnB4IiB2aWV3Qm94PSIwIDAgMjggMzIiIHN0eWxlPSJlbmFibGUtYmFja2dyb3VuZDpuZXcgMCAwIDI4IDMyOyIgeG1sOnNwYWNlPSJwcmVzZXJ2ZSI+PGcgaWQ9IkJhZyI+PGc+PHBhdGggc3Ryb2tlPSJ3aGl0ZSIgZmlsbD0id2hpdGUiIGQ9Ik0yNS45OTYsOC45MUMyNS45NDksOC4zOTUsMjUuNTE4LDgsMjUsOGgtNVY2YzAtMy4zMDktMi42OTEtNi02LTZjLTMuMzA5LDAtNiwyLjY5MS02LDZ2MkgzQzIuNDgyLDgsMi4wNTEsOC4zOTUsMi4wMDQsOC45MWwtMiwyMmMtMC4wMjUsMC4yNzksMC4wNjgsMC41NTcsMC4yNTgsMC43NjRDMC40NTEsMzEuODgyLDAuNzE5LDMyLDEsMzJoMjZjMC4yODEsMCwwLjU0OS0wLjExOCwwLjczOC0wLjMyNmMwLjE4OC0wLjIwNywwLjI4My0wLjQ4NCwwLjI1OC0wLjc2NEwyNS45OTYsOC45MXogTTEwLDZjMC0yLjIwNiwxLjc5NS00LDQtNHM0LDEuNzk0LDQsNHYyaC04VjZ6IE0yLjA5NiwzMGwxLjgxNy0yMEg4djIuMjc3QzcuNDA0LDEyLjYyNCw3LDEzLjI2Miw3LDE0YzAsMS4xMDQsMC44OTYsMiwyLDJzMi0wLjg5NiwyLTJjMC0wLjczOC0wLjQwNC0xLjM3Ni0xLTEuNzIzVjEwaDh2Mi4yNzdjLTAuNTk2LDAuMzQ3LTEsMC45ODQtMSwxLjcyM2MwLDEuMTA0LDAuODk2LDIsMiwyczItMC44OTYsMi0yYzAtMC43MzgtMC40MDQtMS4zNzYtMS0xLjcyM1YxMGg0LjA4N2wxLjgxNywyMEgyLjA5NnoiLz48L2c+PC9nPjwvc3ZnPg==) no-repeat scroll center center;
  background-size: 18px 20px;
  display: block;
  height: 30px;
  width: 30px;
  position: absolute;
}

.shoppingCartIconNarrow {
  background: url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iaXNvLTg4NTktMSI/Pgo8IURPQ1RZUEUgc3ZnIFBVQkxJQyAiLS8vVzNDLy9EVEQgU1ZHIDEuMS8vRU4iICJodHRwOi8vd3d3LnczLm9yZy9HcmFwaGljcy9TVkcvMS4xL0RURC9zdmcxMS5kdGQiPjxzdmcgdmVyc2lvbj0iMS4xIiBpZD0iQ2FwYV8xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB4PSIwcHgiIHk9IjBweCIgd2lkdGg9IjI4cHgiIGhlaWdodD0iMzJweCIgdmlld0JveD0iMCAwIDI4IDMyIiBzdHlsZT0iZW5hYmxlLWJhY2tncm91bmQ6bmV3IDAgMCAyOCAzMjsiIHhtbDpzcGFjZT0icHJlc2VydmUiPgo8ZyBpZD0iQmFnIj4KPGc+CjxwYXRoIHN0cm9rZT0id2hpdGUiIGZpbGw9IndoaXRlIiBkPSJNMjUuOTk2LDguOTFDMjUuOTQ5LDguMzk1LDI1LjUxOCw4LDI1LDhoLTVWNmMwLTMuMzA5LTIuNjkxLTYtNi02Yy0zLjMwOSwwLTYsMi42OTEtNiw2djJIM0MyLjQ4Miw4LDIuMDUxLDguMzk1LDIuMDA0LDguOTFsLTIsMjJjLTAuMDI1LDAuMjc5LDAuMDY4LDAuNTU3LDAuMjU4LDAuNzY0QzAuNDUxLDMxLjg4MiwwLjcxOSwzMiwxLDMyaDI2YzAuMjgxLDAsMC41NDktMC4xMTgsMC43MzgtMC4zMjZjMC4xODgtMC4yMDcsMC4yODMtMC40ODQsMC4yNTgtMC43NjRMMjUuOTk2LDguOTF6IE0xMCw2YzAtMi4yMDYsMS43OTUtNCw0LTRzNCwxLjc5NCw0LDR2MmgtOFY2eiBNMi4wOTYsMzBsMS44MTctMjBIOHYyLjI3N0M3LjQwNCwxMi42MjQsNywxMy4yNjIsNywxNGMwLDEuMTA0LDAuODk2LDIsMiwyczItMC44OTYsMi0yYzAtMC43MzgtMC40MDQtMS4zNzYtMS0xLjcyM1YxMGg4djIuMjc3Yy0wLjU5NiwwLjM0Ny0xLDAuOTg0LTEsMS43MjNjMCwxLjEwNCwwLjg5NiwyLDIsMnMyLTAuODk2LDItMmMwLTAuNzM4LTAuNDA0LTEuMzc2LTEtMS43MjNWMTBoNC4wODdsMS44MTcsMjBIMi4wOTZ6Ii8+CjwvZz4KPC9nPgo8L3N2Zz4=) no-repeat scroll center center;
  background-size: 18px 20px;
  display: block;
  height: 30px;
  width: 30px;
  position: absolute;
}

.shoppingCartItemCount {
  display: inline;
  background: #7ea04e;
  border-radius: 20px;
  color: #fff;
  padding: 1px 4px;
  top: 14px;
  font-size: 12px;
  position: relative;
  left: 14px;
}

.navbar-custom {
  height: 100px;
  background: white;
  border-bottom: 4px solid #6eb43f;
  flex-wrap: nowrap;
}

.navbar-toggler {
  border: 0 !important;
}

#nav-middle {
  display: block;
}

.navbar-collapse {
  position: fixed;
  top: 100px;
  left: 0;
  background: white;
  width: 100%;
  z-index: 1;
}

#nav-phone-item {
  display: none;
}

#logo {
  max-width: 400px;
  flex-shrink: 0;
}

.navbar-toggler{
  display: none;
}

#banner-image
{
  width: 100%;
  margin-left:0%;
}

#banner-text {
  position: absolute;
  bottom: 20px;
  left: 37.5%;
  width: 25%;
}

@media screen and (max-width: 550px) {
  #logo {
      max-width: 170px;
  }

  #banner-text {
      left: 20%;
      width: 60%;
  }
}

@media screen and (max-width:1234px) {
  #nav-middle {
      display: none;
  }

  #nav-phone-item {
      display: block;
  }

  .navbar-toggler {
      display: inline-block;
  }

  #banner-image {
      width: 140%;
      margin-left: -20%;
  }

  #banner-text {
      width: 40%;
      left: 30%;
  }
}

.gift-card-img {
  -webkit-border-radius: 15px;
  -moz-border-radius: 15px;
  border-radius: 15px;
  border: 1px solid rgba(0,0,0,.3);
}

.navbar-nav > li {
  padding-left: 10px;
  padding-right: 10px;
}

/* Hide/rearrange for smaller screens */
@media screen and (max-width: 767px) {
  /* Hide captions */
  .carousel-caption {
      display: none;
  }

  .announcementBanner {
      font-size: 14px;
  }

  #banner-image {
      width: 200%;
      margin-left: -50%;
  }

  #banner-text{
      width: 40%;
      left: 30%;
  }

  .navbar-collapse {
      top: 70px;
  }

  .navbar-custom{
      height: 70px;
  }
}

.iti {
  width: 100%;
}

.iti__selected-flag {
  background-color: rgba(0, 0, 0, 0.03) !important;
}

.required:after {
  content: " *";
  font-weight: bold;
  color: red;
}

.btn-secondary:hover {
  /*background-color: rgba(0, 175, 227, 1);*/
  background-color: rgba(0, 96, 125, 1);
  /*border-color: rgba(0, 96, 125, 1);*/
}

.btn-secondary {
  background-color: rgb(0, 154, 200, 1);
  /*background-color: rgba(0, 116, 150, 0.9);*/
  border: none;
  /*border-color: rgba(0, 96, 125, 1);*/
  border-radius: 1px;
  /*border-width: 2px;*/
  font-weight: 600;
  text-transform: uppercase;
  font-size: 15px;
  padding: 12px;
}

.btn-primary:hover {
  /*background-color: rgba(110, 180, 63, 1);*/
  background-color: rgba(75, 123, 43, 1);
  /*border-color: rgba(75, 123, 43, 1);*/
}

.btn-primary {
  background-color: rgba(110, 180, 63, 1);
  border: none;
  /*border-color: #4b7b2b;*/
  border-radius: 1px;
  /*border-width: 2px;*/
  font-weight: 600;
  text-transform: uppercase;
  font-size: 15px;
  padding: 12px;
}

.btn-outline-secondary {
  background-color: rgba(0, 0, 0, 0.05);
  padding: 8px;
  color: #00AFE3;
  /*border: none;*/
  border-width: 1px;
  /*border-color: #00AFE3;*/
  border-radius: 0px;
  border-color: #dedede;
  font-weight: 600;
  text-transform: uppercase;
  font-size: 14px
}

  .btn-outline-secondary:hover {
      background-color: rgba(150, 150, 150, 0.90);
      border-color: #dedede;
  }

.btn-outline-primary {
  background-color: rgba(0, 0, 0, 0.05);
  padding: 8px;
  color: #6eb43f;
  /*border: none;*/
  border-width: 1px;
  /*border-color: #6eb43f;*/
  border-color: #dedede;
  border-radius: 0px;
  font-weight: 600;
  text-transform: uppercase;
  font-size: 14px
}

  .btn-outline-primary:hover {
      background-color: rgba(150, 150, 150, 0.90);
      border-color: #dedede;
  }

#valueRadio > label {
  font-size: 100%;
  color: #6e6e6e;
}

  #valueRadio > label:hover {
      font-size: 100%;
      color: white;
  }

.alert-success {
  background-color: rgba(250, 250, 250, 1);
  border-color: rgba(245, 245, 245, 1);
  border-width: 16px;
  color: #6eb43f;
  font-size: 120%;
  font-weight: 600;
}

.mw-100 {
  min-width: 100px !important;
}

h1.value {
  font-size: 28px;
  font-weight: 700;
  color: #6e6e6e;
}

::-webkit-input-placeholder {
  color: #b0b0b0 !important;
}

:-ms-input-placeholder {
  color: #b0b0b0 !important;
}

::placeholder {
  color: #b0b0b0 !important;
}

option:first-child {
  color: #b0b0b0 !important;
}

.placeholder-light {
  color: #b0b0b0 !important;
}

.form-check-input {
  margin-right: 10px;
}

.form-radio-input {
  margin-right: 10px;
}

.form-check-label {
  margin-left: 5px;
}

.phone-link, .phone-link:hover, .phone-link:active, .phone-link:visited {
  color: #009bc9;
  font-size: 17px;
  text-decoration: none;
}

.option-btn, .option-btn:hover, .option-btn:active, .option-btn:visited {
  color: black;
  font-size: 14px;
  font-weight: 400;
  text-decoration: none;
}

a.custom:hover {
  text-decoration: none;
}

.custom-card {
  padding: 5px;
  line-height: 13px;
  font-size: 13px;
  font-weight: bold;
}

  .custom-card .header {
      font-size: 21px;
      line-height: 20px;
  }

  .custom-card hr {
      margin: 2px auto;
  }


.btn-balance-result,
.btn-balance-result:hover,
.btn-balance-result:active,
.btn-balance-result:visited {
  width: 100px;
  height: 100px;
  background: rgb(239, 239, 239);
  color: black;
  display: flex;
  flex-direction: column;
  justify-content: center;
}

.modal
{
  max-width: 95vw;
}

.right-buttons {
  width: 150px;
}

@media only screen and (max-width: 576px) {
  .right-buttons {
      width: auto;
  }
}


#overlay {
  background: #ffffff;
  color: #666666;
  position: fixed;
  height: 100%;
  width: 100%;
  z-index: 5000;
  top: 0;
  left: 0;
  float: left;
  text-align: center;
  padding-top: 25%;
  opacity: .8;
}


.spinner {
  margin: 0 auto;
  height: 64px;
  width: 64px;
  animation: rotate 0.8s infinite linear;
  border: 5px solid firebrick;
  border-right-color: transparent;
  border-radius: 50%;
}

@keyframes rotate {
  0% {
      transform: rotate(0deg);
  }

  100% {
      transform: rotate(360deg);
  }
}

/* header */

.btn {
  border-radius: 0;
  -webkit-transition: all 300ms ease-in-out;
  transition: all 300ms ease-in-out;
}

li.green a {
  color: #8ad459 !important;
  -webkit-transition: color 300ms ease-in-out;
  transition: color 300ms ease-in-out;
}

li.green a:hover {
  color: #63b22e !important;
}

li.blue a {
  color: #4cb5db !important;
  -webkit-transition: color 300ms ease-in-out;
  transition: color 300ms ease-in-out;
}

li.blue a:hover {
  color: #258fb6 !important;
}

@media screen and (max-width: 1024px) {
  .desktop {
    display: none !important;
  }
}

@media screen and (min-width: 1025px) {
  .touch {
    display: none !important;
  }
}

@media screen and (min-width: 521px) {
  .mobile {
    display: none !important;
  }
}

.hidden {
  display: none !important;
}

a {
  text-decoration: none;
}

/*!
 * Hamburgers
 * @description Tasty CSS-animated hamburgers
 * @author Jonathan Suh @jonsuh
 * @site https://jonsuh.com/hamburgers
 * @link https://github.com/jonsuh/hamburgers
 */
.hamburger {
  -webkit-box-flex: 0;
  -ms-flex: 0 0 65px;
  flex: 0 0 65px;
  height: 65px;
  display: inline-block;
  cursor: pointer;
  -webkit-transition-property: opacity, -webkit-filter;
  transition-property: opacity, -webkit-filter;
  transition-property: opacity, filter;
  transition-property: opacity, filter, -webkit-filter;
  -webkit-transition-duration: 0.15s;
  transition-duration: 0.15s;
  -webkit-transition-timing-function: linear;
  transition-timing-function: linear;
  font: inherit;
  color: inherit;
  text-transform: none;
  background-color: transparent;
  border: 0;
  margin: 0;
  overflow: visible;
}
.hamburger:hover {
  opacity: 1;
}
.hamburger.is-active:hover {
  opacity: 1;
}
.hamburger.is-active .hamburger-inner,
.hamburger.is-active .hamburger-inner::before,
.hamburger.is-active .hamburger-inner::after {
  background-color: #000;
}
.hamburger-box {
  width: 33.25px;
  height: 21.34px;
  display: inline-block;
  position: relative;
}
.hamburger-inner {
  display: block;
  top: 50%;
  margin-top: -1px;
}
.hamburger-inner,
.hamburger-inner::before,
.hamburger-inner::after {
  width: 33.25px;
  height: 2px;
  background-color: #000;
  border-radius: 4px;
  position: absolute;
  -webkit-transition-property: -webkit-transform;
  transition-property: -webkit-transform;
  transition-property: transform;
  transition-property: transform, -webkit-transform;
  -webkit-transition-duration: 0.15s;
  transition-duration: 0.15s;
  -webkit-transition-timing-function: ease;
  transition-timing-function: ease;
}
.hamburger-inner::before,
.hamburger-inner::after {
  content: "";
  display: block;
}
.hamburger-inner::before {
  top: -9.67px;
}
.hamburger-inner::after {
  bottom: -9.67px;
}
.hamburger--slider .hamburger-inner {
  top: 1px;
}
.hamburger--slider .hamburger-inner::before {
  top: 9.67px;
  -webkit-transition-property: opacity, -webkit-transform;
  transition-property: opacity, -webkit-transform;
  transition-property: transform, opacity;
  transition-property: transform, opacity, -webkit-transform;
  -webkit-transition-timing-function: ease;
  transition-timing-function: ease;
  -webkit-transition-duration: 0.15s;
  transition-duration: 0.15s;
}
.hamburger--slider .hamburger-inner::after {
  top: 19.34px;
}
.hamburger--slider.is-active .hamburger-inner {
  -webkit-transform: translate3d(0, 9.67px, 0) rotate(45deg);
  transform: translate3d(0, 9.67px, 0) rotate(45deg);
}
.hamburger--slider.is-active .hamburger-inner::before {
  -webkit-transform: rotate(-45deg) translate3d(-4.75px, -7.67px, 0);
  transform: rotate(-45deg) translate3d(-4.75px, -7.67px, 0);
  opacity: 0;
}
.hamburger--slider.is-active .hamburger-inner::after {
  -webkit-transform: translate3d(0, -19.34px, 0) rotate(-90deg);
  transform: translate3d(0, -19.34px, 0) rotate(-90deg);
}

/* header */
header {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 6;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
}

header .logo__container {
  flex: 0 1 29.15625rem;
  display: flex;
  align-items: center;
  padding: 0 1.53125rem 0 1.5rem;
  border-right: 1px solid #b0bcbf;
}

header .logo__container img {
  width: 100%;
  height: auto;
}

header .header-left {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-flex: 0;
  -ms-flex: 0 1 auto;
  flex: 0 1 100%;
}

header .menu-btn__container {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  padding: 0 2.03125rem 0 2rem;
  border-right: 1px solid #a1b1b1;
  font: 600 1.5rem/1.875rem 'Mulish', sans-serif;
  color: #fff;
  cursor: pointer;
}
header .header-left .menu-btn__container svg {
  height: 1.6875rem;
  width: auto;
  margin: 0 1.375rem 0 0;
}

header .header-right {
  flex: 0 0 24rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  flex-direction: column;
}

header .hamburger {
  border-right: 1px solid rgba(112, 112, 112, 0.1);
  outline: none;
}
header ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  margin: 0;
  padding: 0 0 0 2.21875rem;
  list-style: none;
}
header ul li {
  margin: 0 0 0 6.25rem;
}
header ul li:first-of-type {
  margin: 0;
}
header ul li a {
  font: 600 1.5rem/1.875rem 'Mulish', sans-serif;
  color: #fff;
  -webkit-transition: color 300ms ease-in-out;
  transition: color 300ms ease-in-out;
}
header ul li a:hover {
  color: #8ad459 !important;
}
.shopping-cart-btn {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  background: #6eb43f;
  color: white;
  text-transform: uppercase;
  padding: 1.25rem 2.5625rem 1.4375rem 1.9375rem;
  font: 700 1.8125rem/2.25rem muli,sans-serif;
}
.shopping-cart-btn:hover {
  background: #4b7b2b;
  color: white;
}
.shopping-cart-btn span.icon {
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
  width: 3.25rem;
  height: 3.25rem;
}

.shopping-cart-btn span.icon i {
  margin-right: 1rem;
}
.shopping-cart-btn span.icon .badge {
  position: absolute;
  bottom: 0;
  right: 0;
  display: flex;
  justify-content: center;
  align-items: center;
  width: 1.5rem;
  height: 1.5rem;
  background: white;
  border: 2px solid #6eb43f;
  border-radius: 50%;
  font-size: 1rem;
  color: #6eb43f;
}

@media screen and (max-width: 1024px) {
  header .header-right {
    flex: 0 0 78px;
  }
  .shopping-cart-btn {
    padding: 1.25rem;
    min-width: 0;
  }
  .shopping-cart-btn span.icon  {
    width: 1.61437rem;
    height: 1.61437rem;
  }
  .shopping-cart-btn span.icon i {
    margin-right: 0;
  }
  .shopping-cart-btn span.label {
    display: none;
  }
}

header .call-btn {
  -webkit-box-flex: 0;
  -ms-flex: 0 0 4.0625rem;
  flex: 0 0 4.0625rem;
  color: #000;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}
header .phone {
  position: absolute;
  bottom: 0;
  transform: translateY(150%);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: flex-end;
  color: #fff;
  font: 600 1.21875rem/1.5625rem 'Mulish', sans-serif;
}
header .phone a {
  color: #fff;
}
header .phone i {
  margin-right: 0.75rem;
  color: #6eb43f;

}
header .phone span {
  margin: 0 0.5rem;
}

/* fixed */
header.fixed {
  position: fixed;
  z-index: 4;
  background: white;
  box-shadow: 0px 3px 6px #00000029;
}
header.fixed .logo__container {
  flex: 0 1 29.15625rem;
  display: flex;
  align-items: center;
  padding: 0 1.53125rem 0 1.5rem;
  border-right: 1px solid #b0bcbf;
}
header.fixed .logo__container img {
  width: 100%;
  height: auto;
}
header.fixed .header-left {
  flex: 0 1 100%;
}
header.fixed .header-left .menu-btn__container {
  color: black;
  border: none;
  padding: 0 1rem 0 2.03125rem;
}
header.fixed .header-left .menu-btn__container svg rect {
  fill: #000;
}
header.fixed .header-left ul {
  padding: 0 0 0 3.6875rem;
}
header.fixed .header-left ul li {
  margin: 0 0 0 4.375rem;
}
header.fixed .header-left ul li:first-of-type {
  margin: 0;
}
header.fixed .header-left ul li a {
  font: 600 1.375rem/1.875rem 'Mulish', sans-serif;
  color: #000;
}
@media screen and (max-width: 1024px) {
  header.fixed {
    justify-content: flex-start;
    z-index: 7;
  }
  header.fixed .logo__container {
    flex: 0 1 100%;
    justify-content: center;
    padding: 0;
  }
  header.fixed .logo__container img {
    width: 10rem;
    margin: auto;
  }
}



.menu-overlay {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100vh;
  background: #fff;
  z-index: 6;
  -webkit-transition: 300ms ease-in-out;
  transition: 300ms ease-in-out;
  opacity: 0;
  pointer-events: none;
}
@media screen and (max-width: 1024px) {
  .menu-overlay {
    top: 4.0625rem;
    height: calc(100vh - 4.0625rem);
  }
}
.menu-overlay.open {
  opacity: 1;
  pointer-events: all;
}
.menu-overlay__container {
  height: 100%;
}
.menu-overlay-header {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  position: relative;
}
.menu-overlay-header .close-btn {
  padding: 0 3.06875rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  font: 600 1.5rem/1.875rem 'Mulish', sans-serif;
  cursor: pointer;
}
.menu-overlay-header .close-btn svg {
  margin: 0 1.06875rem 0 0;
  width: 1.57125rem;
  height: 1.57125rem;
}
.menu-overlay-header .logo {
  width: 22.625rem;
  height: auto;
  position: absolute;
  left: 0;
  right: 0;
  margin: auto;
}
.menu-overlay .menu-list__container {
  padding: 11.875rem 1.25rem 0;
  height: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  max-height: calc(100vh - 5.9375rem);
  overflow-y: auto;
}
@media screen and (max-width: 1024px) {
  .menu-overlay .menu-list__container {
    padding: 3.3125rem 1.25rem 0;
  }
}
.menu-overlay .menu-list__container ul {
  list-style: none;
  -webkit-padding-start: 0;
  padding-inline-start: 0;
  margin: 0;
  text-align: center;
}
.menu-overlay .menu-list__container ul li {
  font: 600 2.0625rem/2.0625rem 'Mulish', sans-serif;
  position: relative;
  padding: 2.9375rem 0 0 0;
}
.menu-overlay .menu-list__container ul li:first-of-type {
  padding: 0;
}
@media screen and (max-width: 1024px) {
  .menu-overlay .menu-list__container ul li {
    font: 600 1.375rem/2rem 'Mulish', sans-serif;
    padding: 1.4375rem 0 0 0;
  }
}
.menu-overlay .menu-list__container ul li * {
  -webkit-transition: all 300ms ease-in-out;
  transition: all 300ms ease-in-out;
}
.menu-overlay .menu-list__container ul li a {
  color: #000;
  position: relative;
}
.menu-overlay .menu-list__container ul li.expanded > a {
  color: #6eb43f;
}
.menu-overlay .menu-list__container ul li.expanded > a:hover {
  color: #578e32;
}
.menu-overlay .menu-list__container ul li.expanded > .icon svg path {
  fill: #6eb43f;
}
.menu-overlay .menu-list__container ul li.expanded > .icon:hover svg path {
  fill: #6eb43f;
}
.menu-overlay .menu-list__container ul li.expanded .icon {
  -webkit-transform: rotate3d(1, 0, 0, 180deg) translate(0, 3px);
  transform: rotate3d(1, 0, 0, 180deg) translate(0, 3px);
}
@media screen and (max-width: 1024px) {
  .menu-overlay .menu-list__container ul li.expanded .icon {
    -webkit-transform: rotate3d(1, 0, 0, 180deg);
    transform: rotate3d(1, 0, 0, 180deg);
  }
}
.menu-overlay .menu-list__container ul li:hover > a {
  color: #6eb43f;
}
.menu-overlay .menu-list__container ul li:hover .icon svg path {
  fill: #6eb43f;
}
.menu-overlay .menu-list__container ul li .icon {
  margin: 0 0 0 0.67188rem;
  position: absolute;
  cursor: pointer;
  color: #fff;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}
@media screen and (max-width: 1024px) {
  .menu-overlay .menu-list__container ul li .icon {
    margin: 0 0 0 0.81375rem;
    top: 0.375rem;
    right: -1.25rem;
  }
}
.menu-overlay .menu-list__container ul li .icon svg {
  width: 2.85938rem;
  height: auto;
}
@media screen and (max-width: 1024px) {
  .menu-overlay .menu-list__container ul li .icon svg {
    width: 1.75188rem;
  }
}
.menu-overlay .menu-list__container ul li ul {
  height: 0;
  overflow: hidden;
  -webkit-transition: height 300ms ease-in-out;
  transition: height 300ms ease-in-out;
  padding: 0;
  margin: 0;
}
.menu-overlay .menu-list__container ul li ul li {
  font: 1.5rem/1.875rem 'Mulish', sans-serif;
  text-transform: none;
  letter-spacing: -0.6px;
  padding: 1.25rem 0 0 0;
}
@media screen and (max-width: 1024px) {
  .menu-overlay .menu-list__container ul li ul li {
    font: 1.25rem/1.5625rem 'Mulish', sans-serif;
    letter-spacing: -0.5px;
  }
}
.menu-overlay .menu-list__container ul li ul li:first-of-type {
  padding: 1.78125rem 0 0 0;
}
@media screen and (max-width: 1024px) {
  .menu-overlay .menu-list__container ul li ul li:last-of-type {
    padding-bottom: 0.625rem;
  }
}
.menu-overlay .menu-list__container ul li ul li:hover a {
  color: #6eb43f;
}
.menu-overlay .menu-list__container ul li ul li ul {
  display: none;
}
.mobile-bar {
  position: fixed;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 3.8125rem;
  background: #6eb43f;
  font: 700 1.25rem/1.5625rem 'Mulish', sans-serif;
  color: #fff;
  text-transform: uppercase;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  z-index: 7;
}
.mobile-bar img {
  width: 1.8125rem;
  height: auto;
  margin: 0 0.51875rem 0 0;
}
.mobile-bar-hotel {
  position: fixed;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 3.8125rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  z-index: 7;
}
.mobile-bar-hotel .item {
  -webkit-box-flex: 0;
  -ms-flex: 0 0 50%;
  flex: 0 0 50%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  font: 700 0.75rem/.9375rem 'Mulish', sans-serif;
  text-transform: uppercase;
  color: #fff;
  height: 100%;
}
.mobile-bar-hotel .item.gift-card {
  background: #6eb43f;
}
.mobile-bar-hotel .item.book-btn {
  background: #0093c8;
}
.mobile-bar-hotel .item.book-btn .icon {
  height: 0.9375rem;
  margin: 0 0.375rem 0 0;
}
.mobile-bar-hotel .item .icon {
  height: 1.25rem;
  margin: 0 0.20688rem 0 0;
}
.mobile-bar-hotel .item .icon path {
  fill: #fff;
}

/* image text block */
.image-text-block {
  margin-top: 10rem;
  margin-bottom: 10rem;
}
.image-text-block img {
  display: block;
  width: 100%;
  height: auto;
}

@media screen and (max-width: 1024px) {
  .image-text-block {
    margin-top: 5rem;
    margin-bottom: 5rem;
  }
  .image-text-block img {
    margin: 0 auto 2rem auto;
    max-width: 50%;
  }
}

/* footer */

footer.site {
  margin-top: 6rem;
}

footer.site .top {
  padding: 3rem 1rem;
  background-color: #041F29;
}

footer.site .logo-container {
  display: flex;
  align-items: center;
}

@media screen and (max-width: 1024px) {
  footer.site .logo-container {
    justify-content: center;
    margin-bottom: 3rem;
  }
  footer.site .address-container {
    text-align: center;
    margin-bottom: 3rem;
  }
  footer.site .phone-container {
    margin-bottom: 3rem;
    
  }
  footer.site .social-container {
    justify-content: center;
  }
}

footer.site .ireland-hotels-logo {
  display: flex;
  justify-content: center;
  width: 14.6875rem;
  height: auto;
}

footer.site .ireland-hotels-logo img {
  width: 100%;
  height: auto;
}

footer.site p.copyright,
footer.site p.address {
  margin: 0;
  font: 600 1.0625rem/1.5625rem 'Mulish', sans-serif;
  color: white;
}
footer.site a.phone {
  display: flex;
  align-items: center;
  font: 600 1.0625rem/1.5625rem 'Mulish', sans-serif;
  color: white;
}
footer.site a.phone:hover {
  color: #6EB43F;
}
footer.site a.phone > i {
  margin-right: 0.5rem;
  color: #6EB43F;
}
footer.site nav.social {
  display: flex;
  justify-content: center;
}
footer.site nav.social ul {
  list-style: none;
  display: flex;
  margin: 0;
  padding: 0;
}
footer.site nav.social ul li a {
  padding: 1rem;
  color: #6EB43F;
}
footer.site nav.social ul li a:hover {
  color: #63b22e;
}
footer.site .bottom {
  padding: 2rem 1rem;
  background-color: #E4E8E3
}

footer.site .legal-container {
  display: flex;
  align-items: center;
}

footer.site nav.legal ul {
  list-style: none;
  display: flex;
  flex-wrap: wrap;
  margin: 0;
  padding: 0;
}
footer.site nav.legal ul li {
  margin: 0;
  padding: 0 2rem;
}
footer.site nav.legal ul li:first-child {
  padding-left: 0;
}
footer.site nav.legal ul li:last-child {
  padding-right: 0;
}
footer.site nav.legal ul li a {
  font: 400 1.0625rem/1.5625rem 'Mulish', sans-serif;
  color: #041F29;
  text-transform: uppercase;
}
footer.site nav.legal ul li a:hover {
  color: #041F29;
}
footer.site .ihf-logo-container {
  display: flex;
  justify-content: flex-end;
  align-items: center;
}
footer.site .ihf-logo-container a:first-child {
  margin-right: 5rem;
}
footer.site .ihf-logo-container a.failte-ireland-logo > img {
  width: auto;
  height: 4rem;
}
footer.site .ihf-logo-container a.irish-hotels-federation-logo > img {
  width: auto;
  height: 5rem;
}

@media screen and (max-width: 1024px) {

  footer.site nav.legal ul {
    justify-content: center;
  }

  footer.site nav.legal ul li {
    flex: 1 1 100%;
    margin: 0 0 0.5rem 0;
    padding: 0;
    text-align: center;
  }

  footer.site .ihf-logo-container {
    justify-content: center;
    margin: 3rem 0;
  }

  footer.site .ihf-logo-container a.failte-ireland-logo > img {
    width: auto;
    height: 2rem;
  }
  footer.site .ihf-logo-container a.irish-hotels-federation-logo > img {
    width: auto;
    height: 2.5rem;
  }

}
