/* cmsms stylesheet: WEBSITE - HTML Reset modified: Friday, June 12, 2020 5:38:58 PM */
/* 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;
}

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;
}
/* cmsms stylesheet: WEBSITE - Main Stylesheet modified: Thursday, February 1, 2024 2:36:06 PM */
:root {
  --headings: rgb(0,0,0);
  --headingsinvert: rgb(255,255,255);
  --headingscolour: rgb(172,4,168);
  --text: rgb(0,0,0);
  --link: rgb(129,3,126);
  --linkhover: rgb(172,4,168);
  --backgroundbanner: rgb(0,0,0); 
  --backgroundbanner2: rgb(129,3,126); 
  --backgroundbox: rgb(234,234,234); 
  --backgroundbox2: rgb(111,115,118); 
  --button: rgb(204,0,51);  
  --buttontext: rgb(255,255,255);
  --buttonhover: rgb(255,0,51);
  --button: gold;
  --buttontext: black;
  --buttonhover: rgb(255,153,0);
}
/* [1] ===== FONTS ===== [1] */
*:focus-visible {
  outline: 2px solid var(--link);
}

html {
 scroll-behavior: smooth;
 scroll-padding-top: 5vh;
 -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 {
 font-family: 'Poppins', Arial, Helvetica, sans-serif;
 font-weight: 600;
 font-size: 1em;
 margin-top: .5em;
 margin-bottom: .5em;
 letter-spacing: 0;
 color: var(--headings);
/* text-transform: capitalize; */
 width: 100%;
}
h1 {
 font-size: 2.8em;
 line-height: 1;
 margin-top:0;
}
h2, .contactform legend {
 font-size: 2.4em;
 line-height: 1;
}
h3 {
 font-size: 2.1em;
 line-height: 1;
}
h4, h5, h6 {
 font-size: 1.8em;
 line-height: 1;
}
/* END OF HEADINGS ===== */

/* [3] ===== TYPOGRAPHY ===== [3] */
p, ol, ul, dl, address {
 margin-bottom: 1.5em;
 font-size: 1em;
 line-height: 1.5;
 color: var(--text);
 font-family: 'Poppins', 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);
}

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'],
.conformity input[type='submit']{
  background: var(--button);
  color: var(--buttontext) !important;
  border: 0;
  margin: 20px 0;
  padding: 20px;
  text-decoration: none;
  text-transform: uppercase;
  font-family: "Poppins", sans-serif;
  font-weight: bold;
  letter-spacing: 2px;
  border-radius: 5px;
  cursor: pointer;
  display: inline-block;
  text-align: center;
  font-size: 1em;
}
button:hover, .button:hover, input[type='submit']:hover{
  background: var(--buttonhover);
}

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: 'Open Sans', 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;
}

td:nth-of-type(1) {
 font-weight: bold;
}
/* END OF TYPOGRAPHY ===== */

/* [4] ===== ELEMENTS ===== [4] */
.skiptomain,
.skiptonav,
.offscreen {
 position:absolute;
 left:-10000px;
 top:auto;
 width:1px;
 height:1px;
 overflow:hidden;
}
.hidden {
 visibility: hidden;
}
section, header, footer {
 max-width: 100%;
 overflow-x: hidden;
}
section {
  content-visibility: auto;
  contain-intrinsic-size: auto 500px;
}
.content-block {
 margin: 50px 0;
}

.container_carousel,
.container_1column,
.container_news,
.container,
.flexcontainer {
 margin: 5vh auto;
 width: 90vw;
 max-width: 2560px;
}

@media screen and (min-width: 800px) {
.container_1column {
 max-width: 70vw;
}
}

@media screen and (min-width: 1280px) {
.container_1column {
 max-width: 50vw;
}
}
/* END OF ELEMENTS ===== */

/* [5] ===== HEADER ===== [5] */
header {
 background: black;
 position: fixed;
 top: 0;
 z-index:10;
 width: 100vw;
 height: 60px;
 border-bottom: 1px solid var(--backgroundbanner);
}
nav {
 z-index: -1;
 position: fixed;
 top: 0;
 left: 40vw;
 width: 60vw;
 height: 60px;
}

