/* cmsms stylesheet: WEBSITE - HTML Reset modified: Tuesday, October 8, 2024 12:38:15 AM */
/* html5reset.css - 01/11/2011 */

/* apply a natural box layout model to all elements, but allowing components to change */
html {
 box-sizing: border-box;
}
*, *:before, *:after {
 box-sizing: inherit;
}
html, body, div, span, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
abbr, address, cite, code,
del, dfn, em, img, ins, kbd, q, samp,
small, strong, sub, sup, var,
b, i,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, figcaption, figure, 
footer, header, hgroup, menu, nav, section, summary,
time, mark, audio, video {
 margin: 0;
 padding: 0;
 border: 0;
 outline: 0;
 font-size: 100%;
 vertical-align: baseline;
 background: transparent;
}

h1, h2, h3, h4, h5, h6 {
 text-wrap: balance;
}

body {
 line-height: 1;
}

article,aside,details,figcaption,figure,
footer,header,hgroup,menu,nav,section { 
 display: block;
}

nav ul {
 list-style: none;
}

blockquote, q {
 quotes: none;
}

blockquote:before, blockquote:after,
q:before, q:after {
 content: '';
 content: none;
}

a {
 margin: 0;
 padding: 0;
 font-size: 100%;
 vertical-align: baseline;
 background: transparent;
}

/* change colours to suit your needs */
ins {
 background-color: #ff9;
 color: #000;
 text-decoration: none;
}

/* change colours to suit your needs */
mark {
 background-color: #ff9;
 color: #000; 
 font-style: italic;
 font-weight: bold;
}

del {
 text-decoration:  line-through;
}

abbr[title], dfn[title] {
 border-bottom: 1px dotted;
 cursor: help;
}

table {
 border-collapse: collapse;
 border-spacing: 0;
}

/* change border colour to suit your needs */
hr {
 display: block;
 height: 1px;
 border: 0;   
 border-top: 1px solid #cccccc;
 margin: 1em 0;
 padding: 0;
}

input, select {
 vertical-align: middle;
}


#EUcookieBanner {
 background: lightskyblue !important;
}
#EUcookieBanner .content p.button {
 line-height: 24px;
 background: #000066 !important;
 color: #fff;
 margin-left: 20px;
 padding: 6px 16px;
 cursor: pointer;
}
#EUcookieBanner a {
 color: #000033 !important;
}
/* cmsms stylesheet: WEBSITE - Main Stylesheet modified: Thursday, November 6, 2025 12:26:17 PM */
:root {
  --headings: rgb(0,0,0);
  --text: rgb(0,0,0);
  --link: rgb(0,119,188);
  --linkhover: rgb(0,51,102);
  --backgroundbanner: rgb(181,222,232);
  --backgroundbox25: rgba(244,246,248,.3);
  --backgroundbox: rgb(244,246,248);
  --backgroundbox2: rgb(111,115,118);
  --button: rgb(0,119,188); 
  --buttontext: rgb(255,255,255);
  --buttonhover: rgb(0,51,102); 
}
/* [1] ===== FONTS ===== [1] */
*:focus-visible {
  outline: 2px solid rgb(82,145,162);
}

html {
 scroll-behavior: smooth;
 scroll-padding-top: 10vh;
 -webkit-tap-highlight-color: rgba(255,255,255,.1);
}
body {
 background: rgb(255,255,255);
}
/* [2] ===== HEADINGS ===== [2] */
h1, h2, h3, h4, h5, h6, .contactform legend, .fixed-quote-form legend {
 font-family: 'Tektur', Arial, Helvetica, sans-serif;
 font-weight: 700;
 margin-top: 32px;
 margin-bottom: 16px;
 letter-spacing: 0;
 color: var(--headings);
 text-transform: capitalize;
 width: 100%;
}
h1 {
 font-size: 2.4em;
 line-height: 1;
 margin-top:0;
}
h2,
.contactform legend,
.fixed-quote-form legend {
 font-size: 2em;
 line-height: 1;
}
h3 {
 font-size: 1.75em;
 line-height: 1;
}
h4, h5, h6 {
 font-size: 1.25em;
 line-height: 1.25;
}

@media screen and (max-width: 640px) {
 h1 {
  font-size: 1.4em;
 }
 h2{
  font-size: 1.2em;
 }
 h3, h4, h5, h6 {
  font-size: 1em;
 }
}

/* END OF HEADINGS ===== */

/* [3] ===== TYPOGRAPHY ===== [3] */
p, ol, ul, dl, address {
 margin-bottom: 1em;
 font-size: 1em;
 line-height: 1.5;
 color: var(--text);
 font-family: 'Roboto', sans-serif;
 font-weight: 400;
}
strong {
 font-weight: 700;
}
p {
 hyphens: none;
}
ul, ol {
 margin: 0 0 1em 20px;
 padding: 0 0 0 15px;
}
li ul, li ol {
 margin: 0;
 font-size: 100%;
}

a:link, a:visited {
 color: var(--link);
}

a:hover, a:visited:hover {
 color: var(--linkhover);
}

@media screen and (max-width: 640px) {
 p, ul {
  font-size: 1em;
 }
}

dl, dd {
 margin-bottom: 1.5;
}
dt {
 font-weight: normal;
}
b, strong {
 font-weight: bold;
}
hr {
 display: block;
 margin: 1.5 0;
 padding: 0;
 height: 1px;
 border: 0;
 border-top: 1px solid rgb(204,204,204);
}

blockquote {
 border: 1px solid rgb(204,204,204);
 padding: 20px 20px 0 20px;
 margin: 40px 0;
}

blockquote p {
 color: rgb(102,102,102);
 font-weight: 700;
}

sub, sup {
 font-size: 85%;
 font-style: italic;
}

button, .button, input[type='submit'],
.contactform input[type='submit'],
.fixed-quote-form input[type='submit'],
.conformity input[type='submit']{
  background: var(--button);
  color: var(--buttontext) !important;
  border: 0;
  margin: 10px 0;
  padding: 20px;
  text-decoration: none;
  text-transform: uppercase;
  font-family: 'Roboto', Arial, sans-serif;
  border-radius: 35px;
  cursor: pointer;
  display: inline-block;
  transition: all .2s ease-in-out;
}
button:hover, .button:hover, input[type='submit']:hover{
  background: var(--buttonhover);
  transform: scale(1.05);
  border-radius: 25px;
}



div.button-container,
div.button-summary {
 width: 100%;
 text-align: center;
 padding: 25px 0;
 text-decoration: none;
}

