@charset "UTF-8";
/* DEFINITIONS *************************************************************************************/
@import url(https://fonts.googleapis.com/css?family=Lato:400,700,900);
/************************************************************************************************/
/* COMMON ***************************************************************************************/
*,
*:before,
*:after {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
}

html {
  box-sizing: inherit;
  font-size: 62.5%;
}

body {
  font-family: "Lato", sans-serif;
  font-size: 1.6rem;
  font-weight: 400;
  color: #2b2b2b;
  background: #ffffff;
  margin: 0;
  padding: 0;
  -webkit-font-smoothing: antialiased;
}

a {
  color: #9c9c9c;
}

a:hover {
  color: #e52333;
  cursor: pointer;
}

a,
button {
  color: #2b2b2b;
}

p {
  margin: 0 0 1em 0;
  line-height: 2.1rem;
}

h1,
h2,
form legend,
form.bamboo_enquiry legend,
h3,
form fieldset h3,
form.bamboo_enquiry fieldset h3,
h4,
h5,
h6 {
  color: #2b2b2b;
  font-family: "Lato", sans-serif;
  text-transform: capitalize;
  font-weight: 900;
  text-wrap: pretty;
}

h1 {
  color: #2b2b2b;
  font-size: 6vw;
  line-height: 1em;
  margin-bottom: 2rem;
}

h2, form legend,
form.bamboo_enquiry legend {
  font-size: 2rem;
  line-height: 2.8rem;
  margin-bottom: 1.4rem;
}

h3, form fieldset h3,
form.bamboo_enquiry fieldset h3 {
  font-size: 2rem;
  line-height: 2.8rem;
  margin-bottom: 1.4rem;
}

h4 {
  font-size: 1.7rem;
  line-height: 2.6rem;
  margin-bottom: 1.4rem;
}

h5 {
  font-size: 1.6rem;
  line-height: 2.5rem;
  margin-bottom: 1.4rem;
}

h6 {
  font-size: 1.5rem;
  line-height: 2.4rem;
  margin-bottom: 1.4rem;
}

h2 + p:first-of-type, form legend + p:first-of-type {
  font-size: 1.4rem;
}

p strong {
  color: #9c9c9c;
}

blockquote p {
  font-family: "Lato", sans-serif;
  text-transform: uppercase;
  font-weight: 400;
  font-size: 2em;
  border-left: 0.28em solid #2b2b2b;
  padding: 0.5em 1em;
  margin: 0;
  line-height: 1.1em;
}
blockquote p:last-of-type {
  margin-bottom: 1rem;
  color: #5e5e5e;
}

ul,
ol,
dl {
  margin: 0 1rem 2rem 3rem;
}

ul li,
ol li {
  margin: 0 0 1rem 0;
}

dl {
  margin: 0 1rem 2rem 0.7rem;
}

dl dt {
  font-weight: bold;
  margin: 0 0 0.5rem 0;
}

dl dd {
  margin: 0 0 1rem 1rem;
}

li h1,
li h2,
li form legend,
form li legend,
li form.bamboo_enquiry legend,
form.bamboo_enquiry li legend,
li h3,
li form fieldset h3,
form fieldset li h3,
li form.bamboo_enquiry fieldset h3,
form.bamboo_enquiry fieldset li h3,
li h4,
li h5,
li h6 {
  font-family: "Lato", sans-serif;
  text-transform: uppercase;
  font-weight: 400;
  font-size: 1.8rem;
}

hr {
  border: 0;
  height: 1px;
  background: #9c9c9c;
  margin: 3rem 0;
  clear: both;
}

img {
  clear: both;
}

img.alignright {
  float: right;
  margin: 2rem 0 2rem 2rem;
}
@media (max-width: 375px) {
  img.alignright {
    display: none;
  }
}

img.alignleft {
  float: left;
  margin: 1rem 1rem 1rem 0;
}
@media (max-width: 375px) {
  img.alignleft {
    display: none;
  }
}

pre {
  font-size: 1.6rem;
  margin-top: 2rem;
  margin-bottom: 3rem;
}

/************************************************************************************************/
/* FORM *****************************************************************************************/
form,
form.bamboo_enquiry {
  padding-top: 0;
  padding-right: 0;
  padding-bottom: 4rem;
  padding-left: 0;
  vertical-align: top;
}
form p,
form.bamboo_enquiry p {
  padding-left: 0 !important;
}
form input,
form.bamboo_enquiry input {
  display: inline-block;
  background-color: #f7f7f7;
  font-weight: bold;
  color: #2b2b2b;
  padding: 1.6rem 1.6rem 1.8rem 1.6rem;
  margin-bottom: 1rem;
  position: relative;
  vertical-align: top;
  width: 100%;
  font-size: 1em;
  margin: 1em 0 1.5em 0;
}
form input[type=submit],
form.bamboo_enquiry input[type=submit] {
  text-align: left;
  color: #ffffff;
  font-size: 1.5rem;
  text-transform: uppercase;
  font-weight: 700;
  text-decoration: none;
  display: block;
  padding: 1.3rem 13rem 1.3rem 2rem;
  background-color: #e52333 !important;
  background-image: url(/wp-content/uploads/chevrons.png) !important;
  background-position: 100% 0;
  margin-top: 2rem;
  border: none;
  width: auto;
}
@media (max-width: 360px) {
  form input[type=submit],
  form.bamboo_enquiry input[type=submit] {
    width: 100%;
  }
}
form input[type=submit]:hover,
form.bamboo_enquiry input[type=submit]:hover {
  text-decoration: none;
  cursor: pointer;
  color: #ffffff;
  background-color: #0a5895 !important;
  background-image: url(/wp-content/uploads/chevrons-blue.png) !important;
  background-position: 100% 0%;
  background-repeat: no-repeat;
  -webkit-transition: all 0.25s ease;
  -moz-transition: all 0.25s ease;
  -ms-transition: all 0.25s ease;
  -o-transition: all 0.25s ease;
  transition: all 0.25s ease;
}
form .bamboo_enquiry_confirm,
form.bamboo_enquiry .bamboo_enquiry_confirm {
  text-align: center;
}
form .columns,
form.bamboo_enquiry .columns {
  margin-bottom: 2rem;
}
form .columns > .column:first-of-type,
form.bamboo_enquiry .columns > .column:first-of-type {
  width: 63%;
  padding: 0;
  margin: 0;
}
@media (max-width: 966px) {
  form .columns > .column:first-of-type,
  form.bamboo_enquiry .columns > .column:first-of-type {
    width: 50%;
  }
}
@media (max-width: 700px) {
  form .columns > .column:first-of-type,
  form.bamboo_enquiry .columns > .column:first-of-type {
    width: 100%;
  }
}
form .columns > .column:last-of-type,
form.bamboo_enquiry .columns > .column:last-of-type {
  width: 33%;
  padding: 0;
  margin: 0;
}
@media (max-width: 966px) {
  form .columns > .column:last-of-type,
  form.bamboo_enquiry .columns > .column:last-of-type {
    width: 44%;
  }
}
@media (max-width: 700px) {
  form .columns > .column:last-of-type,
  form.bamboo_enquiry .columns > .column:last-of-type {
    width: 100%;
  }
}
form .columns > .column:last-of-type h3,
form.bamboo_enquiry .columns > .column:last-of-type h3 {
  margin-top: 1rem;
}
form .columns > .column:last-of-type p,
form .columns > .column:last-of-type p a,
form .columns > .column:last-of-type address,
form.bamboo_enquiry .columns > .column:last-of-type p,
form.bamboo_enquiry .columns > .column:last-of-type p a,
form.bamboo_enquiry .columns > .column:last-of-type address {
  font-size: 1.7rem;
  line-height: 2.5rem;
  color: #2b2b2b;
  text-decoration: underline;
  letter-spacing: 0.1rem;
}
form .columns > .column:last-of-type p i,
form.bamboo_enquiry .columns > .column:last-of-type p i {
  float: left;
  color: #e52333;
  font-size: 2.2rem;
  padding-top: 0.2rem;
  padding-right: 1rem;
}
form .columns > .column:last-of-type p i.fa-home,
form.bamboo_enquiry .columns > .column:last-of-type p i.fa-home {
  font-size: 2.6rem;
  padding-right: 0.6rem;
}
form .columns > .column:last-of-type p a,
form.bamboo_enquiry .columns > .column:last-of-type p a {
  display: inline-block;
  overflow: hidden;
  text-decoration: none;
  margin-left: 1rem;
}
form .columns > .column:last-of-type p a:hover,
form.bamboo_enquiry .columns > .column:last-of-type p a:hover {
  color: #e52333;
}
form fieldset,
form.bamboo_enquiry fieldset {
  border: none;
  text-align: left;
}
form fieldset h3,
form.bamboo_enquiry fieldset h3 {
  text-transform: none;
  padding-left: 0 !important;
}
form fieldset label,
form.bamboo_enquiry fieldset label {
  display: inline-block;
  background-color: #f7f7f7;
  font-weight: bold;
  color: #2b2b2b;
  width: 32%;
  padding: 1.9rem 1.6rem 1.9rem 4rem;
  margin-bottom: 2rem;
  position: relative;
  vertical-align: top;
}
form fieldset label:hover,
form.bamboo_enquiry fieldset label:hover {
  cursor: pointer;
  color: #ffffff;
  background-color: #0a5895;
  -webkit-transition: all 0.25s ease;
  -moz-transition: all 0.25s ease;
  -ms-transition: all 0.25s ease;
  -o-transition: all 0.25s ease;
  transition: all 0.25s ease;
}
form fieldset label:nth-child(3n+2),
form.bamboo_enquiry fieldset label:nth-child(3n+2) {
  margin-left: 2%;
  margin-right: 2%;
}
@media (max-width: 966px) {
  form fieldset label,
  form.bamboo_enquiry fieldset label {
    font-size: 1.4rem;
  }
}
@media (max-width: 639px) {
  form fieldset label,
  form.bamboo_enquiry fieldset label {
    width: 48%;
  }
  form fieldset label:nth-child(3n+2),
  form.bamboo_enquiry fieldset label:nth-child(3n+2) {
    margin-left: inherit;
    margin-right: inherit;
  }
  form fieldset label:nth-child(2n),
  form.bamboo_enquiry fieldset label:nth-child(2n) {
    margin-left: 3%;
    margin-right: 0;
  }
}
@media (max-width: 450px) {
  form fieldset label,
  form.bamboo_enquiry fieldset label {
    width: 100%;
    background-color: red;
  }
  form fieldset label:nth-child(3n+2),
  form.bamboo_enquiry fieldset label:nth-child(3n+2) {
    margin-left: inherit;
    margin-right: inherit;
  }
  form fieldset label:nth-child(2n),
  form.bamboo_enquiry fieldset label:nth-child(2n) {
    margin-left: inherit;
    margin-right: inherit;
  }
}
form fieldset label input,
form.bamboo_enquiry fieldset label input {
  margin: 0 1rem 0 0;
  font-size: inherit;
  position: absolute;
  top: 19px;
  left: 15px;
  cursor: pointer;
}
form fieldset label input[type=checkbox],
form.bamboo_enquiry fieldset label input[type=checkbox] {
  width: 2rem;
  height: 2rem;
}
/************************************************************************************************/
/* COLUMNS **************************************************************************************/
.columns {
  text-align: left;
}
.columns .column {
  display: inline-block;
  vertical-align: top;
}
.columns .column:nth-last-child(5):first-child, .columns .column:nth-last-child(5):first-child ~ * {
  background-color: red;
  width: 19%;
}
.columns .column:nth-last-child(5):first-child:not(:last-child), .columns .column:nth-last-child(5):first-child ~ *:not(:last-child) {
  margin-right: 0.5%;
}
@media screen and (max-width: 767px) {
  .columns .column:nth-last-child(5):first-child, .columns .column:nth-last-child(5):first-child ~ * {
    width: 32%;
  }
}
@media screen and (max-width: 360px) {
  .columns .column:nth-last-child(5):first-child, .columns .column:nth-last-child(5):first-child ~ * {
    width: 100%;
  }
}
.columns .column:nth-last-child(4):first-child, .columns .column:nth-last-child(4):first-child ~ * {
  background-color: pink;
  width: 24%;
  word-break: break-all;
}
.columns .column:nth-last-child(4):first-child:not(:last-child), .columns .column:nth-last-child(4):first-child ~ *:not(:last-child) {
  margin-right: 0.9%;
}
@media screen and (max-width: 767px) {
  .columns .column:nth-last-child(4):first-child, .columns .column:nth-last-child(4):first-child ~ * {
    width: 45%;
    word-break: inherit;
  }
  .columns .column:nth-last-child(4):first-child:not(:last-child), .columns .column:nth-last-child(4):first-child ~ *:not(:last-child) {
    margin-right: inherit;
  }
  .columns .column:nth-last-child(4):first-child:nth-child(2n-1), .columns .column:nth-last-child(4):first-child ~ *:nth-child(2n-1) {
    margin-right: 9%;
  }
}
@media screen and (max-width: 360px) {
  .columns .column:nth-last-child(4):first-child, .columns .column:nth-last-child(4):first-child ~ * {
    width: 100%;
    margin-right: inherit;
  }
}
.columns .column:nth-last-child(3):first-child, .columns .column:nth-last-child(3):first-child ~ * {
  width: 32%;
  word-break: break-all;
}
.columns .column:nth-last-child(3):first-child:not(:last-child), .columns .column:nth-last-child(3):first-child ~ *:not(:last-child) {
  margin-right: 0.9%;
}
@media screen and (max-width: 639px) {
  .columns .column:nth-last-child(3):first-child, .columns .column:nth-last-child(3):first-child ~ * {
    margin-right: inherit;
  }
}
.columns .column:nth-last-child(2):first-child, .columns .column:nth-last-child(2):first-child ~ * {
  width: 47%;
}
.columns .column:nth-last-child(2):first-child:first-child, .columns .column:nth-last-child(2):first-child ~ *:first-child {
  margin-right: 3%;
}
@media screen and (max-width: 767px) {
  .columns .column:nth-last-child(2):first-child, .columns .column:nth-last-child(2):first-child ~ * {
    padding: 0 2rem;
    margin-right: inherit;
    margin-bottom: 20px;
  }
  .columns .column:nth-last-child(2):first-child img, .columns .column:nth-last-child(2):first-child ~ * img {
    width: 100%;
  }
}
.columns .column img {
  max-width: 100%;
  height: inherit;
}
.columns .column h2:after, .columns .column form legend:after, form .columns .column legend:after,
.columns .column h3:after {
  margin-left: inherit;
  margin-right: inherit;
}

/************************************************************************************************/
/* LAYOUT ***************************************************************************************/
.desktop-only {
  display: block;
}
@media (max-width: 790px) {
  .desktop-only {
    display: none;
  }
}

.mobile-only {
  display: none;
}
@media (max-width: 790px) {
  .mobile-only {
    display: block;
  }
}

.content > *:not(.featured):not(.fullwidth):not(.bamboo-slides):not(.map):not(.homepage-sections):not(.bamboo-call-to-action), footer > *:not(.featured):not(.fullwidth):not(.bamboo-slides):not(.map):not(.homepage-sections):not(.bamboo-call-to-action), .page-footer > *:not(.featured):not(.fullwidth):not(.bamboo-slides):not(.map):not(.homepage-sections):not(.bamboo-call-to-action),
.bamboo-call-to-action > *:not(.featured):not(.fullwidth):not(.bamboo-slides):not(.map):not(.homepage-sections):not(.bamboo-call-to-action), article.page .bamboo-slides .columns .column > *:not(.featured):not(.fullwidth):not(.bamboo-slides):not(.map):not(.homepage-sections):not(.bamboo-call-to-action), header div.sidebar-banner > *:not(.featured):not(.fullwidth):not(.bamboo-slides):not(.map):not(.homepage-sections):not(.bamboo-call-to-action), header div.sidebar-header > *:not(.featured):not(.fullwidth):not(.bamboo-slides):not(.map):not(.homepage-sections):not(.bamboo-call-to-action), nav.main-nav > *:not(.featured):not(.fullwidth):not(.bamboo-slides):not(.map):not(.homepage-sections):not(.bamboo-call-to-action) {
  max-width: 1700px;
  margin: 0 auto;
  padding-right: 15px;
  /* orignially 2rem */
  padding-left: 15px;
  /* orignially 2rem */
}

/************************************************************************************************/
/* Menu - Main Navigation (Main Menu) ***********************************************************/
body.home nav ul.menu li.item-0 a {
  background-color: #e52333;
  background-position: top right;
  background-repeat: no-repeat;
}
body.home nav ul.menu li.item-0 a i {
  color: #ffffff;
}

nav.mobile {
  display: none;
}
@media (max-width: 790px) {
  nav.mobile {
    display: block;
    padding: 0;
    margin: 0;
    background-color: #e52333;
    text-align: center;
  }
  nav.mobile a {
    color: #ffffff;
    font-size: 1.6rem;
    line-height: 2rem;
    font-weight: 800;
    padding: 15px 0;
    text-decoration: none;
    text-transform: uppercase;
    display: block;
    width: 100%;
  }
}

nav.main-nav {
  display: block;
  padding: 0;
  margin: 0;
  height: auto;
  width: 100%;
  line-height: 0;
  font-family: "Lato", sans-serif;
  background-image: none;
  background-position: top left;
  background-repeat: no-repeat;
  height: 7rem;
}
nav.main-nav ul.menu {
  display: block;
  list-style: none;
  width: 100%;
  text-align: center;
}
nav.main-nav ul.menu li {
  display: inline-block;
  margin: 0;
  padding: 0;
  position: relative;
  margin-right: -4px;
}
@media (max-width: 1180px) {
  nav.main-nav ul.menu {
    display: none;
  }
}

header nav ul.menu li a {
  display: inline-block;
  color: #0a5895;
  font-size: 18px;
  line-height: 2rem;
  font-weight: 600;
  letter-spacing: 0.1rem;
  padding-top: 2.5rem;
  padding-right: 2.5rem;
  padding-bottom: 2.5rem;
  padding-left: 3rem;
  text-align: left;
  text-decoration: none;
  text-transform: capitalize;
}
header nav ul.menu li a svg {
  vertical-align: middle;
  margin-left: 10px;
}
header nav ul.menu li a:hover {
  color: #e52333;
}
header nav ul.menu li a:hover svg path {
  fill: #e52333;
}

/* Dropdown */
nav ul.menu li ul {
  display: block;
  width: 340px;
  left: -30px;
  opacity: 0;
  position: absolute;
  top: 40px;
  padding-top: 20px;
  padding-bottom: 20px;
  visibility: hidden;
  z-index: 1;
  background-color: #0a5895;
}
@media (max-width: 1134px) {
  nav ul.menu li ul {
    width: 260px;
  }
}
@media (max-width: 880px) {
  nav ul.menu li ul {
    width: 230px;
  }
}

nav ul.menu li:hover ul {
  cursor: pointer;
  opacity: 1;
  top: 60px;
  visibility: visible;
  -webkit-transition: all 0.55s ease;
  -moz-transition: all 0.55s ease;
  -ms-transition: all 0.55s ease;
  -o-transition: all 0.55s ease;
  transition: all 0.55s ease;
}

nav ul.menu li ul li {
  width: 100%;
  text-align: left;
  white-space: nowrap;
}
nav ul.menu li ul li a {
  display: block;
  width: 100%;
}

nav ul.menu li ul li > a {
  font-size: 15px;
  font-weight: 500;
  color: #ffffff;
  padding-top: 1rem;
  padding-right: 5.5rem;
  padding-bottom: 1rem;
  padding-left: 3rem;
  background-position: 30% 20%;
}
@media (max-width: 1134px) {
  nav ul.menu li ul li > a {
    font-size: 1.1rem;
    line-height: 1.4rem;
    padding-top: 1.1rem;
    padding-right: 3rem;
    padding-bottom: 1.2rem;
    padding-left: 2rem;
  }
}
nav ul.menu li ul li > a:hover {
  cursor: pointer;
  color: #ffffff;
  background-color: #e52333 !important;
  background-image: url(/wp-content/uploads/chevrons.png) !important;
  background-position: 100% 0%;
  background-repeat: no-repeat;
  -webkit-transition: all 0.25s ease;
  -moz-transition: all 0.25s ease;
  -ms-transition: all 0.25s ease;
  -o-transition: all 0.25s ease;
  transition: all 0.25s ease;
}

/************************************************************************************************/
/* Widget Header ********************************************************************************/
header div.sidebar-header {
  display: block;
  height: auto;
  width: 100%;
  background-color: #f7f7f7;
  padding: 0.7rem 0;
  margin: 0;
  font-size: 1.4rem;
  /* Two */
}
header div.sidebar-header .textwidget:not(:only-of-type) {
  width: 50%;
  margin-right: -4px;
}
@media (max-width: 375px) {
  header div.sidebar-header .textwidget:not(:only-of-type) {
    width: 50%;
  }
}
header div.sidebar-banner {
  display: block;
  height: auto;
  width: 100%;
  padding: 1rem 0 2rem 0;
  margin: 0;
  /* Two */
}
@media (max-width: 500px) {
  header div.sidebar-banner .textwidget:not(:only-of-type) {
    width: 100%;
    text-align: center;
  }
}
header div.sidebar-banner a img.logo {
  width: 28rem;
  margin: 0;
  padding-top: 1.6rem;
  padding-right: 0;
  padding-left: 0;
  border: none;
}
@media (max-width: 639px) {
  header div.sidebar-banner a img.logo {
    width: 28rem;
    margin-right: auto;
    margin-left: auto;
    padding-bottom: 0;
  }
}
@media (max-width: 320px) {
  header div.sidebar-banner a img.logo {
    width: 24rem;
  }
}
@media (max-width: 264px) {
  header div.sidebar-banner a img.logo {
    width: 20rem;
  }
}
header div.sidebar-banner p.call-us {
  font-size: 2.2rem;
  color: #0a5895;
  line-height: 2.6rem;
  padding-top: 2.4rem;
  padding-right: 0;
  padding-bottom: 2.4rem;
  padding-left: 0;
  text-align: right;
}
@media (max-width: 500px) {
  header div.sidebar-banner p.call-us {
    font-size: 2.6rem;
    text-align: center;
    padding-top: 1rem;
  }
}
header div.sidebar-banner p.call-us strong,
header div.sidebar-banner p.call-us strong a {
  color: #9c9c9c;
  display: inline-block;
  font-size: 3rem;
  color: #e52333;
  line-height: auto;
  text-decoration: none;
  font-weight: 800;
}
@media (max-width: 639px) {
  header div.sidebar-banner p.call-us strong,
  header div.sidebar-banner p.call-us strong a {
    font-size: 3.6rem;
    margin-top: 0.4rem;
    margin-bottom: 0.4rem;
  }
}
@media (max-width: 530px) {
  header div.sidebar-banner p.call-us strong,
  header div.sidebar-banner p.call-us strong a {
    font-size: 2.8rem;
  }
}
header .widgettitle {
  display: none;
}
header .textwidget {
  display: inline-block;
  padding: 0 1rem;
  margin: 0;
  vertical-align: top;
  font-size: 1.4rem;
}
header .textwidget p {
  padding: 0;
  margin: 0;
  line-height: 1.4rem;
}
header .textwidget a {
  color: #9c9c9c;
  font-size: 1.4rem;
}
header .textwidget a:hover {
  color: #e52333;
  -webkit-transition: all 0.25s ease;
  -moz-transition: all 0.25s ease;
  -ms-transition: all 0.25s ease;
  -o-transition: all 0.25s ease;
  transition: all 0.25s ease;
}
header .textwidget i {
  font-size: 1.6rem;
  margin-right: 1.8rem;
  vertical-align: middle;
}
@media (max-width: 790px) {
  header .textwidget i {
    font-size: 2.6rem;
    margin-right: 2rem;
  }
}
@media (max-width: 264px) {
  header .textwidget i {
    margin-right: 1rem;
  }
}
header .textwidget a:last-of-type i {
  margin-right: 0;
}
header {
  /* One */
}
header .textwidget:only-of-type {
  width: 100%;
}
header {
  /* Two */
}
header .textwidget:not(:only-of-type) {
  width: 50%;
  margin-right: -4px;
}
@media (max-width: 375px) {
  header .textwidget:not(:only-of-type) {
    width: 100%;
  }
}
header {
  /* Three */
}
header .textwidget:nth-last-child(3),
header .textwidget:nth-last-child(3) ~ .textwidget {
  width: 33.333%;
  margin-right: -4px;
}
@media (max-width: 375px) {
  header .textwidget:nth-last-child(3),
  header .textwidget:nth-last-child(3) ~ .textwidget {
    width: 100%;
  }
}
header {
  /* Four */
}
header .textwidget:nth-last-child(4),
header .textwidget:nth-last-child(4) ~ .textwidget {
  width: 25%;
  margin-right: -4px;
}
@media (max-width: 375px) {
  header .textwidget:nth-last-child(4),
  header .textwidget:nth-last-child(4) ~ .textwidget {
    width: 100%;
  }
}

/************************************************************************************************/
/* Article Page  ********************************************************************************/
article.page h2, article.page form legend, form article.page legend {
  font-size: 3.6rem;
  line-height: 1.2em;
  text-transform: none;
  padding-top: 2rem;
  padding-bottom: 2rem;
}
article.page h3 {
  font-size: 3.6rem;
  line-height: 1.2em;
  text-transform: none;
  padding-top: 2rem;
  padding-bottom: 2rem;
}
article.page h5 {
  font-size: 1.8rem;
  text-transform: none;
  line-height: 1.2em;
  text-transform: none;
  padding-top: 2rem;
  padding-bottom: 1.4rem;
}
article.page h2 + p, article.page form legend + p, form article.page legend + p {
  font-size: 2rem;
}
article.page p {
  font-size: 1.8rem;
  line-height: 3rem;
  margin-top: 2rem;
  color: #2b2b2b;
  padding-bottom: 5rem;
}
article.page p:last-child {
  padding-bottom: 6rem;
}
article.page p strong {
  color: #000000;
}
article.page ul {
  list-style-position: inside;
  padding-bottom: 2rem;
}
article.page aside.bamboo-call-to-action + h2, article.page form aside.bamboo-call-to-action + legend, form article.page aside.bamboo-call-to-action + legend {
  padding-top: 4rem;
}
article.page .column p {
  width: 100%;
  margin-top: 0;
  padding: 0;
}
article.page .column ul {
  margin-top: 2rem;
  padding: 0;
}

/************************************************************************************************/
/* Shortcode .bamboo-slides  ********************************************************************/
article.page .bamboo-slides {
  display: block;
  margin-bottom: 4rem;
}
article.page .bamboo-slides .columns {
  min-height: 70vh;
}
article.page .bamboo-slides .columns .column {
  display: block;
}
@media (max-width: 1134px) {
  article.page .bamboo-slides .columns .column {
    padding-left: 2rem;
    padding-right: 2rem;
  }
}
article.page .bamboo-slides h1 {
  font-size: 6vw;
  font-weight: 900;
  padding-top: 32rem;
  padding-bottom: 1rem;
  padding-left: 0;
  text-shadow: 0px 3px 8px rgba(0, 0, 0, 0.5);
}
@media (max-width: 800px) {
  article.page .bamboo-slides h1 {
    font-size: 6rem;
    padding-top: 15rem;
  }
  article.page .bamboo-slides h1 span {
    display: inline-block;
    clear: left;
  }
}
@media (max-width: 400px) {
  article.page .bamboo-slides h1 {
    font-size: 4.6rem;
    padding-top: 13rem;
  }
}
article.page .bamboo-slides p:first-of-type {
  font-size: 2.2rem;
  font-weight: 700;
  text-transform: uppercase;
  color: #ffffff;
  text-shadow: 0px 3px 8px rgba(0, 0, 0, 0.5);
}
article.page .bamboo-slides a {
  text-decoration: none;
}
article.page .bamboo-slides + aside.bamboo-call-to-action {
  margin-top: 15px !important;
}

/************************************************************************************************/
/* Child Pages **********************************************************************************/
section.child-pages {
  text-align: center;
  margin-top: 15px !important;
  /* originally 3rem */
  padding: 0;
  width: 100%;
}
section.child-pages article {
  display: inline-block;
  vertical-align: top;
  width: 32.222%;
  /* originally 31.222% */
  height: auto;
  padding-top: 0;
  padding-right: 0;
  padding-bottom: 15px;
  /* originally 5rem */
  padding-left: 0;
}
section.child-pages article:nth-child(3n+2) {
  margin-left: 15px;
  /* originally 2.85% */
  margin-right: 15px;
  /* originally 2.85% */
}
section.child-pages article div.child-page {
  display: block;
  width: 100%;
  background-image: url(/wp-content/uploads/placeholder.png);
  background-size: cover;
  background-repeat: no-repeat;
}
section.child-pages article div.child-page:after {
  padding-top: 66.25%;
  display: block;
  content: "";
}
@media (max-width: 966px) {
  section.child-pages article {
    width: 40%;
  }
  section.child-pages article:nth-child(2n+2) {
    margin-left: 2%;
    margin-right: 0;
  }
}
@media (max-width: 639px) {
  section.child-pages article {
    width: 90%;
  }
  section.child-pages article:nth-child(2n+2) {
    margin-left: 0;
    margin-right: 0;
  }
}
section.child-pages a {
  display: inline-block;
  width: 100%;
  background-color: #e52333;
  margin-top: -4rem;
  padding-top: 2.3rem;
  padding-right: 1.9rem;
  padding-bottom: 1.9rem;
  padding-left: 1.9rem;
  text-align: left;
  text-decoration: none;
}
section.child-pages a:hover {
  background-color: #0a5895;
  -webkit-transition: all 0.25s ease;
  -moz-transition: all 0.25s ease;
  -ms-transition: all 0.25s ease;
  -o-transition: all 0.25s ease;
  transition: all 0.25s ease;
}
section.child-pages a h1 {
  color: #ffffff;
  font-size: 2.5rem;
  padding-top: 0;
  margin-bottom: 1rem;
  line-height: 1em;
}
@media (max-width: 639px) {
  section.child-pages a h1 {
    font-size: 2.5rem;
    padding-top: 0;
  }
}

/************************************************************************************************/
/* Shortcode pagebanner  ************************************************************************/
.featured {
  display: block;
  background-size: cover;
  background-position: 50% 50%;
  background-color: #0a5895;
  text-align: left;
  margin-bottom: 3rem;
}
.featured h1 {
  font-size: 6vw;
  font-weight: 900;
  padding-top: 28rem;
  padding-bottom: 14rem;
  padding-left: 0;
}
@media (max-width: 639px) {
  .featured h1 {
    font-size: 5.5rem;
    padding-top: 15rem;
    padding-bottom: 14rem;
  }
}
@media (max-width: 450px) {
  .featured h1 {
    font-size: 3.5rem;
  }
}
@media (max-width: 320px) {
  .featured h1 {
    font-size: 3rem;
    padding-top: 7rem;
    padding-bottom: 8rem;
  }
}
@media (max-width: 264px) {
  .featured h1 {
    font-size: 2.4rem;
    padding-top: 7rem;
    padding-bottom: 8rem;
  }
}
.featured .fa-twitter {
  font-size: 9rem;
  color: #ffffff;
  border: 2px solid #ffffff;
  padding: 2rem;
  margin: 12rem 0 0 0;
  -moz-border-radius: 80px;
  -webkit-border-radius: 80px;
  border-radius: 80px;
}
.featured p.twitter-p a {
  color: #ffffff;
}
.featured p.twitter-p a:hover {
  color: #e52333;
}
.featured p.twitter-icon:first-of-type:after {
  border-bottom: none;
  padding-bottom: 0;
}
.featured p.twitter-name a {
  display: inline-block;
  padding-bottom: 8rem;
  font-size: 2rem;
  font-weight: 900;
  color: #ffffff;
}
.featured p.twitter-name a:hover {
  color: #e52333;
}

/************************************************************************************************/
/* Widget Call to Action and Shortcode .bamboo-call-to-action ***********************************/
.columns + aside.bamboo-call-to-action {
  margin-bottom: 4rem !important;
}

aside.bamboo-call-to-action,
.bamboo-call-to-action {
  background-color: #e52333;
  background-image: url(/wp-content/uploads/call-to-action-background-red.png);
  background-size: cover;
  background-repeat: no-repeat;
  padding-top: 8rem;
  padding-right: 3rem;
  padding-bottom: 8.2rem;
  padding-left: 3rem;
  margin-top: 0;
  margin-bottom: 0;
  margin-left: 15px;
  margin-right: 15px;
  text-align: left;
}
@media (max-width: 1134px) {
  aside.bamboo-call-to-action,
  .bamboo-call-to-action {
    background-position: 44% 0;
  }
}
@media (max-width: 966px) {
  aside.bamboo-call-to-action,
  .bamboo-call-to-action {
    background-position: 47% 0;
  }
}
@media (max-width: 875px) {
  aside.bamboo-call-to-action,
  .bamboo-call-to-action {
    background-position: 50% 0;
  }
}
@media (max-width: 820px) {
  aside.bamboo-call-to-action,
  .bamboo-call-to-action {
    background: #e52333 none;
  }
}
@media (max-width: 730px) {
  aside.bamboo-call-to-action,
  .bamboo-call-to-action {
    text-align: center;
  }
}
aside.bamboo-call-to-action span,
.bamboo-call-to-action span {
  display: inline-block;
  width: 75%;
  margin: 0;
  padding: 0;
}
@media (max-width: 988px) {
  aside.bamboo-call-to-action span,
  .bamboo-call-to-action span {
    padding-right: 2rem;
    width: 70%;
  }
}
@media (max-width: 875px) {
  aside.bamboo-call-to-action span,
  .bamboo-call-to-action span {
    width: 70%;
  }
}
@media (max-width: 730px) {
  aside.bamboo-call-to-action span,
  .bamboo-call-to-action span {
    width: 100%;
    padding-bottom: 1rem;
    padding-right: 0;
    text-align: center;
  }
}
aside.bamboo-call-to-action span p:first-of-type,
.bamboo-call-to-action span p:first-of-type {
  font-size: 2.4rem;
  color: #ffffff;
  line-height: 2.4rem;
  margin: 0 0 1rem 0;
  padding: 0;
  text-transform: uppercase;
  font-weight: 900;
}
@media (max-width: 875px) {
  aside.bamboo-call-to-action span p:first-of-type,
  .bamboo-call-to-action span p:first-of-type {
    width: 100%;
  }
}
aside.bamboo-call-to-action span p:last-of-type,
.bamboo-call-to-action span p:last-of-type {
  padding: 0;
  margin: 0;
  font-size: 1.6rem;
  line-height: 1.8rem;
  margin-bottom: 0;
  font-weight: 400;
  color: #ffffff;
  width: 100%;
  text-transform: none;
}
aside.bamboo-call-to-action a,
.bamboo-call-to-action a {
  font-size: 1.4rem;
  font-weight: 900;
  text-transform: uppercase;
  display: inline-block;
  margin-top: 1rem;
  color: #ffffff;
  background-color: #e52333;
  text-decoration: none;
  padding: 1.4rem 2.2rem 1.3rem 2.2rem;
  vertical-align: top;
  float: right;
  border-radius: 12px;
}
aside.bamboo-call-to-action a i,
.bamboo-call-to-action a i {
  font-size: 2rem;
  vertical-align: center;
  margin-left: 2rem;
  margin-top: -0.2rem;
  color: #ffffff;
  vertical-align: top;
}
@media (max-width: 790px) {
  aside.bamboo-call-to-action a,
  .bamboo-call-to-action a {
    margin-top: 1.2rem;
  }
}
@media (max-width: 730px) {
  aside.bamboo-call-to-action a,
  .bamboo-call-to-action a {
    margin-top: 0;
    float: none;
  }
}
@media (max-width: 820px) {
  aside.bamboo-call-to-action a,
  .bamboo-call-to-action a {
    background-color: #ffffff;
    color: #e52333;
  }
  aside.bamboo-call-to-action a i,
  .bamboo-call-to-action a i {
    color: #e52333;
  }
}
aside.bamboo-call-to-action a:hover,
.bamboo-call-to-action a:hover {
  background-color: #0a5895;
  color: #ffffff;
  -webkit-transition: all 0.25s ease;
  -moz-transition: all 0.25s ease;
  -ms-transition: all 0.25s ease;
  -o-transition: all 0.25s ease;
  transition: all 0.25s ease;
}
aside.bamboo-call-to-action a:hover i,
.bamboo-call-to-action a:hover i {
  color: #ffffff;
}

section.call-to-action aside.bamboo-call-to-action {
  margin-top: 0;
  margin-left: 0;
  margin-right: 0;
}
section.call-to-action aside.bamboo-call-to-action p {
  font-size: 4rem;
  font-weight: 900;
  line-height: 1.2em;
  text-transform: capitalize;
  max-width: 40ch;
}

/************************************************************************************************/
/* Contact Page *********************************************************************************/
.map {
  height: 474px;
  background-image: url(/wp-content/uploads/large-map.jpg);
  background-size: cover;
  background-position: 50% 50%;
  background-repeat: no-repeat;
  margin: 0;
  padding: 0;
  position: relative;
}
@media (max-width: 730px) {
  .map {
    background-image: url(/wp-content/uploads/small-map.jpg);
  }
}
.map .small-map {
  background-image: url(/wp-content/uploads/small-map.jpg);
  background-position: 40% 50%;
  display: block;
  position: absolute;
  top: 4rem;
  right: 4rem;
  background-color: red;
  width: 260px;
  height: 260px;
  border: 3px solid #f7f7f7;
}
@media (max-width: 730px) {
  .map .small-map {
    display: none;
  }
}

/************************************************************************************************/
/* GALLERY **************************************************************************************/
/************************************************************************************************/
/* Widgets Footer 1 *****************************************************************************/
.page-footer {
  font-size: 1.4rem;
}

.page-footer .textwidget {
  width: 35%;
  padding: 3rem 0;
  display: inline-block;
  margin-right: -4px;
  vertical-align: middle;
}
@media (max-width: 875px) {
  .page-footer .textwidget {
    width: 26%;
  }
}
@media (max-width: 790px) {
  .page-footer .textwidget {
    width: 100%;
    text-align: center;
  }
}
.page-footer .textwidget h2, .page-footer .textwidget form legend, form .page-footer .textwidget legend {
  display: none;
}
@media (max-width: 790px) {
  .page-footer .textwidget h2, .page-footer .textwidget form legend, form .page-footer .textwidget legend {
    display: inline-block;
    color: #2b2b2b;
  }
}
.page-footer .textwidget .accreditations {
  clear: both;
  display: block;
  width: 100%;
}
.page-footer .textwidget .accreditations img {
  width: 10%;
}
@media (max-width: 1045px) {
  .page-footer .textwidget .accreditations img {
    width: 17%;
  }
}
@media (max-width: 875px) {
  .page-footer .textwidget .accreditations img {
    width: 20%;
  }
}
@media (max-width: 790px) {
  .page-footer .textwidget .accreditations img {
    width: 10%;
  }
}
@media (max-width: 375px) {
  .page-footer .textwidget .accreditations img {
    width: 18%;
  }
}

.menu-footer-container {
  width: 65%;
  display: inline-block;
  text-align: right;
  vertical-align: middle;
}
@media (max-width: 875px) {
  .menu-footer-container {
    width: 74%;
  }
}
.menu-footer-container ul {
  display: block;
  list-style-type: none;
  margin: 0 2rem 0 0;
}
.menu-footer-container ul li {
  display: inline-block;
  margin: 0 -4px 0 0;
  padding: 0;
}
.menu-footer-container ul li a {
  padding: 0 2rem 0 2rem;
  margin: 0;
  color: #2b2b2b;
  display: inline-block;
  text-decoration: none;
  border-left: 2px solid #f7f7f7;
}
@media (max-width: 1045px) {
  .menu-footer-container ul li a {
    padding: 0 1rem 0 1rem;
  }
}
.menu-footer-container ul li a:hover {
  text-decoration: underline;
  color: #e52333;
}
.menu-footer-container ul li:first-child a {
  border-left: none;
}
.menu-footer-container ul li:last-child a {
  padding: 0 0 0 2rem;
}
@media (max-width: 1045px) {
  .menu-footer-container ul li:last-child a {
    padding: 0 0 0 1rem;
  }
}
@media (max-width: 790px) {
  .menu-footer-container {
    width: 100%;
  }
  .menu-footer-container ul {
    margin: 0 0 0 0;
    padding: 0 0 0 0;
    width: 100%;
  }
  .menu-footer-container ul li {
    margin: 0 0 0 0;
    padding: 0 0 0 0;
    width: 100%;
    text-align: left;
  }
  .menu-footer-container ul li a {
    margin: 0 0 0.3rem 0;
    padding: 1rem 1rem 1rem 1rem;
    border-left: none;
    width: 100%;
    color: #ffffff;
    text-transform: uppercase;
    font-weight: 700;
    background-color: #e52333;
    background-image: url(/wp-content/uploads/chevrons.png);
    background-position: 100% 0%;
    background-repeat: no-repeat;
  }
  .menu-footer-container ul li a:hover {
    background-color: #0a5895;
    background-image: url(/wp-content/uploads/chevrons-blue.png);
    color: #ffffff;
    text-decoration: none;
  }
  .menu-footer-container ul li:last-child a {
    padding: 1rem 1rem 1rem 1rem;
  }
}

/************************************************************************************************/
/* Widgets Footer 2 *****************************************************************************/
footer {
  background-color: #f7f7f7;
  background-position: 30% 0%;
  background-repeat: no-repeat;
  color: #2b2b2b;
}
@media (max-width: 1577px) {
  footer {
    background-position: 37% 0%;
  }
}
@media (max-width: 1284px) {
  footer {
    background-position: 36% 0%;
  }
}
@media (max-width: 1134px) {
  footer {
    background-position: 40% 0%;
  }
}
@media (max-width: 1045px) {
  footer {
    background-position: 46% 0%;
  }
}
@media (max-width: 988px) {
  footer {
    background-image: none;
    text-align: center;
  }
}
footer .widgettitle {
  display: none;
}
footer .textwidget {
  display: inline-block;
  padding: 1.7rem 1rem;
  margin: 0;
  vertical-align: middle;
  font-size: 1.2rem;
}
footer .textwidget p {
  padding: 0;
  margin: 0;
  line-height: 1.3rem;
  font-size: 1.2rem;
}
footer .textwidget a {
  color: #2b2b2b;
  text-decoration: none;
}
footer .textwidget a:hover {
  color: #e52333;
}
footer .textwidget i {
  font-size: 1.6rem;
  margin-right: 1.8rem;
  vertical-align: middle;
}
@media (max-width: 790px) {
  footer .textwidget i {
    font-size: 2.6rem;
    margin-right: 2rem;
  }
}
@media (max-width: 264px) {
  footer .textwidget i {
    margin-right: 1rem;
  }
}
footer .textwidget a:last-of-type i {
  margin-right: 0;
}
footer {
  /* One */
}
footer .textwidget:only-of-type {
  width: 100%;
}
footer {
  /* Two */
}
footer .textwidget:not(:only-of-type) {
  width: 50%;
  margin-right: -4px;
}
@media (max-width: 988px) {
  footer .textwidget:not(:only-of-type) {
    width: 100%;
    margin-right: 0;
  }
}
footer .web-design-manchester {
  text-align: right;
}
footer .web-design-manchester img {
  width: 20px;
  height: auto;
  vertical-align: middle;
  margin: 0 0 0 0.5rem;
}
@media (max-width: 988px) {
  footer .web-design-manchester {
    text-align: center;
  }
}

/************************************************************************************************************/
/************************************************************************************************************/
.our-clients-wrapper {
  display: block;
  clear: both;
  background-color: #f6f6f6;
  padding-top: 2%;
  padding-bottom: 2%;
}

.snippet.our-clients {
  display: block;
  max-width: 100%;
  margin: 0 auto;
  padding: 40px 8%;
  clear: both;
}
.snippet.our-clients h5 {
  font-size: 3.4rem;
  font-weight: 700;
  text-transform: capitalize;
  color: #2b2b2b;
  line-height: 1.2em;
  text-align: center;
  margin-bottom: 4rem;
  max-width: 88ch;
}
.snippet.our-clients p {
  font-size: 2rem;
  font-weight: 500;
  text-transform: capitalize;
  color: #2b2b2b;
  line-height: 1.2em;
  text-align: center;
  margin: 0 auto 4rem auto;
  max-width: 88ch;
}
.snippet.our-clients .carousel-wrapper {
  width: 100%;
  height: 80px;
  position: relative;
  overflow: hidden;
}
.snippet.our-clients .carousel-wrapper .carousel {
  position: absolute;
  top: 0;
  left: 0;
  white-space: nowrap;
}
.snippet.our-clients .carousel-wrapper .carousel div {
  white-space: nowrap;
  display: inline-block;
}
.snippet.our-clients .carousel-wrapper .carousel div img {
  height: 60px;
  width: auto;
  margin-right: 40px;
}

.snippet.homepage-sections {
  display: block;
  margin: 15px 15px;
  padding: 0;
  text-align: center;
}
.snippet.homepage-sections *,
.snippet.homepage-sections *::before,
.snippet.homepage-sections *::after {
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  -webkit-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
}
.snippet.homepage-sections figure {
  width: calc(33.3333333333% - 13px);
  height: 220px;
  overflow: hidden;
  position: relative;
  display: inline-block;
  vertical-align: top;
}
.snippet.homepage-sections figure:nth-child(2) {
  margin: 0 15px;
}
@media (max-width: 900px) {
  .snippet.homepage-sections figure {
    height: 170px;
    color: red !important;
  }
}
@media (max-width: 767px) {
  .snippet.homepage-sections figure {
    height: 130px;
    color: red !important;
  }
}
@media (max-width: 600px) {
  .snippet.homepage-sections figure {
    height: 160px;
    width: 100%;
  }
  .snippet.homepage-sections figure:nth-child(2) {
    margin: 15px 0;
  }
}
.snippet.homepage-sections a {
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  text-align: left;
  font-weight: 900;
  font-size: 2.2rem;
  width: 100%;
  height: 100%;
  display: table;
  text-decoration: none;
  color: #ffffff;
  text-transform: uppercase;
}
.snippet.homepage-sections a span {
  display: table-cell;
  vertical-align: bottom;
  position: relative;
  bottom: 0;
  left: 0;
  padding: 0 30px 30px 30px;
  opacity: 1;
  background: -moz-linear-gradient(top, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0) 1%, rgba(0, 0, 0, 0.6) 100%);
  /* FF3.6-15 */
  background: -webkit-linear-gradient(top, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0) 1%, rgba(0, 0, 0, 0.6) 100%);
  /* Chrome10-25,Safari5.1-6 */
  background: linear-gradient(to bottom, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0) 1%, rgba(0, 0, 0, 0.6) 100%);
  /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
}
.snippet.homepage-sections a span:after {
  /*   border
      position: absolute;
      content: "";
      left: 0; right: 0;
      bottom: 0;
      text-align: left;
      margin: auto;
      width: 0%; */
}
.snippet.homepage-sections figure div.boomige {
  display: block;
  width: 100%;
  height: 100%;
  background-size: cover;
  background-position: center center;
}
.snippet.homepage-sections figure:hover a {
  background: rgba(255, 255, 255, 0.3);
}
.snippet.homepage-sections a:hover span {
  opacity: 1;
  bottom: 0;
  left: 0;
  padding: 0 30px 30px 40px;
  cursor: pointer;
}
.snippet.homepage-sections a:hover span:after {
  /*   width: 100%; */
}
.snippet.homepage-sections figure:hover div.boomige {
  -webkit-transform: scale3d(1.2, 1.2, 1);
  transform: scale3d(1.2, 1.2, 1);
}