#logo {
 position:fixed;
 top: 14px;
 left: 20px;
 z-index:1;
 width: 290px;
 height: auto;
 margin: 0;
 float:left;
 transition: 0.2s
}

@media screen and (min-width: 580px) {
 nav {
  left: 10vw;
  width: 90vw;
 }
 #logo{
  top: 8px;
  left: 5vw;
  width: 290px;
 }
}
/* END OF HEADER CONTENT ===== */

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

/* [6] ===== NAVIGATION ===== [6] */
/* --- Main Menu --- */
@media screen and (max-width: 1023px) {
#menuToggle {
 display: block;
 position: fixed;
 top: 14px;
 right: 25px;
 z-index: 1; 
 -webkit-user-select: none;
 user-select: none;
}
#menuToggle a {
 text-decoration: none; 
 color: white; 
 transition: color 0.3s ease;
}
#menuToggle a:hover {
 color: white;
}
#menuToggle input {
 display: block;
 width: 60px;
 height: 60px;
 position: absolute;
 top: -20px; 
 right: 0; 
 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: 50px;
 height: 6px;
 margin-bottom: 9px;
 position: relative;
 background: rgb(255,255,255); /* 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:white; /* 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: -100px -25px 0 0;
 padding: 125px 50px;
 background: rgba(0,0,0,.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: "-- ";
}
/* === 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: 640px) {
#menu {
 width: 100vw;
}

#menu ul {
 margin-top: 150px;
}

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

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

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

#menuToggle input {
 display: none;
}

#menu {
 position: absolute;
 right: 10px;
 margin: 8px 0;
 padding: 0;
}

#menu ul,
#menu .wrapper {
 margin: 0;
 padding: 0;
}

#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 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: white;
 text-decoration: none;
}

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

#menu li li a:link,
#menu li li a:visited{
 width: 250px;
 background: white;
 text-decoration: none; 
}
#menu li li a:hover,
#menu li li a:visited:hover{
 background: black;
 color: var(--linkhover);
 text-decoration: none;
}
}



@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;
}
}

/* --- Sitemap Menu --- */
#sitemap{
 text-align: left;
}

#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 == */
#introsplash,
#sectionsplash {
 width: 100%;
 height: 100vh;
 min-height: 800px;
 max-height: 800px;
 background: var(--backgroundbanner);
 background-repeat: no-repeat;
 background-position: 50% -1150%;
 background-size: 450px;
 margin-top: 55px;
 padding-top: 100px;
 overflow: hidden;
}
#sectionsplash {
 height: auto;
 min-height: 200px;
 max-height: unset;
}
#introsplash .flexcontainer {
 display: flex;
 flex-flow: row wrap;
 align-items: stretch;
 margin: 15px auto;
 max-width: 90vw;
}
#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;
}
#introsplash img{
 object-fit: scale-down;
 width: 100%;
 height: auto;
}
#introsplash h1,
#sectionsplash h1 {
  font-size: 1.8em;
  line-height: 1.1em;
  color: var(--headingscolour);
}
#introsplash h2,
#sectionsplash h2 {
  color: var(--headingsinvert);
  font-weight: 400;
  font-size: 1.1em;
 line-height: 1.25;
}
#introsplash h3,
#sectionsplash h3 {
  font-size: 5vw;
  color: var(--headingsinvert);
}
#introsplash p,
#sectionsplash p {
 font-size: 1.5em;
 line-height: 1.25;
 color: white;
}
@media screen and (min-width: 640px) {
 #introsplash {
  height: 75vh;
  max-height: 750px;
  min-height: 750px;
  background-position: 100% top;
  background-size: auto;
 }
 #introsplash .flexcontainer {
  margin: 25px auto;
 }
 #introsplash .item {
  width: 85%;
  text-align: left;
  background: rgba(0,0,0,.75);
  -webkit-box-shadow: 0px 0px 20px 10px rgba(0,0,0,0.8);
  -moz-box-shadow: 0px 0px 20px 10px rgba(0,0,0,0.8);
  box-shadow: 0px 0px 20px 10px rgba(0,0,0,0.8);
 }
 #introsplash .item2 {
  width: 32%;
  text-align: left;
 }
 #introsplash h1,
 #sectionsplash h1 {
  font-size: 2.4em;
 }
 #introsplash h2,
 #sectionsplash h2 {
  font-size: 1.8em;
 }
 #introsplash h3,
 #sectionsplash h3 {
  font-size: 1.6em;
 }

 #introsplash .button:nth-of-type(1),
 #sectionsplash .button:nth-of-type(1) {
  margin-right: 50px;
 }
}
@media screen and (min-width: 1280px) {
 #introsplash .item {
  width: 64%;
 }
 #introsplash h1,
 #sectionsplash h1 {
  font-size: 3.2em;
 }
 #introsplash h2,
 #sectionsplash h2 {
  font-size: 2.4em;
 }
 #introsplash h3,
 #sectionsplash h3 {
  font-size: 2em;
 }
}