div.button-summary {
 text-align: right;
}

table {
 font-size: 1em;
 line-height: 1.5;
 color: rgba(0,0,0,1);
 font-family: 'Roboto', Arial, Helvetica, helve, sans-serif;
 width: 100%;
 margin-bottom: 10px;
}

tr:nth-of-type(odd) {
 background: rgba(0,0,0,.025);
}

th {
 font-weight: bold;
 border-bottom: 1px solid rgb(0,0,0);
 background: rgba(0,0,0,.05);
 vertical-align: bottom;
}

th, td {
 padding: 10px;
 text-align: left;
}
th br, td br {
 margin: 0;
}
/* td:nth-of-type(1) {
 font-weight: bold;
} */


@media screen and (max-width: 480px) {
div.button-container,
div.button-container-projects {
 font-size: 12px;
}
}

/* END OF TYPOGRAPHY ===== */

/* [4] ===== ELEMENTS ===== [4] */

/* fade in elements */
.hideme {
    opacity: 0;
    transform: translateY(20px);
    visibility: hidden;
    transition: opacity 0.6s ease-out, transform 0.6s ease-out;
}
.hideme.is-visible {
    opacity: 1;
    transform: none;
    visibility: visible;
}

.skiptomain,
.skiptonav,
.offscreen {
 position:absolute;
 left:-10000px;
 top:auto;
 width:1px;
 height:1px;
 overflow:hidden;
}
.hidden {
 visibility: hidden;
}
section, header, footer {
 max-width: 100vw;
 overflow-x: hidden;
}

.content-block {
 margin: 50px 0;
}

.container_carousel,
.container_1column,
.container,
.flexcontainer {
 margin: 2.5vh auto;
 max-width: 95vw;
 
}

.container_1column {
 background-color: white;
}
.container_about-page,
.container_products-page {
 margin: 0 auto;
 margin-top: 25vh;
 max-width: 95vw;
 background-color: rgba(255,255,255,.95);
 padding: 25px;
}

.container_carousel {
 max-width: 100vw;
}

.flex-text-left,
.flex-text-right,
.flex-text-left-3col,
.flex-text-right-3col {
 display: flex;
 flex-flow: row wrap;
 -webkit-justify-content: space-between;
 justify-content: space-between;
 flex-direction: row;
}
.valign-centered,
.valign-centered-stripe {
 align-items: center;
 justify-content: center;
}
.valign-centered-stripe:nth-of-type(odd) {
 background: var(--backgroundbanner);
}
.item3 p {
 padding: 20px;
}
.item2 img,
.item3 img {
 width: 90%;
 max-width: 480px;
 min-width: 150px;
 height:auto;
 margin:5%;
 margin-bottom: 25px;
 border-radius: 100vw;
 border: 10px solid rgb(82,145,162);
 padding: 5px;
}
.flex-text-right {
 /* flex-direction: row-reverse; */
}
.flex-text-left .item,
.flex-text-right .item,
.flex-text-left-3col .item,
.flex-text-right-3col .item {
  flex: 0 0 auto;
  width: 100%;
  height: auto;
  margin: 1% 0;
  overflow: hidden;
}
@media screen and (min-width: 480px) {
.flex-text-left .item,
.flex-text-right .item {
 width: 48%;
}
.flex-text-left-3col .item,
.flex-text-right-3col .item {
  width: 32%;
}
.flex-text-left .item2,
.flex-text-right .item2 {
 width: 48%;
 margin: 25px 0;
}
.flex-text-left .item3,
.flex-text-right .item3 {
 width: 32%;
 margin: 25px 0;
}
.flex-text-left .item3:nth-of-type(3) {
 text-align: right;
}
.flex-text-right .item3:nth-of-type(3) {
 order: -1;
 text-align: left;
}
.item3 h3,
.item3 p {
 margin:0;
}
.item2 img,
.item3 img {
 max-width: 250px;
 min-width: 100px;
 margin:0;
}
}

@media screen and (min-width: 800px) {
 .container_1column,
 .container_about-page,
 .container_products-page {
  max-width: 70vw;
 }
 .container_about-page,
 .container_products-page {
  margin-top: 35vh;
 }
}

@media screen and (min-width: 1280px) {
 .container_about-page {
  max-width: 50vw;
  padding: 50px;
 }
 .container_1column,
 .container_products-page {
  padding: 25px;
 }
}
@media screen and (min-width: 1600px) {
 .container_1column,
 .container_products-page {
  max-width: 50vw;
 }
}
/* END OF ELEMENTS ===== */

/* [5] ===== HEADER ===== [5] */
header {
 background: white;
 position: sticky;
 top: 0px;
 z-index:10;
 width: 100%;
 height: 60px;
 padding: 0;
 margin: 0;
 border-bottom: 1px solid #efefef;
 
 display: flex;
 justify-content: space-between;
 align-items: center;
 flex-wrap: wrap;
 overflow: visible;
}
nav {
 margin-top: 20px;
 margin-left: 10%;
}
#logo {
 position: absolute;
 width: 40vw;
 max-width: 145px;
 height: auto;
 top: 3px;
 left: 0;
 margin: 5px 0 0 5px;
}

@media screen and (min-width: 640px) {
 header {
  height: auto;
  min-height: 80px;
 }
 #logo{
  max-width: 240px;
  height: auto;
  margin: 5px 10px;
 }
}
@media screen and (min-width: 1280px) {
 #logo{
  max-width: 450px;
  background: white;
  padding: 15px 155px 20px 15px;
  margin:0;
  border-radius: 0 0 200px 0;
  top: 0;
box-shadow: 0px 1px 10px 0px rgba(0,0,0,0.1);
-webkit-box-shadow: 0px 1px 10px 0px rgba(0,0,0,0.1);
-moz-box-shadow: 0px 1px 10px 0px rgba(0,0,0,0.1);
 }
 nav {
  margin-left: 18%;
 }
}
@media screen and (min-width: 1366px) {
 nav {
  margin-left: 10%;
 }
}
/* END OF HEADER CONTENT ===== */

/* END OF HEADER ===== */

/* [6] ===== NAVIGATION ===== [6] */
/* --- Main Menu --- */
@media screen and (max-width: 1023px) {
#menuToggle {
 display: block;
 position: fixed;
 top: 75px;
 right: 10px;
 z-index: 1; 
 -webkit-user-select: none;
 user-select: none;
}