/************************************************************************************************************/
/* Bamboo Gallery Plugin Overide ****************************************************************************/
.bamboo-gallery .bamboo-gallery-button .bamboo-gallery-overlay {
  background: none !important;
}

.bamboo-gallery-lightbox-close-button {
  font-size: 26px !important;
}

.bamboo-gallery-lightbox-prev-button,
.bamboo-gallery-lightbox-next-button {
  font-size: 26px !important;
}

.bamboo-gallery-lightbox-close-button:hover {
  background: #e52333 !important;
  color: white !important;
}

.bamboo-gallery-lightbox-prev-button:hover,
.bamboo-gallery-lightbox-next-button:hover {
  background: #0a5895 !important;
  color: white !important;
}

/************************************************************************************************************/
@-webkit-keyframes fadeIn {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
@keyframes fadeIn {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
.cols {
  display: flex;
  flex: 0 1 auto;
  flex-direction: row;
  flex-wrap: wrap;
}
.cols .col {
  flex-basis: 16.6666667%;
  max-width: 16.6666667%;
  padding: 0 1rem;
  text-align: center;
}
@media (max-width: 900px) {
  .cols .col {
    flex-basis: 50%;
    max-width: 50%;
  }
}
@media (max-width: 374px) {
  .cols .col {
    flex-basis: 100%;
    max-width: 100%;
  }
}
.cols .col h4 a {
  color: #0a5895;
  text-decoration: none;
}
.cols .col p {
  font-size: 1.4rem;
  line-height: 1.7rem;
  color: rgb(83.5, 83.5, 83.5);
}

.wpcf7-list-item {
  margin: 0 1em 0 0;
  width: 32%;
}
@media (max-width: 767px) {
  .wpcf7-list-item {
    margin: 0 0 0 0;
    width: 100%;
  }
}
.wpcf7-list-item label {
  width: 100%;
}

.fullwidth {
  margin-bottom: 0 !important;
}

.wp-block-cover__inner-container {
  padding: 8% 8% 2% 8% !important;
}

.wp-block-cover__inner-container h1 {
  max-width: 900px;
}

.wp-block-cover__inner-container h1 + p {
  font-size: 22px;
  max-width: 900px;
}

.wp-block-cover__inner-container h1 + p strong {
  color: inherit;
}

.main-cta .wp-block-cover__inner-container {
  padding: 4% 8% 4% 8% !important;
}

.main-cta h6 {
  padding-top: 2%;
  font-size: 3vw;
  line-height: 1.2em !important;
  color: #ffffff;
  text-transform: capitalize;
  font-weight: 700;
  margin-bottom: 0;
  max-width: 40ch;
  margin-bottom: 2rem;
}

.wp-block-button a {
  border-radius: 12px;
}

.services-icons {
  margin-bottom: 0 !important;
}

.services-icons p {
  padding-bottom: 0 !important;
}

.intro-media .wp-block-media-text__content h3 {
  font-size: 3vw;
  line-height: 1em !important;
  text-transform: capitalize;
  font-weight: 900;
  margin-bottom: 0;
  max-width: 40ch;
  margin-bottom: 2rem;
}
@media (max-width: 988px) {
  .intro-media .wp-block-media-text__content h3 {
    font-size: 3.6rem;
  }
}

.intro-media .wp-block-media-text__content h4 {
  font-size: 2.2rem;
  line-height: 1em !important;
  text-transform: none;
  font-weight: 700;
  margin-bottom: 0;
  margin-bottom: 2rem;
}

.wp-block-columns ul li {
  font-size: 2rem;
  line-height: 2.4rem;
  font-weight: 400;
  text-transform: none;
  margin-bottom: 1rem;
}

.columns-padding {
  padding-left: 6rem !important;
  padding-right: 6rem !important;
}

.three-block-services h4 {
  font-size: 2.2rem;
  line-height: 1em !important;
  text-transform: none;
  font-weight: 700;
  margin-bottom: 0;
  margin-bottom: 2rem;
}

.radius,
figure.wp-block-media-text__media,
figure.wp-block-media-text__media img {
  border-radius: 8px;
}

/**************************************************************************************************/
header {
  display: flex;
  align-items: center;
  gap: 28px;
  padding: 10px 28px;
}
@media (max-width: 1312px) {
  header .logo {
    width: 190px;
    height: 46px;
  }
  header .logo img {
    width: 190px;
    height: 46px;
  }
}
header .main-nav {
  width: initial;
  flex-grow: 1;
}
@media (max-width: 1312px) {
  header .main-nav > ul > li > a {
    padding: 20px !important;
  }
  header .main-nav > ul > li > a > span {
    font-size: 15px;
  }
}
header .banner-content {
  display: flex;
  gap: 24px;
  width: 337px;
}
header .banner-content .call-us {
  text-transform: uppercase;
  font-size: 13px;
  font-weight: 500;
}
header .banner-content .call-us strong a {
  color: #0D4783;
  text-decoration: none;
  font-size: 20px;
}
header .banner-content .header-button {
  width: 155px;
  height: 44px;
  padding-top: 10px;
  border-radius: 22px;
  background-color: #e61f2b;
  color: #fff;
  text-decoration: none;
  font-size: 18px;
  text-align: center;
}
header .banner-content .header-button svg {
  width: 14px;
  height: 10px;
}
header .banner-content .header-button:hover {
  background-color: #0D4783;
}
@media (max-width: 800px) {
  header .banner-content {
    display: none;
  }
}
@media (max-width: 1496px) {
  header .banner-content .header-button {
    font-size: 16px;
  }
}
@media (max-width: 1312px) {
  header .banner-content {
    width: 303px;
  }
  header .banner-content .call-us {
    font-size: 11px;
  }
  header .banner-content .call-us strong a {
    font-size: 18px;
  }
}
@media (max-width: 1180px) {
  header .banner-content .header-button {
    font-size: 14px;
  }
}
header .mobile-menu-button {
  height: 45px;
  padding-bottom: 10px;
  display: flex;
  align-items: center;
  cursor: pointer;
}
header .mobile-menu-button:hover svg rect {
  fill: #0a5895;
}
@media (min-width: 1181px) {
  header .mobile-menu-button {
    display: none;
  }
}

.mobile-menu {
  --mobile-menu-width: 323px;
  --padding: 6px;
  --nav-background-color: #e61f2b;
  --nav-text-color: white;
  z-index: 30;
  position: fixed;
  display: flex;
  flex-direction: column;
  top: 0px;
  right: calc(-1 * var(--mobile-menu-width) * 1.1);
  width: var(--mobile-menu-width);
  height: 100vh;
  background-color: var(--nav-background-color);
  transition: right 0.25s ease;
}
.mobile-menu .mobile-menu-button-close {
  display: block;
  padding: 30px 30px 0 0;
  width: 100%;
  height: 51px;
  text-align: right;
}
.mobile-menu ul.menu {
  flex-grow: 1;
  overflow: auto;
}
.mobile-menu .mobile-menu-footer {
  padding: 30px 0;
  background-color: #0a5895;
  color: white;
  text-align: center;
  text-transform: uppercase;
  font-size: 18px;
  font-weight: 600;
}
.mobile-menu .mobile-menu-footer strong {
  display: block;
  width: 100%;
  font-size: 30px;
  font-weight: 600;
  line-height: 50px;
}
.mobile-menu ul {
  margin: 80px 30px 0 30px;
  font-size: 24px;
}
.mobile-menu ul li {
  display: block;
  position: relative;
  width: 100%;
  text-align: center;
  cursor: pointer;
}
.mobile-menu ul li a {
  display: inline-block;
  padding: var(--padding);
  border-radius: 50px;
  font-size: 24px;
  color: var(--nav-text-color);
  text-decoration: none;
  white-space: nowrap;
  cursor: pointer;
  transition: var(--transition);
}
.mobile-menu ul li a:hover {
  color: #0a5895;
}
.mobile-menu ul li:not(.menu-item-has-children) {
  padding-right: 36px;
}
.mobile-menu ul li .sub-menu-button {
  display: inline-block;
  position: relative;
  width: 36px;
  height: 36px;
  vertical-align: middle;
  float: right;
}
.mobile-menu ul li .sub-menu-button:before {
  position: absolute;
  display: block;
  content: "";
  width: 12px;
  height: 2px;
  background: var(--nav-text-color);
  top: 18px;
  left: 7px;
  transition: 0.25 ease;
  transform: rotateZ(45deg);
}
.mobile-menu ul li .sub-menu-button:after {
  position: absolute;
  display: block;
  content: "";
  width: 12px;
  height: 2px;
  background: var(--nav-text-color);
  top: 18px;
  left: 15px;
  transition: 0.25 ease;
  transform: rotateZ(-45deg);
}
.mobile-menu ul li .sub-menu-button:hover:before {
  background-color: #0a5895;
}
.mobile-menu ul li .sub-menu-button:hover:after {
  background-color: #0a5895;
}
.mobile-menu ul li .sub-menu-button.active:before {
  transform: rotateZ(-45deg);
}
.mobile-menu ul li .sub-menu-button.active:after {
  transform: rotateZ(45deg);
}
.mobile-menu ul li > ul.sub-menu, .mobile-menu ul li > ul.children {
  position: inherit !important;
  box-shadow: inherit !important;
  background-color: var(--color-accent);
  display: block !important;
  padding: 0px;
  margin-top: 0px !important;
  height: 0px;
  width: 100%;
  overflow: scroll;
  border-radius: var(--rounding);
  transition: height 0.25s ease !important;
}
.mobile-menu ul li > ul.sub-menu li a, .mobile-menu ul li > ul.children li a {
  display: block;
  width: 100%;
  padding-right: 36px;
  color: var(--nav-text-color);
  white-space: wrap;
  font-size: 18px;
}
.mobile-menu ul li > ul.sub-menu li a:hover, .mobile-menu ul li > ul.children li a:hover {
  color: var(--color-nav-color);
}
.mobile-menu ul li > ul.sub-menu li:first-child a, .mobile-menu ul li > ul.children li:first-child a {
  margin-top: 40px;
}
.mobile-menu ul li > ul.sub-menu li:last-child a, .mobile-menu ul li > ul.children li:last-child a {
  margin-bottom: 40px;
}
.mobile-menu.visible {
  right: 0px;
}

.footer-links > .wp-block-group {
  padding: 4% 8%;
}
.footer-links > .wp-block-group p {
  line-height: 1.5;
}
.footer-links > .wp-block-group a {
  color: #fff;
  text-decoration: none;
}
.footer-links > .wp-block-group a:hover {
  color: #e52333;
}

.media-scroller {
  margin-top: 2rem;
  padding-top: 2rem;
}

.media-scroller > .wp-block-group__inner-container {
  display: grid !important;
  grid-template-rows: min-content;
  gap: 2rem;
  grid-auto-flow: column;
  grid-auto-columns: 340px;
  overflow-x: auto;
  overscroll-behavior-inline: contain;
  padding: 0;
  scroll-snap-align: start;
  scroll-snap-type: inline mandatory;
}
@media (max-width: 800px) {
  .media-scroller > .wp-block-group__inner-container {
    gap: 1rem;
    grid-auto-columns: 240px;
  }
}

.media-scroller > .wp-block-group__inner-container > * {
  scroll-snap-align: start;
}

.media-element {
  padding: 1rem;
  border-radius: 10px;
  gap: 0;
}
.media-element img {
  inline-size: 100%;
  aspect-ratio: 16/9 !important;
  object-fit: cover;
  border-radius: 10px;
}
.media-element p {
  margin: 6px 0 0 10px !important;
  padding: 0;
}
.media-element p a {
  text-decoration: none;
  transition: all ease-in-out;
}
.media-element p a:hover {
  color: #c41924;
}

.media-scroller ::-webkit-scrollbar {
  width: 1em;
  height: 12px;
  display: none;
}

.media-scroller ::-webkit-scrollbar-track {
  background: hsl(0, 0%, 98%);
  border-radius: 100vw;
  margin-block: 0.5em;
}

.media-scroller ::-webkit-scrollbar-thumb {
  background: hsl(0, 0%, 88%);
  border-radius: 100vw;
}

@supports (scrollbar-color: red blue) {
  * {
    scrollbar-color: hsl(0, 0%, 98%) hsl(0, 0%, 88%);
    scrollbar-width: thin;
  }
}
/* NEWS INDEX */
.blog .is-layout-flex.columns-3 {
  margin: initial !important;
  padding: 0 15px;
  align-items: stretch;
}
.blog .is-layout-flex.columns-3 li {
  display: flex;
  flex-direction: column;
  background-color: #e52333;
  cursor: pointer;
  flex-basis: calc((100% - 4rem) / 3);
}
@media (max-width: 966px) {
  .blog .is-layout-flex.columns-3 li {
    flex-basis: calc((100% - 2rem) / 2);
  }
}
@media (max-width: 639px) {
  .blog .is-layout-flex.columns-3 li {
    flex-basis: 100%;
  }
}
.blog .is-layout-flex.columns-3 li:hover {
  background-color: #0a5895;
  -webkit-transition: all 0.25s ease;
  -moz-transition: all 0.25s ease;
  -ms-transition: all 0.25s ease;
  -o-transition: all 0.25s ease;
  transition: all 0.25s ease;
}
.blog .is-layout-flex.columns-3 li img {
  width: 100%;
  height: auto;
}
.blog .is-layout-flex.columns-3 li a {
  display: inline-block;
  width: 100%;
  margin-top: -4px;
  padding-top: 2.3rem;
  padding-right: 1.9rem;
  padding-bottom: 1.9rem;
  padding-left: 1.9rem;
  text-align: left;
  text-decoration: none;
}
.blog .is-layout-flex.columns-3 li a h2, .blog .is-layout-flex.columns-3 li a form legend, form .blog .is-layout-flex.columns-3 li a legend {
  color: #ffffff;
  font-size: 2.5rem;
  font-weight: bold;
  padding-top: 0;
  margin-bottom: 1rem;
  line-height: 1.2em;
  text-transform: initial;
}
@media (max-width: 639px) {
  .blog .is-layout-flex.columns-3 li a h2, .blog .is-layout-flex.columns-3 li a form legend, form .blog .is-layout-flex.columns-3 li a legend {
    font-size: 2.5rem;
    padding-top: 0;
  }
}

/**************/
/* HERO COVER */
.wp-block-cover.full-width {
  position: relative;
  overflow: hidden;
  min-height: 60vh;
  display: flex;
  align-items: flex-end;
  /* keep content at the bottom */
}

/* Ken Burns on the background image */
.wp-block-cover.full-width .wp-block-cover__image-background {
  transform: scale(1.08);
  animation: coverKenBurns 3.2s ease-out forwards;
  will-change: transform;
}

/* Make inner container full width, then "pad it onto" a 1200px grid */
.wp-block-cover.full-width .wp-block-cover__inner-container {
  width: 100% !important;
  max-width: none !important;
  /* key: stop it behaving like a constrained block */
  margin: 0;
  /* key: stop any weird centering rules */
  text-align: left;
  /* This is the magic: matches a 1200px centred container */
  padding-left: max(1px, (100% - 1400px) / 2) !important;
  padding-right: max(1px, (100% - 1400px) / 2) !important;
  padding-bottom: clamp(1.5rem, 5vw, 4rem) !important;
  /* responsive bottom padding */
  /* text animation */
  opacity: 0;
  transform: translateY(14px);
  animation: coverTextIn 900ms ease-out 350ms forwards;
  will-change: opacity, transform;
}

/* Title tweaks */
.wp-block-cover.full-width .wp-block-post-title {
  margin: 0;
  font-size: clamp(7rem, 6vw + 3rem, 10rem);
  line-height: 0.95;
  /* optional – hero-style tight lines */
}

/* Animations */
@keyframes coverKenBurns {
  from {
    transform: scale(1.08);
  }
  to {
    transform: scale(1);
  }
}
@keyframes coverTextIn {
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
/* Reduced motion */
@media (prefers-reduced-motion: reduce) {
  .wp-block-cover.full-width .wp-block-cover__image-background,
  .wp-block-cover.full-width .wp-block-cover__inner-container {
    animation: none !important;
    transform: none !important;
    opacity: 1 !important;
  }
}
.click-through,
.click-through a {
  text-decoration: none;
  cursor: pointer;
  color: inherit;
}

.how-we-work-block {
  border-radius: 22px;
  padding: 2em 1em 2em 1em;
}

.how-we-work-block .wp-block-image {
  padding: 0 !important;
  /* 	margin: 0 !important; */
}

.how-we-work-block h3 {
  font-size: 20px !important;
  padding: 0 !important;
}

.how-we-work-block p {
  font-size: 14px !important;
  line-height: 1.4em !important;
  padding: 0 !important;
}

.wider-content {
  max-width: 1424px !important;
  display: block;
  margin: 0 auto;
}

.wide-content {
  max-width: 900px !important;
  display: block;
  margin: 0 auto;
}

.full-width {
  margin: 0 !important;
  width: 100% !important;
  max-width: 100% !important;
}

input {
  border: none;
  border-radius: 8px;
}

input[name=message] {
  height: 120px;
}

/* Google Map */
iframe {
  background-color: red;
  padding: 0 !important;
  margin: 0;
  width: 100% !important;
  max-width: 100% !important;
}

.call-to-action {
  margin-top: 20px;
}

/* Fixes p spacing on smaller screens */
@media (max-width: 790px) {
  article.page p {
    padding-bottom: 0 !important;
  }
}
.our-clients-wrapper {
  margin-top: 20px;
}

article.page p {
  padding-bottom: 0 !important;
}

.our-clients-wrapper {
  background-color: white;
}

.has-large-font-size {
  line-height: 1em;
}

.main-cta p.has-large-font-size {
  font-size: 32px !important;
  line-height: 1.2em;
}

/* change this css */
.bamboo-slides {
  margin-bottom: 0 !important;
}

/* Homepage banner section */
#signs-manchester-banner,
#signs-banner {
  gap: 0;
  border-radius: 12px !important;
  overflow: hidden;
}

.signs-intro,
.signs-cta {
  padding: 4rem 4rem;
}

.signs-intro h2, .signs-intro form legend, form .signs-intro legend,
.signs-intro form.bamboo_enquiry legend,
form.bamboo_enquiry .signs-intro legend {
  font-size: 34px !important;
  margin-bottom: 0;
  padding-bottom: 0;
}

.signs-intro h3 {
  font-size: 26px !important;
  font-weight: 600 !important;
  margin-top: 0 !important;
  padding-top: 0 !important;
  padding-bottom: 0 !important;
}

@media (max-width: 1200px) {
  #signs-manchester-banner.wp-block-columns {
    flex-direction: column !important;
  }
}
header {
  background-color: white;
  position: sticky;
  top: 0;
  z-index: 29;
}

.rounded,
figure.rounded {
  border-radius: 20px;
  overflow: hidden;
}

.padding-40 {
  padding: 4rem;
}

/* HERO COVER */
.wp-block-cover.full-width {
  position: relative;
  overflow: hidden;
  min-height: 70vh;
  display: flex;
  align-items: flex-end;
  /* keep content at the bottom */
}

/* Ken Burns on the background image */
.wp-block-cover.full-width .wp-block-cover__image-background {
  transform: scale(1.08);
  animation: coverKenBurns 3.2s ease-out forwards;
  will-change: transform;
}

/* Make inner container full width, then "pad it onto" a 1200px grid */
.wp-block-cover.full-width .wp-block-cover__inner-container {
  width: 100% !important;
  max-width: none !important;
  /* key: stop it behaving like a constrained block */
  margin: 0;
  /* key: stop any weird centering rules */
  text-align: left;
  /* This is the magic: matches a 1200px centred container */
  padding-left: max(1px, (100% - 1400px) / 2) !important;
  padding-right: max(1px, (100% - 1400px) / 2) !important;
  padding-bottom: clamp(1.5rem, 5vw, 4rem) !important;
  /* responsive bottom padding */
  /* text animation */
  opacity: 0;
  transform: translateY(14px);
  animation: coverTextIn 900ms ease-out 350ms forwards;
  will-change: opacity, transform;
}

/* Title tweaks */
.wp-block-cover.full-width .wp-block-post-title,
.wp-block-cover.full-width h1 {
  margin: 0;
  font-size: clamp(6rem, 6vw + 3rem, 9rem);
  line-height: 0.95;
  /* optional – hero-style tight lines */
}

/* Animations */
@keyframes coverKenBurns {
  from {
    transform: scale(1.08);
  }
  to {
    transform: scale(1);
  }
}
@keyframes coverTextIn {
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
/* Reduced motion */
@media (prefers-reduced-motion: reduce) {
  .wp-block-cover.full-width .wp-block-cover__image-background,
  .wp-block-cover.full-width .wp-block-cover__inner-container {
    animation: none !important;
    transform: none !important;
    opacity: 1 !important;
  }
}
.click-through,
.click-through a {
  text-decoration: none;
  cursor: pointer;
  color: inherit;
}

h2, form legend,
form.bamboo_enquiry legend,
h3,
form fieldset h3,
form.bamboo_enquiry fieldset h3,
h4,
h5,
h6 {
  color: #405484;
}

p.has-large-font-size {
  line-height: 1.1em !important;
}

.signage-block {
  position: relative;
  overflow: visible;
}

.signage-block h2, .signage-block form legend, form .signage-block legend,
.signage-block form.bamboo_enquiry legend,
form.bamboo_enquiry .signage-block legend {
  padding-bottom: 0 !important;
}

.signage-block ul {
  list-style-position: outside !important;
}

.ss-arrow {
  position: absolute;
  top: -10px;
  right: 20px;
}

.service-cta {
  padding: 4rem 4rem 6rem 4rem;
  background-image: url("http://new-signage.local/wp-content/uploads/cta-background-scaled.jpg");
  background-size: cover;
}

.service-cta h2, .service-cta form legend, form .service-cta legend,
.service-cta form.bamboo_enquiry legend,
form.bamboo_enquiry .service-cta legend {
  font-size: 7rem !important;
  margin-bottom: 0 !important;
  padding-bottom: 0 !important;
}

.service-cta p {
  font-size: 3rem !important;
}

section.featured h1 {
  color: white;
}

p {
  text-wrap: pretty;
}

h1,
h2,
form legend,
form.bamboo_enquiry legend,
h3,
form fieldset h3,
form.bamboo_enquiry fieldset h3,
h4,
h5,
h6 {
  text-wrap: balance;
}

p.call-us {
  width: 140px;
}

.pc-description {
  color: white !important;
  font-size: 1.5rem !important;
  line-height: 1.25em !important;
}

.pc-heading {
  font-weight: 900;
  color: #405484;
  padding-bottom: 0 !important;
}

.pc-title {
  font-size: 20px !important;
}

.pc-controls button {
  background-color: #405484;
}

h3 + p, form fieldset h3 + p,
form.bamboo_enquiry fieldset h3 + p {
  line-height: 1.25em !important;
}

.wp-block-cover__inner-container h2, .wp-block-cover__inner-container form legend, form .wp-block-cover__inner-container legend,
.wp-block-cover__inner-container form.bamboo_enquiry legend,
form.bamboo_enquiry .wp-block-cover__inner-container legend {
  padding-bottom: 0 !important;
}

/*# sourceMappingURL=head.css.map */
/*!
Theme Name: Signage Systems
Theme URI: http://www.bamboosolutions.co.uk
Author: Bamboo Solutions
Author URI: http://www.bamboosolutions.co.uk
Description: Signage Systems
Version: 1.0
*/

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