/* How It Works Homepage Blocks */
#how-it-works {
 background: var(--backgroundbanner2);
}

#how-it-works .container,
#homepage-distribution .container {
 display: flex;
 flex-flow: row wrap;
 -webkit-justify-content: center;
 justify-content: center;
}

#how-it-works h2 {
 text-align: center;
 color: white;
}

#how-it-works .item,
#homepage-distribution .item {
  flex: 0 0 auto;
  margin-bottom:10px;
  padding: 10px;
  background: none;
  color: white;
  text-align: center;
  width: 100%;
  height: auto;
  margin: 1%;
  overflow: hidden;
  border: 1px solid var(--linkhover);
}

#how-it-works h3 {
 color: var(--linkhover);
 font-size: 6em;
}
#how-it-works h4 {
 color: white;
}
#how-it-works ul {
 list-style: none;
 margin: 0;
 padding: 0;
}
#how-it-works p,
#how-it-works li {
 color: white;
}
#how-it-works li {
 margin: 5px 0;
}
#how-it-works li:before,
#how-it-works li:after {
 content: "*";
 font-weight: bold;
}
@media screen and (min-width: 320px) {
 #how-it-works .item,
 #homepage-distribution .item {
  width: 48%;
 }
}

@media screen and (min-width: 1150px) {
 #how-it-works .item {
  width: 23%;
  padding:20px;
 }
}

#homepage-age {
 background: rgba(0,0,0,.05);
}

#homepage-age h2 {
 text-align: center;
}

#homepage-age img {
 display: block;
 margin: 25px auto;
 height: auto;
 width: 10vw;
 min-width: 250px;
}

/* ===== NEWS SECTION ===== */
#news-summary .container {
 display: flex;
 flex-flow: row wrap;
 -webkit-justify-content: left;
 justify-content: left;
}
#news-summary .item {
 flex: 0 0 auto;
 padding: 0;
 background: black;
 color: black;
 text-align: center;
 width: 100%;
 height: auto;
 margin: 1%;
 overflow: hidden;
 display: flex;
 flex-direction: column;
 justify-content: space-between;
}

@media screen and (min-width: 360px) {
 #news-summary .item {
  width: 48%;
 }
}
@media screen and (min-width: 1024px) {
 #news-summary .item {
  width: 23%;
 }
}
@media screen and (max-width: 420px) {
 #news-summary p {
  text-overflow: ellipsis;
  white-space: nowrap;
  overflow: hidden;
 }
}

#news-summary h4,
#news-summary p {
 padding: 0 20px;
 color: white
}
#news-summary p.itemPostDate {
 margin: 10px 0;
 color: var(--button);
}
#news-summary .button {
 margin-bottom: 20px;
}
#news-summary img {
 width: 100%;
 height: 240px;
 object-fit: cover;
}

@media screen and (min-width: 800px) {
 #news-summary img {
  /* height: 250px; */
 }
}


/* pagination */
#news-summary p.pagination {
 margin: auto;
}
.pagination span {
 color: white;
 display: inline-block;
 padding: 10px;
 margin-right: 0;
 background: var(--link);
}
.pagination span a {
 color: white;
 text-decoration: none;
}
.pagination span.NewsPaginationLink {
 margin: 1px;
}

/* NEWS DETAIL PAGE */

element.style {
}