@media screen and (max-width: 639px) {
 #menuToggle {
  top: 65px;
 }
 html:not([data-scroll='0']) #menuToggle {
   top: 15px;	
 }
}
@media screen and (min-width: 640px) and (max-width: 1023px) {
 #menuToggle {
  top: 75px;
 }
 html:not([data-scroll='0']) #menuToggle {
   top: 25px;	
 }
}
#menuToggle a {
 text-decoration: none; 
 color: #232323; 
 transition: color 0.3s ease;
}
#menuToggle a:hover {
 color: rgb(0,0,0);
}
#menuToggle input {
 display: block;
 width: 60px;
 height: 60px;
 position: absolute;
 top: -20px; 
 right: -15px; 
 cursor: pointer;  
 opacity: 0; /* hide this */
 z-index: 2; /* and place it over the hamburger */  
 -webkit-touch-callout: none;
}

/* * Just a quick hamburger */
#menuToggle span {
 display: block;
 width: 40px;
 height: 3px;
 margin-bottom: 9px;
 position: relative;
 background: rgb(0,0,0); /* burger line color */
 border-radius: 3px;
 z-index: 1;  
 transform-origin: 0 -2px;  
 transition: transform 0.5s cubic-bezier(0.77,0.2,0.05,1.0),
 background 0.5s cubic-bezier(0.77,0.2,0.05,1.0),
 opacity 0.55s ease;
}
#menuToggle span:first-child {
 transform-origin: 0% 0%;
}
#menuToggle span:nth-last-child(2) {
 transform-origin: 0% 100%;
}
/*  * Transform all the slices of hamburger * into a crossmark. */
#menuToggle input:checked ~ span {
 opacity: 1;
 transform: rotate(45deg) translate(-2px, -1px);
 transform: rotate(45deg) translate(0, 0);
 background: rgb(51,51,51); /* v.dark grey cross */
}
/* * But let's hide the middle one. */
#menuToggle input:checked ~ span:nth-last-child(3) {
 opacity: 0;
 transform: rotate(0deg) scale(0.2, 0.2);
}
/* * Oh yeah and the last one should go the other direction */
#menuToggle input:checked ~ span:nth-last-child(2) {
 transform: rotate(-45deg) translate(-3px, 0);
}

/* * Make this absolute positioned * at the top left of the screen */
#menu {
 position: absolute;
 right:0;
 width: 50vw;
 height: 100vh;
 height: calc(100vh + 100px);
 overflow-x: hidden;
 overflow-y: auto;
 margin: -120px -10px 0 0;
 padding: 125px 20px;
 background: rgba(244,244,244,.98);
 list-style-type: none;
 -webkit-font-smoothing: antialiased;
 /* to stop flickering of text in safari */  
 transform-origin: 0% 0%;
 transform: translate(200%, 0); 
 transition: transform 0.5s cubic-bezier(0.77,0.2,0.05,1.0);
}

/* ===  menu options format */

#menu .wrapper {
 height: auto;
 overflow-x: hidden;
 overflow-y: auto;
}

#menu ul li {
 font-size: 21px;
 border: 1px solid clear;
 cursor: pointer;
 padding: 0;
 margin: 20px 0;
}

/* #menu li.subsection::after {
 content: "+";
} */

#menu li:hover {
 color: rgb(0,0,0);
}

#menu ul li a {
 display: block;
}

#menu ul li ul li a{
 display: block;
 padding: 5px;
 margin: 0;
 background: unset;
 color: unset;
}
#menu ul li ul li a:before {
 content: "-- ";
}

.subsection ul:focus-within li:focus-within {
 outline: 2px solid var(--link);
}

/* === end of menu options format */

/* * And let's slide it in from the left */
#menuToggle input:checked ~ div {
 transform: none;
}
}

@media screen and (max-width: 359px) {
#menu-telephone {
 display: none;
} 
}

@media screen and (max-width: 640px) {
#menu {
 width: 100vw;
}

#menu ul li {
 font-size: 18px;
 font-weight: bold;
}
}

#menu-telephone {
 position: relative;
 right: 50px;
 font-size: 1.25em;
 font-weight: bold;
}
#menu-telephone li {
 list-style: none;
}
#menu-telephone .button {
 padding: 5px 15px;
 margin-right: 10px;
 background-color: var(--button);
}
#menu-telephone .button:hover {
 color: white;
 background-color: var(--buttonhover);
}
#menu-telephone a {
 text-decoration: none;
 color: white;
}
@media screen and (min-width: 1024px) {

/*.subsection ul.hide {
 display: block;
} can probably be removed */

#menuToggle input {
 display: none;
}

#menu {
 position: relative;
 margin: 0;
 padding: 0;
 z-index: 1000;
}

#menu ul,
#menu .wrapper {
 margin: 0;
 padding: 0;
}
#menu ul {
 display: flex;
}
#menu ul > li {
/* amend */ font-size: 14px;
 cursor: pointer;
 margin: 0;
 padding: 0;
 /* float: left; */
 font-family: sans-serif;
}

#menu li div > ul,
#menu li > ul {
 position: absolute;
 left 0;
 display: none;
 -webkit-box-shadow: 0px 10px 15px 0px rgba(0,0,0,0.15); 
 box-shadow: 0px 10px 15px 0px rgba(0,0,0,0.15);
}

#menu li:hover div > ul,
#menu li:hover > ul,
#menu li:focus-within div > ul,
#menu li:focus-within > ul {
 display: block;
 border-top: 2px solid var(--link);
 background: rgb(244,244,244);
}

#menu li:nth-of-type(3) ul {
 /* columns: 2; */
}

#menu li ul li {
 float: left;
 clear: left; 
 margin: 0;
 padding: 0;
}

#menu li div,
#menu li a:link,
#menu li a:visited {
 display: block;
 padding: 10px 11px;
 color: black;
 text-decoration: none;
}

#menu li div:hover,
#menu li a:hover,
#menu li a:visited:hover {
 color: var(--buttonhover);
}
#menu li.get-a-fixed-quote a:link,
#menu li.get-a-fixed-quote a:visited{
  background: var(--button);
  color: var(--buttontext) !important;
  border-radius: 5px;
  padding: 10px 20px;
  margin: 0 20px;
}
#menu li.get-a-fixed-quote a:hover,
#menu li.get-a-fixed-quote a:visited:hover{
  background: var(--buttonhover);
}

#menu li li a:link,
#menu li li a:visited{
 width: 250px;
 background: rgba(244,244,244,1);
 text-decoration: none; 
}
#menu li li a:hover,
#menu li li a:visited:hover{
 background: var(--background1);
 color: var(--buttonhover);
 text-decoration: none;
}
#menu-telephone {
 right: 10px;
 top: 0;
}
}