#news-header img {
    display: block;
    width: 100%;
    height: 50vh;
    min-height: 240px;
    max-height: 500px;
    object-fit: cover;
    object-position: 50% 40%;
    background: black;
}

@media screen and (min-width: 800px) {
#news-header img {
    max-height: 500px;
}
}
/* end of News section */


footer {
 background: black;
 color: white;
 padding: 25px 0;
}
footer .container {
 display: flex;
 flex-wrap: wrap;
 align-items: center;
 flex-direction: column;
}
footer .item {
/* width: 100%; */
 height: auto;
 margin-bottom: 2%;
}
footer .item:nth-child(2),
footer .item:nth-child(3),
footer .item:nth-child(4) {
 text-align: center;
}
footer .item:nth-child(5) {
 width: 100%;
 text-align: left;
}
footer h4 {
 color: white;
}
footer img.footer-logo {
 width: 100%;
 max-width: 200px;
 height: auto;
}
footer .item i {
 font-size: 32px;
 margin: 10px 8px;
}
#st-1{
 text-align: center !important;
 margin-bottom: 20px;
}
@media screen and (min-width: 769px) and (max-width: 1023px) {
 footer .item i {
  font-size: 21px;
  margin: 10px 8px;
 }
}

footer a i {
  color: white;
}
footer a i:hover {
  color: silver;
}
footer p {
color: white;
font-size: 12px;
}
footer a:link, footer a:visited {
 color: white;
 display: inline-block;
}
footer a:hover, footer a:visited:hover {
 color: silver;
}
footer ul {
 list-style: none;
}
footer li {
 margin: 2px 0;
}
footer li a:link,
footer li a:visited {
 display: block;
 padding: 10px 5px;
 color: white;
 text-decoration: none;
 background: rgba(255,255,255,.1);
}
footer li a:hover,
footer li a:visited:hover {
 display: block;
 color: white;
 background: rgba(255,255,255,.25);
}
@media screen and (max-width: 768px) {
footer .item {
  justify-content: space-evenly;
}
footer p,
footer li {
text-align: center;
}
footer img {
 max-width: 150px;
}

}

/* END OF HOMEPAGE ===== */

/* [8] ===== SECTION CONTENT ===== [8] */
#section-header img {
 width: 100vw;
 height: auto;
 min-height: 175px;
 max-height: 40vh;
 object-fit: cover;
 background: rgba(240,240,240,1);
}

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

/* --- guides page --- */
#guide{
 margin-top: 90px;
}
#guide-header{
 background: rgb(240,240,240);
 width: 100vw;
 height: 35vh;
 overflow: hidden;
}
#guide-header img {
 width: 100vw;
 height: 50vh;
 object-fit: cover;
 object-position: 50% -8vh;
}
@media screen and (min-width: 1920px) and (max-height: 1200px) {
 #guide-header img {
  object-fit: cover;
  object-position: 50% -15vh;
 }
}
/* --- accreditations page --- */
#accreditations-page .item {
  display: flex;
  flex-direction: column;
  align-items: center;
  padding-bottom: 25px;
  margin-bottom: 25px;
  border-bottom: 1px solid rgb(204,204,204);
}
#accreditations-page img {
 width: 90vw;
 height: auto;
}
@media screen and (min-width: 640px) {
#accreditations-page .item{
  display: flex;
  flex-direction: row;
  align-items: center;
}
#accreditations-page img {
 width: 30vw;
 max-width: 200px;
 height: auto;
 margin-right: 25px;
}
}
/* end of accreditations page ---*/

/* --- testimonials page --- */
.reviewer,
.reviewer-detail {
 margin: 5px 0;
 padding: 0;
 line-height: 14px;
}
.reviewer {
 font-weight: bold;
}
.reviewer-detail {
 font-style: italic;
 color: rgb(102,102,102);
 color: rgb(50,99,50);
}
/* end of testimonials page --- */

/*  FAQ SECTION ===== */
/* 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;
}
#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;
}
/* End of FAQ SECTION ===== */

/* ===== CONTACT PAGE SECTION ===== */
#contact-page .container {
 display: flex;
 flex-flow: row wrap;
 -webkit-justify-content: left;
 justify-content: left;
}