@media screen and (min-width: 640px) {
#menu-telephone {
 margin: 0;
}
}

@media screen and (min-width: 1600px) {
#menu li div,
#menu li a:link,
#menu li a:visited {
 padding: 10px 20px;
}
#menu li li a:link,
#menu li li a:visited {
 width: 350px;
}
} 

/* --- Section Menu --- */
#section-navigation{
 text-align: centre;
}

#section-navigation ul {
 list-style: none;
 margin: 0;
 padding: 0;
}

#section-navigation ul li {
 margin: 20px 0;
}

#section-navigation ul li li {
 display: block;
 margin: 2px 0;
}

#section-navigation a,
#section-navigation .sectionheader {
 display: block;
 padding: 20px;
 margin: 5px;
 text-align: center;
 text-decoration: none;
}

#section-navigation a:link,
#section-navigation a:visited {
 color: rgb(102,102,102);
 border: 1px solid rgb(204,204,204);
}

#section-navigation a:hover,
#section-navigation a:visited:hover {
 background: rgba(0,0,0,.05);
 color: rgb(50,99,59);
 font-weight: bold;
 border: 1px solid rgb(50,99,50);
}

#section-navigation a:hover::before {
 content: "+ ";
}

#section-navigation a:hover::after {
 content: " +";
}

/* --- end of Section Menu */

/* --- Sitemap Menu --- */
#sitemap{
 text-align: left;
}
#sitemap h3 {
margin-bottom: 0;
    font-size: 1em;
    line-height: 0;
    color: var(--text);
    font-family: 'Raleway', sans-serif;
    font-weight: 400;
}
#sitemap ul {
 list-style: none;
 margin: 0;
 padding: 0;
}

#sitemap ul li {
 margin: 20px 0;
}

#sitemap ul li li {
 display: inline-block;
 margin: 2px 0;
}

#sitemap a,
#sitemap .sectionheader {
 display: inline-block;
 padding: 20px;
 margin: 5px 10px 5px 0;
 text-decoration: none;
 border: 1px solid rgb(204,204,204);
}

#sitemap a:link,
#sitemap a:visited {
 color: rgb(102,102,102);
}

#sitemap a:hover,
#sitemap a:visited:hover {
 background: rgba(0,0,0,.05);
 color: rgb(50,99,50);
 border: 1px solid rgb(50,99,50);
}
/* --- end of Sitemap Menu */

/* END OF NAVIGATION ===== */

/* [7] ===== HOMEPAGE ===== [7] */
/* == Splash Intro == */
/* == Products and Services Areas == */
/* == Brands == */
/* See WEBSITE - Homepage CSS file */

/* welcome text */
#welcometext .item {
 padding: 0 25px;
 background: var(--backgroundbox);
}

/* === FOOTER CONTENT === */
footer {
 background: rgb(0,0,0,.6);
 background: rgb(66,66,66,1);
 padding: 25px 0 100px 0;
}
footer .container {
 display: flex;
 flex-wrap: wrap;
 justify-content: space-between;
}
footer .item {
 width: 100%;
 height: auto;
 margin: 10px 1%;
 text-align: center;
}
footer .item:nth-child(5) {
 width: 100%;
}
footer h4 {
 color: white;
 margin-top: 0;
}
footer ul, footer ol{
 margin:0;
 padding: 0;
}
footer img.footer-logo {
 width: 100%;
 height: auto;
 margin-bottom: 10px;
 filter: grayscale(100%) brightness(800%);
}
footer p {
color: white;
font-size: 14px;
}
footer a:link, footer a:visited {
 color: #99ccff;
 color: rgb(189, 222, 255);
 display: block;
}
footer a:hover, footer a:visited:hover {
 color: white;
}
footer a.button {
 display: inline-block;
}
footer ul {
 list-style: none;
}
footer li {
 margin: 4px 0;
}
footer li a:link,
footer li a:visited {
 display: block;
 padding: 4px 0;
 text-decoration: none;
}
footer li a:hover,
footer li a:visited:hover {
 display: block;
}
#footer-icons {
 display: flex;
 flex-wrap: wrap;
 margin-top: 10px;
}
#footer-icons i {
 font-size: 3em;
 margin-right: 10px;
}
p.smallprint {
 margin-top: 10px;
 font-size: 0.8em;
 line-height: 1.2em;
}
p.smallprint a {
 display: inline-block;
}
footer img {
 max-width: 175px;
}

footer th {
 border-bottom: 1px solid rgb(255, 255, 255);
 background: none;
}
footer th,
footer td {
 color: white;
 padding: .5em;
}
tr:nth-of-type(odd) {
 background: unset;
}
@media screen and (min-width: 640px) {
 footer {
  padding: 25px 0;
 }
 footer .item {
  width: 48%;
  margin: 0 1%;
  text-align: left;
 }
}

@media screen and (min-width: 1024px) {
 footer .item {
  width: 23%;
 }
 #footer-icons i {
  font-size: 2em;
  margin-right: 5px;
 }
 footer img {
  max-width: 250px;
 }
}

/* Back to Top Link */            
#back-to-top {
 position: fixed;
 bottom: 20px;
 right: 20px;
 z-index: 9999;
 width: 80px;
 height: 80px;
 text-align: center;
 line-height: 80px;
 background: var(--link);
 color: white;
 cursor: pointer;
 /* border: 1px solid white; */
 border-radius: 50px;
 text-decoration: none;
 transition: opacity 0.5s ease-out;
 opacity: 0;
 padding-top: 5px;
}
#back-to-top img {
 width: 100%;
 height: 90%;
 padding: 15px;
 filter: invert(1);
}
#back-to-top:hover {
 background: var(--linkhover);
}
#back-to-top.show {
 opacity: 1;
}
/* END OF HOMEPAGE ===== */

/* [8] ===== SECTION CONTENT ===== [8] */
#general-content-page li,
#about-content-page li,
#products-content-page li {
 margin: 10px 5px;
}
/* #products-content-page h1 {
 margin-top: 25px; 
} */
img.section-header {
 height: 35vh;
 width: 100vw;
 object-fit: scale-down;
 object-position: 50% 50%;
 background-color: rgb(244,244,244);
 background-image: url('/uploads/images/homepage-splash/splash2.jpg');
 background-position: 50% 50%;
}

#about-content-page,
#products-content-page,
#contact-page {
 background-attachment: fixed;
 background-repeat: no-repeat;
 background-position: 50% 10%;
 background-size: 250%;
 /* background-image: url('/uploads/images/homepage-splash/splash2_about2.jpg'); */ /* see inline page template for image css which is set via the content manager */
 padding-bottom: 25px;
}
#contact-page {
 padding-bottom: 0;
}
#introsplash,
#about-content-page,
#products-content-page,
#contact-page {
 background-position: 50% 0%;
 animation: fadeInAnimation ease 2s;
 animation-iteration-count: 1;
 animation-fill-mode: forwards;
}
@keyframes fadeInAnimation {
 0% {
  opacity: 0;
  transform:scaleX(0.9);
  transform:scaleY(0.999);
 }
 100% {
  opacity: 1;
  transform:scaleX(1);
  transform:scaleY(1);
 }
}


 

@media screen and (max-width: 479px) {
 #general-content-page ul,
 #about-content-page ul.
 #products-content-page ul,
 #contact-page ul {
  margin:0;
 }
 #general-content-page li,
 #about-content-page li,
 #products-content-page li,
 #contact-page li {
  margin: 0 5px 20px 5px;
 }
}

@media screen and (min-width: 639px) {
 img.section-header {
  height: 45vh;
  max-height: 500px;
 }
 #about-content-page,
 #products-content-page,
 #contact-page {
  background-size: 175%;
 }
}

@media screen and (min-width: 800px) {
 #about-content-page,
 #products-content-page,
 #contact-page {
  background-size: 150%;
 }
}

@media screen and (min-width: 1024px) {
 #about-content-page,
 #products-content-page,
 #contact-page {
  background-size: 150%;
 }
}

@media screen and (min-width: 1600px) {
 #about-content-page,
 #products-content-page,
 #contact-page {
  background-size: 100%;
 }
}

/* --- Products Page --- */
.product-list {
 display: flex;
 flex-direction: column;
 justify-content: center;
 align-items: center;
 width: 50vw;
 margin: 0 auto;
 background-color: white;
}
.item:nth-of-type(even) .product-list {
 flex-direction: column;
}
.flexcontent {
 width: 100vw;
 max-width: 1000px;
 background-color: white;
}
.flexcontent:nth-of-type(2) {
 background: rgb(244,246,248); /* original light grey */
 background: var(--link);
 padding: 25px;
 border-bottom: 1px solid navy;
}
.item:nth-of-type(2n-2) .flexcontent:nth-of-type(2n-2) {
 background: var(--linkhover);
}
.flexcontent img {
 max-width: 100%;
 height: auto;
 padding: 0 50px;
}
.flexcontent h2,
.flexcontent h3,
.flexcontent h4,
.flexcontent h5,
.flexcontent h6,
.flexcontent p,
.flexcontent li {
 color: white;
}

/* .product-list img {
 transition: transform 0.25s ease-in-out;
}
.product-list img:hover {
 transform: scale(1.25);
 background: white;
 box-shadow: 2px 4px 30px #333;
 transition: transform 0.5s ease-in-out;
} */

@media screen and (min-width: 800px) {
 .product-list {
  flex-direction: row;
  width: 70vw;
 }
 .item:nth-of-type(even) .product-list {
  flex-direction: row-reverse;
 }
 .flexcontent {
  width: 35vw;
  min-height: 500px;
 }
 .flexcontent:nth-of-type(2) {
  /* padding: 150px 0 150px 5vw; */
  border: 0;
 }
 .item:nth-of-type(2n-2) .flexcontent:nth-of-type(2n-2) {
  /* padding: 150px 1vw 150px 10vw; */
 }
 .flexcontent img {
  height: auto;
  /* margin: 0 20%; */
  /* max-height: 500px; */
  /* padding: 0 0 0 50%; */
 }
 .item:nth-of-type(2n-2) .flexcontent:nth-of-type(3n-2) img {
  /* padding: 0 0 0 50px; */
 }
}

@media screen and (min-width: 1600px) {
 .product-list {
  width: 50vw;
 }
 .flexcontent {
  width: 25vw;
 }
 .flexcontent:nth-of-type(2) {
  /* padding: 150px 1vw; */
 }
 .item:nth-of-type(2n-2) .flexcontent:nth-of-type(2n-2) {
  /* padding: 150px 1vw 150px 25vw; */
  /* padding: 150px 10px 150px 25%; */
 }
}

@media screen and (min-width: 2400px) {
 .item:nth-of-type(2n-2) .flexcontent:nth-of-type(2n-2) {
  padding: 150px 0 150px 10vw;
 }
}

/* --- Business Partners page --- */
#partners-page .item {
 display: flex;
 flex-direction: column;
 align-items: center;
 padding-bottom: 25px;
 margin-bottom: 25px;
 border-bottom: 1px solid rgb(204,204,204);
}
#partners-page img {
 width: 90vw;
 height: auto;
}

@media screen and (min-width: 640px) {
 #partners-page .item{
  display: flex;
  flex-direction: row;
  align-items: flex-start;
 }
 #partners-page img {
  width: 30vw;
  max-width: 200px;
  height: auto;
  margin: 25px 25px 25px 0;
 }
}
/* end of accreditations page ---*/

/* ====== FAQs ===== */
/* accordion */
#faqs .ui-accordion .ui-accordion-header {
 padding: 10px 0;
}
#faqs .ui-accordion .ui-accordion-header {
 padding: 20px 0;
 border-top: 1px solid #bbb;
}
#faqs .ui-corner-all,
#faqs .ui-corner-top,
#faqs .ui-corner-bottom {
 border-radius: 0;
} {
 border-radius: 0;
}
#faqs .ui-state-default {
 border :0;
 background: none;
 color: unset;
}
#faqs .ui-state-active {
 border :0;
 background: none;
 color: var(--link);
}
#faqs .ui-widget-content {
 border: 0;
 background: none;
}
#faqs .ui-accordion .ui-accordion-content {
 padding: 20px;
}
#faqs #accordion h2 {
 line-height: 25px;
 padding-left: 20px !important;
 text-transform: capitalize;
}
#faqs #accordion span {
 position: absolute;
 left: 0;
 top: 28px;
}