#contact-page .item {
  flex: 1;
  padding:0;
  margin: 1%;
}
#contact-page .double-item {
  flex: 2;
  margin: 1%;
}
.contactform input, .contactform textarea, .contactform select, .contactform select option, input[type='password'] {
  border: 0;
  background: rgba(240,240,240,.5);
  padding: 25px;
  margin: 10px 0;
  width: 100%;
  display: block;
  font-family: 'Poppins', sans-serif;
}
.contactform select{
 width: 50%;
}
.contactform span,
.contactform label,
.form-headings {
 font-family: 'Poppins', sans-serif;
 font-size: 1em;
 font-weight: bold;
}
.form-headings {
 margin-top: 1.5em;
}
.contactform span {
 display:inline-block;
 color: red;
 padding-bottom: 25px;
}
.contactform label {
 display: block;
 margin-top: 20px;
}
.contactform .smallprint {
 font-family: 'Poppins', sans-serif;
 font-size: .85em;
 line-height: 1.5em;
 margin: 1em 0;
}
.contactform .smallprint-checkbox label {
 font-size: .9em;
}
.contactform .smallprint-checkbox input,
.contactform .radiobutton input{
 max-width: 20px;
 display: inline; 
}
.contactform .smallprint-checkbox label,
.contactform .radiobutton label{
 font-weight: normal;
 display: inline;
}
.contactform .radiobutton label {
 font-weight: bold;
}
.contactform .radiobutton div label{
 font-weight: normal;
 font-size: .85em;
}
.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,
.social-media {
 width: 40px;
 height: 40px;
 display: inline;
}
img.social-media:hover {
 filter: grayscale(90%) brightness(5);
}
.contact-social-media img:hover {
 filter: grayscale(90%) brightness(0);
}
.contact-social-media a:link,
.contact-social-media a:visited {
 margin-right: 2px;
}
.contact-social-media a:hover,
.contact-social-media a:visited:hover {
 color: filter();
}
.fb_invalid {
 color: red;
}
.error_message {
 display: none;
}

@media screen and (min-width: 799px) {
#contact-page .item {
 flex: 1;
}
.contactform input, .contactform textarea {
  width: 100%;
}
}
}
/* END OF CONTACT PAGE SECTION ===== */

/* Create a custom checkbox */
input.cms_checkbox {
  height: 35px;
  width: 35px;
}

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

#registrations {
 border-top: 150px solid black;
}

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

@media screen and (orientation: portrait) {

#section-header img {
 height: 40vh;
 max-height: 40vh;
}

}

@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) {

}
/* cmsms stylesheet: WEBSITE - Slick Theme modified: Monday, July 17, 2023 12:34:15 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://digivapevending.com/uploads/images/slick/ajax-loader.gif') center center no-repeat;
}

/* Arrows */
.slick-prev,
.slick-next{
 font-size: 0;
 line-height: 0;
 position: absolute;
 display: block;
 width: 50px;
 height: 50px;
 padding: 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: 25px;
}
[dir='rtl'] .slick-prev{
 left: auto;    
 right: 25px;
}
.slick-prev:before{
 content: '←'; /* using slick font */
 font-family: "Font Awesome 5 Pro";
 font-weight: 900;
 content: "\f0a8"; /* arrow-circle-left */
}
[dir='rtl'] .slick-prev:before{
 content: '→';
 font-family: "Font Awesome 5 Pro";
 font-weight: 900;
 content: "\f0a9"; /* arrow-circle-right */
}

.slick-next{
 right: 25px;
}
[dir='rtl'] .slick-next{
 right: auto;
 left: 25px;
}
.slick-next:before{
 content: '→';
 font-family: "Font Awesome 5 Pro";
 font-weight: 900;
 content: "\f0a9"; /* arrow-circle-right */
}
[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;
}
.slick-dots li{
 position: relative;
 display: inline-block;
 /* width: 50px;
 height: 50px;*/
 margin: 0 25px;
 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 */
#slideshow .slick-prev{   
 left: 10px;
 top: 50vh;
}
#slideshow .slick-next{   
 right: 10px;
 top: 50vh;
}
#slideshow .slick-dots{
 z-index:10;
 margin-top: -5vh;
}

/* 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 */
}