/* ===== CONTACT PAGE SECTION ===== */
#contact-page .container {
 display: flex;
 flex-flow: row wrap;
 -webkit-justify-content: left;
 justify-content: left;
}
#contact-page .item {
 padding:0;
 margin: 1%;
 display: flex;
 justify-content: flex-start;
 flex-direction: column;
 width: 100%;
}
/* contact form stylings */
.contactform div,
.fixed-quote-form div {
 display: inline;
}
.contactform input, .contactform textarea, .contactform select, .contactform select option {
 border: 2px solid silver;
 background: rgba(240,240,240,.5);
 width: 98%;
 padding: 20px;
 margin: 2px;
 /* iphone style override blocker below */
 border-radius: 0;
 font-family: sans-serif;
 color: var(--text);
}
.contactform select {
 -webkit-appearance: none; /* fix safari style problem */
 background-image: url('/uploads/images/icons/expand_circle_down_black.svg');
 background-repeat: no-repeat;
 background-position: right;
 background-blend-mode: screen;
}

.contactform span,
.contactform label {
 font-family: sans-serif;
 font-size: 14px;
 margin-top: 20px;
}
.contactform span,
.fixed-quote-form span {
 display:inline-block;
 color: red;
 padding-bottom: 25px;
}
.contact-details h2 {
 text-align: left;
 margin: 0 0 10px 0;
}
.contact-details h3 {
 font-size: 18px;
 margin: 25px 0 5px 0;
 padding:0;
}
.contact-details p {
 margin-bottom: 10px;
}
.contact-details table {
 width: 100%;
 text-align: left;
}
.contact-social-media a:link,
.contact-social-media a:visited {
 font-size: 35px;
 margin-right: 10px;
 color: var(--link);
}
.contact-social-media a:hover,
.contact-social-media a:visited:hover {
 color: rgba(0,94,184,1);
 color: var(--linkhover);
}
.fb_invalid {
 color: red;
}
.error_message {
 display: inline;
}

/* end of contact form stylings */

@media screen and (min-width: 321px) {
#contact-page-locations .item {
 width: 48%;
}
}
@media screen and (min-width: 641px) {
#contact-page .item {
 flex: 1;
}
.contactform input, .contactform textarea, .contactform select, .contactform select option,
.fixed-quote-form input, .fixed-quote-form textarea, .fixed-quote-form select, .fixed-quote-form select option {
 width: 49%;
}
.contactform textarea,
.fixed-quote-form textarea {
 width: 98.5%;
}
input.cms_submit {
 width: 49%;
 padding: 25px;
 font-size: 16px;
}
}
@media screen and (min-width: 800px) {
#contact-page-locations .item {
 width: 23%;
}
}

/* END OF CONTACT PAGE SECTION ===== */

/* Create a custom checkbox */
input.cms_checkbox {
 height: 20px;
 width: 20px;
 padding: 5px;
 border-radius: 0;
}
.fixed-quote-contact-prefs div label {
 margin-right: 5vw;
}

/* END OF ENQUIRY FORM ===== */

/* [100] ===== SCREEN SIZE TWEAKS ===== [100] */

@media screen and (orientation: portrait) {
 #section-header img {
  height: 40vh;
  max-height: 40vh;
 }
 .container_products-page {
  margin-top: 25vh;
 }
}

@media screen and (min-width: 480px) {

}

@media screen and (min-width: 640px) {

}

@media screen and (min-width: 768px) {
#enquiryform {
  margin: 100px 20vw;
 }
}

@media screen and (min-width: 1024px) {

}

@media screen and (min-width: 1600px) {

}

/* ===== Modal ===== */
.modal {
  z-index: 1000;
  opacity: 0;
  visibility: hidden;
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  text-align: left;
  background: rgba(0,0,0, .75);
  transition: opacity 1s ease;
}

.modal__bg {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  cursor: pointer;
}

.modal-state {
  display: none;
}

.modal-state:checked + .modal {
  opacity: 1;
  visibility: visible;
}

.modal-state:checked + .modal .modal__inner {
  top: 0;
}

.modal__inner {
  transition: top 1s ease;
  position: absolute;
  top: -10%;
  right: 0;
  bottom: 0;
  left: 0;
  width: 75%;
  margin: auto;
  overflow: auto;
  background: #fff;
  border-radius: 5px;
  padding: 1em 2em;
  height: 75%;
}

.modal__close {
  position: fixed;
  right: 15%;
  top: 15%;
  width: 1.1em;
  height: 1.1em;
  cursor: pointer;
}

.modal__close:after,
.modal__close:before {
  content: '';
  position: absolute;
  width: 2px;
  height: 1.5em;
  background: #ccc;
  display: block;
  transform: rotate(45deg);
  left: 50%;
  margin: -3px 0 0 -1px;
  top: 0;
}

.modal__close:hover:after,
.modal__close:hover:before {
  background: #aaa;
}

.modal__close:before {
  transform: rotate(-45deg);
}

@media screen and (max-width: 768px) {
	
  .modal__inner {
    width: 90%;
    height: 90%;
    box-sizing: border-box;
  }
  .modal__close {
    position: fixed;
    right: 10%;
    top: 8%;
    width: 1.1em;
    height: 1.1em;
    cursor: pointer;
  }
}

/* ----- end Modal ----- */
/* cmsms stylesheet: WEBSITE - Homepage CSS modified: Monday, October 7, 2024 5:29:45 PM */
/* == HEADER BANNER == */
#header-banner {
 height: auto;
 width: 100%;
 height: 50px;
 background-color: palegreen;
 color: white;
 text-align: center;
 z-index: 9999;
}
#header-banner p {
 margin: 0;
 padding: 7px 0;
 font-size: 12px;
 line-height: 1.2em;
}
@media screen and (max-width: 320px) {
 #header-banner p {
  font-size: 75%;
 }
}
@media screen and (min-width: 420px) {
 #header-banner p {
  margin: 0;
  padding: 14px 0;
 }
}
@media screen and (min-width: 1024px) {
 #header-banner p {
  font-size: 16px;
 }
}

/* == SPLASH INTRO == */
#introsplash {
 width: 100%;
 /* height: 80vh;
 min-height: 600px;
 max-height: 600px; */
 background-color: rgb(204,204,204);
 background-repeat: no-repeat;
 background-position: 50% 50%;
 background-size: cover;
 overflow: hidden;
}
#introsplash .flexcontainer {
 display: flex;
 flex-flow: column;
 align-items: stretch;
 justify-content: space-between;
}
#introsplash .item {
 flex: 0 0 auto;
 color: black;
 text-align: center;
 width: 100%;
 height: auto;
 min-height: 200px;
 max-height: 800px;
 margin: 0;
 overflow: hidden;
 /* outline: 1px solid red; */
 padding: 5px;
}
#introsplash img{
 object-fit: scale-down;
 width: 100%;
 height: auto;
}
#introsplash h2,
#introsplash h3,
#introsplash p {
 font-family: 'Gemunu Libre', Arial, sans-serif;
 margin-top: 16px;
} 
#introsplash h1 {
 font-size: 2.5em;
 font-weight: 900;
 line-height: 0.9;
 color: var(--link);
}
#introsplash h2 {
 font-size: 1.75em;
 font-weight: 800;
 line-height: 1;
 color: var(--linkhover);
}
#introsplash h3 {
 font-size: 1.25em;
 font-weight: 400;
}
#introsplash p {
 font-size: 1.5em;
 line-height: 1.25;
 color: white;
}
#introsplash .button {
 font-size: 1rem;
 margin: 0;
}
@media screen and (min-width: 640px) {
 #introsplash {
  /* min-height: 800px;
  max-height: 800px; */
 }
 #introsplash .flexcontainer {
  flex-flow: row;
 }
 #introsplash .item {
  width: 48%;
  text-align: left;
 }
 #introsplash .item:nth-of-type(2) {
  text-align: right;
 }
 #introsplash img{
  width: 95%;
 }
 #introsplash h1 {
  font-size: 2.4em;
 }
 #introsplash h2 {
  font-size: 2.4em;
 }
 #introsplash h3 {
  font-size: 1.6em;
 }

 #introsplash .button:nth-of-type(1) {
  margin-right: 50px;
 }
}
@media screen and (min-width: 800px) {
 #introsplash img{
  width: 85%;
 }
}
@media screen and (min-width: 1024px) {
 #introsplash img{
  width: 75%;
 }
}
@media screen and (min-width: 1280px) {
 #introsplash img{
  width: 95%;
 }
 #introsplash h1 {
  font-size: 4em;
  margin-top: 100px;
 }
 #introsplash h2 {
  font-size: 3.5em;
 }
 #introsplash h3 {
  font-size: 2em;
 }
}
@media screen and (min-width: 1600px) {
 #introsplash img{
  width: 75%;
 }
 #introsplash h1 {
  font-size: 5em;
  margin-top: 100px;
 }
 #introsplash h2 {
  font-size: 4.25em;
 }
 #introsplash h3 {
  font-size: 2.75em;
 }
}

/* Homepage Products & Services Areas */
#slick-products,
#slick-services {
 display: flex;
 flex-direction: column;
 scroll-margin-top: 0px;
}
#slick-products {
 opacity: 0;
}
#slick-products.slick-initialized{ 
 opacity: 1;
 transition:opacity .3s ease-out;
} /* prevents flash of unstyled slick carousel */
#homepage-products {
 background: var(--backgroundbox25);
}
#homepage-services {
 background: rgba(0,119,188,.25);
 background: white;
}
#homepage-products .container,
#homepage-services .container {
 display: flex;
 flex-flow: row wrap;
 -webkit-justify-content: left;
 justify-content: left;
}
#homepage-products h2,
#homepage-services h2{
 text-align: center;
}
#homepage-products .item,
#homepage-services .item {
 flex: 0 0 auto;
 padding: 0;
 color: black;
 text-align: center;
 width: 100%;
 height: auto;
 margin: 0.25% 1% 1% 1%;
 overflow: hidden;
 display: flex;
 flex-direction: column;
 justify-content: space-between;
 background: var(--backgroundbox);
 outline: none;
 margin-left: 15px;
 margin-right: 15px;
}
#homepage-services .item {
 margin:0;
}
#homepage-products .slick-track,
#homepage-services .slick-track {
 display: flex;
}
#homepage-products a,
#homepage-services a{
 display: block;
 text-decoration: none;
 width: 100%;
 height: 100%;
 padding: 0;
}
#homepage-products a:hover,
#homepage-services a:hover{
 background-color: rgba(0,51,102,.05);
}
#homepage-products a:hover .button,
#homepage-services a:hover .button {
 background-color: var(--buttonhover);
}
.imagearea {
 overflow: hidden;
}
#homepage-products img,
#homepage-services img {
 width: 100%;
 height: auto;
 max-width: 500px;
 max-height: 400px;
 object-fit: cover;
 transition: all .2s ease-in-out;
 overflow: hidden;
}
#homepage-services img {
 max-width: 100%;
 max-height: auto;
}
#homepage-products .item:hover img,
#homepage-services .item:hover img {
 transform: scale(1.25);
}
#homepage-products h3,
#homepage-products p,
#homepage-products .button,
#homepage-services h3,
#homepage-services p,
#homepage-services .button {
 padding: 0 20px;
 flex: 1 0 auto;
}
#homepage-products .button,
#homepage-services .button {
 padding: 20px;
 margin-bottom: 40px;
}

@media screen and (min-width: 320px) {
 #homepage-products .item,
 #homepage-services .item {
  width: 48%;
 }
 #homepage-services .item {
  width: 100%;
 }
}

@media screen and (max-width: 360px) {
 #homepage-products h3,
 #homepage-services h3 {
  font-size: 12px;
 }
}

@media screen and (min-width: 640px) {
 #slick-services {
  flex-direction: row
 }
 #homepage-products h3,
 #homepage-services h3 {
  font-size: 21px;
  min-height: 50px;
 }
 #homepage-services h4 {
  min-height: auto;
 }
 #homepage-products .item {
  width: 48%;
 }
 #homepage-services .item {
  width: 33.333%;
 }
}

@media screen and (min-width: 800px) {
 #homepage-products .item {
  width: 23%;
 }
}

/* Homepage Brands */
#slick-partners {
 display: flex;
 align-items: center;
}
#slick-partners .item {
 margin: 0.25%;
 width: 13%;
}
#slick-partners img {
 width: 100%;
 height: auto;
 padding: 50px;
 filter: grayscale(100%) opacity(70%);
}
#slick-partners img:hover {
 filter: grayscale(0) opacity(100%);
}
/* cmsms stylesheet: WEBSITE - Slick Theme modified: Tuesday, October 8, 2024 12:52:55 AM */
/* ===== SLICK THEME LAYOUT CSS ===== */
.slick-slider {
  position: relative;
  display: block;
  box-sizing: border-box;
 -webkit-user-select: none;
 -moz-user-select: none;
 -ms-user-select: none;
 user-select: none;
 -webkit-touch-callout: none;
 -khtml-user-select: none;
 -ms-touch-action: pan-y;
 touch-action: pan-y;
 -webkit-tap-highlight-color: transparent;
}
.slick-list {
 position: relative;
 display: block;
 overflow: hidden;
 margin: 0;
 padding: 0;
}
.slick-list:focus {
 outline: none;
}
.slick-list.dragging {
 cursor: pointer;
 cursor: hand;
}
.slick-slider .slick-track,
.slick-slider .slick-list {
 -webkit-transform: translate3d(0, 0, 0);
 -moz-transform: translate3d(0, 0, 0);
 -ms-transform: translate3d(0, 0, 0);
 -o-transform: translate3d(0, 0, 0);
 transform: translate3d(0, 0, 0);
}
.slick-track {
 position: relative;
 top: 0;
 left: 0;
 display: block;
 margin-left: auto;
 margin-right: auto;
}
.slick-track:before,
.slick-track:after {
 display: table;
 content: '';
}
.slick-track:after {
 clear: both;
}
.slick-loading .slick-track {
 visibility: hidden;
}
.slick-slide {
 display: none;
 float: left;
 /* height: 100%; */ /* knocked this out to allow my own css to size the images */
 min-height: 1px;
}
[dir='rtl'] .slick-slide {
 float: right;
}
.slick-slide img {
 display: block;
}
.slick-slide.slick-loading img {
 display: none;
}
.slick-slide.dragging img {
 pointer-events: none;
}
.slick-initialized .slick-slide {
 display: block;
}
.slick-loading .slick-slide {
 visibility: hidden;
}
.slick-vertical .slick-slide {
 display: block;
 height: auto;
 border: 1px solid transparent;
}
.slick-arrow.slick-hidden {
 display: none;
}

/* ===== SLICK THEME CONTROLS CSS ===== */
@charset 'UTF-8';
/* Slider */
.slick-loading .slick-list{
 background: #fff url(https://shiremoorcompressors.co.uk/uploads/images/slick/ajax-loader.gif) center center no-repeat;
}

/* Arrows */
.slick-prev,
.slick-next{
 font-size: 0;
 line-height: 0;
 position: absolute;
 top: 200px;
 padding: 0;
 display: block;
 width: 0;
 height: 0;
 -webkit-transform: translate(0, -50%);
 -ms-transform: translate(0, -50%);
 transform: translate(0, -50%);
 cursor: pointer;
 color: transparent;
 border: none;
 outline: none;
 background: transparent;
 z-index: 1;
}

.slick-prev:hover,
.slick-prev:focus,
.slick-next:hover,
.slick-next:focus{
 color: transparent;
 outline: none;
 background: transparent;
}
.slick-prev:hover:before,
.slick-prev:focus:before,
.slick-next:hover:before,
.slick-next:focus:before{
 color: rgba(153,153,153,.6);
}
.slick-prev.slick-disabled:before,
.slick-next.slick-disabled:before{
 color: rgba(153,153,153,.1);
}

.slick-prev:before,
.slick-next:before{
 font-family: 'slick';
 font-size: 48px;
 line-height: 1;
 color: rgba(153,153,153,.3);
 -webkit-font-smoothing: antialiased;
 -moz-osx-font-smoothing: grayscale;
} 

.slick-prev{   
 left: 2px;
}
[dir='rtl'] .slick-prev{
 left: auto;    
 right: 25px;
}
.slick-prev:before{
 content: url('/uploads/images/icons/arrow-circle-left-fill-rounded.svg');
 filter: invert(1) opacity(10%);
}
.slick-prev:hover:before{
 filter: invert(.25) opacity(100%);
}

[dir='rtl'] .slick-prev:before{
 content: '→';
 font-family: "Font Awesome 5 Pro";
 font-weight: 900;
 content: "\f0a9"; /* arrow-circle-right */
}

.slick-next{
 right: 50px;
}
[dir='rtl'] .slick-next{
 right: auto;
 left: 25px;
}
.slick-next:before{
 content: url('/uploads/images/icons/arrow-circle-right-fill-rounded.svg');
 filter: invert(1) opacity(10%);
}
.slick-next:hover:before{
 filter: invert(.25) opacity(100%);
}
[dir='rtl'] .slick-next:before{
 content: '←';
 font-family: "Font Awesome 5 Pro";
 font-weight: 900;
 content: "\f0a8"; /* arrow-circle-left */
}

/* Dots */
.slick-dotted.slick-slider{
 margin-bottom: 60px;
}

.slick-dots{
 position: absolute;
 display: block;
 width: 100%;
 padding: 0;
 margin: 0;
 list-style: none;
 text-align: center;
 z-index:0;
 bottom: 0;
}
.slick-dots li{
 position: relative;
 display: inline-block;
 /* width: 50px;
 height: 50px;*/
 margin: 0 15px;
 padding: 0;
 cursor: pointer;
}
.slick-dots li button{
 font-size: 0;
 line-height: 0;
 display: block;
 width: 20px;
 height: 20px;
 padding: 5px;
 cursor: pointer;
 color: transparent;
 border: 0;
 outline: none;
 background: transparent;
}
.slick-dots li button:hover,
.slick-dots li button:focus{
 outline: none;
}
.slick-dots li button:hover:before,
.slick-dots li button:focus:before{
 opacity: 1;
}
.slick-dots li button:before{
 font-family: 'slick';
 font-size: 12px;
 line-height: 20px;
 position: absolute;
 top: 0;
 left: 0;
 width: 20px;
 height: 20px;
 content: '•';
 font-family: "Font Awesome 5 Pro";
 font-weight: 900;
 content: "\f111"; /* solid circle */
 text-align: center;
 opacity: .25;
 color: black;
 -webkit-font-smoothing: antialiased;
 -moz-osx-font-smoothing: grayscale;
}
.slick-dots li.slick-active button:before{
 opacity: .75;
 color: black;
}

/* SLICK SLIDESHOW AMENDS */
#homepage-slideshow .slick-prev{   
 left: 25px;
 top: 50vh;
}
#homepage-slideshow .slick-next{   
 right: 25px;
 top: 50vh;
}
#homepage-slideshow .slick-dots{
 position: absolute;
 bottom: 1vh;
}

/* SLICK CAROUSEL AMENDS */
#carousel .slick-prev{   
 left: 0;
 position: absolute;
 top: 50%;
 transform: translateY(-50%);
}
#carousel .slick-next{   
 position: absolute;
 right: 0;
 top: 50%;
 transform: translateY(-50%);
}
#carousel .slick-dots{
 margin-top: 35px;
}
/* cmsms stylesheet: WEBSITE - Print Stylesheet modified: Friday, June 12, 2020 5:43:59 PM */
@media only print{
body {padding:0;margin:0;color: #000;background-color: #fff;}

img#logo {filter: invert(100%) hue-rotate(180deg) brightness(120%) contrast(150%);} /* reverses a white logo to black for printing on pages */
}
